The Battle for Wesnoth  1.15.1+dev
Classes | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Private Types | Private Member Functions | Private Attributes | Friends | List of all members
gui::menu Class Reference

#include <menu.hpp>

Inheritance diagram for gui::menu:
Inheritance graph

Classes

class  basic_sorter
 
class  imgsel_style
 
struct  item
 
class  sorter
 
class  style
 

Public Types

enum  ROW_TYPE { NORMAL_ROW, SELECTED_ROW, HEADING_ROW }
 

Public Member Functions

 menu (CVideo &video, const std::vector< std::string > &items, bool click_selects=false, int max_height=-1, int max_width=-1, const sorter *sorter_obj=nullptr, style *menu_style=nullptr, const bool auto_join=true)
 
 ~menu ()
 Default implementation, but defined out-of-line for efficiency reasons. More...
 
int selection () const
 
void move_selection (std::size_t id)
 
void move_selection_keeping_viewport (std::size_t id)
 
void reset_selection ()
 
void change_item (int pos1, int pos2, const std::string &str)
 
virtual void erase_item (std::size_t index)
 
void set_heading (const std::vector< std::string > &heading)
 
virtual void set_items (const std::vector< std::string > &items, bool strip_spaces=true, bool keep_viewport=false)
 Set new items to show and redraw/recalculate everything. More...
 
void set_max_height (const int new_max_height)
 Set a new max height for this menu. More...
 
void set_max_width (const int new_max_width)
 
int get_max_height () const
 
int get_max_width () const
 
std::size_t number_of_items () const
 
int process ()
 
bool double_clicked ()
 
void set_click_selects (bool value)
 
void set_numeric_keypress_selection (bool value)
 
void scroll (unsigned int pos)
 
void set_sorter (sorter *s)
 
void sort_by (int column)
 
int get_sort_by () const
 
bool get_sort_reversed () const
 
- Public Member Functions inherited from gui::scrollarea
 scrollarea (CVideo &video, bool auto_join=true)
 Create a zone with automatic handling of scrollbar. More...
 
virtual void hide (bool value=true)
 
- Public Member Functions inherited from gui::widget
const SDL_Rect & location () const
 
virtual void set_location (const SDL_Rect &rect)
 
void set_location (int x, int y)
 
void set_width (int w)
 
void set_height (int h)
 
void set_measurements (int w, int h)
 
int width () const
 
int height () const
 
bool focus (const SDL_Event *event)
 
void set_focus (bool focus)
 
bool hidden () const
 
virtual void enable (bool new_val=true)
 
bool enabled () const
 
void set_clip_rect (const SDL_Rect &rect)
 
void set_volatile (bool val=true)
 
void set_dirty (bool dirty=true)
 
bool dirty () const
 
const std::string & id () const
 
void set_id (const std::string &id)
 
void set_help_string (const std::string &str)
 
void set_tooltip_string (const std::string &str)
 
virtual void process_tooltip_string (int mousex, int mousey)
 
- Public Member Functions inherited from events::sdl_handler
virtual void join ()
 
virtual void join (context &c)
 
virtual void join_same (sdl_handler *parent)
 
virtual void leave ()
 
virtual void join_global ()
 
virtual void leave_global ()
 
virtual bool has_joined ()
 
virtual bool has_joined_global ()
 
sdl_handleroperator= (sdl_handler &&)=delete
 Moving would require two instances' context membership to be handled, it's simpler to delete these and require the two instances to be separately constructed / destructed. More...
 
 sdl_handler (sdl_handler &&)=delete
 

Static Public Attributes

static styledefault_style = menu::bluebg_style
 
static style simple_style
 
static imgsel_style bluebg_style
 

Protected Member Functions

bool item_ends_with_image (const std::string &item) const
 
virtual void handle_event (const SDL_Event &event)
 
void set_inner_location (const SDL_Rect &rect)
 
bool requires_event_focus (const SDL_Event *event=nullptr) const
 
const std::vector< int > & column_widths () const
 
virtual void draw_row (const std::size_t row_index, const SDL_Rect &rect, ROW_TYPE type)
 
int hit (int x, int y) const
 
std::pair< int, int > hit_cell (int x, int y) const
 
int hit_column (int x) const
 
int hit_heading (int x, int y) const
 
void invalidate_row (std::size_t id)
 
void invalidate_row_pos (std::size_t pos)
 
void invalidate_heading ()
 
- Protected Member Functions inherited from gui::scrollarea
virtual sdl_handler_vector handler_members ()
 
