summaryrefslogtreecommitdiff
path: root/Scripts/Terminal/OutputArea.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Scripts/Terminal/OutputArea.cs')
-rw-r--r--Scripts/Terminal/OutputArea.cs60
1 files changed, 29 insertions, 31 deletions
diff --git a/Scripts/Terminal/OutputArea.cs b/Scripts/Terminal/OutputArea.cs
index e297c49..e5f7535 100644
--- a/Scripts/Terminal/OutputArea.cs
+++ b/Scripts/Terminal/OutputArea.cs
@@ -3,44 +3,42 @@ using System.Diagnostics;
using System.Linq;
using Godot;
using Godot.Collections;
-using Texty.Scripts.Game;
-namespace Texty.Scripts.Terminal
+namespace Texty.Scripts.Terminal;
+
+public partial class OutputArea : ScrollContainer
{
- public partial class OutputArea : ScrollContainer
- {
- [Export(PropertyHint.File, "*.tscn")] public PackedScene OutputBlockScene;
- public Array<string> TextBlocks => new Array<string>(BlockNodes.ToList().Select(block => block.Content));
+ [Export(PropertyHint.File, "*.tscn")] public PackedScene OutputBlockScene;
+ public Array<string> TextBlocks => new(BlockNodes.ToList().Select(block => block.Content));
- private VBoxContainer LineContainer => GetNodeOrNull<VBoxContainer>($"%{nameof(LineContainer)}");
+ private VBoxContainer LineContainer => GetNodeOrNull<VBoxContainer>($"%{nameof(LineContainer)}");
- private IEnumerable<OutputBlock> BlockNodes =>
- GD.Range(LineContainer?.GetChildCount() ?? 0)
- .Select(index => LineContainer.GetChild(index))
- .Cast<OutputBlock>();
+ 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.CanInstantiate(), "OutputBlockScene can not be instanced!");
- Clear();
- }
+ public override void _Ready()
+ {
+ Debug.Assert(OutputBlockScene != null, "OutputBlockScene has not been configured!");
+ Debug.Assert(OutputBlockScene.CanInstantiate(), "OutputBlockScene can not be instanced!");
+ Clear();
+ }
- public void Clear()
+ public void Clear()
+ {
+ BlockNodes.ToList().ForEach(block =>
{
- BlockNodes.ToList().ForEach(block =>
- {
- LineContainer.RemoveChild(block);
- block.QueueFree();
- });
- }
+ LineContainer.RemoveChild(block);
+ block.QueueFree();
+ });
+ }
- public void Push(string text)
- {
- if (string.IsNullOrEmpty(text)) return;
- var block = OutputBlockScene.Instantiate<OutputBlock>();
- block.Content = text;
- LineContainer.AddChild(block);
- }
+ public void Push(string text)
+ {
+ if (string.IsNullOrEmpty(text)) return;
+ var block = OutputBlockScene.Instantiate<OutputBlock>();
+ block.Content = text;
+ LineContainer.AddChild(block);
}
} \ No newline at end of file