MenuItem Class Reference

#include <menu.h>

Inheritance diagram for MenuItem:

Inheritance graph
[legend]
Collaboration diagram for MenuItem:

Collaboration graph
[legend]

List of all members.

Public Member Functions

 MenuItem ()
virtual ~MenuItem ()
void set_tile_height ()
void set_id (int id)
int get_id () const
virtual void set_bounds (const coord_def &min_coord, const coord_def &max_coord)
virtual void set_bounds_no_multiply (const coord_def &min_coord, const coord_def &max_coord)
virtual const coord_defget_min_coord () const
virtual const coord_defget_max_coord () const
virtual void set_description_text (const std::string &text)
virtual const std::stringget_description_text () const
virtual void select (bool toggle)
virtual void select (bool toggle, int value)
virtual bool selected () const
virtual void allow_highlight (bool toggle)
virtual bool can_be_highlighted () const
virtual void set_highlight_colour (COLORS colour)
virtual COLORS get_highlight_colour () const
virtual void set_fg_colour (COLORS colour)
virtual void set_bg_colour (COLORS colour)
virtual COLORS get_fg_colour () const
virtual COLORS get_bg_colour () const
virtual void set_visible (bool flag)
virtual bool is_visible () const
virtual void render ()=0
void add_hotkey (int key)
const std::vector< int > & get_hotkeys () const
void clear_hotkeys ()
void set_link_left (MenuItem *item)
void set_link_right (MenuItem *item)
void set_link_up (MenuItem *item)
void set_link_down (MenuItem *item)
MenuItemget_link_left () const
MenuItemget_link_right () const
MenuItemget_link_up () const
MenuItemget_link_down () const

Protected Attributes

coord_def m_min_coord
coord_def m_max_coord
bool m_selected
bool m_allow_highlight
bool m_dirty
bool m_visible
std::vector< int > m_hotkeys
std::string m_description
COLORS m_fg_colour
COLORS m_highlight_colour
int m_bg_colour
MenuItemm_link_left
MenuItemm_link_right
MenuItemm_link_up
MenuItemm_link_down
int m_item_id


Detailed Description

Written by Janne "felirx" Lahdenpera Abstract base class interface for all menu items to inherit from each item should know how it's rendered. rendering should only check the item bounds and screen bounds to prevent assertion errors

Constructor & Destructor Documentation

MenuItem::MenuItem (  ) 

Here is the call graph for this function:

MenuItem::~MenuItem (  )  [virtual]


Member Function Documentation

void MenuItem::set_tile_height (  ) 

void MenuItem::set_id ( int  id  )  [inline]

int MenuItem::get_id (  )  const [inline]

void MenuItem::set_bounds ( const coord_def min_coord,
const coord_def max_coord 
) [virtual]

Override this if you use eg funky different sized fonts, tiles etc

Reimplemented in TextItem.

void MenuItem::set_bounds_no_multiply ( const coord_def min_coord,
const coord_def max_coord 
) [virtual]

This is handly if you are already working with existing multiplied coordinates and modifying them

Reimplemented in TextItem.

virtual const coord_def& MenuItem::get_min_coord (  )  const [inline, virtual]

virtual const coord_def& MenuItem::get_max_coord (  )  const [inline, virtual]

virtual void MenuItem::set_description_text ( const std::string text  )  [inline, virtual]

virtual const std::string& MenuItem::get_description_text (  )  const [inline, virtual]

void MenuItem::select ( bool  toggle  )  [virtual]

void MenuItem::select ( bool  toggle,
int  value 
) [virtual]

Here is the call graph for this function:

bool MenuItem::selected (  )  const [virtual]

Reimplemented in NoSelectTextItem.

void MenuItem::allow_highlight ( bool  toggle  )  [virtual]

bool MenuItem::can_be_highlighted (  )  const [virtual]

Reimplemented in NoSelectTextItem.

void MenuItem::set_highlight_colour ( COLORS  colour  )  [virtual]

COLORS MenuItem::get_highlight_colour (  )  const [virtual]

void MenuItem::set_fg_colour ( COLORS  colour  )  [virtual]

void MenuItem::set_bg_colour ( COLORS  colour  )  [virtual]

COLORS MenuItem::get_fg_colour (  )  const [virtual]

COLORS MenuItem::get_bg_colour (  )  const [virtual]

void MenuItem::set_visible ( bool  flag  )  [virtual]

bool MenuItem::is_visible (  )  const [virtual]

virtual void MenuItem::render (  )  [pure virtual]

Implemented in TextItem, and FormattedTextItem.

void MenuItem::add_hotkey ( int  key  ) 

const std::vector< int > & MenuItem::get_hotkeys (  )  const

void MenuItem::clear_hotkeys (  ) 

void MenuItem::set_link_left ( MenuItem item  ) 

void MenuItem::set_link_right ( MenuItem item  ) 

void MenuItem::set_link_up ( MenuItem item  ) 

void MenuItem::set_link_down ( MenuItem item  ) 

MenuItem * MenuItem::get_link_left (  )  const

MenuItem * MenuItem::get_link_right (  )  const

MenuItem * MenuItem::get_link_up (  )  const

MenuItem * MenuItem::get_link_down (  )  const


Member Data Documentation

bool MenuItem::m_selected [protected]

bool MenuItem::m_allow_highlight [protected]

bool MenuItem::m_dirty [protected]

bool MenuItem::m_visible [protected]

std::vector<int> MenuItem::m_hotkeys [protected]

int MenuItem::m_bg_colour [protected]

int MenuItem::m_item_id [protected]


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

Generated on Thu Jan 13 13:37:08 2011 by  doxygen 1.5.6