diff options
Diffstat (limited to 'client/gui/menus')
-rw-r--r-- | client/gui/menus/settings/button_setting.gd | 2 | ||||
-rw-r--r-- | client/gui/menus/settings/game_setting.gd | 13 | ||||
-rw-r--r-- | client/gui/menus/settings/preset_row.gd | 2 | ||||
-rw-r--r-- | client/gui/menus/settings/settings_row.gd | 2 |
4 files changed, 15 insertions, 4 deletions
diff --git a/client/gui/menus/settings/button_setting.gd b/client/gui/menus/settings/button_setting.gd index fff8c184..e8a2ab42 100644 --- a/client/gui/menus/settings/button_setting.gd +++ b/client/gui/menus/settings/button_setting.gd @@ -22,6 +22,8 @@ func _init(new_id: String, new_default, callback_): callback = callback_ super (new_id, new_default) +func hide_reset(): return true + func create_row(): var row = super () row.value_node = Button.new() diff --git a/client/gui/menus/settings/game_setting.gd b/client/gui/menus/settings/game_setting.gd index 656100e5..d0b38b34 100644 --- a/client/gui/menus/settings/game_setting.gd +++ b/client/gui/menus/settings/game_setting.gd @@ -20,6 +20,7 @@ var default var key: String var nskey: String + func _init(new_id: String, new_default = null): default = new_default key = new_id @@ -31,12 +32,16 @@ func set_parent(parent: GameSetting): func create_row(): var row = preload("res://gui/menus/settings/settings_row.tscn").instantiate() row.description = tr(nskey) - row.reset.connect(func(): Settings.write(key, default)) - Settings.hook_changed_init(key, "preview_reset", func (_value): - if is_instance_valid(row): row.set_reset_disabled(is_default()) - ) + if hide_reset(): row.hide_reset = true + else: + row.reset.connect(func(): Settings.write(key, default)) + Settings.hook_changed_init(key, "preview_reset", func (_value): + if is_instance_valid(row): row.set_reset_disabled(is_default()) + ) return row +func hide_reset(): return false + func is_default(): return Settings.read(key) == default diff --git a/client/gui/menus/settings/preset_row.gd b/client/gui/menus/settings/preset_row.gd index 9e7c97a2..ad878d00 100644 --- a/client/gui/menus/settings/preset_row.gd +++ b/client/gui/menus/settings/preset_row.gd @@ -33,6 +33,8 @@ func apply(preset_name: String): for i in preset.keys(): Settings.write(prefix + "." + i, preset[i]) +func hide_reset(): return true + func create_row(): var row = super() row.value_node = HBoxContainer.new() diff --git a/client/gui/menus/settings/settings_row.gd b/client/gui/menus/settings/settings_row.gd index a3b4f8c8..15555eb0 100644 --- a/client/gui/menus/settings/settings_row.gd +++ b/client/gui/menus/settings/settings_row.gd @@ -24,8 +24,10 @@ signal reset() var value_node: Node var description = "No value was given to the row" +var hide_reset: bool = false func _ready(): + if hide_reset: reset_button.hide() if value_node != null: var c: Control = value_node c.size_flags_vertical = Control.SIZE_EXPAND_FILL |