Table of Contents

Class BorderRenderer

Namespace
SharpConsoleUI.Windows
Assembly
SharpConsoleUI.dll

Handles border rendering for windows including borders, scrollbars, and invisible borders. Extracted from Renderer class as part of Phase 3.3 refactoring.

Responsibilities:

  • Border drawing with caching
  • Scrollbar rendering
  • Invisible border (BorderStyle.None) rendering
  • Border cache management
public class BorderRenderer
Inheritance
BorderRenderer
Inherited Members

Constructors

BorderRenderer(Window, Func<IConsoleDriver>, Func<Point>, Func<Point>)

Initializes a new instance of the BorderRenderer class.

public BorderRenderer(Window window, Func<IConsoleDriver> getDriver, Func<Point> getDesktopUpperLeft, Func<Point> getDesktopBottomRight)

Parameters

window Window

The window this renderer serves

getDriver Func<IConsoleDriver>

Delegate to get the console driver

getDesktopUpperLeft Func<Point>

Delegate to get desktop upper left point

getDesktopBottomRight Func<Point>

Delegate to get desktop bottom right point

Methods

InvalidateCache()

Invalidates the border cache, forcing borders to be rebuilt on next render.

public void InvalidateCache()

RenderBorders(List<Rectangle>)

Renders window borders for the specified visible regions.

public void RenderBorders(List<Rectangle> visibleRegions)

Parameters

visibleRegions List<Rectangle>

List of visible screen regions where borders should be drawn