virtual void update_location (const SDL_Rect &rect)
 
virtual void process_event ()
 
SDL_Rect inner_location () const
 
unsigned scrollbar_width () const
 
unsigned get_position () const
 
unsigned get_max_position () const
 
void set_position (unsigned pos)
 
void adjust_position (unsigned pos)
 
void move_position (int dep)
 
void set_shown_size (unsigned h)
 
void set_full_size (unsigned h)
 
void set_scroll_rate (unsigned r)
 
bool has_scrollbar () const
 
- Protected Member Functions inherited from gui::widget
 widget (CVideo &video, const bool auto_join=true)
 
virtual ~widget ()
 
void bg_register (const SDL_Rect &rect)
 
void bg_restore () const
 
void bg_restore (const SDL_Rect &rect) const
 
void bg_update ()
 
void bg_cancel ()
 
CVideovideo () const
 
const SDL_Rect * clip_rect () const
 
virtual sdl_handler_vector member_handlers ()
 
virtual void handle_window_event (const SDL_Event &event)
 
bool mouse_locked () const
 
void aquire_mouse_lock ()
 
void free_mouse_lock ()
 
- Protected Member Functions inherited from events::sdl_handler
 sdl_handler (const bool auto_join=true)
 
 sdl_handler (const sdl_handler &)
 
sdl_handleroperator= (const sdl_handler &)
 
virtual ~sdl_handler ()
 

Protected Attributes

stylestyle_
 
bool silent_
 
- Protected Attributes inherited from gui::widget
bool focus_
 

Private Types

enum  SELECTION_MOVE_VIEWPORT { MOVE_VIEWPORT, NO_MOVE_VIEWPORT }
 

Private Member Functions

std::size_t max_items_onscreen () const
 
std::size_t heading_height () const
 
void adjust_viewport_to_selection ()
 
void key_press (SDL_Keycode key)
 
void create_help_strings ()
 
void process_help_string (int mousex, int mousey)
 
void column_widths_item (const std::vector< std::string > &row, std::vector< int > &widths) const
 
void clear_item (int item)
 
void draw_contents ()
 
void draw ()
 
SDL_Rect get_item_rect (int item) const
 
SDL_Rect get_item_rect_internal (std::size_t pos) const
 
std::size_t get_item_height_internal (const std::vector< std::string > &item) const
 
std::size_t get_item_height (int item) const
 
int items_start () const
 
int items_end () const
 
int items_height () const
 
void update_scrollbar_grip_height ()
 
void fill_items (const std::vector< std::string > &items, bool strip_spaces)
 Set new items to show. More...
 
void do_sort ()
 
void recalculate_pos ()
 
void assert_pos ()
 
void update_size ()
 
void set_selection_pos (std::size_t pos, bool silent=false, SELECTION_MOVE_VIEWPORT move_viewport=MOVE_VIEWPORT)
 
void move_selection_to (std::size_t id, bool silent=false, SELECTION_MOVE_VIEWPORT move_viewport=MOVE_VIEWPORT)
 
void move_selection_up (std::size_t dep)
 
void move_selection_down (std::size_t dep)
 

Private Attributes

int max_height_
 
int max_width_
 
int max_items_
 
int item_height_
 
std::vector< itemitems_
 
std::vector< std::size_t > item_pos_
 
std::vector< std::string > heading_
 
int heading_height_
 
std::pair< int, int > cur_help_
 
int help_string_
 
std::vector< int > column_widths_
 
std::size_t selected_
 
bool click_selects_
 
bool out_
 
bool previous_button_
 
bool show_result_
 
bool double_clicked_
 
std::map< int, SDL_Rect > itemRects_
 
bool num_selects_
 variable which determines whether a numeric keypress should select an item on the dialog More...
 
bool ignore_next_doubleclick_
 
bool last_was_doubleclick_
 
bool use_ellipsis_
 
const sortersorter_
 
int sortby_
 
bool sortreversed_
 
int highlight_heading_
 
std::set< int > invalid_
 

Friends

class style
 
class imgsel_style
 

Detailed Description

Definition at line 28 of file menu.hpp.

Member Enumeration Documentation

◆ ROW_TYPE

Enumerator
NORMAL_ROW 
SELECTED_ROW 
HEADING_ROW 

Definition at line 32 of file menu.hpp.

◆ SELECTION_MOVE_VIEWPORT

Enumerator
MOVE_VIEWPORT 
NO_MOVE_VIEWPORT 

