mirror of
https://github.com/gui-cs/Terminal.Gui.git
synced 2026-01-02 01:03:29 +01:00
52 lines
1.4 KiB
C#
52 lines
1.4 KiB
C#
using System;
|
|
using System.Linq;
|
|
using Terminal.Gui;
|
|
|
|
namespace UICatalog.Scenarios;
|
|
|
|
public class MarginEditor : AdornmentEditor
|
|
{
|
|
public MarginEditor ()
|
|
{
|
|
Title = "_Margin";
|
|
Initialized += MarginEditor_Initialized;
|
|
AdornmentChanged += MarginEditor_AdornmentChanged;
|
|
}
|
|
|
|
RadioGroup _rgShadow;
|
|
|
|
private void MarginEditor_AdornmentChanged (object sender, EventArgs e)
|
|
{
|
|
if (AdornmentToEdit is { })
|
|
{
|
|
_rgShadow.SelectedItem = (int)((Margin)AdornmentToEdit).ShadowStyle;
|
|
}
|
|
}
|
|
|
|
private void MarginEditor_Initialized (object sender, EventArgs e)
|
|
{
|
|
_rgShadow = new RadioGroup
|
|
{
|
|
X = 0,
|
|
Y = Pos.AnchorEnd (),
|
|
|
|
SuperViewRendersLineCanvas = true,
|
|
Title = "_Shadow",
|
|
BorderStyle = LineStyle.Dashed,
|
|
Enabled = AdornmentToEdit is { },
|
|
RadioLabels = Enum.GetNames (typeof (ShadowStyle)),
|
|
};
|
|
|
|
if (AdornmentToEdit is { })
|
|
{
|
|
_rgShadow.SelectedItem = (int)((Margin)AdornmentToEdit).ShadowStyle;
|
|
}
|
|
|
|
_rgShadow.SelectedItemChanged += (sender, args) =>
|
|
{
|
|
((Margin)AdornmentToEdit).ShadowStyle = (ShadowStyle)args.SelectedItem;
|
|
};
|
|
|
|
Add (_rgShadow);
|
|
}
|
|
} |