|
@@ -16,48 +16,49 @@
|
|
|
#include "blitter/factory.hpp"
|
|
|
#include "window_gui.h"
|
|
|
#include "zoom_func.h"
|
|
|
#include "core/alloc_func.hpp"
|
|
|
#include "map_func.h"
|
|
|
#include "vehicle_base.h"
|
|
|
#include "settings_type.h"
|
|
|
#include "cheat_func.h"
|
|
|
#include "window_func.h"
|
|
|
#include "tilehighlight_func.h"
|
|
|
|
|
|
#include "table/sprites.h"
|
|
|
|
|
|
static Point _drag_delta; ///< delta between mouse cursor and upper left corner of dragged window
|
|
|
static Window *_mouseover_last_w = NULL; ///< Window of the last MOUSEOVER event
|
|
|
|
|
|
/**
|
|
|
* List of windows opened at the screen.
|
|
|
* Uppermost window is at _z_windows[_last_z_window - 1],
|
|
|
* bottom window is at _z_windows[0]
|
|
|
*/
|
|
|
Window *_z_windows[MAX_NUMBER_OF_WINDOWS];
|
|
|
Window **_last_z_window; ///< always points to the next free space in the z-array
|
|
|
|
|
|
byte _no_scroll;
|
|
|
Point _cursorpos_drag_start;
|
|
|
|
|
|
int _scrollbar_start_pos;
|
|
|
int _scrollbar_size;
|
|
|
byte _scroller_click_timeout;
|
|
|
|
|
|
bool _scrolling_scrollbar;
|
|
|
bool _scrolling_viewport;
|
|
|
|
|
|
byte _special_mouse_mode;
|
|
|
|
|
|
|
|
|
void CDECL Window::SetWidgetsDisabledState(bool disab_stat, int widgets, ...)
|
|
|
{
|
|
|
va_list wdg_list;
|
|
|
|
|
|
va_start(wdg_list, widgets);
|
|
|
|
|
|
while (widgets != WIDGET_LIST_END) {
|
|
|
SetWidgetDisabledState(widgets, disab_stat);
|
|
|
widgets = va_arg(wdg_list, int);
|
|
|
}
|
|
|
|
|
|
va_end(wdg_list);
|