添加了部分界面

This commit is contained in:
CortexCore
2023-07-08 00:02:32 +08:00
parent f4e85d4f9b
commit a2da9039f8
23 changed files with 768 additions and 48 deletions

View File

@@ -11,7 +11,7 @@ public partial class BITAppForGodot : Node
{
public static readonly ValidHandle AllowCursor = new();
public static float DeltaTime { get; private set; }
/// <summary>
/// 在构造函数中注册Logger
/// </summary>

View File

@@ -27,4 +27,12 @@ public static partial class MathNode
}
return nodes.Distinct();
}
public static void RemoveAllChild(Node self)
{
foreach (var x in self.GetChildren())
{
x.QueueFree();
}
}
}

View File

@@ -1,2 +0,0 @@
extends Godot.Resource
var Value;

View File

@@ -2,6 +2,7 @@ using Godot;
namespace BITKit;
[GlobalClass]
public partial class StringResource : Resource
{
[Export]

View File

@@ -0,0 +1,8 @@
using Godot;
using System;
using BITKit;
public partial class StringResourceTester : Node
{
[Export] private StringResource resource;
}

View File

@@ -1,5 +1,6 @@
using System.Diagnostics;
using Godot;
using Godot.Collections;
namespace BITKit;
@@ -22,10 +23,14 @@ public partial class UXContainer:Control,IUXContainer
[Export] public Label updateTimeLabel;
[Export] public Label createTimeLabel;
[Export] public Label headerLabel;
[Export] public Array<Label> labels;
[ExportCategory("Button")]
[Export] public Button mainButton;
[Export] public Button secButton;
[Export] public Button thirdButton;
[ExportCategory("Text Edit")]
[Export] public LineEdit lineEdit;
[Export] public Array<LineEdit> lineEdits;
public string Text
{

View File

@@ -0,0 +1,35 @@
using Godot;
using System;
using Godot.Collections;
namespace BITKit;
[Tool]
public partial class UXWindowService : Control
{
[Export] private Array<Button> tabs;
[Export] private Array<Control> windows;
public override void _Ready()
{
if (Engine.IsEditorHint()) return;
if(tabs.Count != windows.Count) throw new Exception("tabs.Count != windows.Count");
ButtonGroup buttonGroup = new();
for (var i = 0; i < tabs.Count; i++)
{
var tab = tabs[i];
var window = windows[i];
tab.Pressed += () =>
{
ShowWindow(window);
};
}
}
private void ShowWindow(CanvasItem window)
{
foreach (var x in windows)
{
//if(window.Visible is true && window != x)
x.Hide();
}
window.Show();
}
}