diff options
| author | Sophia Pearson <codergal89@gmail.com> | 2022-09-05 20:35:53 +0200 |
|---|---|---|
| committer | Sophia Pearson <codergal89@gmail.com> | 2022-09-05 20:35:53 +0200 |
| commit | f20bd89dc4a7bf14a88b1effcaa1887b29314525 (patch) | |
| tree | d114787f68efd2a7d61d95fa9c84e8e5d69a7c11 /Scripts/Game/Output.cs | |
| parent | 1b477b62f8be8c546a35dbd1d2688ebf623c496f (diff) | |
| download | texty-f20bd89dc4a7bf14a88b1effcaa1887b29314525.tar.xz texty-f20bd89dc4a7bf14a88b1effcaa1887b29314525.zip | |
gui: split GUI into Terminal components
Diffstat (limited to 'Scripts/Game/Output.cs')
| -rw-r--r-- | Scripts/Game/Output.cs | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/Scripts/Game/Output.cs b/Scripts/Game/Output.cs deleted file mode 100644 index abd3328..0000000 --- a/Scripts/Game/Output.cs +++ /dev/null @@ -1,45 +0,0 @@ -using System.Collections.Generic; -using System.Diagnostics; -using System.Linq; -using Godot; -using Godot.Collections; - -namespace Texty.Scripts.Game -{ - public class Output : PanelContainer - { - [Export(PropertyHint.File, "*.tscn")] public PackedScene OutputBlockScene; - public Array<string> TextBlocks => new Array<string>(BlockNodes.ToList().Select(block => block.Content)); - - private VBoxContainer LineContainer => GetNodeOrNull<VBoxContainer>($"%{nameof(LineContainer)}"); - - private IEnumerable<OutputBlock> BlockNodes => - GD.Range(LineContainer?.GetChildCount() ?? 0) - .Select(index => LineContainer.GetChild(index)) - .Cast<OutputBlock>(); - - public override void _Ready() - { - Debug.Assert(OutputBlockScene != null, "OutputBlockScene has not been configured!"); - Debug.Assert(OutputBlockScene.CanInstance(), "OutputBlockScene can not be instanced!"); - Clear(); - } - - public void Clear() - { - BlockNodes.ToList().ForEach(block => - { - LineContainer.RemoveChild(block); - block.QueueFree(); - }); - } - - public void Push(string text) - { - if (text.Empty()) return; - var block = OutputBlockScene.Instance<OutputBlock>(); - block.Content = text; - LineContainer.AddChild(block); - } - } -}
\ No newline at end of file |
