carb::simplegui::WindowClass

Defined in carb/simplegui/SimpleGuiTypes.h

struct WindowClass

[BETA] Rarely used / very advanced uses only. Use with SetNextWindowClass() and DockSpace() functions. Provide hints to the platform back-end via altered viewport flags (enable/disable OS decoration, OS task bar icons, etc.) and OS level parent/child relationships.

Public Functions

inline WindowClass()

Constructor.

Public Members

uint32_t classId

User data. 0 = Default class (unclassed)

uint32_t parentViewportId

Hint for the platform back-end. If non-zero, the platform back-end can create a parent<>child relationship between the platform windows. Not conforming back-ends are free to e.g. parent every viewport to the main viewport or not.

ViewportFlags viewportFlagsOverrideSet

Viewport flags to set when a window of this class owns a viewport. This allows you to enforce OS decoration or task bar icon, override the defaults on a per-window basis.

ViewportFlags viewportFlagsOverrideClear

Viewport flags to clear when a window of this class owns a viewport. This allows you to enforce OS decoration or task bar icon, override the defaults on a per-window basis.

DockNodeFlags dockNodeFlagsOverrideSet

[EXPERIMENTAL] Dock node flags to set when a window of this class is hosted by a dock node (it doesn’t have to be selected!)

DockNodeFlags dockNodeFlagsOverrideClear

[EXPERIMENTAL]

bool dockingAlwaysTabBar

Set to true to enforce single floating windows of this class always having their own docking node (equivalent of setting the global io.ConfigDockingAlwaysTabBar)

bool dockingAllowUnclassed

Set to true to allow windows of this class to be docked/merged with an unclassed window. // FIXME-DOCK: Move to DockNodeFlags override?