mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-02-14 19:29:36 +01:00
64 lines
2.1 KiB
C#
64 lines
2.1 KiB
C#
using Robust.Client.Graphics.Drawing;
|
|
using Robust.Client.UserInterface.Controls;
|
|
using Robust.Shared.Localization;
|
|
using Robust.Shared.Maths;
|
|
|
|
namespace Robust.Client.UserInterface.CustomControls
|
|
{
|
|
internal abstract class ScriptConsole : SS14Window
|
|
{
|
|
protected OutputPanel OutputPanel { get; }
|
|
protected HistoryLineEdit InputBar { get; }
|
|
protected Button RunButton { get; }
|
|
|
|
protected ScriptConsole()
|
|
{
|
|
Contents.AddChild(new VBoxContainer
|
|
{
|
|
Children =
|
|
{
|
|
new PanelContainer
|
|
{
|
|
PanelOverride = new StyleBoxFlat
|
|
{
|
|
BackgroundColor = Color.FromHex("#1E1E1E"),
|
|
ContentMarginLeftOverride = 4
|
|
},
|
|
Children =
|
|
{
|
|
(OutputPanel = new OutputPanel
|
|
{
|
|
SizeFlagsVertical = SizeFlags.FillExpand,
|
|
})
|
|
},
|
|
SizeFlagsVertical = SizeFlags.FillExpand
|
|
},
|
|
new HBoxContainer
|
|
{
|
|
Children =
|
|
{
|
|
(InputBar = new HistoryLineEdit
|
|
{
|
|
SizeFlagsHorizontal = SizeFlags.FillExpand,
|
|
PlaceHolder = Loc.GetString("Your C# code here.")
|
|
}),
|
|
(RunButton = new Button {Text = Loc.GetString("Run")})
|
|
}
|
|
},
|
|
}
|
|
});
|
|
|
|
InputBar.OnTextEntered += _ => Run();
|
|
RunButton.OnPressed += _ => Run();
|
|
CustomMinimumSize = (550, 300);
|
|
}
|
|
|
|
protected abstract void Run();
|
|
|
|
protected override void Opened()
|
|
{
|
|
InputBar.GrabKeyboardFocus();
|
|
}
|
|
}
|
|
}
|