RADLib
RADical C++ application framework
RADUi Namespace Reference

Namespaces

 Slint
 

Classes

struct  DockPanel
 Dockable panel descriptor. More...
 
class  DockLayoutModel
 Dock layout model for IDE-style tools. More...
 
struct  DocumentTab
 Open document tab. More...
 
class  DocumentWorkspaceModel
 Document workspace model for tabbed editors and browsers. More...
 
struct  Command
 Command palette command descriptor. More...
 
class  CommandPaletteModel
 Searchable command palette model. More...
 
struct  Notification
 Toast/status notification. More...
 
class  NotificationModel
 Notification collection model. More...
 
struct  TableColumn
 Table column descriptor. More...
 
class  VirtualTableModel
 Virtual string table with columns, filter, and selected row. More...
 
struct  FileBrowserEntry
 File browser entry. More...
 
class  FileBrowserModel
 File browser/navigation model. More...
 
struct  LogEntry
 One log view entry. More...
 
class  LogViewModel
 Filterable log view model. More...
 
class  SearchBoxModel
 Search box model. More...
 
class  ProgressModel
 Progress state model. More...
 
class  AppShellModel
 High-level application shell state. More...
 
struct  PlotPoint
 One X/Y sample in plot coordinate space. More...
 
struct  PlotColor
 RGBA color used by plot renderers. More...
 
struct  PlotRange
 Inclusive numeric range for an axis. More...
 
struct  PlotSeriesStyle
 Rendering style for one plot series. More...
 
struct  PlotSeriesSnapshot
 Immutable copy of one series for renderer consumption. More...
 
struct  PlotModelSnapshot
 Immutable copy of a complete plot model. More...
 
struct  PlotViewport
 Pixel viewport and axis rendering configuration. More...
 
struct  PlotPixel
 One output pixel. More...
 
struct  PlotImage
 RGBA image returned by plot renderers. More...
 
class  PlotModel
 Mutable X/Y plot data model that emits dataChanged on edits. More...
 
class  QuadPlotModel
 Four-panel plot model for I/Q, quad, or dashboard-style views. More...
 
class  PlotRenderer
 Abstract renderer that converts plot snapshots into images. More...
 
class  SoftwarePlotRenderer
 CPU renderer used by examples and as the OpenGL fallback. More...
 
class  OpenGLPlotRenderer
 OpenGL renderer facade with software fallback. More...
 
struct  TerminalColor
 RGB terminal color used for a rendered line. More...
 
struct  TerminalLine
 One logical terminal line with text and colors. More...
 
struct  TerminalCursor
 Terminal cursor location and visibility. More...
 
class  TerminalBuffer
 ANSI/VT-style terminal screen buffer and parser. More...
 
class  PtyTerminalSession
 PTY-backed terminal session that feeds output into TerminalBuffer. More...
 
struct  ThemeColors
 Named UI color tokens encoded as CSS-style strings. More...
 
struct  ThemeMetrics
 Spacing/radius tokens in logical pixels. More...
 
struct  ThemeTypography
 Typography tokens. More...
 
struct  Theme
 Complete RADUi theme definition. More...
 
class  ThemeManager
 Process/application theme manager with RADCore events. More...
 
class  Binding
 RAII-style binding handle that keeps a bridge object alive until disconnected. More...
 
class  Backend
 Abstract UI backend used to post tasks to a toolkit UI thread. More...
 
class  FrameScheduler
 Coalesces UI updates so expensive redraws occur at a target frame rate. More...
 
struct  DirectoryBrowserEntry
 One flattened row in a native-style expandable directory browser. More...
 
struct  DirectoryBrowserOptions
 Options for DirectoryBrowserModel snapshots. More...
 
class  DirectoryBrowserModel
 Backend-neutral expandable directory browser model. More...
 
class  Action
 Backend-neutral command/action model for buttons, menus, and toolbars. More...
 
struct  MenuItem
 One menu item in a MenuBarModel menu. More...
 
struct  Menu
 One top-level menu and its items. More...
 
class  MenuBarModel
 State model for a conventional menu bar. More...
 
class  StringListModel
 Simple string-list state model for list views and combo boxes. More...
 
class  ButtonModel
 Push-button state model. More...
 
class  ToggleModel
 Boolean toggle/check model. More...
 
