Created basic theme changing under Preferences

Also fixed bug where Global.can_draw wasn't being set to true after PreferencesDialog was hidden
This commit is contained in:
OverloadedOrama 2019-12-19 01:18:57 +02:00
parent 432c9690ff
commit 3cf44a6d55
11 changed files with 263 additions and 214 deletions

View file

@ -114,6 +114,7 @@ var palettes := {}
#Nodes
var control : Node
var top_menu_container : Panel
var left_cursor : Sprite
var right_cursor : Sprite
var canvas : Canvas
@ -203,6 +204,7 @@ func _ready() -> void:
var root = get_tree().get_root()
control = find_node_by_name(root, "Control")
top_menu_container = find_node_by_name(control, "TopMenuContainer")
left_cursor = find_node_by_name(root, "LeftCursor")
right_cursor = find_node_by_name(root, "RightCursor")
canvas = find_node_by_name(root, "Canvas")

View file

@ -13,6 +13,30 @@ func _on_LanguageOption_item_selected(ID : int) -> void:
Global.config_cache.set_value("preferences", "locale", TranslationServer.get_locale())
Global.config_cache.save("user://cache.ini")
func _on_ThemeOption_item_selected(ID : int) -> void:
var main_theme
var top_menu_style
var ruler_style
if ID == 0: #Main Theme
main_theme = preload("res://Themes & Styles/Main Theme/Main Theme.tres")
top_menu_style = preload("res://Themes & Styles/Main Theme/TopMenuStyle.tres")
ruler_style = preload("res://Themes & Styles/Main Theme/RulerStyle.tres")
elif ID == 1: #Dark Theme
main_theme = preload("res://Themes & Styles/Dark Theme/Dark Theme.tres")
top_menu_style = preload("res://Themes & Styles/Dark Theme/DarkTopMenuStyle.tres")
ruler_style = preload("res://Themes & Styles/Dark Theme/DarkRulerStyle.tres")
Global.control.theme = main_theme
Global.top_menu_container.add_stylebox_override("panel", top_menu_style)
Global.horizontal_ruler.add_stylebox_override("normal", ruler_style)
Global.horizontal_ruler.add_stylebox_override("pressed", ruler_style)
Global.horizontal_ruler.add_stylebox_override("hover", ruler_style)
Global.horizontal_ruler.add_stylebox_override("focus", ruler_style)
Global.vertical_ruler.add_stylebox_override("normal", ruler_style)
Global.vertical_ruler.add_stylebox_override("pressed", ruler_style)
Global.vertical_ruler.add_stylebox_override("hover", ruler_style)
Global.vertical_ruler.add_stylebox_override("focus", ruler_style)
func _on_GridWidthValue_value_changed(value : float) -> void:
Global.grid_width = value
@ -20,4 +44,4 @@ func _on_GridHeightValue_value_changed(value : float) -> void:
Global.grid_height = value
func _on_GridColor_color_changed(color : Color) -> void:
Global.grid_color = color
Global.grid_color = color