Open Search
    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