imenus.h File Reference
 
 
 
imenus.h File Reference
#include "maxheap.h"
#include "strclass.h"
#include "color.h"
#include "GetCOREInterface.h"
#include "iFnPub.h"

File Description

Contains Abstract class for Menus.

Classes

struct   MenuEvent
  Represents a Menu Event. More...
class   ItemID
  An ID for a Menu or Menu Item. More...
class   IMenuTimer
class   MenuColors
class   IMenuSettings
class   IMenuGlobalContext
class   IMenuLocalContext
class   IQuadMenuSettings
class   IMenuElement
class   IMenuItem
  This abstract class represents an interface for a menu item Methods that are marked as internal should not be used. More...
class   IMenuItemExtension
  Extends the IMenuItem interface. More...
class   IMenu
class   IPopupMenu
class   IMultiMenu
class   IMenuBar
class   IQuadMenu

Defines

#define  MENUS_API   __declspec(dllimport)
#define  MENU_SETTINGS   Interface_ID(0x31561ddb, 0x1a2f4619)
#define  MENU_ITEM_INTERFACE   Interface_ID(0x2e926bd1, 0x296e68f6)
#define  MENUITEM_EXTENSION_INTERFACE   Interface_ID(0xF46B77A3, 0xF4804FFF)
#define  MENU_INTERFACE   Interface_ID(0x4bd57e2e, 0x6de57aeb)
#define  QUAD_MENU_INTERFACE   Interface_ID(0x78b735e9, 0x7c001f68)

Typedefs

typedef unsigned int  ValidityToken

Enumerations

enum   Event {
  EVENT_BEGIN_TRACK = 0, EVENT_CURSOR_DOWN, EVENT_RIGHT_CURSOR_DOWN, EVENT_CURSOR_MOVED,
  EVENT_CURSOR_UP, EVENT_END_TRACK, EVENT_KEY, EVENT_RIGHT_CURSOR_UP,
  EVENT_MIDDLE_CURSOR_DOWN, EVENT_MIDDLE_CURSOR_UP
}
  Enumerator for different type of input events for Keyboard and Mouse. More...
enum   EventParam { EP_NULL = 0, EP_SHOW_SUBMENU, EP_HIDE_SUBMENU }
enum   QuadIndex { QUAD_ONE = 0, QUAD_TWO, QUAD_THREE, QUAD_FOUR }
enum   DisplayMethod { DM_NORMAL = 0, DM_STRETCH, DM_FADE, DM_NUM_METHODS }

Functions

bool  operator== (ItemID &a, ItemID &b)
COLORREF  MakeCOLORREF (const Color &c)
IQuadMenuSettings GetQuadSettings ()
MENUS_API IMenuItem GetIMenuItem ()
MENUS_API void  ReleaseIMenuItem (IMenuItem *)
MENUS_API IMenu GetIMenu ()
MENUS_API void  ReleaseIMenu (IMenu *)
MENUS_API IQuadMenu GetIQuadMenu ()
MENUS_API void  ReleaseIQuadMenu (IQuadMenu *)

Define Documentation

#define MENUS_API   __declspec(dllimport)
#define MENU_SETTINGS   Interface_ID(0x31561ddb, 0x1a2f4619)
#define MENU_ITEM_INTERFACE   Interface_ID(0x2e926bd1, 0x296e68f6)
#define MENUITEM_EXTENSION_INTERFACE   Interface_ID(0xF46B77A3, 0xF4804FFF)
#define MENU_INTERFACE   Interface_ID(0x4bd57e2e, 0x6de57aeb)
#define QUAD_MENU_INTERFACE   Interface_ID(0x78b735e9, 0x7c001f68)

Typedef Documentation


Enumeration Type Documentation

enum Event

Enumerator for different type of input events for Keyboard and Mouse.

Enumerator:
EVENT_BEGIN_TRACK 
EVENT_CURSOR_DOWN 
EVENT_RIGHT_CURSOR_DOWN 
EVENT_CURSOR_MOVED 
EVENT_CURSOR_UP 
EVENT_END_TRACK 
EVENT_KEY 
EVENT_RIGHT_CURSOR_UP 
EVENT_MIDDLE_CURSOR_DOWN 
EVENT_MIDDLE_CURSOR_UP 

Function Documentation

bool operator== ( ItemID a,
ItemID b 
) [inline]
Remarks:
This method is used internally.

This operator tests for equality of two ItemID's.
Parameters:
ItemID& a, ItemID& b

The two ItemID's you wish to test for equality.
{
        if ( a.mpMenu  != b.mpMenu  ||
                 a.mpItem  != b.mpItem )
                return false;
        else
                return true;
}
COLORREF MakeCOLORREF ( const Color c ) [inline]
{ return RGB( FLto255(c.r), FLto255(c.g), FLto255(c.b) ); }
MENUS_API IMenuItem* GetIMenuItem ( )
Remarks:
This method will return a pointer to the IMenuItem.
MENUS_API void ReleaseIMenuItem ( IMenuItem )
Remarks:
This method will release the specified IMenuItem.
Parameters:
IMenuItem *

A pointer to the IMenuItem you wish to release.
MENUS_API IMenu* GetIMenu ( )
Remarks:
This method will return a pointer to the IMenu.
MENUS_API void ReleaseIMenu ( IMenu )
Remarks:
This method will release the specified IMenu.
Parameters:
IMenuItem *

A pointer to the IMenu you wish to release.
MENUS_API IQuadMenu* GetIQuadMenu ( )
Remarks:
This method will return a pointer to the IQuadMenu.
MENUS_API void ReleaseIQuadMenu ( IQuadMenu )
Remarks:
This method will release the specified IQuadMenu.
Parameters:
IMenuItem *

A pointer to the IQuadMenu you wish to release.