(svn r13597) -Codechange: Enumification of the Map menu items.
authorbelugas
Sat, 21 Jun 2008 01:40:56 +0000
changeset 11041 5a7b939e6846
parent 11038 d253e0dfa688
child 11045 60c076d531f9
(svn r13597) -Codechange: Enumification of the Map menu items.
The rework allowed to remove a function, by merging two quite similar ones.
src/toolbar_gui.cpp
--- a/src/toolbar_gui.cpp	Fri Jun 20 21:14:10 2008 +0000
+++ b/src/toolbar_gui.cpp	Sat Jun 21 01:40:56 2008 +0000
@@ -291,27 +291,37 @@
 
 /* --- Map button menu --- */
 
+enum MapMenuEntries {
+	MME_SHOW_SMALLMAP        = 0,
+	MME_SHOW_EXTRAVIEWPORTS,
+	MME_SHOW_SIGNLISTS,
+	MME_SHOW_TOWNDIRECTORY,    ///< This entry is only used in Editor mode
+	MME_MENUCOUNT_NORMAL = 3,
+	MME_MENUCOUNT_EDITOR = 4,
+};
+
 static void ToolbarMapClick(Window *w)
 {
-	PopupMainToolbMenu(w, TBN_SMALLMAP, STR_02DE_MAP_OF_WORLD, 3);
+	PopupMainToolbMenu(w, TBN_SMALLMAP, STR_02DE_MAP_OF_WORLD, MME_MENUCOUNT_NORMAL);
+}
+
+static void ToolbarScenMapTownDir(Window *w)
+{
+	/* Scenario editor button, Use different button to activate.
+	 * This scheme will allow to have an action (SEMA_MAP_CLICK, which is in fact
+	 * an entry in _menu_clicked_procs) while at the same time having a start button
+	 * who is not at the same index as its action
+	 * @see ToolbarMenuWindow::OnMouseLoop */
+	PopupMainToolbMenu(w, TBSE_SMALLMAP | SEMA_MAP_CLICK, STR_02DE_MAP_OF_WORLD, MME_MENUCOUNT_EDITOR);
 }
 
 static void MenuClickMap(int index)
 {
 	switch (index) {
-		case 0: ShowSmallMap();            break;
-		case 1: ShowExtraViewPortWindow(); break;
-		case 2: ShowSignList();            break;
-	}
-}
-
-static void MenuClickScenMap(int index)
-{
-	switch (index) {
-		case 0: ShowSmallMap();            break;
-		case 1: ShowExtraViewPortWindow(); break;
-		case 2: ShowSignList();            break;
-		case 3: ShowTownDirectory();       break;
+		case MME_SHOW_SMALLMAP:       ShowSmallMap();            break;
+		case MME_SHOW_EXTRAVIEWPORTS: ShowExtraViewPortWindow(); break;
+		case MME_SHOW_SIGNLISTS:      ShowSignList();            break;
+		case MME_SHOW_TOWNDIRECTORY:  if (_game_mode == GM_EDITOR) ShowTownDirectory(); break;
 	}
 }
 
@@ -682,16 +692,6 @@
 	_left_button_clicked = false;
 }
 
-static void ToolbarScenMapTownDir(Window *w)
-{
-	/* Scenario editor button, Use different button to activate.
-	 * This scheme will allow to have an action (SEMA_MAP_CLICK, which is in fact
-	 * an entry in _menu_clicked_procs) while at the same time having a start button
-	 * who is not at the same index as its action
-	 * @see ToolbarMenuWindow::OnMouseLoop */
-	PopupMainToolbMenu(w, TBSE_SMALLMAP | SEMA_MAP_CLICK, STR_02DE_MAP_OF_WORLD, 4);
-}
-
 static void ToolbarScenZoomIn(Window *w)
 {
 	if (DoZoomInOutWindow(ZOOM_IN, FindWindowById(WC_MAIN_WINDOW, 0))) {
@@ -1314,7 +1314,7 @@
 	MenuClickShowRoad,    /* 14 */
 	MenuClickShowShips,   /* 15 */
 	MenuClickShowAir,     /* 16 */
-	MenuClickScenMap,     /* 17 */
+	MenuClickMap,         /* 17 */
 	NULL,                 /* 18 */
 	MenuClickBuildRail,   /* 19 */
 	MenuClickBuildRoad,   /* 20 */