Table of Contents

Namespace SharpConsoleUI.Windows

Classes

BorderRenderer

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
OverlayWindow

Specialized full-screen overlay window for menus, popups, and modal overlays. Automatically handles click-outside-to-dismiss and background dimming.

WindowContentManager

Coordinates window control management operations. Extracted from Window class as part of Phase 3.1 refactoring. Operates on Window's control lists to maintain backward compatibility.

WindowEventDispatcher

Handles event dispatching and routing for window mouse/keyboard events. Extracted from Window class as part of Phase 3.5 refactoring. Manages focus, hit testing, and event bubbling.

WindowPositioningManager

Manages window positioning and resizing operations. Handles window movement, resizing, bounds validation, and desktop clearing. Extracted from ConsoleWindowSystem as part of Phase 2.2 refactoring.

WindowQueryHelper

Provides static helper methods for querying and finding windows. Extracted from ConsoleWindowSystem as part of Phase 3.3 refactoring.

WindowRenderer

Coordinates window rendering operations for the DOM-based layout system. Extracted from Window class as part of Phase 3.2 refactoring.

Responsibilities:

  • DOM tree building and management
  • Three-stage layout (Measure, Arrange, Paint)
  • CharacterBuffer management
  • Visible region clipping
  • Hit testing

Delegates

WindowRenderer.BufferPaintDelegate

Delegate for buffer painting events.