mirror of https://github.com/OpenRCT2/OpenRCT2.git
Refactor invalidate methods
This commit is contained in:
parent
1d296242b4
commit
c13bd04954
|
@ -604,6 +604,31 @@ rct_window* window_guest_open(Peep* peep)
|
||||||
return window;
|
return window;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void window_guest_common_invalidate(rct_window* w)
|
||||||
|
{
|
||||||
|
if (window_guest_page_widgets[w->page] != w->widgets)
|
||||||
|
{
|
||||||
|
w->widgets = window_guest_page_widgets[w->page];
|
||||||
|
window_init_scroll_widgets(w);
|
||||||
|
}
|
||||||
|
|
||||||
|
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
||||||
|
|
||||||
|
auto peep = GET_PEEP(w->number);
|
||||||
|
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
||||||
|
set_format_arg(2, uint32_t, peep->id);
|
||||||
|
|
||||||
|
w->widgets[WIDX_BACKGROUND].right = w->width - 1;
|
||||||
|
w->widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
||||||
|
w->widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
||||||
|
w->widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
||||||
|
w->widgets[WIDX_TITLE].right = w->width - 2;
|
||||||
|
w->widgets[WIDX_CLOSE].left = w->width - 13;
|
||||||
|
w->widgets[WIDX_CLOSE].right = w->width - 3;
|
||||||
|
|
||||||
|
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Disables the finance tab when no money.
|
* Disables the finance tab when no money.
|
||||||
* Disables peep pickup when in certain no pickup states.
|
* Disables peep pickup when in certain no pickup states.
|
||||||
|
@ -1134,38 +1159,15 @@ void window_guest_overview_paint(rct_window* w, rct_drawpixelinfo* dpi)
|
||||||
*/
|
*/
|
||||||
void window_guest_overview_invalidate(rct_window* w)
|
void window_guest_overview_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets &= ~(
|
|
||||||
(1ULL << WIDX_TAB_1) | (1ULL << WIDX_TAB_2) | (1ULL << WIDX_TAB_3) | (1ULL << WIDX_TAB_4) | (1ULL << WIDX_TAB_5)
|
|
||||||
| (1ULL << WIDX_TAB_6) | (1ULL << WIDX_TAB_7));
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
|
auto peep = GET_PEEP(w->number);
|
||||||
w->pressed_widgets &= ~(1 << WIDX_TRACK);
|
w->pressed_widgets &= ~(1 << WIDX_TRACK);
|
||||||
if (peep->peep_flags & PEEP_FLAGS_TRACKING)
|
if (peep->peep_flags & PEEP_FLAGS_TRACKING)
|
||||||
{
|
{
|
||||||
w->pressed_widgets |= (1 << WIDX_TRACK);
|
w->pressed_widgets |= (1 << WIDX_TRACK);
|
||||||
}
|
}
|
||||||
|
|
||||||
window_guest_overview_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_overview_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_overview_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_overview_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_overview_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_overview_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_overview_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_guest_overview_widgets[WIDX_VIEWPORT].right = w->width - 26;
|
window_guest_overview_widgets[WIDX_VIEWPORT].right = w->width - 26;
|
||||||
window_guest_overview_widgets[WIDX_VIEWPORT].bottom = w->height - 14;
|
window_guest_overview_widgets[WIDX_VIEWPORT].bottom = w->height - 14;
|
||||||
|
|
||||||
|
@ -1184,8 +1186,6 @@ void window_guest_overview_invalidate(rct_window* w)
|
||||||
window_guest_overview_widgets[WIDX_RENAME].left = w->width - 25;
|
window_guest_overview_widgets[WIDX_RENAME].left = w->width - 25;
|
||||||
window_guest_overview_widgets[WIDX_LOCATE].left = w->width - 25;
|
window_guest_overview_widgets[WIDX_LOCATE].left = w->width - 25;
|
||||||
window_guest_overview_widgets[WIDX_TRACK].left = w->width - 25;
|
window_guest_overview_widgets[WIDX_TRACK].left = w->width - 25;
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1391,30 +1391,7 @@ void window_guest_stats_update(rct_window* w)
|
||||||
*/
|
*/
|
||||||
void window_guest_stats_invalidate(rct_window* w)
|
void window_guest_stats_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (w->widgets != window_guest_page_widgets[w->page])
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_stats_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_stats_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_stats_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_stats_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_stats_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_stats_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_stats_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1748,33 +1725,10 @@ void window_guest_rides_scroll_mouse_over(rct_window* w, int32_t scrollIndex, in
|
||||||
*/
|
*/
|
||||||
void window_guest_rides_invalidate(rct_window* w)
|
void window_guest_rides_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
set_format_arg(0, uint16_t, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_rides_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_rides_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_rides_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_rides_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_rides_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_rides_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_rides_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_guest_rides_widgets[WIDX_RIDE_SCROLL].right = w->width - 4;
|
window_guest_rides_widgets[WIDX_RIDE_SCROLL].right = w->width - 4;
|
||||||
window_guest_rides_widgets[WIDX_RIDE_SCROLL].bottom = w->height - 15;
|
window_guest_rides_widgets[WIDX_RIDE_SCROLL].bottom = w->height - 15;
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -1882,31 +1836,7 @@ void window_guest_finance_update(rct_window* w)
|
||||||
*/
|
*/
|
||||||
void window_guest_finance_invalidate(rct_window* w)
|
void window_guest_finance_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_finance_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_finance_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_finance_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_finance_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_finance_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_finance_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_finance_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2034,31 +1964,7 @@ void window_guest_thoughts_update(rct_window* w)
|
||||||
*/
|
*/
|
||||||
void window_guest_thoughts_invalidate(rct_window* w)
|
void window_guest_thoughts_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_thoughts_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_thoughts_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_thoughts_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_thoughts_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_thoughts_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_thoughts_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_thoughts_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -2139,31 +2045,7 @@ void window_guest_inventory_update(rct_window* w)
|
||||||
*/
|
*/
|
||||||
void window_guest_inventory_invalidate(rct_window* w)
|
void window_guest_inventory_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
Peep* peep = GET_PEEP(w->number);
|
|
||||||
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_inventory_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_inventory_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_inventory_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_inventory_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_inventory_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_inventory_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_inventory_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static rct_string_id window_guest_inventory_format_item(Peep* peep, int32_t item)
|
static rct_string_id window_guest_inventory_format_item(Peep* peep, int32_t item)
|
||||||
|
@ -2296,31 +2178,7 @@ void window_guest_debug_resize(rct_window* w)
|
||||||
|
|
||||||
void window_guest_debug_invalidate(rct_window* w)
|
void window_guest_debug_invalidate(rct_window* w)
|
||||||
{
|
{
|
||||||
if (window_guest_page_widgets[w->page] != w->widgets)
|
window_guest_common_invalidate(w);
|
||||||
{
|
|
||||||
w->widgets = window_guest_page_widgets[w->page];
|
|
||||||
window_init_scroll_widgets(w);
|
|
||||||
}
|
|
||||||
|
|
||||||
w->pressed_widgets |= 1ULL << (w->page + WIDX_TAB_1);
|
|
||||||
|
|
||||||
auto peep = GET_PEEP(w->number);
|
|
||||||
|
|
||||||
set_format_arg(0, rct_string_id, peep->name_string_idx);
|
|
||||||
set_format_arg(2, uint32_t, peep->id);
|
|
||||||
|
|
||||||
window_guest_debug_widgets[WIDX_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_debug_widgets[WIDX_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_debug_widgets[WIDX_PAGE_BACKGROUND].right = w->width - 1;
|
|
||||||
window_guest_debug_widgets[WIDX_PAGE_BACKGROUND].bottom = w->height - 1;
|
|
||||||
|
|
||||||
window_guest_debug_widgets[WIDX_TITLE].right = w->width - 2;
|
|
||||||
|
|
||||||
window_guest_debug_widgets[WIDX_CLOSE].left = w->width - 13;
|
|
||||||
window_guest_debug_widgets[WIDX_CLOSE].right = w->width - 3;
|
|
||||||
|
|
||||||
window_align_tabs(w, WIDX_TAB_1, WIDX_TAB_7);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void draw_debug_label(rct_drawpixelinfo* dpi, int32_t x, int32_t y, const char* label, const char* value)
|
static void draw_debug_label(rct_drawpixelinfo* dpi, int32_t x, int32_t y, const char* label, const char* value)
|
||||||
|
|
Loading…
Reference in New Issue