3ds Max C++ API Reference
IMenuLocalContext Class Referenceabstract

#include <imenus.h>

+ Inheritance diagram for IMenuLocalContext:

Public Member Functions

virtual ~IMenuLocalContext ()
 
virtual void SetHDrawDC (HDC hDrawDC)=0
 
virtual HDC GetHDrawDC () const =0
 
virtual void SetLocalCursorPosition (const IPoint2 &localCursorPos)=0
 
virtual const IPoint2GetLocalCursorPosition () const =0
 
virtual void SetMenuItemWidth (int menuWidth)=0
 
virtual int GetMenuItemWidth () const =0
 
virtual void SetLevel (int level)=0
 
virtual int GetLevel () const =0
 
virtual void SetLastExecutedItemPath (Tab< IMenuItem * > *pExecutedItemPath)=0
 
virtual Tab< IMenuItem * > * GetLastExecutedItemPath ()=0
 
virtual void SetMenuColors (const MenuColors *pMenuColors)=0
 
virtual const MenuColorsGetMenuColors () const =0
 
virtual void SetIMenuGlobalContext (IMenuGlobalContext *pIMenuGlobalContext, int level, Tab< IMenuItem * > *pExecutedItemPath, const MenuColors *pMenuColors)=0
 
virtual IMenuGlobalContextGetIMenuGlobalContext () 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 IMenuItem, Class IMenuColors, Class IPoint2

Description:
This abstract class represents a local context interface for a specific menu and is used internally. Methods that are marked as internal should not be used.

Constructor & Destructor Documentation

◆ ~IMenuLocalContext()

virtual ~IMenuLocalContext ( )
inlinevirtual
Remarks
Destructor.
712 {;}

Member Function Documentation

◆ SetHDrawDC()

virtual void SetHDrawDC ( HDC  hDrawDC)
pure virtual
Remarks
This method is used internally.

This method allows you to set the handle to the drawing device context.
Parameters:
HDC hDrawDC

The handle to the drawing device context.

◆ GetHDrawDC()

virtual HDC GetHDrawDC ( ) const
pure virtual
Remarks
This method is used internally.

This method returns the handle to the drawing device context.

◆ SetLocalCursorPosition()

virtual void SetLocalCursorPosition ( const IPoint2 localCursorPos)
pure virtual
Remarks
This method is used internally.

This method allows you to set the cursor position in the local coordinate system of the menu.
Parameters:
const IPoint2& localCursorPos

The cursor position coordinates.

◆ GetLocalCursorPosition()

virtual const IPoint2& GetLocalCursorPosition ( ) const
pure virtual
Remarks
This method is used internally.

This method returns the cursor position in the local coordinate system of the menu.

◆ SetMenuItemWidth()

virtual void SetMenuItemWidth ( int  menuWidth)
pure virtual
Remarks
This method is used internally.

This method allows you to set the menu's current width.
Parameters:
int menuWidth

The menu width.

◆ GetMenuItemWidth()

virtual int GetMenuItemWidth ( ) const
pure virtual
Remarks
This method is used internally.

This method returns the menu's current width.

◆ SetLevel()

virtual void SetLevel ( int  level)
pure virtual
Remarks
This method is used internally.

This method allows you to set the menu's current level. Submenus are indexed by a level > 0.
Parameters:
int level

The current level to set.

◆ GetLevel()

virtual int GetLevel ( ) const
pure virtual
Remarks
This method is used internally.

This method returns the menu's current level.

◆ SetLastExecutedItemPath()

virtual void SetLastExecutedItemPath ( Tab< IMenuItem * > *  pExecutedItemPath)
pure virtual
Remarks
This method is used internally.

This method allows you to set the menu's last executed item path. The item path is a table of IMenuItem entries, listing the selected item at each menu level.
Parameters:
Tab<IMenuItem *> *pExecutedItemPath

A pointer to the item path.

◆ GetLastExecutedItemPath()

virtual Tab<IMenuItem *>* GetLastExecutedItemPath ( )
pure virtual
Remarks
This method is used internally.

This method returns the menu's last executed item path. The item path is a table of IMenuItem entries, listing the selected item at each menu level.

◆ SetMenuColors()

virtual void SetMenuColors ( const MenuColors pMenuColors)
pure virtual
Remarks
This method is used internally.

This method allows you to set the menu's current colors.
Parameters:
MenuColors *pMenuColors

A pointer to the menu colors.

◆ GetMenuColors()

virtual const MenuColors* GetMenuColors ( ) const
pure virtual
Remarks
This method is used internally.

This method returns a pointer to the menu's current colors.

◆ SetIMenuGlobalContext()

virtual void SetIMenuGlobalContext ( IMenuGlobalContext pIMenuGlobalContext,
int  level,
Tab< IMenuItem * > *  pExecutedItemPath,
const MenuColors pMenuColors 
)
pure virtual
Remarks
This method is used internally.

This method allows you to set the global menu context.
Parameters:
IMenuGlobalContext* pIMenuGlobalContext

A pointer to the menu's global context object.

int level

The menu level.

Tab<IMenuItem *> *pExecutedItemPath

A pointer to the item path. The item path is a table of IMenuItem entries, listing the selected item at each menu level.

MenuColors *pMenuColors

A pointer to the menu colors.

◆ GetIMenuGlobalContext()

virtual IMenuGlobalContext* GetIMenuGlobalContext ( ) const
pure virtual
Remarks
This method is used internally.

This method returns a pointer to the menu's global context object.