Skip to content

Class Outliner

ClassList > Outliner

  • #include <Outliner.h>

Inherits the following classes: ImguiLayer, ImguiTheme

Public Attributes inherited from ImguiLayer

See ImguiLayer

Type Name
bool fixed_size = false
Whether layer size is fixed (non-resizable)
bool is_docking = true
Whether layer can dock into dockspace.
bool is_mouse_hovered = false
Whether mouse is hovering over layer.
bool is_size_changed = false
Size change tracking flags.
bool is_size_changed_b = true
Previous frame size change flag.
std::vector< std::shared_ptr< ImguiItem > > item_list
Widgets contained in this layer.
GLuint uly_ID = -1
Unique layer ID assigned by ImguiManager .
bool uly_activate = true
Whether layer is active (receives events)
bool uly_is_rendered = true
Whether 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 = false
Whether to display layer type in title.
ImVec2 uly_size
Current layer size.
ImVec2 uly_size_b
Previous layer size.
ImLayerType uly_type = NONE\_UILAYER
Layer type identifier.
bool using_size = false
Whether to apply custom size constraints.

Public Attributes inherited from ImguiTheme

See ImguiTheme

Type Name
std::string th_name = ""

Public Static Attributes inherited from ImguiTheme

See ImguiTheme

Type Name
ThemeData th_data

Public Functions

Type Name
Outliner ()
Outliner (const std::string & name)
virtual void RenderLayer (const Context & ctx, EventPool & evt) override
Renders the layer's UI elements.
void UpdateStyle ()
~Outliner ()

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 inherited from ImguiTheme

See ImguiTheme

Type Name
ImU32 GetColorData (const std::string & th_para_name) const
float GetFloatData (const std::string & th_para_name) const
ImVec2 GetVec2Data (const std::string & th_para_name) const
ImguiTheme ()
ImguiTheme (const std::string & name)
void InitParaLoc ()
void SetColorData (const std::string & th_para_name, const ImU32 & para) const
void SetFloatData (const std::string & th_para_name, float para) const
void SetVec2Data (const std::string & th_para_name, const ImVec2 & para) const
~ImguiTheme ()

Public Static Functions inherited from ImguiTheme

See ImguiTheme

Type Name
void PushColorData (const std::string & name, const ImU32 & data=IM_COL32(0, 0, 0, 0))
void PushFloatData (const std::string & name, float data=0.0f)
void PushFontData (ImFont * font)
void PushVec2Data (const std::string & name, const ImVec2 & data=ImVec2(0, 0))

Public Functions Documentation

function Outliner [1/2]

Outliner::Outliner () 

function Outliner [2/2]

Outliner::Outliner (
    const std::string & name
) 

function RenderLayer

Renders the layer's UI elements.

virtual void Outliner::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:

  • ctx Context for read-only access to scene/editor state
  • evt EventPool for emitting events

Note:

Must not mutate Context - emit Events instead

Implements ImguiLayer::RenderLayer


function UpdateStyle

void Outliner::UpdateStyle () 

function ~Outliner

Outliner::~Outliner () 


The documentation for this class was generated from the following file src/UI/layer/Outliner.h