add debug panel

This commit is contained in:
Matt Parker
2025-08-29 18:25:42 +10:00
parent 88b8fbea55
commit 850be02a52
11 changed files with 266 additions and 7 deletions

View File

@@ -10,6 +10,7 @@ public partial class LeftSideBar : Panel
private Button _problemsButton = null!;
private Button _runButton = null!;
private Button _buildButton = null!;
private Button _debugButton = null!;
public override void _Ready()
{
@@ -17,10 +18,12 @@ public partial class LeftSideBar : Panel
_problemsButton = GetNode<Button>("%ProblemsButton");
_runButton = GetNode<Button>("%RunButton");
_buildButton = GetNode<Button>("%BuildButton");
_debugButton = GetNode<Button>("%DebugButton");
_problemsButton.Toggled += toggledOn => GodotGlobalEvents.InvokeBottomPanelTabSelected(toggledOn ? BottomPanelType.Problems : null);
_runButton.Toggled += toggledOn => GodotGlobalEvents.InvokeBottomPanelTabSelected(toggledOn ? BottomPanelType.Run : null);
_buildButton.Toggled += toggledOn => GodotGlobalEvents.InvokeBottomPanelTabSelected(toggledOn ? BottomPanelType.Build : null);
_debugButton.Toggled += toggledOn => GodotGlobalEvents.InvokeBottomPanelTabSelected(toggledOn ? BottomPanelType.Debug : null);
GodotGlobalEvents.BottomPanelTabExternallySelected += OnBottomPanelTabExternallySelected;
}
@@ -31,6 +34,7 @@ public partial class LeftSideBar : Panel
switch (arg)
{
case BottomPanelType.Run: _runButton.ButtonPressed = true; break;
case BottomPanelType.Debug: _debugButton.ButtonPressed = true; break;
case BottomPanelType.Build: _buildButton.ButtonPressed = true; break;
case BottomPanelType.Problems: _problemsButton.ButtonPressed = true; break;
default: throw new ArgumentOutOfRangeException(nameof(arg), arg, null);

View File

@@ -70,6 +70,19 @@ icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="DebugButton" type="Button" parent="MarginContainer/VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2
focus_mode = 0
theme_override_font_sizes/font_size = 13
toggle_mode = true
button_group = ExtResource("2_1aad6")
text = "Debug"
icon = ExtResource("1_6wc7d")
icon_alignment = 1
vertical_icon_alignment = 0
expand_icon = true
[node name="BuildButton" type="Button" parent="MarginContainer/VBoxContainer"]
unique_name_in_owner = true
layout_mode = 2