CustomNodeGuiBase Class Reference

#include <customnodegui.h>

Inheritance diagram for CustomNodeGuiBase:

Detailed Description

Base class for custom GUIs that require re-arrangement of node-based attributes in the attribute manager. This class provides the accessors to implement complex GUIs for non-variadic and variadic port bundles like the gradient, spline mapper or BSDF layer.

Public Member Functions

 CustomNodeGuiBase (const BaseContainer &settings, CUSTOMGUIPLUGIN *plugin)
 
virtual Int32 Message (const BaseContainer &msg, BaseContainer &result) override
 
Result< BaseArray< DescID > > GetReplacementIds () const
 
Result< AttributeManagerProxyRef > GetAttributeManager ()
 

Protected Attributes

CustomNodeGuiProxyRef _proxy
 

Private Member Functions

 INSTANCEOF (CustomNodeGuiBase, iBaseCustomGui)
 

Constructor & Destructor Documentation

◆ CustomNodeGuiBase()

CustomNodeGuiBase ( const BaseContainer settings,
CUSTOMGUIPLUGIN *  plugin 
)

Constructor.

Parameters
[in]settingsThe settings container.
[in]pluginThe plugin structure.

Member Function Documentation

◆ INSTANCEOF()

INSTANCEOF ( CustomNodeGuiBase  ,
iBaseCustomGui   
)
private

◆ Message()

virtual Int32 Message ( const BaseContainer msg,
BaseContainer result 
)
overridevirtual

Called when a message is received.

Note
Some messages must be consumed by the node gui proxy in order to have functional gui elements that are created through the AttributeManagerProxyRef.
Parameters
[in]msgThe readable message container.
[out]resultThe writable message result container.
Returns
The message receive status.

◆ GetReplacementIds()

Result<BaseArray<DescID> > GetReplacementIds ( ) const

Returns the DescIDs of all currently existing elements in the attribute manager that are associated with this gui.

Returns
The container holding the DescIDs on success.

◆ GetAttributeManager()

Result<AttributeManagerProxyRef> GetAttributeManager ( )

Returns the attribute manager proxy which gives access to node-based attribute handling. Please note that access to the attribute manager proxy is only safe during lifetime of this gui instance.

Returns
The attribute manager proxy on success.

Member Data Documentation

◆ _proxy

CustomNodeGuiProxyRef _proxy
protected