Class IAutoEParamDlg
See Also: Class ParamDlg, Class IParamMap2, Class IRendParams, Class ParamMap2UserDlgProc.
class IAutoEParamDlg : public EffectParamDlg
Description:
This class is available in release 3.0 and later only.
Auto ParamDlg class for Effects auto-UI, instanced by ClassDesc2::CreateParamDialog(). It maintains a table of secondary EffectParamDlg for master EffectParamDlg (e.g., the one returned from CreateParamDialog()) and will broadcast appropriate method calls to them as the master receives them.
Methods:
public:
Prototype:
virtual void InvalidateUI()=0;
Remarks:
This method causes the user interface controls to be re-drawn.
Prototype:
virtual int NumDlgs()=0;
Remarks:
Returns the number of secondary dialogs.
Prototype:
virtual void AddDlg(SFXParamDlg* dlg)=0;
Remarks:
Adds the specified dialog as another secondary dialog.
Parameters:
SFXParamDlg* dlg
Points to the parameter dialog to add.
Prototype:
virtual SFXParamDlg* GetDlg(int i)=0;
Remarks:
Returns a pointer to the 'i-th' secondary dialog.
Parameters:
int i
The zero based index of the dialog to return.
Prototype:
virtual void SetDlg(int i, SFXParamDlg* dlg)=0;
Remarks:
Sets the 'i-th' dialog to the one passed.
Parameters:
int i
The zero based index of the dialog to set.
SFXParamDlg* dlg
Points to the parameter dialog to set.
Prototype:
virtual void DeleteDlg(SFXParamDlg* dlg)=0;
Remarks:
This method is used for deleting secondary dialogs from a master IAutoEParamDlg. Use this along with AddDlg() if you are dynamically changing the set of rollups for the plugin, so that the P_AUTO_UI system can correctly manage all current secondary rollups.
Parameters:
SFXParamDlg* dlg
Points to the ParamDlg to delete.
Prototype:
virtual IParamMap2* GetMap()=0;
Remarks:
Returns a pointer to the parameter map2 of this primary (master) dialog.
The following function is not a method of this class but is available for use:
Function:
IAutoEParamDlg* CreateAutoEParamDlg(IRendParams *i, Effect* e, IParamBlock2* pb, ClassDesc2* cd, HINSTANCE inst, TCHAR* dlgTemplate, TCHAR* title, int rollFlags, ParamMap2UserDlgProc* dlgProc=NULL);
Remarks:
This function creates an AutoEParamDlg for render effects.
Parameters:
IRendParams *i
An interface pointer for rendering effects.
Effect* e
Points to the rendering effect calling this function.
IParamBlock2* pb
Points to the parameter block instance associated with the parameter map.
ClassDesc2* cd
The class descriptor2 for the plug-in creating the parameter map.
HINSTANCE inst
The plug-ins DLL instance handle.
TCHAR* dlgTemplate
Dialog template for the rollup page (created using the resource editor)
TCHAR* title
The title displayed in the rollup page title bar.
int rollFlags
A set of flags to control settings of the rollup page.
APPENDROLL_CLOSED
Starts the page in the rolled up state.
ParamMap2UserDlgProc* dlgProc=NULL
If there is some custom handling required by a particular control, the client can derive a class from ParamMap2UserDlgProc and set it as the parameter map's user callback.
Return Value:
A pointer to an interface for managing the parameter map2.