Fix settings

This commit is contained in:
dP
2021-08-19 00:51:34 +03:00
parent 318cbbbc59
commit 0c3bfa92f4
6 changed files with 16 additions and 308 deletions

View File

@@ -25,7 +25,7 @@ void SwitchToMode(SwitchMode new_mode) {
void ToggleSmallMap() {
SmallMapWindow *w = dynamic_cast<citymania::SmallMapWindow*>(FindWindowById(WC_SMALLMAP, 0));
if (w == nullptr) ShowSmallMap();
delete w;
else w->Close();
}
void NetworkClientSendChatToServer(const std::string &msg) {

View File

@@ -85,6 +85,7 @@ static auto &GenericSettingTables()
_pathfinding_settings,
_script_settings,
_world_settings,
citymania::_settings,
};
return _generic_setting_tables;
}
@@ -1720,10 +1721,3 @@ void IConsoleListSettings(const char *prefilter)
IConsolePrint(CC_HELP, "Use 'setting' command to change a value.");
}
// CM
#include "statusbar_gui.h"
static bool cm_v_RedrawStatusBar(int32 p1) {
CM_RedrawStatusBar();
return true;
}

View File

@@ -72,7 +72,9 @@ SettingTable _world_settings{ _world_settings_table };
#if defined(_WIN32) && !defined(DEDICATED)
SettingTable _win32_settings{ _win32_settings_table };
#endif /* _WIN32 */
namespace citymania {
SettingTable _settings{ _citymania_settings_table };
} // namespace citymania
/* Begin - Callback Functions for the various settings. */
@@ -480,4 +482,11 @@ static void UpdateClientConfigValues()
if (_network_server) NetworkServerSendConfigUpdate();
}
// CM
#include "statusbar_gui.h"
static void cm_v_RedrawStatusBar(int32 p1) {
// TODO is this function even needed?
CM_RedrawStatusBar();
}
/* End - Callback Functions */

View File

@@ -37,6 +37,9 @@ extern SettingTable _world_settings;
#if defined(_WIN32) && !defined(DEDICATED)
extern SettingTable _win32_settings;
#endif /* _WIN32 */
namespace citymania {
extern SettingTable _settings;
} // namespace citymania
static const uint GAME_DIFFICULTY_NUM = 18;
extern const std::array<std::string, GAME_DIFFICULTY_NUM> _old_diff_settings;

View File

