From 3ef73eacea69abfbf8aed68044effbf9e29396a6 Mon Sep 17 00:00:00 2001 From: Emmanouil Papadeas Date: Tue, 29 Nov 2022 19:58:24 +0200 Subject: [PATCH] Expose GLES driver to the preferences Users can now change from GLES2 to GLES3 and vice versa. The change requires a restart of Pixelorama to take effect. Does not have any effect if Pixelorama is being run from the Godot editor. I suppose we should add logic that detects if GLES3 is even supported in the first place in that device before allowing it as an option, but at least I enabled GLES2 fallback in the project settings, so it *should* fall back to GLES2. --- Translations/Translations.pot | 8 + project.godot | 1 + src/Autoload/Global.gd | 12 + src/Preferences/PreferencesDialog.gd | 103 ++++-- src/Preferences/PreferencesDialog.tscn | 470 ++++++++++++++---------- src/Preferences/RestoreDefaultButton.gd | 6 +- 6 files changed, 356 insertions(+), 244 deletions(-) diff --git a/Translations/Translations.pot b/Translations/Translations.pot index 0cff487dd..98972b620 100644 --- a/Translations/Translations.pot +++ b/Translations/Translations.pot @@ -562,6 +562,10 @@ msgstr "" msgid "Performance" msgstr "" +#. Found in the preferences. Refers to device drivers, such as video drivers and tablet drivers. +msgid "Drivers" +msgstr "" + msgid "Extensions" msgstr "" @@ -571,6 +575,10 @@ msgstr "" msgid "Indicators" msgstr "" +#. Found in the preferences. Used for options that require restart when they are changed. +msgid "Pixelorama must be restarted for changes to take effect." +msgstr "" + msgid "On" msgstr "" diff --git a/project.godot b/project.godot index d7af81fcc..555ef7b69 100644 --- a/project.godot +++ b/project.godot @@ -934,6 +934,7 @@ file_logging/enable_file_logging=true [rendering] quality/driver/driver_name="GLES2" +quality/driver/fallback_to_gles2=true quality/intended_usage/framebuffer_allocation=0 quality/intended_usage/framebuffer_allocation.mobile=0 threads/thread_model=2 diff --git a/src/Autoload/Global.gd b/src/Autoload/Global.gd index 9ee3b04f6..7329b00c9 100644 --- a/src/Autoload/Global.gd +++ b/src/Autoload/Global.gd @@ -47,6 +47,8 @@ enum HelpMenu { ABOUT_PIXELORAMA } +const OVERRIDE_FILE := "override.cfg" + var root_directory := "." var window_title := "" setget _title_changed # Why doesn't Godot have get_window_title()? var config_cache := ConfigFile.new() @@ -116,6 +118,7 @@ var fps_limit := 0 var autosave_interval := 1.0 var enable_autosave := true +var renderer := OS.get_current_video_driver() setget _renderer_changed # Tools & options var show_left_tool_icon := true @@ -483,6 +486,15 @@ func _project_changed(value: int) -> void: disconnect("project_changed", current_project, "change_project") +func _renderer_changed(value: int) -> void: + renderer = value + if OS.has_feature("editor"): + return + var renderer_name := OS.get_video_driver_name(renderer) + ProjectSettings.set_setting("rendering/quality/driver/driver_name", renderer_name) + ProjectSettings.save_custom(OVERRIDE_FILE) + + func dialog_open(open: bool) -> void: var dim_color := Color.white if open: diff --git a/src/Preferences/PreferencesDialog.gd b/src/Preferences/PreferencesDialog.gd index abecaade0..f2954c3a2 100644 --- a/src/Preferences/PreferencesDialog.gd +++ b/src/Preferences/PreferencesDialog.gd @@ -79,6 +79,9 @@ var preferences := [ Preference.new( "pause_when_unfocused", "Performance/PerformanceContainer/PauseAppFocus", "pressed" ), + Preference.new( + "renderer", "Drivers/DriversContainer/Renderer", "selected", true, OS.VIDEO_DRIVER_GLES2 + ) ] var content_list := [] @@ -86,31 +89,44 @@ var selected_item := 0 var restore_default_button_tcsn := preload("res://src/Preferences/RestoreDefaultButton.tscn") onready var list: ItemList = $HSplitContainer/List -onready var right_side: VBoxContainer = $HSplitContainer/ScrollContainer/VBoxContainer +onready var right_side: VBoxContainer = $"%RightSide" onready var autosave_container: Container = right_side.get_node("Backup/AutosaveContainer") onready var autosave_interval: SpinBox = autosave_container.get_node("AutosaveInterval") onready var shrink_slider: ValueSlider = $"%ShrinkSlider" onready var themes: BoxContainer = right_side.get_node("Interface/Themes") onready var shortcuts: Control = right_side.get_node("Shortcuts/ShortcutEdit") onready var extensions: BoxContainer = right_side.get_node("Extensions") +onready var must_restart: BoxContainer = $"%MustRestart" class Preference: var prop_name: String var node_path: String var value_type: String + var require_restart := false var default_value - func _init(_prop_name: String, _node_path: String, _value_type: String) -> void: + func _init( + _prop_name: String, + _node_path: String, + _value_type: String, + _require_restart := false, + _default_value = null + ) -> void: prop_name = _prop_name node_path = _node_path value_type = _value_type - default_value = Global.get(prop_name) + require_restart = _require_restart + if _default_value: + default_value = _default_value + else: + default_value = Global.get(prop_name) func _ready() -> void: # Replace OK since preference changes are being applied immediately, not after OK confirmation get_ok().text = "Close" + get_ok().size_flags_horizontal = Control.SIZE_EXPAND_FILL shrink_slider.value = Global.shrink # In case shrink is not equal to 1 for child in shortcuts.get_children(): @@ -129,11 +145,11 @@ func _ready() -> void: for pref in preferences: var node: Node = right_side.get_node(pref.node_path) - var restore_default_button: BaseButton = restore_default_button_tcsn.instance() restore_default_button.setting_name = pref.prop_name restore_default_button.value_type = pref.value_type restore_default_button.default_value = pref.default_value + restore_default_button.require_restart = pref.require_restart restore_default_button.node = node if pref.node_path == "%ShrinkSlider": # Add the default button to the shrink slider's grandparent @@ -148,17 +164,14 @@ func _ready() -> void: match pref.value_type: "pressed": node.connect( - "toggled", - self, - "_on_Preference_toggled", - [pref.prop_name, pref.default_value, restore_default_button] + "toggled", self, "_on_Preference_toggled", [pref, restore_default_button] ) "value": node.connect( "value_changed", self, "_on_Preference_value_changed", - [pref.prop_name, pref.default_value, restore_default_button] + [pref, restore_default_button] ) "color": node.get_picker().presets_visible = false @@ -166,74 +179,88 @@ func _ready() -> void: "color_changed", self, "_on_Preference_color_changed", - [pref.prop_name, pref.default_value, restore_default_button] + [pref, restore_default_button] ) "selected": node.connect( "item_selected", self, "_on_Preference_item_selected", - [pref.prop_name, pref.default_value, restore_default_button] + [pref, restore_default_button] ) + var global_value = Global.get(pref.prop_name) if Global.config_cache.has_section_key("preferences", pref.prop_name): var value = Global.config_cache.get_value("preferences", pref.prop_name) Global.set(pref.prop_name, value) node.set(pref.value_type, value) - var global_value = Global.get(pref.prop_name) # This is needed because color_changed doesn't fire if the color changes in code if pref.value_type == "color": - preference_update(pref.prop_name) + preference_update(pref.prop_name, pref.require_restart) disable_restore_default_button( restore_default_button, global_value.is_equal_approx(pref.default_value) ) elif pref.value_type == "selected": - preference_update(pref.prop_name) + preference_update(pref.prop_name, pref.require_restart) disable_restore_default_button( restore_default_button, global_value == pref.default_value ) + else: + node.set(pref.value_type, global_value) + disable_restore_default_button( + restore_default_button, global_value == pref.default_value + ) -func _on_Preference_toggled( - button_pressed: bool, prop: String, default_value, restore_default_button: BaseButton -) -> void: - Global.set(prop, button_pressed) - Global.config_cache.set_value("preferences", prop, button_pressed) - preference_update(prop) - disable_restore_default_button(restore_default_button, Global.get(prop) == default_value) +func _on_Preference_toggled(pressed: bool, pref: Preference, restore_default: BaseButton) -> void: + var prop := pref.prop_name + var default_value = pref.default_value + Global.set(prop, pressed) + if not pref.require_restart: + Global.config_cache.set_value("preferences", prop, pressed) + preference_update(prop, pref.require_restart) + disable_restore_default_button(restore_default, Global.get(prop) == default_value) func _on_Preference_value_changed( - value: float, prop: String, default_value, restore_default_button: BaseButton + value: float, pref: Preference, restore_default: BaseButton ) -> void: + var prop := pref.prop_name + var default_value = pref.default_value Global.set(prop, value) - Global.config_cache.set_value("preferences", prop, value) - preference_update(prop) - disable_restore_default_button(restore_default_button, Global.get(prop) == default_value) + if not pref.require_restart: + Global.config_cache.set_value("preferences", prop, value) + preference_update(prop, pref.require_restart) + disable_restore_default_button(restore_default, Global.get(prop) == default_value) func _on_Preference_color_changed( - color: Color, prop: String, default_value, restore_default_button: BaseButton + color: Color, pref: Preference, restore_default: BaseButton ) -> void: + var prop := pref.prop_name + var default_value = pref.default_value Global.set(prop, color) - Global.config_cache.set_value("preferences", prop, color) - preference_update(prop) - disable_restore_default_button( - restore_default_button, Global.get(prop).is_equal_approx(default_value) - ) + if not pref.require_restart: + Global.config_cache.set_value("preferences", prop, color) + preference_update(prop, pref.require_restart) + disable_restore_default_button(restore_default, Global.get(prop).is_equal_approx(default_value)) -func _on_Preference_item_selected( - id: int, prop: String, default_value, restore_default_button: BaseButton -) -> void: +func _on_Preference_item_selected(id: int, pref: Preference, restore_default: BaseButton) -> void: + var prop := pref.prop_name + var default_value = pref.default_value Global.set(prop, id) - Global.config_cache.set_value("preferences", prop, id) - preference_update(prop) - disable_restore_default_button(restore_default_button, Global.get(prop) == default_value) + if not pref.require_restart: + Global.config_cache.set_value("preferences", prop, id) + preference_update(prop, pref.require_restart) + disable_restore_default_button(restore_default, Global.get(prop) == default_value) -func preference_update(prop: String) -> void: +func preference_update(prop: String, require_restart := false) -> void: + if require_restart: + must_restart.visible = true + return if prop in ["autosave_interval", "enable_autosave"]: OpenSave.update_autosave() autosave_interval.editable = Global.enable_autosave diff --git a/src/Preferences/PreferencesDialog.tscn b/src/Preferences/PreferencesDialog.tscn index 0ba9c1dab..a642a349a 100644 --- a/src/Preferences/PreferencesDialog.tscn +++ b/src/Preferences/PreferencesDialog.tscn @@ -32,63 +32,66 @@ size_flags_horizontal = 3 custom_constants/autohide = 0 custom_constants/separation = 20 split_offset = 1 -__meta__ = { -"_edit_use_anchors_": false -} [node name="List" type="ItemList" parent="HSplitContainer"] margin_right = 86.0 margin_bottom = 406.0 rect_min_size = Vector2( 85, 0 ) -[node name="ScrollContainer" type="ScrollContainer" parent="HSplitContainer"] +[node name="VBoxContainer" type="VBoxContainer" parent="HSplitContainer"] margin_left = 106.0 margin_right = 604.0 margin_bottom = 406.0 + +[node name="ScrollContainer" type="ScrollContainer" parent="HSplitContainer/VBoxContainer"] +margin_right = 498.0 +margin_bottom = 406.0 rect_min_size = Vector2( 100, 0 ) size_flags_horizontal = 3 +size_flags_vertical = 3 -[node name="VBoxContainer" type="VBoxContainer" parent="HSplitContainer/ScrollContainer"] +[node name="RightSide" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer"] +unique_name_in_owner = true margin_right = 498.0 margin_bottom = 406.0 size_flags_horizontal = 3 size_flags_vertical = 3 -[node name="Startup" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Startup" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] margin_right = 498.0 margin_bottom = 70.0 -[node name="StartupHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup"] +[node name="StartupHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup"] margin_right = 498.0 margin_bottom = 14.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupHeader"] margin_right = 45.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Startup" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupHeader"] margin_left = 45.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="StartupContainer" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup"] +[node name="StartupContainer" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup"] margin_top = 18.0 margin_right = 498.0 margin_bottom = 70.0 columns = 3 -[node name="OpenLastProjectLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupContainer"] +[node name="OpenLastProjectLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupContainer"] margin_top = 5.0 margin_right = 189.0 margin_bottom = 19.0 size_flags_horizontal = 3 text = "Open last project on startup" -[node name="OpenLastProject" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupContainer"] +[node name="OpenLastProject" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupContainer"] margin_left = 193.0 margin_right = 381.0 margin_bottom = 24.0 @@ -97,33 +100,33 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 3 text = "On" -[node name="QuitConfirmationLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupContainer"] +[node name="QuitConfirmationLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupContainer"] margin_left = 385.0 margin_top = 5.0 margin_right = 498.0 margin_bottom = 19.0 text = "Quit confirmation" -[node name="QuitConfirmation" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/StartupContainer"] +[node name="QuitConfirmation" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/StartupContainer"] margin_top = 28.0 margin_right = 189.0 margin_bottom = 52.0 mouse_default_cursor_shape = 2 text = "On" -[node name="PressureSentivity" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup"] +[node name="PressureSentivity" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup"] visible = false margin_top = 28.0 margin_right = 498.0 margin_bottom = 48.0 -[node name="PressureSensitivityLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/PressureSentivity"] +[node name="PressureSensitivityLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/PressureSentivity"] margin_top = 3.0 margin_right = 173.0 margin_bottom = 17.0 text = "Tablet pressure sensitivity:" -[node name="PressureSensitivityOptionButton" type="OptionButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Startup/PressureSentivity"] +[node name="PressureSensitivityOptionButton" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Startup/PressureSentivity"] margin_left = 177.0 margin_right = 334.0 margin_bottom = 20.0 @@ -131,32 +134,32 @@ text = "Affect Brush's Alpha" items = [ "None", null, false, 0, null, "Affect Brush's Alpha", null, false, 1, null ] selected = 1 -[node name="Language" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Language" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 184.0 margin_right = 506.0 margin_bottom = 632.0 script = ExtResource( 4 ) -[node name="LanguageHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Language"] +[node name="LanguageHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Language/LanguageHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language/LanguageHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Language" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Language/LanguageHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language/LanguageHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="System Language" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Language"] +[node name="System Language" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language"] margin_right = 506.0 margin_bottom = 24.0 hint_tooltip = "System Language" @@ -165,71 +168,70 @@ pressed = true group = SubResource( 1 ) text = "System Language" -[node name="Interface" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Interface" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 74.0 margin_right = 498.0 margin_bottom = 284.0 -[node name="InterfaceHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="InterfaceHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_right = 498.0 margin_bottom = 14.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceHeader"] margin_right = 57.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Interface" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceHeader"] margin_left = 57.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="InterfaceOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="InterfaceOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_right = 40.0 margin_bottom = 40.0 columns = 3 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions"] margin_top = 23.0 margin_right = 88.0 margin_bottom = 37.0 size_flags_horizontal = 3 text = "Display scale:" -[node name="ShrinkContainer" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions"] +[node name="ShrinkContainer" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions"] margin_top = 18.0 margin_right = 498.0 margin_bottom = 42.0 -[node name="ShrinkSlider" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions/ShrinkContainer" instance=ExtResource( 6 )] +[node name="ShrinkSlider" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions/ShrinkContainer" instance=ExtResource( 6 )] unique_name_in_owner = true margin_left = 92.0 margin_right = 293.0 -margin_bottom = 24.0 min_value = 0.5 max_value = 4.0 step = 0.25 value = 1.0 -[node name="ShrinkApplyButton" type="Button" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions/ShrinkContainer"] +[node name="ShrinkApplyButton" type="Button" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions/ShrinkContainer"] margin_left = 297.0 margin_right = 498.0 margin_bottom = 24.0 mouse_default_cursor_shape = 2 text = "Apply" -[node name="DimLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions"] +[node name="DimLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions"] margin_top = 51.0 margin_right = 247.0 margin_bottom = 65.0 size_flags_horizontal = 3 text = "Dim interface on dialog popup" -[node name="DimCheckBox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions"] +[node name="DimCheckBox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions"] margin_left = 251.0 margin_top = 46.0 margin_right = 498.0 @@ -239,82 +241,82 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="ThemesHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="ThemesHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_top = 74.0 margin_right = 498.0 margin_bottom = 88.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ThemesHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ThemesHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Themes" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ThemesHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ThemesHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="Themes" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="Themes" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_top = 92.0 margin_right = 498.0 margin_bottom = 96.0 script = ExtResource( 5 ) -[node name="ThemeButtons" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/Themes"] +[node name="ThemeButtons" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/Themes"] margin_right = 247.0 margin_bottom = 4.0 size_flags_horizontal = 3 -[node name="ThemeColorsSpacer" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/Themes"] +[node name="ThemeColorsSpacer" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/Themes"] margin_left = 251.0 margin_right = 498.0 margin_bottom = 4.0 size_flags_horizontal = 3 -[node name="Control" type="Control" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/Themes/ThemeColorsSpacer"] +[node name="Control" type="Control" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/Themes/ThemeColorsSpacer"] margin_right = 247.0 -[node name="ThemeColors" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/Themes/ThemeColorsSpacer"] +[node name="ThemeColors" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/Themes/ThemeColorsSpacer"] margin_top = 4.0 margin_right = 247.0 margin_bottom = 4.0 custom_constants/separation = 12 -[node name="ButtonHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="ButtonHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_top = 100.0 margin_right = 498.0 margin_bottom = 114.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonHeader"] margin_right = 50.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Buttons" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonHeader"] margin_left = 50.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="ButtonOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface"] +[node name="ButtonOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface"] margin_top = 118.0 margin_right = 498.0 margin_bottom = 210.0 columns = 3 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_top = 3.0 margin_right = 194.0 margin_bottom = 17.0 size_flags_horizontal = 3 text = "Tool button size:" -[node name="ToolButtonSizeOptionButton" type="OptionButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="ToolButtonSizeOptionButton" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 198.0 margin_right = 392.0 margin_bottom = 20.0 @@ -324,14 +326,14 @@ text = "Small" items = [ "Small", null, false, 0, null, "Big", null, false, 1, null ] selected = 0 -[node name="Label2" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="Label2" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 396.0 margin_top = 3.0 margin_right = 498.0 margin_bottom = 17.0 text = "Icon color from:" -[node name="IconColorOptionButton" type="OptionButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="IconColorOptionButton" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_top = 24.0 margin_right = 194.0 margin_bottom = 44.0 @@ -340,14 +342,14 @@ text = "Theme" items = [ "Theme", null, false, 0, null, "Custom", null, false, 1, null ] selected = 0 -[node name="Label3" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="Label3" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 198.0 margin_top = 27.0 margin_right = 392.0 margin_bottom = 41.0 text = "Icon color:" -[node name="IconColorButton" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="IconColorButton" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 396.0 margin_top = 24.0 margin_right = 498.0 @@ -356,13 +358,13 @@ rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 color = Color( 0.75, 0.75, 0.75, 1 ) -[node name="Label4" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="Label4" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_top = 51.0 margin_right = 194.0 margin_bottom = 65.0 text = "Left tool color:" -[node name="LeftToolColorButton" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="LeftToolColorButton" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 198.0 margin_top = 48.0 margin_right = 392.0 @@ -371,14 +373,14 @@ rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 color = Color( 0, 0.52549, 0.811765, 1 ) -[node name="Label5" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="Label5" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_left = 396.0 margin_top = 51.0 margin_right = 498.0 margin_bottom = 65.0 text = "Right tool color:" -[node name="RightToolColorButton" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Interface/ButtonOptions"] +[node name="RightToolColorButton" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/ButtonOptions"] margin_top = 72.0 margin_right = 194.0 margin_bottom = 92.0 @@ -386,35 +388,35 @@ rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 color = Color( 0.992157, 0.427451, 0.0784314, 1 ) -[node name="Canvas" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Canvas" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 56.0 margin_right = 529.0 margin_bottom = 584.0 -[node name="ZoomHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="ZoomHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_right = 529.0 margin_bottom = 14.0 custom_constants/separation = 0 -[node name="ZoomLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/ZoomHeader"] +[node name="ZoomLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/ZoomHeader"] margin_right = 37.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Zoom" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/ZoomHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/ZoomHeader"] margin_left = 37.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="ZoomOptions" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="ZoomOptions" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 18.0 margin_right = 529.0 margin_bottom = 42.0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/ZoomOptions"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/ZoomOptions"] margin_top = 5.0 margin_right = 262.0 margin_bottom = 19.0 @@ -422,7 +424,7 @@ rect_min_size = Vector2( 110, 0 ) size_flags_horizontal = 3 text = "Smooth Zoom" -[node name="SmoothZoom" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/ZoomOptions"] +[node name="SmoothZoom" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/ZoomOptions"] margin_left = 266.0 margin_right = 529.0 margin_bottom = 24.0 @@ -432,25 +434,25 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="GuideHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="GuideHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 46.0 margin_right = 529.0 margin_bottom = 60.0 custom_constants/separation = 0 -[node name="GuideLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GuideHeader"] +[node name="GuideLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GuideHeader"] margin_right = 45.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Guides" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GuideHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GuideHeader"] margin_left = 45.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="GuideOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="GuideOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 64.0 margin_right = 529.0 margin_bottom = 84.0 @@ -458,7 +460,7 @@ custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="GuideColorLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GuideOptions"] +[node name="GuideColorLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GuideOptions"] margin_top = 3.0 margin_right = 175.0 margin_bottom = 17.0 @@ -468,7 +470,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Guides color:" -[node name="GuideColor" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GuideOptions"] +[node name="GuideColor" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GuideOptions"] margin_left = 179.0 margin_right = 354.0 margin_bottom = 20.0 @@ -478,25 +480,25 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 3 color = Color( 0.63, 0.13, 0.94, 1 ) -[node name="GridHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="GridHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 88.0 margin_right = 529.0 margin_bottom = 102.0 custom_constants/separation = 0 -[node name="GridLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridHeader"] +[node name="GridLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridHeader"] margin_right = 27.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Grid" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridHeader"] margin_left = 27.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="GridOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="GridOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 106.0 margin_right = 529.0 margin_bottom = 266.0 @@ -504,7 +506,7 @@ custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="GridTypeLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridTypeLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 3.0 margin_right = 183.0 margin_bottom = 17.0 @@ -516,7 +518,7 @@ __meta__ = { "_editor_description_": "" } -[node name="GridType" type="OptionButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridType" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_right = 337.0 margin_bottom = 20.0 @@ -527,7 +529,7 @@ text = "Rectangular" items = [ "Rectangular", null, false, 0, null, "Isometric", null, false, 1, null, "All", null, false, 2, null ] selected = 0 -[node name="GridWidthLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridWidthLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 3.0 margin_right = 529.0 @@ -537,7 +539,7 @@ hint_tooltip = "Sets how far apart are vertical lines of the rectangular grid" mouse_filter = 0 text = "Rectangular grid width:" -[node name="GridWidthValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridWidthValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 24.0 margin_right = 183.0 margin_bottom = 48.0 @@ -550,7 +552,7 @@ rounded = true align = 2 suffix = "px" -[node name="GridHeightLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridHeightLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_top = 29.0 margin_right = 337.0 @@ -559,7 +561,7 @@ hint_tooltip = "Sets how far apart are horizontal lines of the rectangular grid" mouse_filter = 0 text = "Rectangular grid height:" -[node name="GridHeightValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridHeightValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 24.0 margin_right = 529.0 @@ -573,7 +575,7 @@ rounded = true align = 2 suffix = "px" -[node name="IsometricCellBoundsWidthLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="IsometricCellBoundsWidthLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 57.0 margin_right = 183.0 margin_bottom = 71.0 @@ -581,7 +583,7 @@ hint_tooltip = "Sets the width of the isometric cell's axis aligned bounding box mouse_filter = 0 text = "Isometric cell bounds width:" -[node name="IsometricCellBoundsWidthValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="IsometricCellBoundsWidthValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_top = 52.0 margin_right = 337.0 @@ -595,7 +597,7 @@ rounded = true align = 2 suffix = "px" -[node name="IsometricCellBoundsHeightLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="IsometricCellBoundsHeightLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 57.0 margin_right = 529.0 @@ -604,7 +606,7 @@ hint_tooltip = "Sets the height of the isometric cell's axis aligned bounding bo mouse_filter = 0 text = "Isometric cell bounds height:" -[node name="IsometricCellBoundsHeightValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="IsometricCellBoundsHeightValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 80.0 margin_right = 183.0 margin_bottom = 104.0 @@ -617,7 +619,7 @@ rounded = true align = 2 suffix = "px" -[node name="GridOffsetXLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridOffsetXLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_top = 85.0 margin_right = 337.0 @@ -626,7 +628,7 @@ hint_tooltip = "Sets grid's x offset from the canvas origin (top left corner of mouse_filter = 0 text = "Grid offset x:" -[node name="GridOffsetXValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridOffsetXValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 80.0 margin_right = 529.0 @@ -639,7 +641,7 @@ rounded = true align = 2 suffix = "px" -[node name="GridOffsetYLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridOffsetYLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 113.0 margin_right = 183.0 margin_bottom = 127.0 @@ -647,7 +649,7 @@ hint_tooltip = "Sets grid's y offset from the canvas origin (top left corner of mouse_filter = 0 text = "Grid offset y:" -[node name="GridOffsetYValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridOffsetYValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_top = 108.0 margin_right = 337.0 @@ -660,7 +662,7 @@ rounded = true align = 2 suffix = "px" -[node name="GridDrawOverTileModeLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridDrawOverTileModeLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 113.0 margin_right = 529.0 @@ -670,7 +672,7 @@ hint_tooltip = "If disabled, the grid will be drawn only over the original image mouse_filter = 0 text = "Draw over Tile Mode:" -[node name="GridDrawOverTileMode" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridDrawOverTileMode" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_top = 136.0 margin_right = 183.0 margin_bottom = 160.0 @@ -678,7 +680,7 @@ hint_tooltip = "If disabled, the grid will be drawn only over the original image mouse_default_cursor_shape = 2 text = "On" -[node name="GridColorLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridColorLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 187.0 margin_top = 141.0 margin_right = 337.0 @@ -687,7 +689,7 @@ hint_tooltip = "A color of the grid" mouse_filter = 0 text = "Grid color:" -[node name="GridColor" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/GridOptions"] +[node name="GridColor" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/GridOptions"] margin_left = 341.0 margin_top = 136.0 margin_right = 529.0 @@ -696,25 +698,25 @@ rect_min_size = Vector2( 64, 20 ) hint_tooltip = "A color of the grid" mouse_default_cursor_shape = 2 -[node name="PixelGridHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="PixelGridHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 270.0 margin_right = 529.0 margin_bottom = 284.0 custom_constants/separation = 0 -[node name="PixelGridLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridHeader"] +[node name="PixelGridLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridHeader"] margin_right = 62.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Pixel Grid" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridHeader"] margin_left = 62.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="PixelGridOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="PixelGridOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 288.0 margin_right = 529.0 margin_bottom = 336.0 @@ -722,7 +724,7 @@ custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="ShowAtZoomLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridOptions"] +[node name="ShowAtZoomLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridOptions"] margin_top = 5.0 margin_right = 211.0 margin_bottom = 19.0 @@ -732,7 +734,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Show at zoom:" -[node name="ShowAtZoom" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridOptions"] +[node name="ShowAtZoom" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridOptions"] margin_left = 215.0 margin_right = 426.0 margin_bottom = 24.0 @@ -748,7 +750,7 @@ rounded = true align = 2 suffix = "%" -[node name="GridColorLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridOptions"] +[node name="GridColorLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridOptions"] margin_left = 430.0 margin_top = 5.0 margin_right = 529.0 @@ -757,7 +759,7 @@ hint_tooltip = "A color of the pixel grid" mouse_filter = 0 text = "Pixel grid color:" -[node name="GridColor" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/PixelGridOptions"] +[node name="GridColor" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/PixelGridOptions"] margin_top = 28.0 margin_right = 211.0 margin_bottom = 48.0 @@ -765,25 +767,25 @@ rect_min_size = Vector2( 64, 20 ) hint_tooltip = "A color of the pixel grid" mouse_default_cursor_shape = 2 -[node name="TransparencyHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="TransparencyHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 340.0 margin_right = 529.0 margin_bottom = 354.0 custom_constants/separation = 0 -[node name="TransparencyLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/TransparencyHeader"] +[node name="TransparencyLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/TransparencyHeader"] margin_right = 84.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Transparency" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/TransparencyHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/TransparencyHeader"] margin_left = 84.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="CheckerOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="CheckerOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 358.0 margin_right = 529.0 margin_bottom = 462.0 @@ -791,7 +793,7 @@ custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="SizeLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="SizeLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_top = 5.0 margin_right = 177.0 margin_bottom = 19.0 @@ -801,7 +803,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Checker size:" -[node name="CheckerSizeValue" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerSizeValue" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 181.0 margin_right = 357.0 margin_bottom = 24.0 @@ -815,7 +817,7 @@ rounded = true align = 2 suffix = "px" -[node name="CheckerColor1Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerColor1Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 361.0 margin_top = 5.0 margin_right = 529.0 @@ -824,7 +826,7 @@ hint_tooltip = "First color of the transparent checker background" mouse_filter = 0 text = "Checker color 1:" -[node name="CheckerColor1" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerColor1" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_top = 28.0 margin_right = 177.0 margin_bottom = 48.0 @@ -833,7 +835,7 @@ hint_tooltip = "First color of the transparent checker background" mouse_default_cursor_shape = 2 color = Color( 0.470588, 0.470588, 0.470588, 1 ) -[node name="CheckerColor2Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerColor2Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 181.0 margin_top = 31.0 margin_right = 357.0 @@ -842,7 +844,7 @@ hint_tooltip = "Second color of the transparent checker background" mouse_filter = 0 text = "Checker color 2:" -[node name="CheckerColor2" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerColor2" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 361.0 margin_top = 28.0 margin_right = 529.0 @@ -852,14 +854,14 @@ hint_tooltip = "Second color of the transparent checker background" mouse_default_cursor_shape = 2 color = Color( 0.341176, 0.34902, 0.341176, 1 ) -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_top = 57.0 margin_right = 177.0 margin_bottom = 71.0 rect_min_size = Vector2( 110, 0 ) text = "Follow Canvas Movement" -[node name="CheckerFollowMovement" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerFollowMovement" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 181.0 margin_top = 52.0 margin_right = 357.0 @@ -868,7 +870,7 @@ hint_tooltip = "The transparent checker follow the movement of canvas" mouse_default_cursor_shape = 2 text = "On" -[node name="Label2" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="Label2" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 361.0 margin_top = 57.0 margin_right = 529.0 @@ -876,7 +878,7 @@ margin_bottom = 71.0 rect_min_size = Vector2( 110, 0 ) text = "Follow Canvas Zoom Level" -[node name="CheckerFollowScale" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="CheckerFollowScale" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_top = 80.0 margin_right = 177.0 margin_bottom = 104.0 @@ -884,7 +886,7 @@ hint_tooltip = "The transparent checker follow the zoom level of canvas" mouse_default_cursor_shape = 2 text = "On" -[node name="Label3" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="Label3" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 181.0 margin_top = 85.0 margin_right = 357.0 @@ -893,7 +895,7 @@ rect_min_size = Vector2( 110, 0 ) mouse_filter = 0 text = "Tile mode opacity:" -[node name="TileModeOpacity" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/CheckerOptions"] +[node name="TileModeOpacity" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/CheckerOptions"] margin_left = 361.0 margin_top = 80.0 margin_right = 529.0 @@ -904,25 +906,25 @@ step = 0.1 value = 1.0 align = 2 -[node name="BackgroundHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="BackgroundHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 466.0 margin_right = 529.0 margin_bottom = 480.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundHeader"] margin_right = 74.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Background" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundHeader"] margin_left = 74.0 margin_right = 529.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="BackgroundOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas"] +[node name="BackgroundOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas"] margin_top = 484.0 margin_right = 529.0 margin_bottom = 528.0 @@ -930,7 +932,7 @@ custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="ColorFromLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundOptions"] +[node name="ColorFromLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundOptions"] margin_top = 3.0 margin_right = 204.0 margin_bottom = 17.0 @@ -939,7 +941,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Background color from:" -[node name="ColorOptionButton" type="OptionButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundOptions"] +[node name="ColorOptionButton" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundOptions"] margin_left = 208.0 margin_right = 411.0 margin_bottom = 20.0 @@ -949,7 +951,7 @@ text = "Theme" items = [ "Theme", null, false, 0, null, "Custom", null, false, 1, null ] selected = 0 -[node name="ColorLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundOptions"] +[node name="ColorLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundOptions"] margin_left = 415.0 margin_top = 3.0 margin_right = 529.0 @@ -957,7 +959,7 @@ margin_bottom = 17.0 mouse_filter = 0 text = "Background color:" -[node name="BackgroundColor" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Canvas/BackgroundOptions"] +[node name="BackgroundColor" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Canvas/BackgroundOptions"] margin_top = 24.0 margin_right = 204.0 margin_bottom = 44.0 @@ -965,38 +967,38 @@ rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 color = Color( 0.470588, 0.470588, 0.470588, 1 ) -[node name="Selection" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Selection" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 28.0 margin_right = 498.0 margin_bottom = 76.0 -[node name="SelectionHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection"] +[node name="SelectionHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Selection" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="SelectionOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection"] +[node name="SelectionOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection"] margin_right = 498.0 margin_bottom = 48.0 custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="AnimateLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="AnimateLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_top = 5.0 margin_right = 176.0 margin_bottom = 19.0 @@ -1005,7 +1007,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Animated selection borders" -[node name="Animate" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="Animate" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_left = 180.0 margin_right = 275.0 margin_bottom = 24.0 @@ -1014,7 +1016,7 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="BorderColor1Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="BorderColor1Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_left = 279.0 margin_top = 5.0 margin_right = 374.0 @@ -1022,7 +1024,7 @@ margin_bottom = 19.0 mouse_filter = 0 text = "Border color 1:" -[node name="BorderColor1" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="BorderColor1" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_top = 28.0 margin_right = 176.0 margin_bottom = 48.0 @@ -1030,7 +1032,7 @@ rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 color = Color( 1, 1, 1, 1 ) -[node name="BorderColor2Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="BorderColor2Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_left = 180.0 margin_top = 31.0 margin_right = 275.0 @@ -1038,7 +1040,7 @@ margin_bottom = 45.0 mouse_filter = 0 text = "Border color 2:" -[node name="BorderColor2" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Selection/SelectionOptions"] +[node name="BorderColor2" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Selection/SelectionOptions"] margin_left = 279.0 margin_top = 28.0 margin_right = 374.0 @@ -1046,75 +1048,75 @@ margin_bottom = 48.0 rect_min_size = Vector2( 64, 20 ) mouse_default_cursor_shape = 2 -[node name="Shortcuts" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Shortcuts" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 74.0 margin_right = 498.0 margin_bottom = 406.0 size_flags_vertical = 3 -[node name="ShortcutHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Shortcuts"] +[node name="ShortcutHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Shortcuts"] margin_right = 498.0 margin_bottom = 14.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Shortcuts/ShortcutHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Shortcuts/ShortcutHeader"] margin_right = 60.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Shortcuts" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Shortcuts/ShortcutHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Shortcuts/ShortcutHeader"] margin_left = 60.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="ShortcutEdit" parent="HSplitContainer/ScrollContainer/VBoxContainer/Shortcuts" instance=ExtResource( 3 )] +[node name="ShortcutEdit" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Shortcuts" instance=ExtResource( 3 )] anchor_right = 0.0 anchor_bottom = 0.0 margin_top = 18.0 margin_right = 498.0 margin_bottom = 332.0 -[node name="Backup" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Backup" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 184.0 margin_right = 498.0 margin_bottom = 254.0 -[node name="BackupHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup"] +[node name="BackupHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/BackupHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/BackupHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Backup" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/BackupHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/BackupHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="AutosaveContainer" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup"] +[node name="AutosaveContainer" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup"] margin_top = 18.0 margin_right = 498.0 margin_bottom = 70.0 columns = 3 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/AutosaveContainer"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/AutosaveContainer"] margin_top = 5.0 margin_right = 115.0 margin_bottom = 19.0 size_flags_horizontal = 3 text = "Enable autosave" -[node name="EnableAutosave" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/AutosaveContainer"] +[node name="EnableAutosave" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/AutosaveContainer"] margin_left = 119.0 margin_right = 214.0 margin_bottom = 24.0 @@ -1126,14 +1128,14 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="AutosaveIntervalLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/AutosaveContainer"] +[node name="AutosaveIntervalLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/AutosaveContainer"] margin_top = 33.0 margin_right = 115.0 margin_bottom = 47.0 size_flags_horizontal = 3 text = "Autosave interval:" -[node name="AutosaveInterval" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Backup/AutosaveContainer"] +[node name="AutosaveInterval" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Backup/AutosaveContainer"] margin_left = 119.0 margin_top = 28.0 margin_right = 214.0 @@ -1151,36 +1153,36 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Performance" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Performance" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 28.0 margin_right = 500.0 margin_bottom = 80.0 -[node name="PerformanceHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance"] +[node name="PerformanceHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Performance" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="PerformanceContainer" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance"] +[node name="PerformanceContainer" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance"] margin_right = 500.0 margin_bottom = 52.0 columns = 3 -[node name="SetFPSLimitLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceContainer"] +[node name="SetFPSLimitLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceContainer"] margin_top = 5.0 margin_right = 158.0 margin_bottom = 19.0 @@ -1189,7 +1191,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Set application FPS limit:" -[node name="SetFPSLimit" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceContainer"] +[node name="SetFPSLimit" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceContainer"] margin_left = 162.0 margin_right = 257.0 margin_bottom = 24.0 @@ -1203,7 +1205,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="PauseAppFocusLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceContainer"] +[node name="PauseAppFocusLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceContainer"] margin_left = 261.0 margin_top = 5.0 margin_right = 500.0 @@ -1212,7 +1214,7 @@ hint_tooltip = "If this is toggled on, when the application's window loses focus mouse_filter = 0 text = "Pause application when it loses focus" -[node name="PauseAppFocus" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Performance/PerformanceContainer"] +[node name="PauseAppFocus" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Performance/PerformanceContainer"] margin_top = 28.0 margin_right = 158.0 margin_bottom = 52.0 @@ -1224,105 +1226,153 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="Extensions" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Drivers" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] +visible = false +margin_top = 74.0 +margin_right = 498.0 +margin_bottom = 112.0 + +[node name="DriversHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers"] +margin_right = 498.0 +margin_bottom = 14.0 +custom_constants/separation = 0 + +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers/DriversHeader"] +margin_right = 46.0 +margin_bottom = 14.0 +theme_type_variation = "Header" +text = "Drivers" + +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers/DriversHeader"] +margin_left = 46.0 +margin_right = 498.0 +margin_bottom = 14.0 +size_flags_horizontal = 3 + +[node name="DriversContainer" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers"] +margin_top = 18.0 +margin_right = 498.0 +margin_bottom = 38.0 +columns = 3 + +[node name="RendererLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers/DriversContainer"] +margin_top = 3.0 +margin_right = 165.0 +margin_bottom = 17.0 +hint_tooltip = "Sets the limit of the application's frames per second. The lower the number, the lower the CPU usage, but the application gets slower, choppier and unresponsive. 0 means that there is no limit." +mouse_filter = 0 +size_flags_horizontal = 3 +text = "Renderer:" + +[node name="Renderer" type="OptionButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Drivers/DriversContainer"] +margin_left = 169.0 +margin_right = 334.0 +margin_bottom = 20.0 +mouse_default_cursor_shape = 2 +size_flags_horizontal = 3 +text = "GLES2" +items = [ "GLES3", null, false, 0, null, "GLES2", null, false, 1, null ] +selected = 1 + +[node name="Extensions" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 56.0 margin_right = 498.0 margin_bottom = 65.0 script = ExtResource( 2 ) -[node name="ExtensionsHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions"] +[node name="ExtensionsHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/ExtensionsHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/ExtensionsHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Extensions" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/ExtensionsHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/ExtensionsHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="InstalledExtensions" type="ItemList" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions"] +[node name="InstalledExtensions" type="ItemList" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions"] margin_right = 498.0 margin_bottom = 9.0 auto_height = true -[node name="HBoxContainer" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions"] +[node name="HBoxContainer" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions"] margin_right = 40.0 margin_bottom = 40.0 -[node name="AddExtensionButton" type="Button" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer"] +[node name="AddExtensionButton" type="Button" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer"] margin_right = 91.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "Add Extension" -[node name="EnableButton" type="Button" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer"] +[node name="EnableButton" type="Button" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer"] margin_right = 91.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 disabled = true text = "Enable" -[node name="UninstallButton" type="Button" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer"] +[node name="UninstallButton" type="Button" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer"] margin_right = 91.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 disabled = true text = "Uninstall" -[node name="OpenFolderButton" type="Button" parent="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer"] +[node name="OpenFolderButton" type="Button" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer"] margin_right = 12.0 margin_bottom = 20.0 mouse_default_cursor_shape = 2 text = "Open Folder" -[node name="Cursors" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Cursors" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 56.0 margin_right = 525.0 margin_bottom = 164.0 -[node name="CursorsHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors"] +[node name="CursorsHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Cursors" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="CursorsContainer" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors"] +[node name="CursorsContainer" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors"] margin_right = 525.0 margin_bottom = 108.0 custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_top = 5.0 margin_right = 126.0 margin_bottom = 19.0 size_flags_horizontal = 3 text = "Left pixel indicator" -[node name="LeftIndicatorCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="LeftIndicatorCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 130.0 margin_right = 354.0 margin_bottom = 24.0 @@ -1332,14 +1382,14 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="Label2" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label2" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 358.0 margin_top = 5.0 margin_right = 525.0 margin_bottom = 19.0 text = "Right pixel indicator" -[node name="RightIndicatorCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="RightIndicatorCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_top = 28.0 margin_right = 126.0 margin_bottom = 52.0 @@ -1348,14 +1398,14 @@ mouse_default_cursor_shape = 2 size_flags_horizontal = 3 text = "On" -[node name="Label3" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label3" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 130.0 margin_top = 33.0 margin_right = 354.0 margin_bottom = 47.0 text = "Show left tool icon" -[node name="LeftToolIconCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="LeftToolIconCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 358.0 margin_top = 28.0 margin_right = 525.0 @@ -1366,13 +1416,13 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="Label4" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label4" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_top = 61.0 margin_right = 126.0 margin_bottom = 75.0 text = "Show right tool icon" -[node name="RightToolIconCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="RightToolIconCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 130.0 margin_top = 56.0 margin_right = 354.0 @@ -1383,28 +1433,28 @@ size_flags_horizontal = 3 pressed = true text = "On" -[node name="Label5" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label5" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 358.0 margin_top = 61.0 margin_right = 525.0 margin_bottom = 75.0 text = "Use native mouse cursors" -[node name="NativeCursorsCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="NativeCursorsCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_top = 84.0 margin_right = 126.0 margin_bottom = 108.0 mouse_default_cursor_shape = 2 text = "On" -[node name="Label6" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="Label6" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 130.0 margin_top = 89.0 margin_right = 354.0 margin_bottom = 103.0 text = "Use cross cursor for the canvas" -[node name="CrossCursorCheckbox" type="CheckBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Cursors/CursorsContainer"] +[node name="CrossCursorCheckbox" type="CheckBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Cursors/CursorsContainer"] margin_left = 358.0 margin_top = 84.0 margin_right = 525.0 @@ -1413,38 +1463,38 @@ mouse_default_cursor_shape = 2 pressed = true text = "On" -[node name="Image" type="VBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer"] +[node name="Image" type="VBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide"] visible = false margin_top = 240.0 margin_right = 506.0 margin_bottom = 316.0 -[node name="ImageHeader" type="HBoxContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image"] +[node name="ImageHeader" type="HBoxContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image"] margin_top = 108.0 margin_right = 498.0 margin_bottom = 122.0 custom_constants/separation = 0 -[node name="Label" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageHeader"] +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageHeader"] margin_right = 51.0 margin_bottom = 14.0 theme_type_variation = "Header" text = "Image" -[node name="HSeparator" type="HSeparator" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageHeader"] +[node name="HSeparator" type="HSeparator" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageHeader"] margin_left = 51.0 margin_right = 498.0 margin_bottom = 14.0 size_flags_horizontal = 3 -[node name="ImageOptions" type="GridContainer" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image"] +[node name="ImageOptions" type="GridContainer" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image"] margin_right = 506.0 margin_bottom = 76.0 custom_constants/vseparation = 4 custom_constants/hseparation = 4 columns = 3 -[node name="DefaultWidthLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="DefaultWidthLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_top = 5.0 margin_right = 110.0 margin_bottom = 19.0 @@ -1454,7 +1504,7 @@ mouse_filter = 0 size_flags_horizontal = 3 text = "Default width:" -[node name="ImageDefaultWidth" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="ImageDefaultWidth" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_left = 114.0 margin_right = 188.0 margin_bottom = 24.0 @@ -1468,7 +1518,7 @@ rounded = true align = 2 suffix = "px" -[node name="DefaultHeightLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="DefaultHeightLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_top = 33.0 margin_right = 110.0 margin_bottom = 47.0 @@ -1476,7 +1526,7 @@ hint_tooltip = "A default height of a new image" mouse_filter = 0 text = "Default height:" -[node name="ImageDefaultHeight" type="SpinBox" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="ImageDefaultHeight" type="SpinBox" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_left = 114.0 margin_top = 28.0 margin_right = 188.0 @@ -1490,7 +1540,7 @@ rounded = true align = 2 suffix = "px" -[node name="DefaultFillColorLabel" type="Label" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="DefaultFillColorLabel" type="Label" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_top = 59.0 margin_right = 110.0 margin_bottom = 73.0 @@ -1498,7 +1548,7 @@ hint_tooltip = "A default background color of a new image" mouse_filter = 0 text = "Default fill color:" -[node name="DefaultFillColor" type="ColorPickerButton" parent="HSplitContainer/ScrollContainer/VBoxContainer/Image/ImageOptions"] +[node name="DefaultFillColor" type="ColorPickerButton" parent="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Image/ImageOptions"] margin_left = 114.0 margin_top = 56.0 margin_right = 188.0 @@ -1508,6 +1558,18 @@ hint_tooltip = "A default background color of a new image" mouse_default_cursor_shape = 2 color = Color( 0, 0, 0, 0 ) +[node name="MustRestart" type="HBoxContainer" parent="HSplitContainer/VBoxContainer"] +unique_name_in_owner = true +visible = false +margin_top = 392.0 +margin_right = 498.0 +margin_bottom = 406.0 + +[node name="Label" type="Label" parent="HSplitContainer/VBoxContainer/MustRestart"] +margin_right = 359.0 +margin_bottom = 14.0 +text = "Pixelorama must be restarted for changes to take effect." + [node name="Popups" type="Node" parent="."] [node name="AddExtensionFileDialog" type="FileDialog" parent="Popups"] @@ -1524,12 +1586,12 @@ show_hidden_files = true [connection signal="about_to_show" from="." to="." method="_on_PreferencesDialog_about_to_show"] [connection signal="popup_hide" from="." to="." method="_on_PreferencesDialog_popup_hide"] [connection signal="item_selected" from="HSplitContainer/List" to="." method="_on_List_item_selected"] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Language/System Language" to="HSplitContainer/ScrollContainer/VBoxContainer/Language" method="_on_Language_pressed" binds= [ 1 ]] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Interface/InterfaceOptions/ShrinkContainer/ShrinkApplyButton" to="." method="_on_ShrinkApplyButton_pressed"] -[connection signal="item_selected" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/InstalledExtensions" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_InstalledExtensions_item_selected"] -[connection signal="nothing_selected" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/InstalledExtensions" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_InstalledExtensions_nothing_selected"] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer/AddExtensionButton" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_AddExtensionButton_pressed"] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer/EnableButton" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_EnableButton_pressed"] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer/UninstallButton" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_UninstallButton_pressed"] -[connection signal="pressed" from="HSplitContainer/ScrollContainer/VBoxContainer/Extensions/HBoxContainer/OpenFolderButton" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_OpenFolderButton_pressed"] -[connection signal="files_selected" from="Popups/AddExtensionFileDialog" to="HSplitContainer/ScrollContainer/VBoxContainer/Extensions" method="_on_AddExtensionFileDialog_files_selected"] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language/System Language" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Language" method="_on_Language_pressed" binds= [ 1 ]] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Interface/InterfaceOptions/ShrinkContainer/ShrinkApplyButton" to="." method="_on_ShrinkApplyButton_pressed"] +[connection signal="item_selected" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/InstalledExtensions" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_InstalledExtensions_item_selected"] +[connection signal="nothing_selected" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/InstalledExtensions" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_InstalledExtensions_nothing_selected"] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer/AddExtensionButton" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_AddExtensionButton_pressed"] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer/EnableButton" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_EnableButton_pressed"] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer/UninstallButton" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_UninstallButton_pressed"] +[connection signal="pressed" from="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions/HBoxContainer/OpenFolderButton" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_OpenFolderButton_pressed"] +[connection signal="files_selected" from="Popups/AddExtensionFileDialog" to="HSplitContainer/VBoxContainer/ScrollContainer/RightSide/Extensions" method="_on_AddExtensionFileDialog_files_selected"] diff --git a/src/Preferences/RestoreDefaultButton.gd b/src/Preferences/RestoreDefaultButton.gd index 83c4e427a..cb5b7c6b1 100644 --- a/src/Preferences/RestoreDefaultButton.gd +++ b/src/Preferences/RestoreDefaultButton.gd @@ -3,6 +3,7 @@ extends TextureButton var setting_name: String var value_type: String var default_value +var require_restart := false var node: Node @@ -12,7 +13,8 @@ func _ready() -> void: func _on_RestoreDefaultButton_pressed() -> void: Global.set(setting_name, default_value) - Global.config_cache.set_value("preferences", setting_name, default_value) - Global.preferences_dialog.preference_update(setting_name) + if not require_restart: + Global.config_cache.set_value("preferences", setting_name, default_value) + Global.preferences_dialog.preference_update(setting_name, require_restart) Global.preferences_dialog.disable_restore_default_button(self, true) node.set(value_type, default_value)