summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/main_gui.cpp3
-rw-r--r--src/viewport_func.h4
-rw-r--r--src/viewport_type.h2
3 files changed, 5 insertions, 4 deletions
diff --git a/src/main_gui.cpp b/src/main_gui.cpp
index 47156f690..6a5781897 100644
--- a/src/main_gui.cpp
+++ b/src/main_gui.cpp
@@ -128,7 +128,7 @@ void ShowNetworkGiveMoneyWindow(CompanyID company)
/* Zooms a viewport in a window in or out
* No button handling or what so ever */
-bool DoZoomInOutWindow(int how, Window *w)
+bool DoZoomInOutWindow(ZoomStateChange how, Window *w)
{
ViewPort *vp;
@@ -136,6 +136,7 @@ bool DoZoomInOutWindow(int how, Window *w)
vp = w->viewport;
switch (how) {
+ case ZOOM_NONE: NOT_REACHED();
case ZOOM_IN:
if (vp->zoom == ZOOM_LVL_MIN) return false;
vp->zoom = (ZoomLevel)((int)vp->zoom - 1);
diff --git a/src/viewport_func.h b/src/viewport_func.h
index dbe965d4f..a2dd0df18 100644
--- a/src/viewport_func.h
+++ b/src/viewport_func.h
@@ -35,12 +35,12 @@ void UpdateViewportPosition(Window *w);
*/
void MarkAllViewportsDirty(int left, int top, int right, int bottom);
-bool DoZoomInOutWindow(int how, Window *w);
+bool DoZoomInOutWindow(ZoomStateChange how, Window *w);
void ZoomInOrOutToCursorWindow(bool in, Window * w);
Point GetTileZoomCenterWindow(bool in, Window * w);
void HandleZoomMessage(Window *w, const ViewPort *vp, byte widget_zoom_in, byte widget_zoom_out);
-static inline void MaxZoomInOut(int how, Window *w)
+static inline void MaxZoomInOut(ZoomStateChange how, Window *w)
{
while (DoZoomInOutWindow(how, w)) {};
}
diff --git a/src/viewport_type.h b/src/viewport_type.h
index 165d20c20..8f65f8506 100644
--- a/src/viewport_type.h
+++ b/src/viewport_type.h
@@ -51,7 +51,7 @@ struct ViewportSign {
void MarkDirty() const;
};
-enum {
+enum ZoomStateChange {
ZOOM_IN = 0,
ZOOM_OUT = 1,
ZOOM_NONE = 2, // hack, used to update the button status