(svn r13562) -Codechange: Yet another enumification, which required a bit of explanation/documentation of a trickery some would call a hack

This commit is contained in:
belugas 2008-06-18 03:19:31 +00:00
parent 22c017c0c2
commit be4e7b86f3
1 changed files with 16 additions and 3 deletions

View File

@ -98,7 +98,8 @@ enum ToolbarScenEditorWidgets {
TBSE_SEPARATOR, TBSE_SEPARATOR,
TBSE_DATEBACKWARD, TBSE_DATEBACKWARD,
TBSE_DATEFORWARD, TBSE_DATEFORWARD,
TBSE_ZOOMIN = 9, TBSE_SMALLMAP,
TBSE_ZOOMIN,
TBSE_ZOOMOUT, TBSE_ZOOMOUT,
TBSE_LANDGENERATE, TBSE_LANDGENERATE,
TBSE_TOWNGENERATE, TBSE_TOWNGENERATE,
@ -108,6 +109,14 @@ enum ToolbarScenEditorWidgets {
TBSE_PLACESIGNS, TBSE_PLACESIGNS,
}; };
/** The idea of this enum is to allow a separation between widget position
* and _menu_clicked_procs's entry. By shifting, the "action" id is extracted and
* kept safe for usage when reuired.
* @see ToolbarMenuWindow::OnMouseLoop */
enum ScenarioEditorMenuActions {
SEMA_MAP_CLICK = 17 << 8,
};
static ToolbarMode _toolbar_mode; static ToolbarMode _toolbar_mode;
static void SelectSignTool() static void SelectSignTool()
@ -658,8 +667,12 @@ static void ToolbarScenDateForward(Window *w)
static void ToolbarScenMapTownDir(Window *w) static void ToolbarScenMapTownDir(Window *w)
{ {
/* Scenario editor button, *hack*hack* use different button to activate */ /* Scenario editor button, Use different button to activate.
PopupMainToolbMenu(w, 8 | (17 << 8), STR_02DE_MAP_OF_WORLD, 4); * 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) static void ToolbarScenZoomIn(Window *w)