From 9dae2140bb9ead5075651789fd7eb37be5be718a Mon Sep 17 00:00:00 2001 From: Matt Parker <61717342+MattParkerDev@users.noreply.github.com> Date: Wed, 27 Aug 2025 20:53:27 +1000 Subject: [PATCH] refactor left side bar --- .../Features/LeftSideBar/LeftSideBar.tscn | 74 +++++++++++++++++++ src/SharpIDE.Godot/IdeRoot.tscn | 68 +---------------- 2 files changed, 77 insertions(+), 65 deletions(-) create mode 100644 src/SharpIDE.Godot/Features/LeftSideBar/LeftSideBar.tscn diff --git a/src/SharpIDE.Godot/Features/LeftSideBar/LeftSideBar.tscn b/src/SharpIDE.Godot/Features/LeftSideBar/LeftSideBar.tscn new file mode 100644 index 0000000..e6eef1d --- /dev/null +++ b/src/SharpIDE.Godot/Features/LeftSideBar/LeftSideBar.tscn @@ -0,0 +1,74 @@ +[gd_scene load_steps=2 format=3 uid="uid://biyhfwx36ium8"] + +[ext_resource type="Texture2D" uid="uid://bkty6563cthj8" path="res://Features/Run/Resources/Run.svg" id="1_6wc7d"] + +[node name="LeftSideBar" type="Panel"] +custom_minimum_size = Vector2(80, 0) +anchors_preset = 13 +anchor_left = 0.5 +anchor_right = 0.5 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 + +[node name="MarginContainer" type="MarginContainer" parent="."] +layout_mode = 1 +anchors_preset = 15 +anchor_right = 1.0 +anchor_bottom = 1.0 +grow_horizontal = 2 +grow_vertical = 2 +theme_override_constants/margin_top = 5 +theme_override_constants/margin_bottom = 5 + +[node name="VBoxContainer" type="VBoxContainer" parent="MarginContainer"] +layout_mode = 2 +size_flags_horizontal = 4 + +[node name="ExplorerButton" type="Button" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +focus_mode = 0 +theme_override_font_sizes/font_size = 13 +toggle_mode = true +text = "Explorer" +icon = ExtResource("1_6wc7d") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true + +[node name="Spacer" type="Control" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +size_flags_vertical = 3 + +[node name="ProblemsButton" type="Button" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +focus_mode = 0 +theme_override_font_sizes/font_size = 13 +toggle_mode = true +text = "Problems" +icon = ExtResource("1_6wc7d") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true + +[node name="RunButton" type="Button" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +focus_mode = 0 +theme_override_font_sizes/font_size = 13 +toggle_mode = true +text = "Run" +icon = ExtResource("1_6wc7d") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true + +[node name="BuildButton" type="Button" parent="MarginContainer/VBoxContainer"] +layout_mode = 2 +focus_mode = 0 +theme_override_font_sizes/font_size = 13 +toggle_mode = true +text = "Build" +icon = ExtResource("1_6wc7d") +icon_alignment = 1 +vertical_icon_alignment = 0 +expand_icon = true diff --git a/src/SharpIDE.Godot/IdeRoot.tscn b/src/SharpIDE.Godot/IdeRoot.tscn index 23397f2..e3a38fe 100644 --- a/src/SharpIDE.Godot/IdeRoot.tscn +++ b/src/SharpIDE.Godot/IdeRoot.tscn @@ -1,4 +1,4 @@ -[gd_scene load_steps=11 format=3 uid="uid://b2oniigcp5ew5"] +[gd_scene load_steps=12 format=3 uid="uid://b2oniigcp5ew5"] [ext_resource type="Script" uid="uid://bavypuy7b375x" path="res://IdeRoot.cs" id="1_whawi"] [ext_resource type="Texture2D" uid="uid://bkty6563cthj8" path="res://Features/Run/Resources/Run.svg" id="2_8x8ub"] @@ -6,6 +6,7 @@ [ext_resource type="FontFile" uid="uid://7jc0nj310cu6" path="res://CascadiaCode.ttf" id="2_rk34b"] [ext_resource type="Script" uid="uid://bai53k7ongbxw" path="res://Features/SolutionExplorer/SolutionExplorerPanel.cs" id="2_tcy02"] [ext_resource type="Script" uid="uid://kvnhndc3l6ih" path="res://Features/CustomControls/InvertedVSplitContainer.cs" id="3_0ybuf"] +[ext_resource type="PackedScene" uid="uid://biyhfwx36ium8" path="res://Features/LeftSideBar/LeftSideBar.tscn" id="3_f60gr"] [ext_resource type="PackedScene" uid="uid://bcoytt3bw0gpe" path="res://Features/Run/RunPanel.tscn" id="5_y3aoi"] [ext_resource type="Script" uid="uid://cvvgp42r3nml8" path="res://Features/BottomPanel/BottomPanelManager.cs" id="7_i62lx"] [ext_resource type="PackedScene" uid="uid://co6dkhdolriej" path="res://Features/Build/BuildPanel.tscn" id="9_rllbf"] @@ -94,72 +95,9 @@ layout_mode = 2 layout_mode = 2 size_flags_vertical = 3 -[node name="Panel" type="Panel" parent="VBoxContainer/HBoxContainer"] -custom_minimum_size = Vector2(80, 0) +[node name="LeftSideBar" parent="VBoxContainer/HBoxContainer" instance=ExtResource("3_f60gr")] layout_mode = 2 -[node name="MarginContainer" type="MarginContainer" parent="VBoxContainer/HBoxContainer/Panel"] -layout_mode = 1 -anchors_preset = 15 -anchor_right = 1.0 -anchor_bottom = 1.0 -grow_horizontal = 2 -grow_vertical = 2 -theme_override_constants/margin_top = 5 -theme_override_constants/margin_bottom = 5 - -[node name="VBoxContainer" type="VBoxContainer" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer"] -layout_mode = 2 -size_flags_horizontal = 4 - -[node name="ExplorerButton" type="Button" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer/VBoxContainer"] -layout_mode = 2 -focus_mode = 0 -theme_override_font_sizes/font_size = 13 -toggle_mode = true -text = "Explorer" -icon = ExtResource("2_8x8ub") -icon_alignment = 1 -vertical_icon_alignment = 0 -expand_icon = true - -[node name="Spacer" type="Control" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer/VBoxContainer"] -layout_mode = 2 -size_flags_vertical = 3 - -[node name="ProblemsButton" type="Button" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer/VBoxContainer"] -layout_mode = 2 -focus_mode = 0 -theme_override_font_sizes/font_size = 13 -toggle_mode = true -text = "Problems" -icon = ExtResource("2_8x8ub") -icon_alignment = 1 -vertical_icon_alignment = 0 -expand_icon = true - -[node name="RunButton" type="Button" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer/VBoxContainer"] -layout_mode = 2 -focus_mode = 0 -theme_override_font_sizes/font_size = 13 -toggle_mode = true -text = "Run" -icon = ExtResource("2_8x8ub") -icon_alignment = 1 -vertical_icon_alignment = 0 -expand_icon = true - -[node name="BuildButton" type="Button" parent="VBoxContainer/HBoxContainer/Panel/MarginContainer/VBoxContainer"] -layout_mode = 2 -focus_mode = 0 -theme_override_font_sizes/font_size = 13 -toggle_mode = true -text = "Build" -icon = ExtResource("2_8x8ub") -icon_alignment = 1 -vertical_icon_alignment = 0 -expand_icon = true - [node name="VSplitContainer" type="VSplitContainer" parent="VBoxContainer/HBoxContainer"] layout_mode = 2 size_flags_horizontal = 3