00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013 #ifndef GTK_UI_H
00014 #define GTK_UI_H
00015
00016 #include <gtk/gtk.h>
00017
00018 #include "actions.h"
00019
00020
00021
00022
00023
00024 static const GtkActionEntry actionsPlain[] = {
00025 { "FileMenu", NULL, "_File", NULL, NULL, NULL },
00026 { "CopyURL", GTK_STOCK_COPY, "Copy _URL", NULL, NULL, G_CALLBACK(actionCopyURL) },
00027 { "OpenURL", NULL, "Open UR_L", NULL, NULL, G_CALLBACK(actionOpenURL) },
00028 { "OpenScript", GTK_STOCK_OPEN, "_Open Script...", NULL, NULL, G_CALLBACK(actionOpenScript) },
00029 { "CaptureImage", GTK_STOCK_SAVE_AS, "_Capture Image...", NULL, NULL, G_CALLBACK(actionCaptureImage) },
00030 { "Quit", GTK_STOCK_QUIT, "_Quit", "<control>Q", NULL, G_CALLBACK(actionQuit) },
00031
00032 { "NavigationMenu", NULL, "_Navigation", NULL, NULL, NULL },
00033 { "SelectSol", GTK_STOCK_HOME, "Select _Sol", "H", NULL, G_CALLBACK(actionSelectSol) },
00034 { "TourGuide", NULL, "Tour G_uide...", NULL, NULL, G_CALLBACK(actionTourGuide) },
00035 { "SearchObject", GTK_STOCK_FIND, "Search for _Object...", NULL, NULL, G_CALLBACK(actionSearchObject) },
00036 { "GotoObject", NULL, "Go to Object...", NULL, NULL, G_CALLBACK(actionGotoObject) },
00037 { "CenterSelection", NULL, "_Center Selection", "c", NULL, G_CALLBACK(actionCenterSelection) },
00038 { "GotoSelection", GTK_STOCK_JUMP_TO, "_Go to Selection", "G", NULL, G_CALLBACK(actionGotoSelection) },
00039 { "FollowSelection", NULL, "_Follow Selection", "F", NULL, G_CALLBACK(actionFollowSelection) },
00040 { "SyncSelection", NULL, "S_ync Orbit Selection", "Y", NULL, G_CALLBACK(actionSyncSelection) },
00041 { "TrackSelection", NULL, "_Track Selection", "T", NULL, G_CALLBACK(actionTrackSelection) },
00042 { "SystemBrowser", NULL, "Solar System _Browser...", NULL, NULL, G_CALLBACK(actionSystemBrowser) },
00043 { "StarBrowser", NULL, "Star B_rowser...", NULL, NULL, G_CALLBACK(actionStarBrowser) },
00044 { "EclipseFinder", NULL, "_Eclipse Finder...", NULL, NULL, G_CALLBACK(actionEclipseFinder) },
00045
00046 { "TimeMenu", NULL, "_Time", NULL, NULL, NULL },
00047 { "TimeFaster", NULL, "10x _Faster", "L", NULL, G_CALLBACK(actionTimeFaster) },
00048 { "TimeSlower", NULL, "10x _Slower", "K", NULL, G_CALLBACK(actionTimeSlower) },
00049 { "TimeFreeze", NULL, "Free_ze", "space", NULL, G_CALLBACK(actionTimeFreeze) },
00050 { "TimeReal", NULL, "_Real Time", "backslash", NULL, G_CALLBACK(actionTimeReal) },
00051 { "TimeReverse", NULL, "Re_verse Time", "J", NULL, G_CALLBACK(actionTimeReverse) },
00052 { "TimeSet", NULL, "Set _Time...", NULL, NULL, G_CALLBACK(actionTimeSet) },
00053
00054
00055 { "OptionsMenu", NULL, "_Options", NULL, NULL, NULL },
00056 { "ViewOptions", GTK_STOCK_PREFERENCES, "View _Options...", NULL, NULL, G_CALLBACK(actionViewOptions) },
00057 { "ShowObjectsMenu", NULL, "Show Objects", NULL, NULL, NULL },
00058 { "ShowLabelsMenu", NULL, "Show Labels", NULL, NULL, NULL },
00059 { "ShowOrbitsMenu", NULL, "Show Orbits", NULL, NULL, NULL },
00060 { "InfoTextMenu", NULL, "Info Text", NULL, NULL, NULL },
00061
00062 { "StarStyleMenu", NULL, "Star St_yle", NULL, NULL, NULL },
00063
00064 { "AmbientLightMenu", NULL, "_Ambient Light", NULL, NULL, NULL },
00065
00066 { "StarsMore", NULL, "_More Stars Visible", "bracketright", NULL, G_CALLBACK(actionStarsMore) },
00067 { "StarsFewer", NULL, "_Fewer Stars Visible", "bracketleft", NULL, G_CALLBACK(actionStarsFewer) },
00068
00069 { "WindowMenu", NULL, "_Window", NULL, NULL, NULL },
00070 { "ViewerSize", GTK_STOCK_ZOOM_FIT, "Set Window Size...", NULL, NULL, G_CALLBACK(actionViewerSize) },
00071
00072 { "MultiSplitH", NULL, "Split _Horizontally", "<control>R", NULL, G_CALLBACK(actionMultiSplitH) },
00073 { "MultiSplitV", NULL, "Split _Vertically", "<control>U", NULL, G_CALLBACK(actionMultiSplitV) },
00074 { "MultiCycle", NULL, "Cycle View", "Tab", NULL, G_CALLBACK(actionMultiCycle) },
00075 { "MultiDelete", NULL, "_Delete Active View", "Delete", NULL, G_CALLBACK(actionMultiDelete) },
00076 { "MultiSingle", NULL, "_Single View", "<control>D", NULL, G_CALLBACK(actionMultiSingle) },
00077
00078
00079
00080 { "HelpMenu", NULL, "_Help", NULL, NULL, NULL },
00081 { "RunDemo", GTK_STOCK_EXECUTE, "Run _Demo", "D", NULL, G_CALLBACK(actionRunDemo) },
00082 { "HelpControls", GTK_STOCK_HELP, "_Controls", NULL, NULL, G_CALLBACK(actionHelpControls) },
00083 #if GTK_CHECK_VERSION(2, 7, 0)
00084 { "HelpOpenGL", GTK_STOCK_INFO, "OpenGL _Info", NULL, NULL, G_CALLBACK(actionHelpOpenGL) },
00085 #else
00086 { "HelpOpenGL", NULL, "OpenGL _Info", NULL, NULL, G_CALLBACK(actionHelpOpenGL) },
00087 #endif
00088 { "HelpAbout", GTK_STOCK_ABOUT, "_About", NULL, NULL, G_CALLBACK(actionHelpAbout) },
00089 };
00090
00091
00092
00093 static const GtkToggleActionEntry actionsToggle[] = {
00094 { "TimeLocal", NULL, "Show _Local Time", NULL, NULL, G_CALLBACK(actionTimeLocal), FALSE },
00095 #if GTK_CHECK_VERSION(2, 7, 0)
00096 { "FullScreen", GTK_STOCK_FULLSCREEN, "_Full Screen", "<alt>Return", NULL, G_CALLBACK(actionFullScreen), FALSE },
00097 #else
00098 { "FullScreen", NULL, "_Full Screen", "<alt>Return", NULL, G_CALLBACK(actionFullScreen), FALSE },
00099 #endif
00100 { "MenuBarVisible", NULL, "_Menu Bar", "<control>M", NULL, G_CALLBACK(actionMenuBarVisible), TRUE },
00101 { "MultiShowFrames", NULL, "Show _Frames", NULL, NULL, G_CALLBACK(actionMultiShowFrames), FALSE },
00102 { "MultiShowActive", NULL, "Active Frame Highlighted", NULL, NULL, G_CALLBACK(actionMultiShowActive), FALSE },
00103 { "MultiSyncTime", NULL, "Synchronize _Time", NULL, NULL, G_CALLBACK(actionMultiSyncTime), FALSE },
00104 };
00105
00106
00107
00108 static const GtkRadioActionEntry actionsVerbosity[] = {
00109 { "HudNone", NULL, "_None", NULL, NULL, 0 },
00110 { "HudTerse", NULL, "_Terse", NULL, NULL, 1},
00111 { "HudVerbose", NULL, "_Verbose", NULL, NULL, 2},
00112 };
00113
00114 static const GtkRadioActionEntry actionsStarStyle[] = {
00115 { "StarsFuzzy", NULL, "_Fuzzy Points", NULL, NULL, Renderer::FuzzyPointStars },
00116 { "StarsPoints", NULL, "_Points", NULL, NULL, Renderer::PointStars },
00117 { "StarsDiscs", NULL, "Scaled _Discs", NULL, NULL, Renderer::ScaledDiscStars },
00118 };
00119
00120 static const GtkRadioActionEntry actionsAmbientLight[] = {
00121 { "AmbientNone", NULL, "_None", NULL, NULL, 0 },
00122 { "AmbientLow", NULL, "_Low", NULL, NULL, 1 },
00123 { "AmbientMedium", NULL, "_Medium", NULL, NULL, 2},
00124 };
00125
00126
00127
00128 static const GtkToggleActionEntry actionsRenderFlags[] = {
00129 { "RenderAA", NULL, "Antialiasing", "<control>X", NULL, G_CALLBACK(actionRenderAA), FALSE },
00130 { "RenderAtmospheres", NULL, "Atmospheres", "<control>A", NULL, G_CALLBACK(actionRenderAtmospheres), FALSE },
00131 { "RenderAutoMagnitude", NULL, "Auto Magnitude", "<control>Y", NULL, G_CALLBACK(actionRenderAutoMagnitude), FALSE },
00132 { "RenderCelestialGrid", NULL, "Celestial Grid", "semicolon", NULL, G_CALLBACK(actionRenderCelestialGrid), FALSE },
00133 { "RenderClouds", NULL, "Clouds", "I", NULL, G_CALLBACK(actionRenderClouds), FALSE },
00134 { "RenderCometTails", NULL, "Comet Tails", "<control>T", NULL, G_CALLBACK(actionRenderCometTails), FALSE },
00135 { "RenderConstellationBoundaries", NULL, "Constellation Boundaries", NULL, NULL, G_CALLBACK(actionRenderConstellationBoundaries), FALSE },
00136 { "RenderConstellations", NULL, "Constellations", "slash", NULL, G_CALLBACK(actionRenderConstellations), FALSE },
00137 { "RenderEclipseShadows", NULL, "Eclipse Shadows", "<control>E", NULL, G_CALLBACK(actionRenderEclipseShadows), FALSE },
00138 { "RenderGalaxies", NULL, "Galaxies", "U", NULL, G_CALLBACK(actionRenderGalaxies), FALSE },
00139 { "RenderMarkers", NULL, "Markers", "U", NULL, G_CALLBACK(actionRenderMarkers), FALSE },
00140 { "RenderNebulae", NULL, "Nebulae", "asciicircum", NULL, G_CALLBACK(actionRenderNebulae), FALSE },
00141 { "RenderNightLights", NULL, "Night Side Lights", "<control>L", NULL, G_CALLBACK(actionRenderNightLights), FALSE },
00142 { "RenderOpenClusters", NULL, "Open Clusters", NULL, NULL, G_CALLBACK(actionRenderOpenClusters), FALSE },
00143 { "RenderOrbits", NULL, "Orbits", "O", NULL, G_CALLBACK(actionRenderOrbits), FALSE },
00144 { "RenderPlanets", NULL, "Planets", NULL, NULL, G_CALLBACK(actionRenderPlanets), FALSE },
00145 { "RenderRingShadows", NULL, "Ring Shadows", NULL, NULL, G_CALLBACK(actionRenderRingShadows), FALSE },
00146 { "RenderStars", NULL, "Stars", NULL, NULL, G_CALLBACK(actionRenderStars), FALSE },
00147 };
00148
00149
00150
00151 static const GtkToggleActionEntry actionsOrbitFlags[] = {
00152 { "OrbitAsteroids", NULL, "Asteroids", NULL, NULL, G_CALLBACK(actionOrbitAsteroids), FALSE },
00153 { "OrbitComets", NULL, "Comets", NULL, NULL, G_CALLBACK(actionOrbitComets), FALSE },
00154 { "OrbitMoons", NULL, "Moons", NULL, NULL, G_CALLBACK(actionOrbitMoons), FALSE },
00155 { "OrbitPlanets", NULL, "Planets", NULL, NULL, G_CALLBACK(actionOrbitPlanets), FALSE },
00156 { "OrbitSpacecraft", NULL, "Spacecraft", NULL, NULL, G_CALLBACK(actionOrbitSpacecraft), FALSE },
00157 };
00158
00159
00160 static const GtkToggleActionEntry actionsLabelFlags[] = {
00161 { "LabelAsteroids", NULL, "Asteroids", "W", NULL, G_CALLBACK(actionLabelAsteroids), FALSE },
00162 { "LabelComets", NULL, "Comets", "<shift>W", NULL, G_CALLBACK(actionLabelComets), FALSE },
00163 { "LabelConstellations", NULL, "Constellations", "equal", NULL, G_CALLBACK(actionLabelConstellations), FALSE },
00164 { "LabelGalaxies", NULL, "Galaxies", "E", NULL, G_CALLBACK(actionLabelGalaxies), FALSE },
00165 { "LabelLocations", NULL, "Locations", NULL, NULL, G_CALLBACK(actionLabelLocations), FALSE },
00166 { "LabelMoons", NULL, "Moons", "M", NULL, G_CALLBACK(actionLabelMoons), FALSE },
00167 { "LabelNebulae", NULL, "Nebulae", NULL, NULL, G_CALLBACK(actionLabelNebulae), FALSE },
00168 { "LabelOpenClusters", NULL, "Open Clusters", NULL, NULL, G_CALLBACK(actionLabelOpenClusters), FALSE },
00169 { "LabelPlanets", NULL, "Planets", "P", NULL, G_CALLBACK(actionLabelPlanets), FALSE },
00170 { "LabelSpacecraft", NULL, "Spacecraft", "N", NULL, G_CALLBACK(actionLabelSpacecraft), FALSE },
00171 { "LabelStars", NULL, "Stars", "B", NULL, G_CALLBACK(actionLabelStars), FALSE },
00172
00173
00174
00175
00176
00177 };
00178
00179 #endif