From 1ab436c03f3ec202052eb677cd581ae3b4f50075 Mon Sep 17 00:00:00 2001 From: Tig Date: Mon, 1 Jul 2024 12:04:35 -0600 Subject: [PATCH] Makes Checkbox dynamically pickup CM glyph changes. --- Terminal.Gui/Views/CheckBox.cs | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/Terminal.Gui/Views/CheckBox.cs b/Terminal.Gui/Views/CheckBox.cs index 72081785f..cd1e00ac8 100644 --- a/Terminal.Gui/Views/CheckBox.cs +++ b/Terminal.Gui/Views/CheckBox.cs @@ -14,9 +14,6 @@ public enum CheckState /// Shows a check box that can be toggled. public class CheckBox : View { - private readonly Rune _charChecked; - private readonly Rune _charNone; - private readonly Rune _charUnChecked; private bool _allowNone; private CheckState _checked = CheckState.UnChecked; @@ -25,10 +22,6 @@ public class CheckBox : View /// public CheckBox () { - _charNone = Glyphs.CheckStateNone; - _charChecked = Glyphs.CheckStateChecked; - _charUnChecked = Glyphs.CheckStateUnChecked; - Width = Dim.Auto (DimAutoStyle.Text); Height = Dim.Auto (DimAutoStyle.Text, minimumContentDim: 1); @@ -194,23 +187,23 @@ public class CheckBox : View case Alignment.Start: case Alignment.Center: case Alignment.Fill: - TextFormatter.Text = $"{GetCheckedState ()} {Text}"; + TextFormatter.Text = $"{GetCheckedGlyph ()} {Text}"; break; case Alignment.End: - TextFormatter.Text = $"{Text} {GetCheckedState ()}"; + TextFormatter.Text = $"{Text} {GetCheckedGlyph ()}"; break; } } - private Rune GetCheckedState () + private Rune GetCheckedGlyph () { return State switch { - CheckState.Checked => _charChecked, - CheckState.UnChecked => _charUnChecked, - CheckState.None => _charNone, + CheckState.Checked => Glyphs.CheckStateChecked, + CheckState.UnChecked => Glyphs.CheckStateUnChecked, + CheckState.None => Glyphs.CheckStateNone, _ => throw new ArgumentOutOfRangeException () }; }