3ds Max C++ API Reference
IParamMap Class Referenceabstract

#include <iparamm.h>

+ Inheritance diagram for IParamMap:

Public Member Functions

virtual ~IParamMap ()
 
virtual void Invalidate ()=0
 
virtual void SetParamBlock (IParamArray *pb)=0
 
virtual void SetUserDlgProc (ParamMapUserDlgProc *proc=NULL)=0
 
virtual ParamMapUserDlgProcGetUserDlgProc ()=0
 
virtual void SetPBlockIndex (int mapIndex, int blockIndex)=0
 
virtual HWND GetHWnd ()=0
 
virtual IParamArrayGetParamBlock ()=0
 
virtual BOOL DlgActive ()=0
 

Additional Inherited Members

- Static Public Member Functions inherited from MaxHeapOperators
static UtilExport voidoperator new (size_t size)
 Standard new operator used to allocate objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e)
 Standard new operator used to allocate objects if there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate objects that takes the type of memory, filename and line number where the new was called If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate objects that takes the filename and line number where the new was called If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new (size_t size, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate objects that takes extra flags to specify special operations If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, int block_type, const char *filename, int line)
 New operator used to allocate arrays of objects. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, const char *filename, int line)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport voidoperator new[] (size_t size, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, an exception will be thrown. More...
 
static UtilExport voidoperator new[] (size_t size, const std::nothrow_t &e, unsigned long flags)
 New operator used to allocate arrays of objects If there is insufficient memory, NULL will be returned. More...
 
static UtilExport void operator delete (void *ptr)
 Standard delete operator used to deallocate an object If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an object If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an object that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an object that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete (void *ptr, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an object that takes extra flags to specify special operations If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e)
 Standard delete operator used to deallocate an array of objects If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, int block_type, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the type of memory, filename and line number where the delete was called If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, const char *filename, int line)
 Delete operator used to deallocate an array of objects that takes the filename and line number where the delete was called If the pointer is invalid, nothing will happen. More...
 
static UtilExport void operator delete[] (void *ptr, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport void operator delete[] (void *ptr, const std::nothrow_t &e, unsigned long flags)
 Delete operator used to deallocate an array of objects that takes extra flags to specify special operations If the pointer is invalid, an exception will be thrown. More...
 
static UtilExport voidoperator new (size_t size, void *placement_ptr)
 Placement new operator. More...
 
static UtilExport void operator delete (void *ptr, void *placement_ptr)
 Placement delete operator. More...
 
static UtilExport voidaligned_malloc (size_t size, size_t alignment)
 Allocates memory on a specified alignment boundary. More...
 
static UtilExport voidaligned_realloc (void *ptr, size_t size, size_t alignment)
 Reallocates memory on a specified alignment boundary. More...
 
static UtilExport void aligned_free (void *ptr)
 Frees a block of memory that was allocated with aligned_malloc/aligned_realloc. More...
 

Detailed Description

See also
, Parameter Maps, Class ParamMapUserDlgProc, Class ParamUIDesc, Parameter Blocks, Class IParamArray

Description:
This class provides methods to work with parameter maps. These are things like invalidating the parameter map so it gets redrawn, working with the parameter blocks associated with the parameter map, and establishing an optional dialog proc to handle controls not directly handled by the pmap. This section also documents several functions that are available for creating and destroying parameter maps but are not part of this class.

Note: The use of this class requires the explicit inclusion the IPARAMM.H header file.

Constructor & Destructor Documentation

◆ ~IParamMap()

virtual ~IParamMap ( )
inlinevirtual
Remarks
Destructor.
103 {}

Member Function Documentation

◆ Invalidate()

virtual void Invalidate ( )
pure virtual
Remarks
Implemented by the System.

Call this method to update (redraw) the user interface controls. This marks the UI controls as needing to be updated and the parameter map will take care of it.

◆ SetParamBlock()

virtual void SetParamBlock ( IParamArray pb)
pure virtual
Remarks
Implemented by the System.

This method swaps the existing parameter block with a new one and updates the user interface. Consider the following example to understand how this is used: If a user is in create mode, and has created a sphere object, and then goes to create another sphere, the user interface stays up. The parameter map that manages the UI is not deleted. When the user creates the second sphere, the parameter map needs to refer to the new sphere's parameter block (not the previous one any longer). This method is used to set the parameter map to point to the new parameter block.
Parameters:
IParamArray *pb

A pointer to the new parameter block.

◆ SetUserDlgProc()

virtual void SetUserDlgProc ( ParamMapUserDlgProc proc = NULL)
pure virtual
Remarks
Implemented by the System.

This method allows the developer to provide special handling for a control. The developer provides a dialog proc to process the message from the control. This method is used to tell the parameter map that the developer defined method should be called. The given proc will be called after default processing is done. Note that if the proc is non-NULL when the ParamMap is deleted its DeleteThis() method will be called.
Parameters:
ParamMapUserDlgProc *proc=NULL

A pointer to the user dialog proc class to process the control.

◆ GetUserDlgProc()

virtual ParamMapUserDlgProc* GetUserDlgProc ( )
pure virtual

◆ SetPBlockIndex()

virtual void SetPBlockIndex ( int  mapIndex,
int  blockIndex 
)
pure virtual
Remarks
Implemented by the System.

This method changes a parameter map entry to refer to a different item in the parameter block. This is used for example by the Optimize modifier. This modifier has two sets of parameters that may be adjusted (L1 and L2). Optimize only maintains a single parameter block however. This pblock contains both sets of parameters. When the user switches between these two sets, this method is called to point the UI controls at different indices in the parameter block.
Parameters:
int mapIndex

The map entry to change.

int blockIndex

The new parameter block index.

◆ GetHWnd()

virtual HWND GetHWnd ( )
pure virtual
Remarks
Implemented by the System.

Returns the window handle of the rollup page (or dialog).

◆ GetParamBlock()

virtual IParamArray* GetParamBlock ( )
pure virtual
Remarks
Implemented by the System.

Returns a pointer to the parameter block managed by the parameter map.

◆ DlgActive()

virtual BOOL DlgActive ( )
pure virtual