Definition at line 308 of file menu.hpp.

Constructor & Destructor Documentation

◆ menu()

gui::menu::menu ( CVideo video,
const std::vector< std::string > &  items,
bool  click_selects = false,
int  max_height = -1,
int  max_width = -1,
const sorter sorter_obj = nullptr,
style menu_style = nullptr,
const bool  auto_join = true 
)

Definition at line 195 of file menu.cpp.

References default_style, fill_items(), gui::menu::style::init(), and style_.

◆ ~menu()

gui::menu::~menu ( )

Default implementation, but defined out-of-line for efficiency reasons.

Definition at line 216 of file menu.cpp.

Member Function Documentation

◆ adjust_viewport_to_selection()

void gui::menu::adjust_viewport_to_selection ( )
private

Definition at line 509 of file menu.cpp.

References gui::scrollarea::adjust_position(), click_selects_, and selected_.

Referenced by erase_item(), set_items(), and set_selection_pos().

◆ assert_pos()

void gui::menu::assert_pos ( )
private

Definition at line 307 of file menu.cpp.

References item_pos_, items_, and n.

Referenced by erase_item(), and recalculate_pos().

◆ change_item()

void gui::menu::change_item ( int  pos1,
int  pos2,
const std::string &  str 
)

Definition at line 385 of file menu.cpp.

References item_pos_, items_, and gui::widget::set_dirty().

◆ clear_item()

void gui::menu::clear_item ( int  item)
private

Definition at line 903 of file menu.cpp.

References gui::widget::bg_restore(), and get_item_rect().

Referenced by erase_item().

◆ column_widths()

const std::vector< int > & gui::menu::column_widths ( ) const
protected

Definition at line 891 of file menu.cpp.

References column_widths_, column_widths_item(), heading_, and items_.

Referenced by draw_row(), hit_column(), and update_size().

◆ column_widths_item()

void gui::menu::column_widths_item ( const std::vector< std::string > &  row,
std::vector< int > &  widths 
) const
private

◆ create_help_strings()

void gui::menu::create_help_strings ( )
private

Definition at line 316 of file menu.cpp.

References gui2::event::find(), HELP_STRING_SEPARATOR, i, mp_ui_alerts::items, items_, and utils::split().

Referenced by fill_items().

◆ do_sort()

void gui::menu::do_sort ( )
private

◆ double_clicked()

bool gui::menu::double_clicked ( )

Definition at line 738 of file menu.cpp.

References double_clicked_.

◆ draw()

void gui::menu::draw ( )
privatevirtual

◆ draw_contents()

void gui::menu::draw_contents ( )
privatevirtual

◆ draw_row()

void gui::menu::draw_row ( const std::size_t  row_index,
const SDL_Rect &  rect,
ROW_TYPE  type 
)
protectedvirtual

◆ erase_item()

void gui::menu::erase_item ( std::size_t  index)
virtual

◆ fill_items()

void gui::menu::fill_items ( const std::vector< std::string > &  items,
bool  strip_spaces 
)
private

Set new items to show.

If strip_spaces is false, spaces will remain at the item edges.

Definition at line 220 of file menu.cpp.

References a, b, COLUMN_SEPARATOR, create_help_strings(), DEFAULT_ITEM, do_sort(), heading_, HEADING_PREFIX, gui::widget::id(), item_pos_, items_, utils::quoted_split(), selected_, sortby_, and update_size().

Referenced by menu(), and set_items().

◆ get_item_height()

std::size_t gui::menu::get_item_height ( int  item) const
private

Definition at line 1182 of file menu.cpp.

References get_item_height_internal(), item_height_, items_, and n.

Referenced by get_item_rect_internal(), and max_items_onscreen().

◆ get_item_height_internal()

std::size_t gui::menu::get_item_height_internal ( const std::vector< std::string > &  item) const
private

Definition at line 1162 of file menu.cpp.

References i, gui::menu::style::item_size(), and style_.

Referenced by get_item_height(), and heading_height().

◆ get_item_rect()

SDL_Rect gui::menu::get_item_rect ( int  item) const
private

Definition at line 1113 of file menu.cpp.

References get_item_rect_internal(), and item_pos_.

Referenced by clear_item(), draw(), draw_contents(), hit(), and update_size().

◆ get_item_rect_internal()

SDL_Rect gui::menu::get_item_rect_internal ( std::size_t  pos) const
private

◆ get_max_height()

int gui::menu::get_max_height ( ) const
inline

