diff options
Diffstat (limited to 'game/src/OptionMenu')
-rw-r--r-- | game/src/OptionMenu/GuiScaleSelector.gd | 27 | ||||
-rw-r--r-- | game/src/OptionMenu/VideoTab.tscn | 4 |
2 files changed, 16 insertions, 15 deletions
diff --git a/game/src/OptionMenu/GuiScaleSelector.gd b/game/src/OptionMenu/GuiScaleSelector.gd index ec94269..6593a07 100644 --- a/game/src/OptionMenu/GuiScaleSelector.gd +++ b/game/src/OptionMenu/GuiScaleSelector.gd @@ -1,5 +1,9 @@ extends SettingOptionButton +# REQUIREMENTS +# * UIFUN-24 +# * UIFUN-31 + @export var default_value : float = GuiScale.error_guiscale @@ -9,7 +13,7 @@ func _find_guiscale_index_by_value(value : float) -> int: return item_index return -1 -func _sync_guiscales(to_select:float=GuiScale.get_current_guiscale()) -> void: +func _sync_guiscales(to_select : float = GuiScale.get_current_guiscale()) -> void: clear() default_selected = -1 selected = -1 @@ -30,12 +34,9 @@ func _sync_guiscales(to_select:float=GuiScale.get_current_guiscale()) -> void: selected = default_selected func _setup_button(): - print("Setup Gui scales Button") if default_value <= 0: - #TODO: verify this project setting is what we actually want - #print("get default from project settings, default was %f",default_value) default_value = ProjectSettings.get_setting("display/window/stretch/scale") - GuiScale.add_guiscale(default_value,&"default") + GuiScale.add_guiscale(default_value, &"default") _sync_guiscales() func _get_value_for_file(select_value : int): @@ -45,20 +46,18 @@ func _get_value_for_file(select_value : int): return null func _set_value_from_file(load_value): - #no need to match types like resolution does since we don't - #intend on supporting strings - var target_guiscale = load_value - selected = _find_guiscale_index_by_value(target_guiscale) - if selected != -1:return - if GuiScale.add_guiscale(target_guiscale): - _sync_guiscales(target_guiscale) - return + if typeof(load_value) == TYPE_FLOAT: + var target_guiscale : float = load_value + selected = _find_guiscale_index_by_value(target_guiscale) + if selected != -1: return + if GuiScale.add_guiscale(target_guiscale): + _sync_guiscales(target_guiscale) + return push_error("Setting value '%s' invalid for setting [%s] %s" % [load_value, section_name, setting_name]) selected = default_selected func _on_item_selected(index:int): if _valid_index(index): - print("Change GUI scale on selector index: %d" % index) GuiScale.set_guiscale(get_item_metadata(index)) else: push_error("Invalid GuiScaleSelector index: %d" % index) diff --git a/game/src/OptionMenu/VideoTab.tscn b/game/src/OptionMenu/VideoTab.tscn index 8fc8747..7c9e2ad 100644 --- a/game/src/OptionMenu/VideoTab.tscn +++ b/game/src/OptionMenu/VideoTab.tscn @@ -48,7 +48,7 @@ layout_mode = 2 text = "OPTIONS_VIDEO_GUI_SCALE" [node name="GuiScaleSelector" type="OptionButton" parent="VBoxContainer/GridContainer"] -editor_description = "UI-19" +editor_description = "UI-23" layout_mode = 2 focus_neighbor_bottom = NodePath("../ScreenModeSelector") item_count = 1 @@ -56,6 +56,8 @@ selected = 0 popup/item_0/text = "MISSING" popup/item_0/id = 0 script = ExtResource("3_pgc5d") +section_name = "video" +setting_name = "gui_scale" [node name="ScreenModeLabel" type="Label" parent="VBoxContainer/GridContainer"] editor_description = "UI-44" |