PrecisionMenu Class Reference

#include <menu.h>

Inheritance diagram for PrecisionMenu:

Inheritance graph
[legend]
Collaboration diagram for PrecisionMenu:

Collaboration graph
[legend]

List of all members.

Public Types

enum  SelectType { PRECISION_SINGLESELECT, PRECISION_MULTISELECT }

Public Member Functions

 PrecisionMenu ()
virtual ~PrecisionMenu ()
virtual void set_select_type (SelectType flag)
virtual void clear ()
virtual void draw_menu ()
virtual bool process_key (int key)
virtual std::vector< MenuItem * > get_selected_items ()
virtual void attach_object (MenuObject *item)
virtual MenuObjectget_object_by_name (const std::string &search)
virtual MenuItemget_active_item ()
virtual void set_active_object (MenuObject *object)

Protected Types

enum  Direction { UP, DOWN, LEFT, RIGHT }

Protected Member Functions

void _clear_selections ()
MenuObject_find_object_by_direction (const MenuObject *start, Direction dir)

Protected Attributes

std::vector< MenuObject * > m_attached_objects
MenuObjectm_active_object
SelectType m_select_type


Detailed Description

Inheritable root node of a menu that holds MenuObjects. It is always full screen. Everything attached to it it owns, thus deleting the memory when it exits the scope. TODO: add multiple paging support

Member Enumeration Documentation

Enumerator:
PRECISION_SINGLESELECT 
PRECISION_MULTISELECT 

enum PrecisionMenu::Direction [protected]

Enumerator:
UP 
DOWN 
LEFT 
RIGHT 


Constructor & Destructor Documentation

PrecisionMenu::PrecisionMenu (  ) 

PrecisionMenu::~PrecisionMenu (  )  [virtual]

Here is the call graph for this function:


Member Function Documentation

void PrecisionMenu::set_select_type ( SelectType  flag  )  [virtual]

void PrecisionMenu::clear (  )  [virtual]

Frees all used memory

void PrecisionMenu::draw_menu (  )  [virtual]

Here is the call graph for this function:

bool PrecisionMenu::process_key ( int  key  )  [virtual]

Processes user input

Returns: true when a significant event happened, signaling that the player has made a menu ending action like selecting an item in singleselect mode false otherwise

Here is the call graph for this function:

std::vector< MenuItem * > PrecisionMenu::get_selected_items (  )  [virtual]

void PrecisionMenu::attach_object ( MenuObject item  )  [virtual]

MenuObject * PrecisionMenu::get_object_by_name ( const std::string search  )  [virtual]

MenuItem * PrecisionMenu::get_active_item (  )  [virtual]

Here is the call graph for this function:

void PrecisionMenu::set_active_object ( MenuObject object  )  [virtual]

Here is the call graph for this function:

void PrecisionMenu::_clear_selections (  )  [protected]

MenuObject * PrecisionMenu::_find_object_by_direction ( const MenuObject start,
Direction  dir 
) [protected]

Finds the closest rectangle to given entry start on a caardinal direction from it. if no entries are found, NULL is returned

TODO: This is exact duplicate of MenuObject::_find_item_by_direction() maybe somehow generalize it and detach it from class

Here is the call graph for this function:


Member Data Documentation

std::vector<MenuObject*> PrecisionMenu::m_attached_objects [protected]


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

Generated on Thu Jan 13 13:41:17 2011 by  doxygen 1.5.6