Definition at line 184 of file menu.hpp.

◆ get_max_width()

int gui::menu::get_max_width ( ) const
inline

Definition at line 185 of file menu.hpp.

◆ get_sort_by()

int gui::menu::get_sort_by ( ) const
inline

Definition at line 202 of file menu.hpp.

◆ get_sort_reversed()

bool gui::menu::get_sort_reversed ( ) const
inline

Definition at line 203 of file menu.hpp.

◆ handle_event()

void gui::menu::handle_event ( const SDL_Event &  event)
protectedvirtual

◆ heading_height()

std::size_t gui::menu::heading_height ( ) const
private

◆ hit()

int gui::menu::hit ( int  x,
int  y 
) const
protected

Definition at line 1061 of file menu.cpp.

References get_item_rect(), i, gui::scrollarea::inner_location(), and items_.

Referenced by handle_event(), hit_cell(), and process_help_string().

◆ hit_cell()

std::pair< int, int > gui::menu::hit_cell ( int  x,
int  y 
) const
protected

Definition at line 1087 of file menu.cpp.

References hit(), hit_column(), gui::scrollarea::x, and gui::scrollarea::y.

◆ hit_column()

int gui::menu::hit_column ( int  x) const
protected

Definition at line 1075 of file menu.cpp.

References column_widths(), and gui::widget::location().

Referenced by hit_cell(), hit_heading(), and process_help_string().

◆ hit_heading()

int gui::menu::hit_heading ( int  x,
int  y 
) const
protected

◆ invalidate_heading()

void gui::menu::invalidate_heading ( )
protected

Definition at line 1243 of file menu.cpp.

References invalid_.

Referenced by handle_event().

◆ invalidate_row()

void gui::menu::invalidate_row ( std::size_t  id)
protected

Definition at line 1225 of file menu.cpp.

References invalid_, and items_.

Referenced by invalidate_row_pos().

◆ invalidate_row_pos()

void gui::menu::invalidate_row_pos ( std::size_t  pos)
protected

Definition at line 1234 of file menu.cpp.

References invalidate_row(), and items_.

Referenced by handle_event(), and set_selection_pos().

◆ item_ends_with_image()

bool gui::menu::item_ends_with_image ( const std::string &  item) const
protected

Definition at line 884 of file menu.cpp.

References IMAGE_PREFIX, and IMG_TEXT_SEPARATOR.

Referenced by column_widths_item().

◆ items_end()

int gui::menu::items_end ( ) const
private

◆ items_height()

int gui::menu::items_height ( ) const
private

◆ items_start()

int gui::menu::items_start ( ) const
private

◆ key_press()

void gui::menu::key_press ( SDL_Keycode  key)
private

◆ max_items_onscreen()

std::size_t gui::menu::max_items_onscreen ( ) const
private

◆ move_selection()

void gui::menu::move_selection ( std::size_t  id)

Definition at line 557 of file menu.cpp.

References item_pos_, MOVE_VIEWPORT, and set_selection_pos().

◆ move_selection_down()

void gui::menu::move_selection_down ( std::size_t  dep)
private

Definition at line 542 of file menu.cpp.

References items_, selected_, and set_selection_pos().

Referenced by key_press().

◆ move_selection_keeping_viewport()

void gui::menu::move_selection_keeping_viewport ( std::size_t  id)

Definition at line 565 of file menu.cpp.

References item_pos_, NO_MOVE_VIEWPORT, and set_selection_pos().

◆ move_selection_to()

void gui::menu::move_selection_to ( std::size_t  id,
bool  silent = false,
SELECTION_MOVE_VIEWPORT  move_viewport = MOVE_VIEWPORT 
)
private

Definition at line 549 of file menu.cpp.

References item_pos_, and set_selection_pos().

Referenced by do_sort(), and handle_event().

◆ move_selection_up()

void gui::menu::move_selection_up ( std::size_t  dep)
private

Definition at line 537 of file menu.cpp.

References selected_, and set_selection_pos().

Referenced by key_press().

◆ number_of_items()

std::size_t gui::menu::number_of_items ( ) const
inline

Definition at line 187 of file menu.hpp.

References tooltips::process(), and s.

◆ process()

int gui::menu::process ( )

Definition at line 728 of file menu.cpp.

References selected_, and show_result_.

◆ process_help_string()

void gui::menu::process_help_string ( int  mousex,
int  mousey 
)
privatevirtual

◆ recalculate_pos()

