Class ShaderEditor
#include <ShaderEditor.h>
Inherits the following classes: ImguiLayer
Classes
| Type | Name |
|---|---|
| struct | MiniPropPanel |
Public Attributes inherited from ImguiLayer
See ImguiLayer
| Type | Name |
|---|---|
| bool | fixed_size = falseWhether layer size is fixed (non-resizable) |
| bool | is_docking = trueWhether layer can dock into dockspace. |
| bool | is_mouse_hovered = falseWhether mouse is hovering over layer. |
| bool | is_size_changed = falseSize change tracking flags. |
| bool | is_size_changed_b = truePrevious frame size change flag. |
| std::vector< std::shared_ptr< ImguiItem > > | item_list Widgets contained in this layer. |
| GLuint | uly_ID = -1Unique layer ID assigned by ImguiManager . |
| bool | uly_activate = trueWhether layer is active (receives events) |
| bool | uly_is_rendered = trueWhether layer is rendered (visible) |
| std::string | uly_name Layer name for display and lookup. |
| ImVec2 | uly_pos Layer position in screen space. |
| bool | uly_show_type = falseWhether to display layer type in title. |
| ImVec2 | uly_size Current layer size. |
| ImVec2 | uly_size_b Previous layer size. |
| ImLayerType | uly_type = NONE\_UILAYERLayer type identifier. |
| bool | using_size = falseWhether to apply custom size constraints. |
Public Functions
| Type | Name |
|---|---|
| virtual void | RegisterEvents (EventPool & evt) override Registers layer's event subscriptions. |
| virtual void | RenderLayer (const Context & ctx, EventPool & evt) override Renders the layer's UI elements. |
| ShaderEditor () |
|
| ShaderEditor (const std::string & name) |
|
| ~ShaderEditor () |
Public Functions inherited from ImguiLayer
See ImguiLayer
| Type | Name |
|---|---|
| ImguiItem * | FindImguiItem (const std::string & name) const Finds an item by name. |
| ImguiItem * | FindImguiItem (int id) const Finds an item by index. |
| ImVec2 | GetLayerPos () Returns current layer position. |
| ImVec2 | GetLayerSize () Returns current layer size. |
| ImguiLayer () Default constructor. |
|
| ImguiLayer (const std::string & name) Constructs layer with specified name. |
|
| bool | IsResized () const Checks if layer was resized since last frame. |
| void | PushItem (Args... args) Adds a typed item to the layer. |
| void | PushItem (std::shared_ptr< ImguiItem > item) Adds an item to the layer. |
| void | PushItem (ImItemType type) Quick-creates and adds an item by type. |
| virtual void | RegisterEvents (EventPool & evt) Registers layer's event subscriptions. |
| virtual void | RenderLayer (const Context & ctx, EventPool & evt) Renders the layer's UI elements. |
| virtual | ~ImguiLayer () Virtual destructor for proper cleanup of derived classes. |
Public Functions Documentation
function RegisterEvents
Registers layer's event subscriptions.
virtual void ShaderEditor::RegisterEvents (
EventPool & evt
) override
Override this to subscribe to relevant events (e.g., viewport resize, selection change). Called by ImguiManager during initialization.
Parameters:
evtEventPool for subscribing to events
Implements ImguiLayer::RegisterEvents
function RenderLayer
Renders the layer's UI elements.
virtual void ShaderEditor::RenderLayer (
const Context & ctx,
EventPool & evt
) override
Override this to implement layer-specific rendering logic. Called every frame when layer is active and visible.
Typical implementation: * Begin ImGui window with layer name * Render items and custom UI * Handle user input * Emit events for state changes * End ImGui window
Parameters:
Note:
Must not mutate Context - emit Events instead
Implements ImguiLayer::RenderLayer
function ShaderEditor [1/2]
ShaderEditor::ShaderEditor ()
function ShaderEditor [2/2]
ShaderEditor::ShaderEditor (
const std::string & name
)
function ~ShaderEditor
ShaderEditor::~ShaderEditor ()
The documentation for this class was generated from the following file src/UI/layer/ShaderEditor.h