summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/depot_gui.cpp2
-rw-r--r--src/viewport.cpp8
-rw-r--r--src/viewport.h4
-rw-r--r--src/window.cpp4
4 files changed, 11 insertions, 7 deletions
diff --git a/src/depot_gui.cpp b/src/depot_gui.cpp
index 1598186a9..d0329597d 100644
--- a/src/depot_gui.cpp
+++ b/src/depot_gui.cpp
@@ -414,7 +414,7 @@ static void DepotClick(Window *w, int x, int y)
int mode = GetVehicleFromDepotWndPt(w, x, y, &v, &gdvp);
/* share / copy orders */
- if (_thd.place_mode && mode <= 0) {
+ if (_thd.place_mode != VHM_NONE && mode <= 0) {
_place_clicked_vehicle = (WP(w, depot_d).type == VEH_TRAIN ? gdvp.head : v);
return;
}
diff --git a/src/viewport.cpp b/src/viewport.cpp
index c1b05288c..289ba3532 100644
--- a/src/viewport.cpp
+++ b/src/viewport.cpp
@@ -2270,6 +2270,10 @@ void UpdateTileSelection()
break;
case VHM_RAIL:
_thd.new_drawstyle = GetAutorailHT(pt.x, pt.y); // draw one highlighted tile
+ break;
+ default:
+ NOT_REACHED();
+ break;
}
_thd.new_pos.x = x1 & ~0xF;
_thd.new_pos.y = y1 & ~0xF;
@@ -2826,8 +2830,8 @@ void SetObjectToPlace(CursorID icon, SpriteID pal, ViewportHighlightMode mode, W
Window *w;
/* undo clicking on button */
- if (_thd.place_mode != 0) {
- _thd.place_mode = 0;
+ if (_thd.place_mode != VHM_NONE) {
+ _thd.place_mode = VHM_NONE;
w = FindWindowById(_thd.window_class, _thd.window_number);
if (w != NULL) CallWindowEventNP(w, WE_ABORT_PLACE_OBJ);
}
diff --git a/src/viewport.h b/src/viewport.h
index e436edae3..b1bba7d4d 100644
--- a/src/viewport.h
+++ b/src/viewport.h
@@ -86,7 +86,7 @@ enum ViewportPlaceMethod {
VPM_SIGNALDIRS = 6, ///< similiar to VMP_RAILDIRS, but with different cursor
};
-/* viewport highlight mode (for highlighting tiles below cursor) */
+/** Viewport highlight mode (for highlighting tiles below cursor) */
enum ViewportHighlightMode {
VHM_NONE = 0, ///< default
VHM_RECT = 1, ///< rectangle (stations, depots, ...)
@@ -143,7 +143,7 @@ struct TileHighlightData {
byte new_drawstyle; // only used in UpdateTileSelection() to as a buffer to compare if there was a change between old and new
byte next_drawstyle; // queued, but not yet drawn style
- byte place_mode;
+ ViewportHighlightMode place_mode;
bool make_square_red;
WindowClass window_class;
WindowNumber window_number;
diff --git a/src/window.cpp b/src/window.cpp
index f64446c69..69e79e844 100644
--- a/src/window.cpp
+++ b/src/window.cpp
@@ -1772,7 +1772,7 @@ void MouseLoop(MouseClick click, int mousewheel)
case MC_DOUBLE_LEFT:
case MC_LEFT:
DEBUG(misc, 2, "Cursor: 0x%X (%d)", _cursor.sprite, _cursor.sprite);
- if (_thd.place_mode != 0 &&
+ if (_thd.place_mode != VHM_NONE &&
/* query button and place sign button work in pause mode */
_cursor.sprite != SPR_CURSOR_QUERY &&
_cursor.sprite != SPR_CURSOR_SIGN &&
@@ -1781,7 +1781,7 @@ void MouseLoop(MouseClick click, int mousewheel)
return;
}
- if (_thd.place_mode == 0) {
+ if (_thd.place_mode == VHM_NONE) {
HandleViewportClicked(vp, x, y);
} else {
PlaceObject();