void gui::menu::recalculate_pos ( )
private

Definition at line 298 of file menu.cpp.

References assert_pos(), i, item_pos_, and items_.

Referenced by do_sort().

◆ requires_event_focus()

bool gui::menu::requires_event_focus ( const SDL_Event *  event = nullptr) const
protectedvirtual

◆ reset_selection()

void gui::menu::reset_selection ( )

Definition at line 572 of file menu.cpp.

References set_selection_pos().

◆ scroll()

void gui::menu::scroll ( unsigned int  pos)
virtual

Implements gui::scrollarea.

Definition at line 755 of file menu.cpp.

References itemRects_, and gui::widget::set_dirty().

◆ selection()

int gui::menu::selection ( ) const

Definition at line 369 of file menu.cpp.

References items_, and selected_.

Referenced by do_sort().

◆ set_click_selects()

void gui::menu::set_click_selects ( bool  value)

Definition at line 745 of file menu.cpp.

References click_selects_.

◆ set_heading()

void gui::menu::set_heading ( const std::vector< std::string > &  heading)

Definition at line 425 of file menu.cpp.

References column_widths_, heading_, itemRects_, max_items_, and gui::widget::set_dirty().

◆ set_inner_location()

void gui::menu::set_inner_location ( const SDL_Rect &  rect)
protectedvirtual

Implements gui::scrollarea.

Definition at line 378 of file menu.cpp.

References gui::widget::bg_register(), itemRects_, and update_scrollbar_grip_height().

◆ set_items()

void gui::menu::set_items ( const std::vector< std::string > &  items,
bool  strip_spaces = true,
bool  keep_viewport = false 
)
virtual

Set new items to show and redraw/recalculate everything.

If strip_spaces is false, spaces will remain at the item edges. If keep_viewport is true, the menu tries to keep the selection at the same position as it were before the items were set.

Definition at line 436 of file menu.cpp.

References adjust_viewport_to_selection(), column_widths_, fill_items(), gui::scrollarea::get_max_position(), gui::scrollarea::get_position(), gui::scrollarea::has_scrollbar(), item_height_, item_pos_, itemRects_, items_, max_items_, selected_, gui::widget::set_dirty(), gui::scrollarea::set_position(), and update_scrollbar_grip_height().

Referenced by help::help_menu::display_visible_items().

◆ set_max_height()

void gui::menu::set_max_height ( const int  new_max_height)

Set a new max height for this menu.

Note that this does not take effect immediately, only after certain operations that clear everything, such as set_items().

Definition at line 467 of file menu.cpp.

References itemRects_, max_height_, max_items_, and update_size().

Referenced by help::help_browser::adjust_layout().

◆ set_max_width()

void gui::menu::set_max_width ( const int  new_max_width)

Definition at line 475 of file menu.cpp.

References column_widths_, itemRects_, max_width_, and update_size().

Referenced by help::help_browser::adjust_layout().

◆ set_numeric_keypress_selection()

void gui::menu::set_numeric_keypress_selection ( bool  value)

Definition at line 750 of file menu.cpp.

References num_selects_.

◆ set_selection_pos()

void gui::menu::set_selection_pos ( std::size_t  pos,
bool  silent = false,
SELECTION_MOVE_VIEWPORT  move_viewport = MOVE_VIEWPORT 
)
private

◆ set_sorter()

void gui::menu::set_sorter ( sorter s)

Definition at line 761 of file menu.cpp.

References s, sort_by(), sortby_, sorter_, and sortreversed_.

◆ sort_by()

void gui::menu::sort_by ( int  column)

Definition at line 772 of file menu.cpp.

References do_sort(), itemRects_, gui::widget::set_dirty(), sortby_, and sortreversed_.

Referenced by handle_event(), and set_sorter().

◆ update_scrollbar_grip_height()

void gui::menu::update_scrollbar_grip_height ( )
private

◆ update_size()

void gui::menu::update_size ( )
private

Friends And Related Function Documentation

◆ imgsel_style

friend class imgsel_style
friend

Definition at line 100 of file menu.hpp.

◆ style

friend class style
friend

Definition at line 99 of file menu.hpp.

Member Data Documentation

◆ bluebg_style

menu::imgsel_style gui::menu::bluebg_style
static

Definition at line 103 of file menu.hpp.

◆ click_selects_

bool gui::menu::click_selects_
private

◆ column_widths_

std::vector<int> gui::menu::column_widths_
mutableprivate

Definition at line 251 of file menu.hpp.

