Milo  0.1
Milo:EquationManipulationProgram
Public Member Functions | Private Attributes | Static Private Attributes | Friends | List of all members
Menu Class Reference

#include <menu.h>

Inheritance diagram for Menu:
Inheritance graph
[legend]
Collaboration diagram for Menu:
Collaboration graph
[legend]

Public Member Functions

void addItem (MenuBaseItem *m)
 
Menu * getParent ()
 
void highlight_next (int step)
 
void refresh_window ()
 
bool isCurrent ()
 
Constructor and Virtual Destructor
 Menu (const StringMap &tags)
 
 ~Menu ()
 
Overriden Pure Virtual Member Functions
void drawInBar (int x, bool fHighlight=false)
 
bool handleKey (int code)
 
void select ()
 
const std::string & getTitle ()
 
bool getActive ()
 
int calc_width ()
 
void draw (bool fHighlight, const int y0, const int x0, const int w)
 
- Public Member Functions inherited from MenuBaseItem
const std::string & getName ()
 
const std::string & getType ()
 
int getWidth ()
 
 MenuBaseItem (const StringMap &tags)
 
virtual ~MenuBaseItem ()
 

Private Attributes

bool m_active
 True if active.
 
const std::string m_title
 Title of menu.
 
std::vector< MenuBasePtr > m_items
 List of menu items.
 
Menu * m_parent
 Parent menu. Menu bar if null.
 
int m_xbar
 Position on menubar if needed.
 
int m_wbar
 Width on menubar if needed.
 
std::vector< MenuBasePtr >::iterator m_highlight
 Index of item highlighted.
 
int m_x0
 Horiz origin of menu.
 
int m_y0
 Vertical origin of menu.
 
int m_width
 Width of where menu.
 
int m_height
 Height of menu.
 

Static Private Attributes

static Menu * m_current = 0
 current active menu
 

Friends

class MenuBar
 

Additional Inherited Members

- Protected Member Functions inherited from MenuBaseItem
void draw_menu (bool fHighlight, const int y0, const int x0, const int w, const std::string &key=std::string())
 

Detailed Description

Submenu class also for top menu.

Member Function Documentation

void Menu::addItem ( MenuBaseItem *  m)
inline

Add menu item to menu

Parameters
mMenu item to add menu
int Menu::calc_width ( )
virtual

Calc width of menu

Implements MenuBaseItem.

void Menu::draw ( bool  fHighlight,
const int  y0,
const int  x0,
const int  w 
)
inlinevirtual

Draw menu title in drop down box at given coordinates

Parameters
fHighlightHighlight this item if true
y0y origin of item
x0x origin of item
wwidth of item

Implements MenuBaseItem.

void Menu::drawInBar ( int  x,
bool  fHighlight = false 
)

Draw menu title in menu bar

Parameters
Horizontallocation of menu title
bool Menu::getActive ( )
inlinevirtual

Get active state of menu

Returns
Return active state

Implements MenuBaseItem.

Menu* Menu::getParent ( )
inline

Get parent menu

Returns
Parent menu
const std::string& Menu::getTitle ( )
inlinevirtual

Get title of menu

Returns
Return title

Implements MenuBaseItem.

bool Menu::handleKey ( int  code)

Handle key event

Parameters
codeKey code.
Returns
Event was handled.
void Menu::highlight_next ( int  step)

Highlight next item

Parameters
stepdirection of change
bool Menu::isCurrent ( )

Is this menu the current menu?

Returns
True, if menu is current active menu
void Menu::refresh_window ( )

Refresh menu window containing menu items.

void Menu::select ( )
virtual

Select this menu item

Implements MenuBaseItem.


The documentation for this class was generated from the following files: