3ds Max C++ API Reference
IMultiMenu Class Referenceabstract

#include <imenus.h>

+ Inheritance diagram for IMultiMenu:

Public Member Functions

virtual ~IMultiMenu ()
 
virtual int NumMenusAllowed () const =0
 
virtual int NumMenus () const =0
 
virtual IMenuGetMenu (int position)=0
 
virtual void AddMenu (IMenu *menu, int pos=-1)=0
 
virtual void RemoveMenu (int position)=0
 
virtual void RemoveMenu (IMenu *menu)=0
 
virtual void SetTitle (const MCHAR *customTitle, int pos)=0
 
virtual const MSTRGetTitle (int pos)=0
 
virtual void SetUseCustomTitle (int pos, bool useCustomTitle)=0
 
virtual bool GetUseCustomTitle (int pos) const =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
Class IMenu

Description:
This abstract class represents an interface for a multi-menu.

Constructor & Destructor Documentation

◆ ~IMultiMenu()

virtual ~IMultiMenu ( )
inlinevirtual
Remarks
Destructor.
1784 {;}

Member Function Documentation

◆ NumMenusAllowed()

virtual int NumMenusAllowed ( ) const
pure virtual
Remarks
This method returns the number of contained menus allowed. A value of -1 will indicate an infinite number.

◆ NumMenus()

virtual int NumMenus ( ) const
pure virtual
Remarks
This method returns the number of menus contained.

◆ GetMenu()

virtual IMenu* GetMenu ( int  position)
pure virtual
Remarks
This method returns a pointer to a menu from the multi-menu depending on its position index.
Parameters:
int position

The position/index of the menu you wish to retrieve.

◆ AddMenu()

virtual void AddMenu ( IMenu menu,
int  pos = -1 
)
pure virtual
Remarks
This method allows you to add a menu into the container. Each new menu which is added will default to the end position.
Parameters:
IMenu* menu

A pointer to the menu to add.

int pos = -1

The position to insert the menu at, -1 for the end of the list, and 0 signifies the beginning of the list.

◆ RemoveMenu() [1/2]

virtual void RemoveMenu ( int  position)
pure virtual
Remarks
This method allows you to remove the menu at the specified position.
Parameters:
int position

The position/index of the menu to remove.

◆ RemoveMenu() [2/2]

virtual void RemoveMenu ( IMenu menu)
pure virtual
Remarks
This method allows you to remove the specified menu from the container.
Parameters:
IMenu* menu

A pointer to the menu to remove

◆ SetTitle()

virtual void SetTitle ( const MCHAR customTitle,
int  pos 
)
pure virtual
Remarks
This method allows you to set the title for the specified menu position.
Parameters:
MCHAR *customTitle

The custom title string.

int pos

The menu position.

◆ GetTitle()

virtual const MSTR& GetTitle ( int  pos)
pure virtual
Remarks
This method returns the title for the specified menu position.

◆ SetUseCustomTitle()

virtual void SetUseCustomTitle ( int  pos,
bool  useCustomTitle 
)
pure virtual
Remarks
This method allows you to set whether the menu at indicated position should use a custom title.
Parameters:
int pos

The position of the menu.

bool useCustomTitle

TRUE to set the menu to use a custom title, otherwise FALSE.

◆ GetUseCustomTitle()

virtual bool GetUseCustomTitle ( int  pos) const
pure virtual
Remarks
This method returns TRUE if the menu as the specified position is using a custom title, otherwise FALSE.
Parameters:
int pos

The position of the menu.