class  SliderModel
 Numeric slider model with minimum, maximum, and current value. More...
 
class  TextInputModel
 Single-line text input state model. More...
 
class  TextDocumentModel
 Text document model with file load/save and modified state. More...
 
class  TextEditorModel
 Multi-line text editor model with derived display text and scrolling helpers. More...
 
class  SelectionModel
 Current-selection model for list/table/tree style views. More...
 
class  TableModel
 Simple string table model for grid/table UI components. More...
 
struct  TreeNode
 Tree node with display text and recursive children. More...
 
class  TreeModel
 Tree-view state model. More...
 
struct  ToolButton
 Toolbar button descriptor. More...
 
struct  StatusItem
 Status bar item descriptor. More...
 
struct  PreferenceField
 Settings/preferences field descriptor. More...
 
class  DialogModel
 Generic dialog state model. More...
 
class  MessageBoxModel
 Message box state model. More...
 
class  FilePickerModel
 File picker state model with accept/reject events. More...
 
class  ToolBarModel
 Toolbar state model. More...
 
class  StatusBarModel
 Status bar text item model. More...
 
class  PreferencesModel
 Preferences/settings form model. More...
 
struct  LayoutItem
 Grid layout item descriptor. More...
 
class  LayoutModel
 Simple grid layout descriptor model. More...
 

Enumerations

enum class  DockArea { Left , Right , Bottom , Floating }
 Dock area for app panels. More...
 
enum class  NotificationSeverity { Info , Success , Warning , Error }
 Notification severity. More...
 
enum class  LogLevel {
  Trace , Debug , Info , Warning ,
  Error
}
 Log severity level. More...
 
enum class  PlotAxisFormat { Numeric , SecondsMilliseconds }
 X-axis label formatting mode. More...
 
enum class  PlotTickMode { EvenlySpaced , FixedInterval }
 X-axis tick placement mode. More...
 
enum class  PlotAxisLabelMode { AxisValue , WindowRelative }
 X-axis label value interpretation. More...
 
enum class  PlotRenderMode { Software , OpenGL }
 Renderer implementation selection. More...
 
enum class  ThemeMode { Light , Dark , System }
 Theme selection mode. More...
 
enum class  DirectoryBrowserEntryKind {
  Parent , Folder , Project , Midi ,
  Audio , Application , File
}
 File type category for DirectoryBrowserEntry. More...
 
enum class  DialogResult { None , Accepted , Rejected }
 Result state for dialogs and message boxes. More...
 
enum class  MessageBoxIcon { Information , Warning , Error , Question }
 Message box icon category. More...
 
enum class  FilePickerMode { OpenFile , SaveFile , SelectDirectory }
 File picker operation mode. More...
 

Functions

std::unique_ptr< PlotRenderercreatePlotRenderer (PlotRenderMode mode)
 Creates a renderer for mode. More...
 
std::string terminalInputSequence (std::string_view text, bool alt=false, bool control=false, bool shift=false, bool meta=false)
 Converts printable text and modifiers to bytes suitable for a terminal PTY. More...
 
std::string terminalSpecialKeySequence (std::string_view key, bool alt=false, bool control=false, bool shift=false, bool meta=false)
 Converts named special keys and modifiers to terminal escape sequences. More...
 
void setBackend (std::shared_ptr< Backend > backend)
 Installs the process-wide UI backend used by RADUi helpers. More...
 
bool hasBackend ()
 Returns true when a UI backend is installed. More...
 
Backendbackend ()
 Returns the installed backend or throws when none is installed. More...
 
void run ()
 Runs the installed backend's UI event loop. More...
 
void quit ()
 Requests the installed backend to quit. More...
 
void postToUi (std::function< void()> task)
 Posts task to the installed UI backend. More...
 
bool isUiThread ()
 Returns true when the current thread is the installed UI backend thread. More...
 
template<typename F >
void postToRad (RADCore::EventLoop &loop, F &&task)
 Posts task to a RADCore event loop from UI-side code. More...
 

Enumeration Type Documentation

◆ DialogResult

enum RADUi::DialogResult
strong

Result state for dialogs and message boxes.

Enumerator
None 

Dialog has not finished.

Accepted 

Dialog was accepted.

Rejected 

