From a88b52211624952f6daf2afdcd343bd696368ccf Mon Sep 17 00:00:00 2001 From: rainlizard <15337628+rainlizard@users.noreply.github.com> Date: Mon, 25 Mar 2024 14:34:11 +1100 Subject: [PATCH] map browser edits --- Scenes/DynamicMapTree.gd | 7 +++- Scenes/Main.tscn | 85 ++++++++++++++++----------------------- Theme/UnearthTheme.theme | Bin 1588 -> 1701 bytes 3 files changed, 40 insertions(+), 52 deletions(-) diff --git a/Scenes/DynamicMapTree.gd b/Scenes/DynamicMapTree.gd index 531ebe36..32da5a65 100644 --- a/Scenes/DynamicMapTree.gd +++ b/Scenes/DynamicMapTree.gd @@ -10,7 +10,7 @@ var searchResultTreeItemDirs = [] # Just used for killing items with no children func _ready(): set_column_expand(0,false) - set_column_min_width(0,135) + set_column_min_width(0,180) func update_dynamic_tree(): @@ -54,7 +54,10 @@ func get_tree_items_recursively(fromItem, toItem, searchText, collapseResults): if fromItem.get_metadata(0).to_upper() in currentSlbPath.to_upper(): newTreeItem.set_collapsed(false) else: - newTreeItem.set_collapsed(collapseResults) + if toItem == get_root(): + newTreeItem.set_collapsed(false) # Do not collapse folders one level deep + else: + newTreeItem.set_collapsed(collapseResults) searchResultTreeItemDirs.append(newTreeItem) get_tree_items_recursively(fromItem, newTreeItem, searchText, collapseResults) diff --git a/Scenes/Main.tscn b/Scenes/Main.tscn index 4528dacb..2d3b4ad5 100644 --- a/Scenes/Main.tscn +++ b/Scenes/Main.tscn @@ -1823,30 +1823,16 @@ tab_align = 0 [node name="MapBrowserTabEdit" type="Control" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer"] anchor_right = 1.0 anchor_bottom = 1.0 -margin_left = 12.0 -margin_top = 43.0 -margin_right = -12.0 -margin_bottom = -12.0 -[node name="PanelContainer" type="PanelContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit"] +[node name="VBoxContainer" type="VBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit"] anchor_right = 1.0 anchor_bottom = 1.0 size_flags_horizontal = 3 size_flags_vertical = 3 - -[node name="VBoxContainer" type="VBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer"] -margin_left = 9.0 -margin_top = 9.0 -margin_right = 301.0 -margin_bottom = 775.0 -size_flags_vertical = 3 custom_constants/separation = 0 -__meta__ = { -"_edit_use_anchors_": false -} -[node name="LineEditFilter" type="LineEdit" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer"] -margin_right = 292.0 +[node name="LineEditFilter" type="LineEdit" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer"] +margin_right = 334.0 margin_bottom = 42.0 focus_mode = 1 mouse_filter = 1 @@ -1862,9 +1848,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="HSeparator" type="HSeparator" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer"] +[node name="HSeparator" type="HSeparator" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer"] margin_top = 42.0 -margin_right = 292.0 +margin_right = 334.0 margin_bottom = 50.0 mouse_filter = 1 custom_constants/separation = 8 @@ -1873,15 +1859,14 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="DynamicMapTree" type="Tree" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer"] +[node name="DynamicMapTree" type="Tree" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer"] margin_top = 50.0 -margin_right = 292.0 -margin_bottom = 729.0 +margin_right = 334.0 +margin_bottom = 802.0 mouse_filter = 1 size_flags_horizontal = 3 size_flags_vertical = 3 custom_constants/draw_relationship_lines = 1 -custom_fonts/font = ExtResource( 70 ) columns = 2 allow_reselect = true hide_root = true @@ -1891,7 +1876,7 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="SourceMapTree" type="Tree" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer"] +[node name="SourceMapTree" type="Tree" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer"] visible = false margin_top = 297.0 margin_right = 586.0 @@ -1908,29 +1893,29 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="VBoxContainer" type="VBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer"] -margin_top = 729.0 -margin_right = 292.0 -margin_bottom = 766.0 +[node name="VBoxContainer" type="VBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer"] +margin_top = 802.0 +margin_right = 334.0 +margin_bottom = 839.0 -[node name="MarginContainer" type="MarginContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer"] -margin_right = 292.0 +[node name="MarginContainer" type="MarginContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer"] +margin_right = 334.0 margin_bottom = 37.0 custom_constants/margin_right = 5 custom_constants/margin_top = 5 custom_constants/margin_left = 5 custom_constants/margin_bottom = 5 -[node name="HBoxContainer" type="HBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer"] +[node name="HBoxContainer" type="HBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer"] margin_left = 5.0 margin_top = 5.0 -margin_right = 287.0 +margin_right = 329.0 margin_bottom = 32.0 __meta__ = { "_edit_use_anchors_": false } -[node name="TextureButton" type="TextureButton" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] +[node name="TextureButton" type="TextureButton" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] margin_right = 24.0 margin_bottom = 27.0 rect_min_size = Vector2( 24, 24 ) @@ -1943,7 +1928,7 @@ texture_hover = ExtResource( 59 ) expand = true stretch_mode = 5 -[node name="UNUSEDLineEditFilename" type="LineEdit" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] +[node name="UNUSEDLineEditFilename" type="LineEdit" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] visible = false margin_left = 28.0 margin_right = 519.0 @@ -1960,9 +1945,9 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="BrowserFilename" type="Label" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] +[node name="BrowserFilename" type="Label" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] margin_left = 28.0 -margin_right = 229.0 +margin_right = 271.0 margin_bottom = 27.0 size_flags_horizontal = 3 size_flags_vertical = 3 @@ -1973,13 +1958,13 @@ __meta__ = { "_edit_use_anchors_": false } -[node name="BrowseButton" type="Button" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] -margin_left = 233.0 -margin_right = 282.0 +[node name="BrowseButton" type="Button" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer"] +margin_left = 275.0 +margin_right = 324.0 margin_bottom = 27.0 text = "Edit" -[node name="RandomMapContainer" type="MarginContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer"] +[node name="RandomMapContainer" type="MarginContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer"] visible = false margin_top = 41.0 margin_right = 292.0 @@ -1989,13 +1974,13 @@ custom_constants/margin_top = 5 custom_constants/margin_left = 5 custom_constants/margin_bottom = 5 -[node name="HBoxContainer" type="HBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/RandomMapContainer"] +[node name="HBoxContainer" type="HBoxContainer" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/RandomMapContainer"] margin_left = 5.0 margin_top = 5.0 margin_right = 287.0 margin_bottom = 32.0 -[node name="TextureRect" type="TextureRect" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer"] +[node name="TextureRect" type="TextureRect" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer"] margin_right = 27.0 margin_bottom = 27.0 rect_min_size = Vector2( 27, 27 ) @@ -2003,7 +1988,7 @@ size_flags_horizontal = 8 texture = ExtResource( 144 ) expand = true -[node name="PlayRandomMapButton" type="Button" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer"] +[node name="PlayRandomMapButton" type="Button" parent="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer"] margin_left = 111.0 margin_right = 282.0 margin_bottom = 27.0 @@ -7086,13 +7071,13 @@ script = SubResource( 20 ) [connection signal="item_rect_changed" from="Ui/UiSystem/MapBrowser" to="Ui/UiSystem/MapBrowser" method="_on_MapBrowser_item_rect_changed"] [connection signal="visibility_changed" from="Ui/UiSystem/MapBrowser" to="Ui/UiSystem/MapBrowser" method="_on_MapBrowser_visibility_changed"] [connection signal="tab_changed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer" to="Ui/UiSystem/MapBrowser" method="_on_MapBrowserTabContainer_tab_changed"] -[connection signal="text_changed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/LineEditFilter" to="Ui/UiSystem/MapBrowser" method="_on_LineEdit_text_changed"] -[connection signal="item_activated" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser" method="_on_DynamicMapTree_item_activated"] -[connection signal="item_selected" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser" method="_on_DynamicMapTree_item_selected"] -[connection signal="item_selected" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/DynamicMapTree" method="_on_DynamicMapTree_item_selected"] -[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer/TextureButton" to="Ui/UiSystem/MapBrowser" method="_on_TextureButton_pressed"] -[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer/BrowseButton" to="Ui/UiSystem/MapBrowser" method="_on_BrowseButton_pressed"] -[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/PanelContainer/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer/PlayRandomMapButton" to="Ui/UiSystem/MapBrowser" method="_on_PlayRandomMapButton_pressed"] +[connection signal="text_changed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/LineEditFilter" to="Ui/UiSystem/MapBrowser" method="_on_LineEdit_text_changed"] +[connection signal="item_activated" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser" method="_on_DynamicMapTree_item_activated"] +[connection signal="item_selected" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser" method="_on_DynamicMapTree_item_selected"] +[connection signal="item_selected" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/DynamicMapTree" to="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/DynamicMapTree" method="_on_DynamicMapTree_item_selected"] +[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer/TextureButton" to="Ui/UiSystem/MapBrowser" method="_on_TextureButton_pressed"] +[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/MarginContainer/HBoxContainer/BrowseButton" to="Ui/UiSystem/MapBrowser" method="_on_BrowseButton_pressed"] +[connection signal="pressed" from="Ui/UiSystem/MapBrowser/MapBrowserTabContainer/MapBrowserTabEdit/VBoxContainer/VBoxContainer/RandomMapContainer/HBoxContainer/PlayRandomMapButton" to="Ui/UiSystem/MapBrowser" method="_on_PlayRandomMapButton_pressed"] [connection signal="file_selected" from="Ui/UiSystem/ChooseDkExe" to="Ui/UiSystem/ChooseDkExe" method="_on_ChooseDkExe_file_selected"] [connection signal="file_selected" from="Ui/UiSystem/ChooseDkExe" to="Ui/UiSystem/PreferencesWindow" method="_on_ChooseDkExe_file_selected"] [connection signal="dir_selected" from="Ui/UiSystem/ChooseDefaultSaveFolder" to="Ui/UiSystem/ChooseDefaultSaveFolder" method="_on_ChooseDefaultSaveFolder_dir_selected"] diff --git a/Theme/UnearthTheme.theme b/Theme/UnearthTheme.theme index 404ff4adb2620444d66a3f2f5f8602518a42f23b..38885ae1a117bb106481f39f678410a54756fc07 100644 GIT binary patch literal 1701 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