Merge pull request #2337 from tig/fixes_2336_ignore_border

Fixes #2336. Adds a `IgnoreBorderPropertyOnRedraw` to `View`
This commit is contained in:
Tig
2023-02-09 22:13:48 +09:00
committed by GitHub

View File

@@ -1514,7 +1514,7 @@ namespace Terminal.Gui {
Driver.SetAttribute (HasFocus ? ColorScheme.Focus : ColorScheme.Normal);
}
if (Border != null) {
if (!IgnoreBorderPropertyOnRedraw && Border != null) {
Border.DrawContent (this);
} else if (ustring.IsNullOrEmpty (TextFormatter.Text) &&
(GetType ().IsNestedPublic) && !IsOverridden (this, "Redraw") &&
@@ -2663,6 +2663,15 @@ namespace Terminal.Gui {
}
}
/// <summary>
/// Get or sets whether the view will use <see cref="Terminal.Gui.Border"/> (if <see cref="Border"/> is set) to draw
/// a border. If <see langword="false"/> (the default),
/// <see cref="View.Redraw(Rect)"/> will call <see cref="Border.DrawContent(View, bool)"/>
/// to draw the view's border. If <see langword="true"/> no border is drawn (and the view is expected to draw the border
/// itself).
/// </summary>
public virtual bool IgnoreBorderPropertyOnRedraw { get; set; } = false;
/// <summary>
/// Pretty prints the View
/// </summary>