WindowClass#

Fully qualified name: 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?