From bc5468cd6468e1a48cd8d5ddcf597e4c29726dd4 Mon Sep 17 00:00:00 2001 From: Matt Parker <61717342+MattParkerDev@users.noreply.github.com> Date: Thu, 18 Dec 2025 11:54:17 +1000 Subject: [PATCH] selection char and line break count --- .../Editor/EditorCaretPositionService.cs | 1 + .../BottomBar/EditorLineCharDisplay.cs | 20 +++++++++++++++++++ .../BottomBar/EditorLineCharDisplay.tscn | 7 +++++++ .../Features/CodeEditor/SharpIdeCodeEdit.cs | 19 ++++++++++++++++++ 4 files changed, 47 insertions(+) diff --git a/src/SharpIDE.Application/Features/Editor/EditorCaretPositionService.cs b/src/SharpIDE.Application/Features/Editor/EditorCaretPositionService.cs index 07f3ba2..3a9cdd8 100644 --- a/src/SharpIDE.Application/Features/Editor/EditorCaretPositionService.cs +++ b/src/SharpIDE.Application/Features/Editor/EditorCaretPositionService.cs @@ -6,4 +6,5 @@ public class EditorCaretPositionService { public (int, int) CaretPosition { get; set; } = (1, 1); + public (int characters, int lineBreaks)? SelectionInfo { get; set; } } diff --git a/src/SharpIDE.Godot/Features/BottomBar/EditorLineCharDisplay.cs b/src/SharpIDE.Godot/Features/BottomBar/EditorLineCharDisplay.cs index cc8a536..a7f85c5 100644 --- a/src/SharpIDE.Godot/Features/BottomBar/EditorLineCharDisplay.cs +++ b/src/SharpIDE.Godot/Features/BottomBar/EditorLineCharDisplay.cs @@ -6,13 +6,18 @@ namespace SharpIDE.Godot.Features.BottomBar; public partial class EditorLineCharDisplay : HBoxContainer { private Label _label = null!; + private Label _selectionInfoLabel = null!; [Inject] private readonly EditorCaretPositionService _editorCaretPositionService = null!; private (int, int) _currentPositionRendered = (1, 1); + private (int characters, int lineBreaks)? _currentSelectionInfo; public override void _Ready() { _label = GetNode