diff options
| author | metamuffin <metamuffin@disroot.org> | 2024-09-06 23:43:42 +0200 | 
|---|---|---|
| committer | metamuffin <metamuffin@disroot.org> | 2024-09-06 23:43:42 +0200 | 
| commit | 06baf4555dc1c7a64bed7d059fbe34c99e9638fb (patch) | |
| tree | 923d343033a8c1aa28a8d6c834c0332ddd2201ab /client/menu/settings.gd | |
| parent | d7fefc69c0a8a4b70d3553125af5f5cabdba6b3b (diff) | |
| download | hurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar hurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar.bz2 hurrycurry-06baf4555dc1c7a64bed7d059fbe34c99e9638fb.tar.zst | |
refactor settings again (part 1)
Diffstat (limited to 'client/menu/settings.gd')
| -rw-r--r-- | client/menu/settings.gd | 43 | 
1 files changed, 4 insertions, 39 deletions
| diff --git a/client/menu/settings.gd b/client/menu/settings.gd index eb143900..b47331c6 100644 --- a/client/menu/settings.gd +++ b/client/menu/settings.gd @@ -16,52 +16,17 @@  #  extends Menu -const SETTINGS_ROW_SCENE = preload("res://menu/settings/settings_row.tscn")  - -@onready var settings_tabs: TabContainer = $OuterGap/Panel/InnerGap/VBoxContainer/TabContainer  +@onready var container = $OuterGap/Panel/InnerGap/VBoxContainer  func _ready():  	super() -	update_rows() +	Global.settings_tree._update_row() +	container.add_child(Global.settings_tree.row) +	container.move_child(Global.settings_tree.row, 1)  func _on_back_pressed():  	exit()  func exit():  	Global.save_settings() -	Global.apply_settings()  	super() - -func update_rows(fix_focus = false): -	for c in settings_tabs.get_children(): -		c.queue_free() -	 -	for category: SettingsCategory in Global.default_settings: -		var category_settings = category.settings -		var scroll := ScrollContainerCustom.new() -		var options := VBoxContainer.new() -		scroll.name = category.name -		scroll.size_flags_horizontal = Control.SIZE_EXPAND_FILL -		settings_tabs.add_child(scroll) -		options.size_flags_horizontal = Control.SIZE_EXPAND_FILL -		scroll.add_child(options) -		 -		var category_presets = category.presets -		if category_presets != null: -			for i: Preset in category_presets: -				var row: SettingsRow = SETTINGS_ROW_SCENE.instantiate() -				options.add_child(row) -				row.label.text = i.label -				row.reset_button.visible = false -				for b in i.buttons(): -					row.value_parent.add_child(b) -		 -		for k: String in category_settings.keys(): -			var row: SettingsRow = Global.settings[k].get_row() -			options.add_child(row) -	 -	if fix_focus: -		pass -		# TODO: Not implemented! -		# await get_tree().process_frame -		# Global.focus_first(self) | 
