static void window_multiplayer_groups_mouseup(rct_window *w, sint32 widgetIndex) { switch (widgetIndex) { case WIDX_CLOSE: window_close(w); break; case WIDX_TAB1: case WIDX_TAB2: case WIDX_TAB3: case WIDX_TAB4: if (w->page != widgetIndex - WIDX_TAB1) { window_multiplayer_set_page(w, widgetIndex - WIDX_TAB1); } break; case WIDX_ADD_GROUP: game_do_command(0, GAME_COMMAND_FLAG_APPLY, 0, 0, GAME_COMMAND_MODIFY_GROUPS, 0, 0); break; case WIDX_REMOVE_GROUP: game_do_command(1 | (_selectedGroup << 8), GAME_COMMAND_FLAG_APPLY, 0, 0, GAME_COMMAND_MODIFY_GROUPS, 0, 0); break; case WIDX_RENAME_GROUP:; sint32 groupIndex = network_get_group_index(_selectedGroup); const utf8 *groupName = network_get_group_name(groupIndex); window_text_input_raw_open(w, widgetIndex, STR_GROUP_NAME, STR_ENTER_NEW_NAME_FOR_THIS_GROUP, (utf8*)groupName, 32); break; } }
static void window_install_track_design(rct_window* w) { utf8 destPath[MAX_PATH]; platform_get_user_directory(destPath, "track", sizeof(destPath)); if (!platform_ensure_directory_exists(destPath)) { log_error("Unable to create directory '%s'", destPath); context_show_error(STR_CANT_SAVE_TRACK_DESIGN, STR_NONE); return; } safe_strcat_path(destPath, _trackName.c_str(), sizeof(destPath)); path_append_extension(destPath, ".td6", sizeof(destPath)); if (platform_file_exists(destPath)) { log_info("%s already exists, prompting user for a different track design name", destPath); context_show_error(STR_UNABLE_TO_INSTALL_THIS_TRACK_DESIGN, STR_NONE); window_text_input_raw_open( w, WIDX_INSTALL, STR_SELECT_NEW_NAME_FOR_TRACK_DESIGN, STR_AN_EXISTING_TRACK_DESIGN_ALREADY_HAS_THIS_NAME, _trackName.c_str(), 255); } else { if (track_repository_install(_trackPath.c_str())) { window_close(w); } else { context_show_error(STR_CANT_SAVE_TRACK_DESIGN, STR_NONE); } } }
void window_network_status_open_password() { rct_window* window; window = window_bring_to_front_by_class(WC_NETWORK_STATUS); if (window == NULL) return; window_text_input_raw_open(window, WIDX_PASSWORD, STR_PASSWORD_REQUIRED, STR_PASSWORD_REQUIRED_DESC, _password, 32); }
static void custom_currency_window_mousedown(rct_window *w, rct_widgetindex widgetIndex, rct_widget *widget) { widget = &w->widgets[widgetIndex - 1]; switch(widgetIndex) { case WIDX_CLOSE: window_close(w); break; case WIDX_RATE_UP: CurrencyDescriptors[CURRENCY_CUSTOM].rate += 1; gConfigGeneral.custom_currency_rate = CurrencyDescriptors[CURRENCY_CUSTOM].rate; config_save_default(); window_invalidate_all(); break; case WIDX_RATE_DOWN: if(CurrencyDescriptors[CURRENCY_CUSTOM].rate > 1) { CurrencyDescriptors[CURRENCY_CUSTOM].rate -= 1; gConfigGeneral.custom_currency_rate = CurrencyDescriptors[CURRENCY_CUSTOM].rate; config_save_default(); window_invalidate_all(); } break; case WIDX_AFFIX_DROPDOWN_BUTTON: gDropdownItemsFormat[0] = STR_DROPDOWN_MENU_LABEL; gDropdownItemsArgs[0] = STR_PREFIX; gDropdownItemsFormat[1] = STR_DROPDOWN_MENU_LABEL; gDropdownItemsArgs[1] = STR_SUFFIX; window_dropdown_show_text_custom_width( w->x + widget->left, w->y + widget->top, widget->bottom - widget->top + 1, w->colours[1], 0, DROPDOWN_FLAG_STAY_OPEN, 2, widget->right - widget->left - 3 ); if(CurrencyDescriptors[CURRENCY_CUSTOM].affix_unicode == CURRENCY_PREFIX) { dropdown_set_checked(0, true); } else { dropdown_set_checked(1, true); } break; case WIDX_SYMBOL_TEXT: window_text_input_raw_open( w, WIDX_SYMBOL_TEXT, STR_CUSTOM_CURRENCY_SYMBOL_INPUT_TITLE, STR_CUSTOM_CURRENCY_SYMBOL_INPUT_DESC, CurrencyDescriptors[CURRENCY_CUSTOM].symbol_unicode, CURRENCY_SYMBOL_MAX_SIZE ); break; } }