@@ -48,8 +48,6 @@ static bool UpdateServerPassword(int32 p1);
static bool UpdateRconPassword(int32 p1);
static bool UpdateClientConfigValues(int32 p1);
static bool cm_v_RedrawStatusBar(int32 p1);
/* End - Callback Functions for the various settings */
/* Some settings do not need to be synchronised when playing in multiplayer.
@@ -2756,14 +2754,6 @@ str = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE
strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.pause_after_load
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_PAUSE_AFTER_LOAD
strhelp = STR_CM_CONFIG_SETTING_PAUSE_AFTER_LOAD_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.measure_tooltip
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
@@ -3038,22 +3028,6 @@ str = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE
strhelp = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT
proc = InvalidateVehTimetableWindow
[SDTC_BOOL]
var = gui.cm_open_vehicle_for_shared_clone
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_OPEN_VEHICLE_FOR_SHARED_CLONE
strhelp = STR_CM_CONFIG_SETTING_OPEN_VEHICLE_FOR_SHARED_CLONE_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.cm_open_orders_for_new_vehicles
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_OPEN_ORDERS_FOR_NEW_VEHICLES
strhelp = STR_CM_CONFIG_SETTING_OPEN_ORDERS_FOR_NEW_VEHICLES_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.quick_goto
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
@@ -3306,22 +3280,6 @@ str = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS
strhelp = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.persistent_depottools
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CONFIG_SETTING_PERSISTENT_DEPOTTOOLS
strhelp = STR_CONFIG_SETTING_PERSISTENT_DEPOTTOOLS_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.cm_use_improved_station_join
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_IMPROVED_STATION_JOIN
strhelp = STR_CM_CONFIG_SETTING_IMPROVED_STATION_JOIN_HELPTEXT
cat = SC_BASIC
[SDTC_BOOL]
var = gui.expenses_layout
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
@@ -4163,262 +4121,5 @@ strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT
strval = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND
cat = SC_BASIC
; //MODGUI *********************************
[SDTC_BOOL]
var = gui.enable_ctrl_click_start_stop
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CONFIG_SETTING_CTRL_ENABLE_CTRLCLICK_STARTSTOP
[SDTC_BOOL]
var = gui.auto_noload_on_transfer
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CONFIG_SETTING_AUTOSET_NOLOAD_ON_TRANSFER
[SDTC_BOOL]
var = gui.auto_noload_on_unloadall
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CONFIG_SETTING_AUTOSET_NOLOAD_ON_UNLOAD
[SDTC_VAR]
var = gui.goto_shortcuts_ctrl_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 1
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_CTRLLCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_VAR]
var = gui.goto_shortcuts_shift_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_SHIFTLCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_VAR]
var = gui.goto_shortcuts_ctrlshift_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_CTRLSHIFTLCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_VAR]
var = gui.goto_shortcuts_alt_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_ALTLCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_VAR]
var = gui.goto_shortcuts_altshift_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_ALTSHIFTCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_VAR]
var = gui.goto_shortcuts_altctrl_lclick
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 6
interval = 1
str = STR_CONFIG_SETTING_CTRL_GOTOSHORTCUT_CTRLALTLCLICK
strval = STR_CONFIG_SETTING_CTRL_GOTOSHORTOPTS_NONE
proc = RedrawScreen
cat = SC_BASIC
[SDTC_BOOL]
var = gui.old_depot_train_length_calc
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_OLD_DEPOT_TRAINT_LENGTH
[SDTC_VAR]
var = gui.cb_distance_check
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = 25
min = 0
max = 100
interval = 5
str = STR_CB_DISTANCE_CHECK
strval = STR_JUST_COMMA
proc = RedrawScreen
[SDTC_BOOL]
var = gui.cm_land_tooltips_for_industries
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_INDUSTRIES
strhelp = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_INDUSTRIES_HELPTEXT
[SDTC_BOOL]
var = gui.cm_land_tooltips_for_stations
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_STATIONS
strhelp = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_STATIONS_HELPTEXT
[SDTC_BOOL]
var = gui.cm_land_tooltips_for_houses
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_HOUSES
strhelp = STR_CM_CONFIG_SETTING_LAND_TOOLTIPS_FOR_HOUSES_HELPTEXT
[SDTC_BOOL]
var = gui.polyrail_double_click
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CONFIG_SETTING_POLYRAIL_DOUBLECLICK_TOOLTIPS
[SDTC_BOOL]
var = gui.show_industry_forbidden_tiles
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
cat = SC_BASIC
[SDTC_BOOL]
var = gui.runway_too_short_warn
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CONFIG_SETTING_WARN_IF_RUNWAY_IS_TOO_SHORT
[SDTC_VAR]
var = gui.powerfund_money
type = SLE_UINT
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_CURRENCY
def = 200000
min = 0
max = 2000000
str = STR_CONFIG_SETTING_POWERFUND_MONEY
strval = STR_JUST_CURRENCY_LONG
[SDTC_VAR]
var = gui.powerfund_houses
type = SLE_UINT16
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = 10000
min = 0
max = 10000
interval = 10
str = STR_CONFIG_SETTING_POWERFUND_HOUSES
strval = STR_JUST_COMMA
[SDTC_VAR]
var = gui.cm_fn_mod
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 2
min = 0
max = 3
str = STR_CM_CONFIG_SETTING_MODIFIER_FN
strhelp = STR_CM_CONFIG_SETTING_MODIFIER_FN_HELPTEXT
strval = STR_CM_CONFIG_SETTING_MODIFIER_NONE
cat = SC_ADVANCED
[SDTC_VAR]
var = gui.cm_remove_mod
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 2
min = 0
max = 3
str = STR_CM_CONFIG_SETTING_MODIFIER_REMOVE
strhelp = STR_CM_CONFIG_SETTING_MODIFIER_REMOVE_HELPTEXT
strval = STR_CM_CONFIG_SETTING_MODIFIER_NONE
cat = SC_ADVANCED
[SDTC_VAR]
var = gui.cm_estimate_mod
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 1
min = 0
max = 3
str = STR_CM_CONFIG_SETTING_MODIFIER_ESTIMATE
strhelp = STR_CM_CONFIG_SETTING_MODIFIER_ESTIMATE_HELPTEXT
strval = STR_CM_CONFIG_SETTING_MODIFIER_NONE
cat = SC_ADVANCED
[SDTC_VAR]
var = gui.cm_shaded_trees
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 2
min = 0
max = 2
str = STR_CM_CONFIG_SETTING_SHADED_TREES
strhelp = STR_CM_CONFIG_SETTING_SHADED_TREES_HELPTEXT
strval = STR_CM_CONFIG_SETTING_SHADED_TREES_OFF
cat = SC_ADVANCED
proc = RedrawScreen
[SDTC_BOOL]
var = gui.cm_show_apm
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = false
str = STR_CM_CONFIG_SETTING_SHOW_APM
strhelp = STR_CM_CONFIG_SETTING_SHOW_APM_HELPTEXT
cat = SC_ADVANCED
proc = cm_v_RedrawStatusBar
[SDTC_VAR]
var = gui.cm_graph_background
type = SLE_UINT8
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
guiflags = SGF_MULTISTRING
def = 0
min = 0
max = 1
str = STR_CM_CONFIG_SETTING_GRAPH_BACKGROUND
strhelp = STR_CM_CONFIG_SETTING_GRAPH_BACKGROUND_HELPTEXT
strval = STR_CM_CONFIG_SETTING_GRAPH_BACKGROUND_BLACK
cat = SC_ADVANCED
[SDT_END]

View File

@@ -22,6 +22,7 @@ set(TABLE_INI_SOURCE_FILES
${CMAKE_CURRENT_SOURCE_DIR}/win32_settings.ini
${CMAKE_CURRENT_SOURCE_DIR}/window_settings.ini
${CMAKE_CURRENT_SOURCE_DIR}/world_settings.ini
${CMAKE_CURRENT_SOURCE_DIR}/citymania_settings.ini
)
if (HOST_BINARY_DIR)