DescriptionCustomGui Class Reference

#include <customgui_description.h>

Inheritance diagram for DescriptionCustomGui:

Detailed Description

Attribute Manager custom GUI (CUSTOMGUI_DESCRIPTION).
Here are the settings: DESCRIPTION_CUSTOMGUISETTINGS

Public Member Functions

void SetMaster (GeDialog *dlg, MasterCallBackFunc *func)
 
GeData MasterMessage (const BaseContainer &msg)
 
void SetObjectList (const AtomArray &list, Bool limitExceeded=false)
 
void SetObject (C4DAtom *op)
 
Bool GetObjectList (AtomArray &list)
 
void SetFilter (DescriptionFilter *flt)
 
DescID HighlightDescID (const DescID &id, Bool check)
 
void SetActiveTabPage (const DescID &activetab)
 
Bool GetDescIDSelection (BaseContainer &selection)
 
String GetFilterString (AMFILTERFLAGS &flags)
 
void SetFilterString (const maxon::String &filter, AMFILTERFLAGS flags)
 
void SetTranslation (const maxon::Delegate< Bool(GeListNode *node, const DescID &id, DescID &resultId, C4DAtom *&resultAtom)> &func, Bool objectControl=false)
 
void ClearTranslation ()
 
maxon::Result< void > ModifyDescription (maxon::Delegate< void(GeListNode *node, Description &description, DESCFLAGS_DESC flags)> &&func)
 
void ClearModifyDescription ()
 
- Public Member Functions inherited from BaseCustomGui< 1000469 >
Int32 GetWidth ()
 
Int32 GetHeight ()
 
void Redraw ()
 
Bool LayoutChanged ()
 
Bool Activate ()
 
Bool SetDefaultForResEdit ()
 
Bool SetData (const TriState< GeData > &tristate)
 
TriState< GeDataGetData ()
 
void SetLayoutMode (Int32 mode)
 
Int32 GetLayoutMode ()
 
Bool SupportLayoutSwitch ()
 
- Public Member Functions inherited from _BaseCustomGui
Int32 GetWidth (Int32 plugid)
 
Int32 GetHeight (Int32 plugid)
 
void Redraw (Int32 plugid)
 
Bool LayoutChanged (Int32 plugid)
 
Bool Activate (Int32 plugid)
 
Bool SetDefaultForResEdit (Int32 plugid)
 
Bool SetData (Int32 plugid, const TriState< GeData > &tristate)
 
TriState< GeDataGetData (Int32 plugid)
 
void SetLayoutMode (Int32 plugid, Int32 mode)
 
Int32 GetLayoutMode (Int32 plugid)
 
Bool SupportLayoutSwitch (Int32 plugid)
 

Private Member Functions

 DescriptionCustomGui ()
 
 ~DescriptionCustomGui ()
 

Additional Inherited Members

- Static Public Attributes inherited from BaseCustomGui< 1000469 >
static constexpr Int32 VALUE
 

Constructor & Destructor Documentation

◆ DescriptionCustomGui()

DescriptionCustomGui ( )
private

◆ ~DescriptionCustomGui()

~DescriptionCustomGui ( )
private

Member Function Documentation

◆ SetMaster()

void SetMaster ( GeDialog dlg,
MasterCallBackFunc func 
)

Registers the master callback function.

Parameters
[in]dlgThe parent dialog. The caller owns the pointed dialog.
[in]funcThe callback function.

◆ MasterMessage()

GeData MasterMessage ( const BaseContainer msg)

Sends a master message to the custom GUI.

Parameters
[in]msgThe message: MM_HASOBJECTS.
Returns
The result.

◆ SetObjectList()

void SetObjectList ( const AtomArray list,
Bool  limitExceeded = false 
)

Sets the objects that are shown.

Parameters
[in]listThe objects to show.
[in]limitExceededSet to true if if the object count exceeded some limit.

◆ SetObject()

void SetObject ( C4DAtom op)

Sets a single objects to show.

Parameters
[in]opThe object to show. The caller owns the pointed object.

◆ GetObjectList()

Bool GetObjectList ( AtomArray list)

Retrieves the objects that are shown.

Parameters
[out]listFilled with the objects shown.
Returns
true if successful, otherwise false.

◆ SetFilter()

void SetFilter ( DescriptionFilter flt)

Private. Registers a filter callback for the description.

Parameters
[in]fltThe callback structure, or nullptr to unregister the filter. The caller owns the pointed structure.

◆ HighlightDescID()

DescID HighlightDescID ( const DescID id,
Bool  check 
)

Private.

◆ SetActiveTabPage()

void SetActiveTabPage ( const DescID activetab)

Sets the active description tab.

Parameters
[in]activetabThe tab's page description ID.

◆ GetDescIDSelection()

Bool GetDescIDSelection ( BaseContainer selection)

Retrieves the description IDs of the selected description elements.

Parameters
[out]selectionFilled with the description IDs of the selected description elements. The container elements' type is CUSTOMDATATYPE_DESCID.
Returns
true if successful, otherwise false.

◆ GetFilterString()

String GetFilterString ( AMFILTERFLAGS flags)

Gets the current filter string and flags.

Parameters
[out]flagsAssigned the filter flags: AMFILTERFLAGS
Returns
The current filter string.

◆ SetFilterString()

void SetFilterString ( const maxon::String filter,
AMFILTERFLAGS  flags 
)

Sets the current filter string and flags.

Parameters
[in]filterThe filter string.
[in]flagsThe filter flags: AMFILTERFLAGS

◆ SetTranslation()

void SetTranslation ( const maxon::Delegate< Bool(GeListNode *node, const DescID &id, DescID &resultId, C4DAtom *&resultAtom)> &  func,
Bool  objectControl = false 
)

Sets a lambda function that you can use to translate any DescID within the Description via.

Parameters
[in]funcThe translation lambda function, follows the same signature as C4DAtom::TranslateDescID.
[in]objectControl(Optional) True to not translate for GetDEnabling (leave control with the original object).

◆ ClearTranslation()

void ClearTranslation ( )

Clears the function set by SetParentTranslation.

◆ ModifyDescription()

maxon::Result<void> ModifyDescription ( maxon::Delegate< void(GeListNode *node, Description &description, DESCFLAGS_DESC flags)> &&  func)

@markprivate Sets a lambda function that you can use to modify the description shown in the attributes manager

Parameters
[in]funcThe modification function.
Returns
OK on success.

◆ ClearModifyDescription()

void ClearModifyDescription ( )

Clears the function set by ModifyDescription.