#include <menu.h>
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 MenuObject * | get_object_by_name (const std::string &search) |
virtual MenuItem * | get_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 |
MenuObject * | m_active_object |
SelectType | m_select_type |
enum PrecisionMenu::Direction [protected] |
PrecisionMenu::PrecisionMenu | ( | ) |
PrecisionMenu::~PrecisionMenu | ( | ) | [virtual] |
void PrecisionMenu::set_select_type | ( | SelectType | flag | ) | [virtual] |
void PrecisionMenu::clear | ( | ) | [virtual] |
Frees all used memory
void PrecisionMenu::draw_menu | ( | ) | [virtual] |
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
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] |
void PrecisionMenu::set_active_object | ( | MenuObject * | object | ) | [virtual] |
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
std::vector<MenuObject*> PrecisionMenu::m_attached_objects [protected] |
MenuObject* PrecisionMenu::m_active_object [protected] |
SelectType PrecisionMenu::m_select_type [protected] |