3ds Max C++ API Reference
QMaxParamBlockWidget Class Referenceabstract

Base class for QWidgets which are to be controlled by a parameter block/map. More...

#include <QMaxParamBlockWidget.h>

+ Inheritance diagram for QMaxParamBlockWidget:

Public Member Functions

virtual void SetParamBlock (ReferenceMaker *owner, IParamBlock2 *const param_block)=0
 Replaces the parameter block connected to the widget. More...
 
virtual void UpdateUI (const TimeValue t)=0
 Called whenever the entire UI needs to be updated, e.g. as a result of the time slider changing. More...
 
virtual void UpdateParameterUI (const TimeValue t, const ParamID param_id, const int tab_index)=0
 Called whenever a parameter value changes. More...
 

Detailed Description

Base class for QWidgets which are to be controlled by a parameter block/map.

The Parameter Block/Map system may be used to control Qt widgets. ClassDesc2::CreateQtWidget() is used to create the Qt widget to be associated with a particular parameter map. But the parameter map system has internal mechanisms to point an existing parameter to a different object, enabling a UI to be re-directed without being re-created. This class wraps a QWidget, exposing functionality to re-direct the Qt widget to a new parameter block.

See also
Qt in Parameter Maps and Parameter Blocks.

Member Function Documentation

◆ SetParamBlock()

virtual void SetParamBlock ( ReferenceMaker owner,
IParamBlock2 *const  param_block 
)
pure virtual

Replaces the parameter block connected to the widget.

The new parameter block replaces the one initially passed to ClassDesc2::CreateQtWidget(). The implementation is free to modify the widget as it wishes as a result of the contents of the new parameter block.

Parameters
ownerThe owner of the dialog. This will normally be the owner of the parameter block, but in the case of P_CLASS_PARAMS, where the parameter block doesn't have an owner, this will be the object for which the dialog is being displayed.
param_blockThe new parameter block. This value may be null, typically as a temporary state when switching from editing one object to another.

◆ UpdateUI()

virtual void UpdateUI ( const TimeValue  t)
pure virtual

Called whenever the entire UI needs to be updated, e.g. as a result of the time slider changing.

This method is expected to update the UI for any controls that are managed by this widget. Controls that are managed automatically by the parameter block system need not be updated.

Parameters
tThe time at which the parameter values must be updated.

◆ UpdateParameterUI()

virtual void UpdateParameterUI ( const TimeValue  t,
const ParamID  param_id,
const int  tab_index 
)
pure virtual

Called whenever a parameter value changes.

This method is expected to update any UI controls related to the parameter which has changed. Controls that are managed automatically by the parameter block system need not be updated.

Parameters
tThe time at which the parameter values must be updated.
param_idThe ID of the parameter that has changed.
tab_indexThe tab index of the parameter value that has changed. Applicable if and only if the parameter is a tab type.