Dialog was rejected/cancelled.

◆ DirectoryBrowserEntryKind

File type category for DirectoryBrowserEntry.

Enumerator
Parent 

Synthetic parent-folder row.

Folder 

Filesystem directory.

Project 

RADBard or RADLib-style project file.

Midi 

MIDI file.

Audio 

Audio file.

Application 

Executable or desktop application entry.

File 

Generic file.

◆ DockArea

enum RADUi::DockArea
strong

Dock area for app panels.

Enumerator
Left 

Left side panel area.

Right 

Right side panel area.

Bottom 

Bottom panel area.

Floating 

Floating panel area.

◆ FilePickerMode

enum RADUi::FilePickerMode
strong

File picker operation mode.

Enumerator
OpenFile 

Select an existing file to open.

SaveFile 

Select or enter a file to save.

SelectDirectory 

Select a directory.

◆ LogLevel

enum RADUi::LogLevel
strong

Log severity level.

Enumerator
Trace 

Trace message.

Debug 

Debug message.

Info 

Informational message.

Warning 

Warning message.

Error 

Error message.

◆ MessageBoxIcon

enum RADUi::MessageBoxIcon
strong

Message box icon category.

Enumerator
Information 

Informational message.

Warning 

Warning message.

Error 

Error message.

Question 

Question/confirmation message.

◆ NotificationSeverity

Notification severity.

Enumerator
Info 

Informational notification.

Success 

Success notification.

Warning 

Warning notification.

Error 

Error notification.

◆ PlotAxisFormat

enum RADUi::PlotAxisFormat
strong

X-axis label formatting mode.

Enumerator
Numeric 

Render values as plain numbers.

SecondsMilliseconds 

Render values as seconds plus milliseconds.

◆ PlotAxisLabelMode

X-axis label value interpretation.

Enumerator
AxisValue 

Labels show actual axis values.

WindowRelative 

Labels show values relative to the current visible window.

◆ PlotRenderMode

enum RADUi::PlotRenderMode
strong

Renderer implementation selection.

Enumerator
Software 

CPU software renderer.

OpenGL 

OpenGL renderer when available, with software fallback.

◆ PlotTickMode

enum RADUi::PlotTickMode
strong

X-axis tick placement mode.

Enumerator
EvenlySpaced 

Distribute ticks evenly across the viewport.

FixedInterval 

Place ticks on fixed intervals in model units.

◆ ThemeMode

enum RADUi::ThemeMode
strong

Theme selection mode.

Enumerator
Light 

Use light theme tokens.

Dark 

Use dark theme tokens.

System 

Use the system preference when a backend can report it.

Function Documentation

◆ backend()

Backend& RADUi::backend ( )

Returns the installed backend or throws when none is installed.

◆ createPlotRenderer()

std::unique_ptr<PlotRenderer> RADUi::createPlotRenderer ( PlotRenderMode  mode)

Creates a renderer for mode.

◆ hasBackend()

bool RADUi::hasBackend ( )

Returns true when a UI backend is installed.

◆ isUiThread()

bool RADUi::isUiThread ( )

Returns true when the current thread is the installed UI backend thread.

◆ postToRad()

template<typename F >
void RADUi::postToRad ( RADCore::EventLoop loop,
F &&  task 
)

Posts task to a RADCore event loop from UI-side code.

◆ postToUi()

void RADUi::postToUi ( std::function< void()>  task)

Posts task to the installed UI backend.

◆ quit()

void RADUi::quit ( )

Requests the installed backend to quit.

◆ run()

void RADUi::run ( )

Runs the installed backend's UI event loop.

◆ setBackend()

void RADUi::setBackend ( std::shared_ptr< Backend backend)

Installs the process-wide UI backend used by RADUi helpers.

◆ terminalInputSequence()

std::string RADUi::terminalInputSequence ( std::string_view  text,
bool  alt = false,
bool  control = false,
bool  shift = false,
bool  meta = false 
)

Converts printable text and modifiers to bytes suitable for a terminal PTY.

◆ terminalSpecialKeySequence()

std::string RADUi::terminalSpecialKeySequence ( std::string_view  key,
bool  alt = false,
bool  control = false,
bool  shift = false,
bool  meta = false 
)

Converts named special keys and modifiers to terminal escape sequences.