Merge pull request #1121 from Gymnasiast/rct1-colour-scheme-button3

Add GUI option for switching to the RCT1 colour scheme
This commit is contained in:
Ted John 2015-05-21 16:43:47 +01:00
commit e4f8805999
17 changed files with 295 additions and 190 deletions

View File

@ -3485,4 +3485,5 @@ STR_5148 :{SMALLFONT}{BLACK}Change the game speed
STR_5149 :{SMALLFONT}{BLACK}Open the cheats window
STR_5150 :Enable debugging tools
STR_5151 :,
STR_5152 :.
STR_5152 :.
STR_5153 :RCT1 colour scheme

View File

@ -717,6 +717,17 @@ void window_invalidate_by_number(rct_windowclass cls, rct_windownumber number)
window_invalidate(w);
}
/**
* Invalidates all windows.
*/
void window_invalidate_all()
{
rct_window* w;
for (w = g_window_list; w < RCT2_NEW_WINDOW; w++)
window_invalidate(w);
}
/**
* Invalidates the specified widget of a window.
* rct2: 0x006EC402
@ -2116,4 +2127,4 @@ void window_move_and_snap(rct_window *w, int newWindowX, int newWindowY, int sna
int window_can_resize(rct_window *w)
{
return (w->flags & WF_RESIZABLE) && (w->min_width != w->max_width || w->min_height != w->max_height);
}
}

View File

@ -437,6 +437,8 @@ static void* window_finances_page_events[] = {
window_finances_research_events
};
static void window_finances_set_colours();
#pragma endregion
#pragma region Enabled widgets
@ -542,18 +544,6 @@ void window_finances_open()
w->number = 0;
w->frame_no = 0;
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 19;
w->colours[2] = 19;
}
else
{
w->colours[0] = 4;
w->colours[1] = 1;
w->colours[2] = 1;
}
research_update_uncompleted_types();
}
@ -650,6 +640,7 @@ static void window_finances_summary_invalidate()
rct_window *w;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_SUMMARY]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_SUMMARY];
@ -823,6 +814,7 @@ static void window_finances_financial_graph_invalidate()
rct_window *w;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_FINANCIAL_GRAPH];
@ -945,6 +937,7 @@ static void window_finances_park_value_graph_invalidate()
rct_window *w;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_VALUE_GRAPH]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_VALUE_GRAPH];
@ -1063,6 +1056,7 @@ static void window_finances_profit_graph_invalidate()
rct_window *w;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_PROFIT_GRAPH]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_PROFIT_GRAPH];
@ -1185,6 +1179,7 @@ static void window_finances_marketing_invalidate()
int i;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_MARKETING]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_MARKETING];
@ -1434,6 +1429,7 @@ static void window_finances_research_invalidate()
rct_window *w;
window_get_register(w);
window_finances_set_colours();
if (w->widgets != window_finances_page_widgets[WINDOW_FINANCES_PAGE_RESEARCH]) {
w->widgets = window_finances_page_widgets[WINDOW_FINANCES_PAGE_RESEARCH];
@ -1565,4 +1561,23 @@ static void window_finances_draw_tab_images(rct_drawpixelinfo *dpi, rct_window *
window_finances_draw_tab_image(dpi, w, WINDOW_FINANCES_PAGE_RESEARCH, SPR_TAB_FINANCES_RESEARCH_0);
}
static void window_finances_set_colours()
{
rct_window *w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 19;
w->colours[2] = 19;
}
else
{
w->colours[0] = 4;
w->colours[1] = 1;
w->colours[2] = 1;
}
}
#pragma endregion

View File

@ -153,19 +153,6 @@ void window_game_bottom_toolbar_open()
// Reset the middle widget to not show by default.
// If it is required to be shown news_update will reshow it.
window_game_bottom_toolbar_widgets[WIDX_MIDDLE_OUTSET].type = WWT_EMPTY;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 140;
window->colours[1] = 140;
window->colours[2] = 0;
}
else
{
window->colours[0] = 129;
window->colours[1] = 129;
window->colours[2] = 0;
}
}
/**
@ -282,6 +269,19 @@ static void window_game_bottom_toolbar_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 140;
w->colours[1] = 140;
w->colours[2] = 0;
}
else
{
w->colours[0] = 129;
w->colours[1] = 129;
w->colours[2] = 0;
}
// Anchor the middle and right panel to the right
x = RCT2_GLOBAL(RCT2_ADDRESS_SCREEN_WIDTH, sint16);
w->width = x;

View File

@ -419,6 +419,8 @@ void* window_guest_page_events[] = {
window_guest_inventory_events
};
void window_guest_set_colours();
//0x981D3C
uint32 window_guest_page_enabled_widgets[] = {
(1 << WIDX_CLOSE) |
@ -509,19 +511,6 @@ void window_guest_open(rct_peep* peep){
window->no_list_items = 0;
window->selected_list_item = -1;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 1;
window->colours[1] = 15;
window->colours[2] = 15;
}
else
{
window->colours[0] = 22;
window->colours[1] = 26;
window->colours[2] = 26;
}
window->viewport_focus_coordinates.y = -1;
}
@ -1039,6 +1028,7 @@ void window_guest_overview_paint(){
void window_guest_overview_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (window_guest_page_widgets[w->page] != w->widgets){
w->widgets = window_guest_page_widgets[w->page];
@ -1343,6 +1333,7 @@ void window_guest_stats_update(){
void window_guest_stats_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (w->widgets != window_guest_page_widgets[w->page]) {
w->widgets = window_guest_page_widgets[w->page];
@ -1674,6 +1665,8 @@ void window_guest_rides_scroll_mouse_over(){
void window_guest_rides_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (window_guest_page_widgets[w->page] != w->widgets){
w->widgets = window_guest_page_widgets[w->page];
window_init_scroll_widgets(w);
@ -1796,6 +1789,7 @@ void window_guest_finance_update(){
void window_guest_finance_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (window_guest_page_widgets[w->page] != w->widgets){
w->widgets = window_guest_page_widgets[w->page];
@ -1935,6 +1929,7 @@ void window_guest_thoughts_update(){
void window_guest_thoughts_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (window_guest_page_widgets[w->page] != w->widgets){
w->widgets = window_guest_page_widgets[w->page];
@ -2037,6 +2032,7 @@ void window_guest_inventory_update(){
void window_guest_inventory_invalidate(){
rct_window* w;
window_get_register(w);
window_guest_set_colours();
if (window_guest_page_widgets[w->page] != w->widgets){
w->widgets = window_guest_page_widgets[w->page];
@ -2196,3 +2192,22 @@ void window_guest_inventory_paint(){
gfx_draw_string_left(dpi, 2293, (void*)0, 0, x, y);
}
}
void window_guest_set_colours()
{
rct_window* w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 15;
w->colours[2] = 15;
}
else
{
w->colours[0] = 22;
w->colours[1] = 26;
w->colours[2] = 26;
}
}

View File

@ -174,19 +174,6 @@ void window_guest_list_open()
window->max_width = 500;
window->max_height = 450;
window->flags |= WF_RESIZABLE;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 1;
window->colours[1] = 15;
window->colours[2] = 15;
}
else
{
window->colours[0] = 22;
window->colours[1] = 26;
window->colours[2] = 26;
}
}
/**
@ -583,6 +570,19 @@ static void window_guest_list_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 15;
w->colours[2] = 15;
}
else
{
w->colours[0] = 22;
w->colours[1] = 26;
w->colours[2] = 26;
}
w->pressed_widgets &= ~(1 << WIDX_TAB_1);
w->pressed_widgets &= ~(1 << WIDX_TAB_2);
w->pressed_widgets |= (1LL << (_window_guest_list_selected_tab + WIDX_TAB_1));

View File

@ -156,19 +156,6 @@ void window_new_campaign_open(sint16 campaignType)
(1 << WIDX_WEEKS_DECREASE_BUTTON);
window_init_scroll_widgets(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 19;
w->colours[1] = 19;
w->colours[2] = 19;
}
else
{
w->colours[0] = 4;
w->colours[1] = 4;
w->colours[2] = 1;
}
window_new_campaign_widgets[WIDX_TITLE].image = STR_MARKETING_VOUCHERS_FOR_FREE_ENTRY_TO_THE_PARK + campaignType;
// Campaign type
@ -359,6 +346,19 @@ static void window_new_campaign_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 19;
w->colours[1] = 19;
w->colours[2] = 19;
}
else
{
w->colours[0] = 4;
w->colours[1] = 4;
w->colours[2] = 1;
}
window_new_campaign_widgets[WIDX_RIDE_LABEL].type = WWT_EMPTY;
window_new_campaign_widgets[WIDX_RIDE_DROPDOWN].type = WWT_EMPTY;
window_new_campaign_widgets[WIDX_RIDE_DROPDOWN_BUTTON].type = WWT_EMPTY;

View File

@ -412,19 +412,6 @@ rct_window *window_new_ride_open()
w->frame_no = 0;
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 24;
w->colours[1] = 26;
w->colours[2] = 26;
}
else
{
w->colours[0] = 26;
w->colours[1] = 1;
w->colours[2] = 1;
}
w->new_ride.selected_ride_id = -1;
w->new_ride.highlighted_ride_id = -1;
_lastTrackDesignCountRideType.type = 255;
@ -741,6 +728,19 @@ static void window_new_ride_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 24;
w->colours[1] = 26;
w->colours[2] = 26;
}
else
{
w->colours[0] = 26;
w->colours[1] = 1;
w->colours[2] = 1;
}
window_new_ride_set_pressed_tab(w);
window_new_ride_widgets[WIDX_TITLE].image = STR_NEW_TRANSPORT_RIDES + _window_new_ride_current_tab;

View File

@ -92,6 +92,7 @@ enum WINDOW_OPTIONS_WIDGET_IDX {
WIDX_TOOLBAR_SHOW_FINANCES,
WIDX_TOOLBAR_SHOW_RESEARCH,
WIDX_TOOLBAR_SHOW_CHEATS,
WIDX_RCT1_COLOUR_SCHEME,
WIDX_REAL_NAME_CHECKBOX,
WIDX_SAVE_PLUGIN_DATA_CHECKBOX,
@ -152,6 +153,7 @@ static rct_widget window_options_widgets[] = {
{ WWT_CHECKBOX, 2, 10, 299, 82, 93, 5120, STR_NONE },
{ WWT_CHECKBOX, 2, 10, 299, 97, 108, 5121, STR_NONE },
{ WWT_CHECKBOX, 2, 10, 299, 112, 123, 5147, STR_NONE },
{ WWT_CHECKBOX, 2, 10, 299, 127, 138, 5153, STR_NONE }, // rct1 colour scheme
// Misc
{ WWT_CHECKBOX, 2, 10, 299, 53, 64, STR_REAL_NAME, STR_REAL_NAME_TIP },
@ -268,7 +270,8 @@ void window_options_open()
(1ULL << WIDX_AUTOSAVE) |
(1ULL << WIDX_AUTOSAVE_DROPDOWN) |
(1ULL << WIDX_ALLOW_SUBTYPE_SWITCHING) |
(1ULL << WIDX_DEBUGGING_TOOLS);
(1ULL << WIDX_DEBUGGING_TOOLS) |
(1ULL << WIDX_RCT1_COLOUR_SCHEME);
w->page = WINDOW_OPTIONS_PAGE_DISPLAY;
window_init_scroll_widgets(w);
@ -325,6 +328,11 @@ static void window_options_mouseup()
window_invalidate(w);
window_invalidate_by_class(WC_TOP_TOOLBAR);
break;
case WIDX_RCT1_COLOUR_SCHEME:
gConfigInterface.rct1_colour_scheme ^= 1;
config_save_default();
window_invalidate_all();
break;
case WIDX_ALLOW_SUBTYPE_SWITCHING:
gConfigInterface.allow_subtype_switching ^= 1;
config_save_default();
@ -768,12 +776,14 @@ static void window_options_invalidate()
widget_set_checkbox_value(w, WIDX_TOOLBAR_SHOW_FINANCES, gConfigInterface.toolbar_show_finances);
widget_set_checkbox_value(w, WIDX_TOOLBAR_SHOW_RESEARCH, gConfigInterface.toolbar_show_research);
widget_set_checkbox_value(w, WIDX_TOOLBAR_SHOW_CHEATS, gConfigInterface.toolbar_show_cheats);
widget_set_checkbox_value(w, WIDX_RCT1_COLOUR_SCHEME, gConfigInterface.rct1_colour_scheme);
window_options_widgets[WIDX_SCREEN_EDGE_SCROLLING].type = WWT_CHECKBOX;
window_options_widgets[WIDX_HOTKEY_DROPDOWN].type = WWT_DROPDOWN_BUTTON;
window_options_widgets[WIDX_TOOLBAR_SHOW_FINANCES].type = WWT_CHECKBOX;
window_options_widgets[WIDX_TOOLBAR_SHOW_RESEARCH].type = WWT_CHECKBOX;
window_options_widgets[WIDX_TOOLBAR_SHOW_CHEATS].type = WWT_CHECKBOX;
window_options_widgets[WIDX_RCT1_COLOUR_SCHEME].type = WWT_CHECKBOX;
break;
case WINDOW_OPTIONS_PAGE_MISC:
widget_set_checkbox_value(w, WIDX_ALLOW_SUBTYPE_SWITCHING, gConfigInterface.allow_subtype_switching);

View File

@ -602,6 +602,8 @@ static void window_ride_customer_update(rct_window *w);
static void window_ride_customer_invalidate();
static void window_ride_customer_paint();
static void window_ride_set_colours();
// 0x0098DFD4
static void* window_ride_main_events[] = {
window_ride_emptysub,
@ -1173,19 +1175,6 @@ rct_window *window_ride_open(int rideIndex)
w->max_height = 450;
w->flags |= WF_RESIZABLE;
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 26;
w->colours[2] = 11;
}
else
{
w->colours[0] = 26;
w->colours[1] = 1;
w->colours[2] = 11;
}
ride = GET_RIDE(rideIndex);
numSubTypes = 0;
rideEntryIndexPtr = get_ride_entry_indices_for_ride_type(ride->type);
@ -1986,6 +1975,8 @@ static void window_ride_main_invalidate()
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
w->widgets = widgets;
@ -2435,6 +2426,7 @@ static void window_ride_vehicle_invalidate()
int carsPerTrain;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -2998,6 +2990,7 @@ static void window_ride_operating_invalidate()
rct_string_id format, caption, tooltip;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -3405,6 +3398,7 @@ static void window_ride_maintenance_invalidate()
rct_widget *widgets;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -3923,6 +3917,7 @@ static void window_ride_colour_invalidate()
int vehicleColourSchemeType;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -4416,6 +4411,7 @@ static void window_ride_music_invalidate()
int isMusicActivated;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -4708,6 +4704,7 @@ static void window_ride_measurements_invalidate()
rct_widget *widgets;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -5158,6 +5155,7 @@ static void window_ride_graphs_invalidate()
int x, y;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -5503,6 +5501,7 @@ static void window_ride_income_invalidate()
int primaryItem, secondaryItem;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -5784,6 +5783,7 @@ static void window_ride_customer_invalidate()
rct_widget *widgets;
window_get_register(w);
window_ride_set_colours();
widgets = window_ride_page_widgets[w->page];
if (w->widgets != widgets) {
@ -5922,4 +5922,23 @@ static void window_ride_customer_paint()
gfx_draw_string_left(dpi, stringId, &age, 0, x, y);
}
static void window_ride_set_colours()
{
rct_window *w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 26;
w->colours[2] = 11;
}
else
{
w->colours[0] = 26;
w->colours[1] = 1;
w->colours[2] = 11;
}
}
#pragma endregion

View File

@ -162,20 +162,6 @@ void window_ride_list_open()
window->max_width = 400;
window->max_height = 450;
window->flags |= WF_RESIZABLE;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 1;
window->colours[1] = 26;
window->colours[2] = 26;
}
else
{
window->colours[0] = 26;
window->colours[1] = 1;
window->colours[2] = 1;
}
}
_window_ride_list_information_type = INFORMATION_TYPE_STATUS;
window->list_information_type = 0;
@ -434,6 +420,19 @@ static void window_ride_list_invalidate()
w->widgets[WIDX_LIST].bottom = w->height - 4;
w->widgets[WIDX_OPEN_CLOSE_ALL].right = w->width - 2;
w->widgets[WIDX_OPEN_CLOSE_ALL].left = w->width - 25;
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 26;
w->colours[2] = 26;
}
else
{
w->colours[0] = 26;
w->colours[1] = 1;
w->colours[2] = 1;
}
}
/**

View File

@ -163,6 +163,8 @@ void window_staff_stats_invalidate();
void window_staff_stats_paint();
void window_staff_stats_tab_paint(rct_window* w, rct_drawpixelinfo* dpi);
void window_staff_set_colours();
// 0x992AEC
static void* window_staff_overview_events[] = {
window_staff_overview_close,
@ -319,19 +321,6 @@ void window_staff_open(rct_peep* peep)
w->max_height = 450;
w->flags = 1 << 8;
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 4;
w->colours[2] = 4;
}
else
{
w->colours[0] = 12;
w->colours[1] = 4;
w->colours[2] = 4;
}
}
w->page = 0;
window_invalidate(w);
@ -735,6 +724,8 @@ void window_staff_stats_invalidate(){
rct_window* w;
window_get_register(w);
window_staff_set_colours();
if (window_staff_page_widgets[w->page] != w->widgets){
w->widgets = window_staff_page_widgets[w->page];
window_init_scroll_widgets(w);
@ -767,6 +758,8 @@ void window_staff_options_invalidate(){
rct_window* w;
window_get_register(w);
window_staff_set_colours();
if (window_staff_page_widgets[w->page] != w->widgets){
w->widgets = window_staff_page_widgets[w->page];
window_init_scroll_widgets(w);
@ -839,6 +832,8 @@ void window_staff_overview_invalidate(){
rct_window* w;
window_get_register(w);
window_staff_set_colours();
if (window_staff_page_widgets[w->page] != w->widgets){
w->widgets = window_staff_page_widgets[w->page];
window_init_scroll_widgets(w);
@ -1393,3 +1388,22 @@ void window_staff_options_dropdown()
game_do_command(peep->x, (costume << 8) | 1, peep->y, w->number, GAME_COMMAND_SET_STAFF_ORDER, (int)peep, 0);
}
void window_staff_set_colours()
{
rct_window* w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 4;
w->colours[2] = 4;
}
else
{
w->colours[0] = 12;
w->colours[1] = 4;
w->colours[2] = 4;
}
}

View File

@ -168,19 +168,6 @@ void window_staff_list_open()
window->max_width = 500;
window->max_height = 450;
window->flags |= WF_RESIZABLE;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 1;
window->colours[1] = 4;
window->colours[2] = 4;
}
else
{
window->colours[0] = 12;
window->colours[1] = 4;
window->colours[2] = 4;
}
}
void window_staff_list_cancel_tools(rct_window *w) {
@ -469,6 +456,19 @@ void window_staff_list_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 1;
w->colours[1] = 4;
w->colours[2] = 4;
}
else
{
w->colours[0] = 12;
w->colours[1] = 4;
w->colours[2] = 4;
}
int pressed_widgets = w->pressed_widgets & 0xFFFFFF0F;
uint8 tabIndex = RCT2_GLOBAL(RCT2_ADDRESS_WINDOW_STAFF_LIST_SELECTED_TAB, uint8);
uint8 widgetIndex = tabIndex + 4;

View File

@ -34,6 +34,7 @@ static rct_widget window_title_exit_widgets[] = {
static void window_title_exit_emptysub() {}
static void window_title_exit_paint();
static void window_title_exit_mouseup();
static void window_title_exit_invalidate();
static void* window_title_exit_events[] = {
window_title_exit_emptysub,
@ -61,7 +62,7 @@ static void* window_title_exit_events[] = {
window_title_exit_emptysub,
window_title_exit_emptysub,
window_title_exit_emptysub,
window_title_exit_emptysub,
window_title_exit_invalidate,
window_title_exit_paint,
window_title_exit_emptysub
};
@ -85,19 +86,6 @@ void window_title_exit_open()
window->enabled_widgets |= 1;
window_init_scroll_widgets(window);
window->flags |= 16;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 140;
window->colours[1] = 140;
window->colours[2] = 140;
}
else
{
window->colours[0] = 129;
window->colours[1] = 129;
window->colours[2] = 129;
}
}
/**
@ -132,3 +120,22 @@ static void window_title_exit_paint()
window_draw_widgets(w, dpi);
}
static void window_title_exit_invalidate()
{
rct_window *w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 140;
w->colours[1] = 140;
w->colours[2] = 140;
}
else
{
w->colours[0] = 129;
w->colours[1] = 129;
w->colours[2] = 129;
}
}

View File

@ -50,6 +50,7 @@ static void window_title_menu_mousedown(int widgetIndex, rct_window*w, rct_widge
static void window_title_menu_dropdown();
static void window_title_menu_unknown17();
static void window_title_menu_paint();
static void window_title_menu_invalidate();
static void* window_title_menu_events[] = {
window_title_menu_emptysub,
@ -77,7 +78,7 @@ static void* window_title_menu_events[] = {
window_title_menu_emptysub,
window_title_menu_unknown17,
window_title_menu_emptysub,
window_title_menu_emptysub,
window_title_menu_invalidate,
window_title_menu_paint,
window_title_menu_emptysub
};
@ -101,19 +102,6 @@ void window_title_menu_open()
window->enabled_widgets |= (8 | 4 | 2 | 1);
window_init_scroll_widgets(window);
window->flags |= 16;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 140;
window->colours[1] = 140;
window->colours[2] = 140;
}
else
{
window->colours[0] = 129;
window->colours[1] = 129;
window->colours[2] = 129;
}
}
static void window_title_menu_mouseup()
@ -201,3 +189,22 @@ static void window_title_menu_paint()
window_draw_widgets(w, dpi);
}
static void window_title_menu_invalidate()
{
rct_window *w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 140;
w->colours[1] = 140;
w->colours[2] = 140;
}
else
{
w->colours[0] = 129;
w->colours[1] = 129;
w->colours[2] = 129;
}
}

View File

@ -33,6 +33,7 @@ static rct_widget window_title_options_widgets[] = {
static void window_title_options_emptysub() {}
static void window_title_options_paint();
static void window_title_options_mouseup();
static void window_title_options_invalidate();
static void* window_title_options_events[] = {
window_title_options_emptysub,
@ -60,7 +61,7 @@ static void* window_title_options_events[] = {
window_title_options_emptysub,
window_title_options_emptysub,
window_title_options_emptysub,
window_title_options_emptysub,
window_title_options_invalidate,
window_title_options_paint,
window_title_options_emptysub
};
@ -83,19 +84,6 @@ void window_title_options_open()
window->enabled_widgets |= 1;
window_init_scroll_widgets(window);
window->flags |= 16;
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 140;
window->colours[1] = 140;
window->colours[2] = 140;
}
else
{
window->colours[0] = 129;
window->colours[1] = 129;
window->colours[2] = 129;
}
}
static void window_title_options_mouseup()
@ -121,3 +109,22 @@ static void window_title_options_paint()
window_draw_widgets(w, dpi);
}
static void window_title_options_invalidate()
{
rct_window *w;
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 140;
w->colours[1] = 140;
w->colours[2] = 140;
}
else
{
w->colours[0] = 129;
w->colours[1] = 129;
w->colours[2] = 129;
}
}

View File

@ -221,21 +221,6 @@ void window_top_toolbar_open()
window->widgets = window_top_toolbar_widgets;
window_init_scroll_widgets(window);
if(!gConfigInterface.rct1_colour_scheme)
{
window->colours[0] = 7;
window->colours[1] = 12;
window->colours[2] = 24;
window->colours[3] = 1;
}
else
{
window->colours[0] = 1;
window->colours[1] = 1;
window->colours[2] = 1;
window->colours[3] = 1;
}
}
/**
@ -472,6 +457,21 @@ static void window_top_toolbar_invalidate()
window_get_register(w);
if(!gConfigInterface.rct1_colour_scheme)
{
w->colours[0] = 7;
w->colours[1] = 12;
w->colours[2] = 24;
w->colours[3] = 1;
}
else
{
w->colours[0] = 1;
w->colours[1] = 1;
w->colours[2] = 1;
w->colours[3] = 1;
}
// Enable / disable buttons
window_top_toolbar_widgets[WIDX_PAUSE].type = WWT_TRNBTN;
window_top_toolbar_widgets[WIDX_FILE_MENU].type = WWT_TRNBTN;