Referenced by column_widths(), set_heading(), set_items(), and set_max_width().

◆ cur_help_

std::pair<int,int> gui::menu::cur_help_
private

Definition at line 248 of file menu.hpp.

Referenced by process_help_string().

◆ default_style

menu::style & gui::menu::default_style = menu::bluebg_style
static

Definition at line 101 of file menu.hpp.

Referenced by menu().

◆ double_clicked_

bool gui::menu::double_clicked_
private

Definition at line 261 of file menu.hpp.

Referenced by double_clicked(), and handle_event().

◆ heading_

std::vector<std::string> gui::menu::heading_
private

Definition at line 242 of file menu.hpp.

Referenced by column_widths(), draw_row(), fill_items(), heading_height(), and set_heading().

◆ heading_height_

int gui::menu::heading_height_
mutableprivate

Definition at line 243 of file menu.hpp.

Referenced by heading_height().

◆ help_string_

int gui::menu::help_string_
private

Definition at line 249 of file menu.hpp.

Referenced by process_help_string().

◆ highlight_heading_

int gui::menu::highlight_heading_
private

Definition at line 297 of file menu.hpp.

Referenced by draw_row(), and handle_event().

◆ ignore_next_doubleclick_

bool gui::menu::ignore_next_doubleclick_
private

Definition at line 288 of file menu.hpp.

Referenced by handle_event().

◆ invalid_

std::set<int> gui::menu::invalid_
private

Definition at line 314 of file menu.hpp.

Referenced by draw(), invalidate_heading(), and invalidate_row().

◆ item_height_

int gui::menu::item_height_
mutableprivate

Definition at line 234 of file menu.hpp.

Referenced by get_item_height(), and set_items().

◆ item_pos_

std::vector<std::size_t> gui::menu::item_pos_
private

◆ itemRects_

std::map<int,SDL_Rect> gui::menu::itemRects_
mutableprivate

◆ items_

std::vector<item> gui::menu::items_
private

◆ last_was_doubleclick_

bool gui::menu::last_was_doubleclick_
private

Definition at line 289 of file menu.hpp.

Referenced by handle_event().

◆ max_height_

int gui::menu::max_height_
private

Definition at line 233 of file menu.hpp.

Referenced by heading_height(), max_items_onscreen(), set_max_height(), and update_size().

◆ max_items_

int gui::menu::max_items_
mutableprivate

Definition at line 234 of file menu.hpp.

Referenced by max_items_onscreen(), set_heading(), set_items(), and set_max_height().

◆ max_width_

int gui::menu::max_width_
private

Definition at line 233 of file menu.hpp.

Referenced by draw_row(), set_max_width(), and update_size().

◆ num_selects_

bool gui::menu::num_selects_
private

variable which determines whether a numeric keypress should select an item on the dialog

Definition at line 284 of file menu.hpp.

Referenced by key_press(), requires_event_focus(), and set_numeric_keypress_selection().

◆ out_

bool gui::menu::out_
private

Definition at line 255 of file menu.hpp.

Referenced by draw(), draw_contents(), and handle_event().

◆ previous_button_

bool gui::menu::previous_button_
private

Definition at line 256 of file menu.hpp.

◆ selected_

std::size_t gui::menu::selected_
private

◆ show_result_

bool gui::menu::show_result_
private

Definition at line 259 of file menu.hpp.

Referenced by handle_event(), and process().

◆ silent_

bool gui::menu::silent_
protected

Definition at line 215 of file menu.hpp.

Referenced by handle_event(), help::help_menu::help_menu(), and set_selection_pos().

◆ simple_style

menu::style gui::menu::simple_style
static

Definition at line 102 of file menu.hpp.

◆ sortby_

int gui::menu::sortby_
private

Definition at line 295 of file menu.hpp.

Referenced by do_sort(), draw_row(), fill_items(), set_sorter(), and sort_by().

◆ sorter_

const sorter* gui::menu::sorter_
private

Definition at line 294 of file menu.hpp.

Referenced by do_sort(), handle_event(), and set_sorter().

◆ sortreversed_

bool gui::menu::sortreversed_
private

Definition at line 296 of file menu.hpp.

Referenced by do_sort(), draw_row(), set_sorter(), and sort_by().

◆ style_

style* gui::menu::style_
protected

◆ use_ellipsis_

bool gui::menu::use_ellipsis_
private

Definition at line 292 of file menu.hpp.

Referenced by draw_row(), and update_size().


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