dplug.gui.element

UIElement is the base class of all widgets. In the Dplug codebase, UIElement and "widgets" terms are used indifferently.

Public Imports

dplug.math.vector
public import dplug.math.vector;
Undocumented in source.
dplug.math.box
public import dplug.math.box;
Undocumented in source.
dplug.graphics
public import dplug.graphics;
Undocumented in source.
dplug.window.window
public import dplug.window.window;
Undocumented in source.
dplug.core.sync
public import dplug.core.sync;
Undocumented in source.
dplug.core.vec
public import dplug.core.vec;
Undocumented in source.
dplug.core.nogc
public import dplug.core.nogc;
Undocumented in source.
dplug.gui.boxlist
public import dplug.gui.boxlist;
Undocumented in source.
dplug.gui.context
public import dplug.gui.context;
Undocumented in source.

Members

Aliases

UIFlags
alias UIFlags = uint

UIElement (aka widgets) have various flags.

Classes

UIElement
class UIElement

UIElement is the base class of the dplug:gui widget hierarchy. It is called a "widget" in the Dplug lore.

Enums

Click
enum Click

Result of onMouseClick.

UILayer
enum UILayer

Used by the setDirty calls to figure out which layers should be invalidated (there are 2 layers, Raw and PBR).

flagRaw
anonymousenum flagRaw
Undocumented in source.

Manifest constants

UIELEMENT_POINTERID_WREN_EXPORTED_CLASS
enum UIELEMENT_POINTERID_WREN_EXPORTED_CLASS;
UIELEMENT_POINTERID_WREN_VM_GENERATION
enum UIELEMENT_POINTERID_WREN_VM_GENERATION;

A UIElement has 8 void* user pointers (4 reserved for Dplug + 4 for vendors). The first two are used by dplug:wren-support.

maxUIElementIDLength
enum maxUIElementIDLength;

The maximum length for an UIElement ID.

Static functions

isValidElementID
bool isValidElementID(const(char)[] identifier)

Is this a valid UIElement identifier?

Variables

defaultDepth
enum ushort defaultDepth;

Reasonable default value for the Depth channel.

defaultMetalnessDielectric
enum ubyte defaultMetalnessDielectric;
defaultMetalnessMetal
enum ubyte defaultMetalnessMetal;

Reasonable dielectric and metal values for Metalness.

defaultRoughness
enum ubyte defaultRoughness;

Reasonable default value for the Roughness channel.

defaultSpecular
enum ubyte defaultSpecular;

Reasonable default value for the Specular channel. Since "everything is shiny" it' better to always have at least a little of specular.

Meta

Authors

Guillaume Piolat