summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbjarni <bjarni@openttd.org>2006-10-06 21:44:18 +0000
committerbjarni <bjarni@openttd.org>2006-10-06 21:44:18 +0000
commit6582f0b44ad7e9b84f8c82658951e4aa9058fddc (patch)
tree9e6ae5eb39205151a7c93ebe6dace73900a6cda6
parentb6b73f708940e95db0cf9d0cab82e22b04a42ff6 (diff)
downloadopenttd-6582f0b44ad7e9b84f8c82658951e4aa9058fddc.tar.xz
(svn r6672) -Codechange: [depot & vehicle windows] applied SetWindowWidgetsDisabledState() and SetWindowWidgetsHiddenState() to depot and vehicle windows
-rw-r--r--depot_gui.c28
-rw-r--r--vehicle_gui.c24
2 files changed, 27 insertions, 25 deletions
diff --git a/depot_gui.c b/depot_gui.c
index 35ddced42..3acdd2886 100644
--- a/depot_gui.c
+++ b/depot_gui.c
@@ -301,21 +301,22 @@ static void DrawDepotWindow(Window *w)
TileIndex tile = w->window_number;
int x, y, i, hnum, max;
uint16 num = WP(w, depot_d).engine_count;
- bool is_localplayer = IsTileOwner(tile, _local_player);
/* Set the row and number of boxes in each row based on the number of boxes drawn in the matrix */
uint16 rows_in_display = w->widget[DEPOT_WIDGET_MATRIX].data >> 8;
uint16 boxes_in_each_row = w->widget[DEPOT_WIDGET_MATRIX].data & 0xFF;
/* setup disabled buttons */
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_STOP_ALL, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_START_ALL, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_SELL, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_SELL_CHAIN, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_SELL_ALL, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_BUILD, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_CLONE, !is_localplayer);
- SetWindowWidgetDisabledState(w, DEPOT_WIDGET_AUTOREPLACE, !is_localplayer);
+ SetWindowWidgetsDisabledState(w, !IsTileOwner(tile, _local_player),
+ DEPOT_WIDGET_STOP_ALL,
+ DEPOT_WIDGET_START_ALL,
+ DEPOT_WIDGET_SELL,
+ DEPOT_WIDGET_SELL_CHAIN,
+ DEPOT_WIDGET_SELL_ALL,
+ DEPOT_WIDGET_BUILD,
+ DEPOT_WIDGET_CLONE,
+ DEPOT_WIDGET_AUTOREPLACE,
+ WIDGET_LIST_END);
/* determine amount of items for scroller */
if (WP(w, depot_d).type == VEH_Train) {
@@ -1001,10 +1002,11 @@ void ShowDepotWindow(TileIndex tile, byte type)
(w->vscroll.cap * 0x100) // number of rows to draw on the background
+ (type == VEH_Train ? 1 : w->hscroll.cap); // number of boxes in each row. Trains always have just one
- if (type != VEH_Train) {
- HideWindowWidget(w, DEPOT_WIDGET_H_SCROLL);
- HideWindowWidget(w, DEPOT_WIDGET_SELL_CHAIN);
- }
+
+ SetWindowWidgetsHiddenState(w, type != VEH_Train,
+ DEPOT_WIDGET_H_SCROLL,
+ DEPOT_WIDGET_H_SCROLL,
+ WIDGET_LIST_END);
/* Move the widgets to their right locations */
ResizeWindowWidgets(w, widget_moves, lengthof(widget_moves), horizontal, vertical);
diff --git a/vehicle_gui.c b/vehicle_gui.c
index d41655ab7..57c68bb18 100644
--- a/vehicle_gui.c
+++ b/vehicle_gui.c
@@ -1402,10 +1402,12 @@ static void CreateVehicleListWindow(Window *w)
if (player == _local_player) {
HideWindowWidget(w, VLW_WIDGET_OTHER_PLAYER_FILLER);
} else {
- HideWindowWidget(w, VLW_WIDGET_SEND_TO_DEPOT);
- HideWindowWidget(w, VLW_WIDGET_AUTOREPLACE);
- HideWindowWidget(w, VLW_WIDGET_STOP_ALL);
- HideWindowWidget(w, VLW_WIDGET_START_ALL);
+ SetWindowWidgetsHiddenState(w, true,
+ VLW_WIDGET_SEND_TO_DEPOT,
+ VLW_WIDGET_AUTOREPLACE,
+ VLW_WIDGET_STOP_ALL,
+ VLW_WIDGET_START_ALL,
+ WIDGET_LIST_END);
}
/* Set up the window widgets */
@@ -1601,14 +1603,12 @@ static void DrawVehicleListWindow(Window *w)
default: NOT_REACHED();
}
- if (owner == _local_player) {
- bool list_isempty = vl->l.list_length == 0;
-
- SetWindowWidgetDisabledState(w, VLW_WIDGET_SEND_TO_DEPOT, list_isempty);
- SetWindowWidgetDisabledState(w, VLW_WIDGET_AUTOREPLACE, list_isempty);
- SetWindowWidgetDisabledState(w, VLW_WIDGET_STOP_ALL, list_isempty);
- SetWindowWidgetDisabledState(w, VLW_WIDGET_START_ALL, list_isempty);
- }
+ SetWindowWidgetsDisabledState(w, vl->l.list_length == 0,
+ VLW_WIDGET_SEND_TO_DEPOT,
+ VLW_WIDGET_AUTOREPLACE,
+ VLW_WIDGET_STOP_ALL,
+ VLW_WIDGET_START_ALL,
+ WIDGET_LIST_END);
DrawWindowWidgets(w);