Skip to content

Fluent Controls

Custom UI controls following Windows 11 Fluent Design. All controls use QPainter-drawn rendering (not native styling) and support palette-based theming.

Controls

Widget Replaces Key Feature
FluentCheckBox QCheckBox Animated checkmark, tristate support
FluentComboBox QComboBox Fully custom widget, display_mode property
FluentContextMenu QMenu Frameless popup with pill-shaped highlights. Mandatory per project rules
FluentLineEdit QLineEdit display_mode toggles between editable and label-like appearance
FluentSpinBox / FluentDoubleSpinBox QSpinBox Composite widget, same public API
FluentTextEdit QTextEdit display_mode property, mirrors FluentLineEdit API
FluentToolTip QToolTip Frameless popup with rounded rect and shadow
HoldToConfirmButton QPushButton Hold-to-confirm for destructive actions, emits confirmed signal
ModernToggle -- Animated toggle switch with pulse effect
ScalableProxyContainer -- QGraphicsView wrapper that scales content to available width
SmartBackButton QPushButton Tracks navigation history across stacked widgets

display_mode Pattern

FluentComboBox, FluentLineEdit, and FluentTextEdit share a display_mode property: - Edit mode: Rounded border, hover/focus accent color, full interaction - Display mode: Transparent background, read-only, label-like appearance (no greying out)

Usage Rules

  • Context menus: Always use FluentContextMenu, never QMenu
  • Tooltips: Use sparingly, only when truly beneficial
  • Object names: Set .setObjectName() on every control for external stylesheet targeting