Added a HorizontalSpace property.

This commit is contained in:
BDisp
2020-08-03 23:58:06 +01:00
parent 0598de1b38
commit 8a241b1cf8

View File

@@ -11,6 +11,7 @@ namespace Terminal.Gui {
int selected = -1;
int cursor;
DisplayModeLayout displayMode;
int horizontalSpace = 2;
List<(int pos, int length)> horizontal;
void Init (Rect rect, ustring [] radioLabels, int selected)
@@ -78,6 +79,20 @@ namespace Terminal.Gui {
}
}
/// <summary>
/// Gets or sets the horizontal space for this <see cref="RadioGroup"/> if the <see cref="DisplayMode"/> is <see cref="DisplayModeLayout.Horizontal"/>
/// </summary>
public int HorizontalSpace {
get { return horizontalSpace; }
set {
if (horizontalSpace != value && displayMode == DisplayModeLayout.Horizontal) {
horizontalSpace = value;
SetWidthHeight (radioLabels);
SetNeedsDisplay ();
}
}
}
void SetWidthHeight (List<ustring> radioLabels)
{
switch (displayMode) {
@@ -147,7 +162,7 @@ namespace Terminal.Gui {
int length = 0;
for (int i = 0; i < radioLabels.Count; i++) {
start += length;
length = radioLabels [i].RuneCount + 2;
length = radioLabels [i].RuneCount + horizontalSpace;
horizontal.Add ((start, length));
}
}