Class IMenuLocalContext

3DS Max Plug-In SDK

Class IMenuLocalContext

See Also: Class IMenuItem, Class IMenuColors, Class IPoint2

class IMenuLocalContext

Description:

This class is available in release 4.0 and later only.

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.

Methods:

public:

Prototype:

virtual void SetHDrawDC(HDC hDrawDC) = 0;

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.

Prototype:

virtual HDC GetHDrawDC() const = 0;

Remarks:

This method is used internally.

This method returns the handle to the drawing device context.

Prototype:

virtual void SetLocalCursorPosition(const IPoint2& localCursorPos) = 0;

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.

Prototype:

virtual const IPoint2& GetLocalCursorPosition() const = 0;

Remarks:

This method is used internally.

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

Prototype:

virtual void SetMenuItemWidth(int menuWidth) = 0;

Remarks:

This method is used internally.

This method allows you to set the menu’s current width.

Parameters:

int menuWidth

The menu width.

Prototype:

virtual int GetMenuItemWidth() const = 0;

Remarks:

This method is used internally.

This method returns the menu’s current width.

Prototype:

virtual void SetLevel(int level) = 0;

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.

Prototype:

virtual int GetLevel() const = 0;

Remarks:

This method is used internally.

This method returns the menu’s current level.

Prototype:

virtual void SetLastExecutedItemPath(Tab<IMenuItem *> *pExecutedItemPath) = 0;

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.

Prototype:

virtual Tab<IMenuItem *> *GetLastExecutedItemPath() = 0;

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.

Prototype:

virtual void SetMenuColors(const MenuColors *pMenuColors) = 0;

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.

Prototype:

virtual const MenuColors *GetMenuColors() const = 0;

Remarks:

This method is used internally.

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

Prototype:

virtual void SetIMenuGlobalContext(IMenuGlobalContext* pIMenuGlobalContext, int level, Tab<IMenuItem *> *pExecutedItemPath, const MenuColors *pMenuColors) = 0;

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.

Prototype:

virtual IMenuGlobalContext* GetIMenuGlobalContext() const = 0;

Remarks:

This method is used internally.

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