The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | List of all members
gui2::policy::placement::tmatrix Struct Reference

Places the items in a grid. More...

#include <generator_private.hpp>

Inheritance diagram for gui2::policy::placement::tmatrix:
Inheritance graph

Public Member Functions

void create_item (const unsigned)
 See thorizontal_list::create_item(). More...
 
virtual void request_reduce_width (const unsigned) override
 See twidget::request_reduce_width. More...
 
virtual void request_reduce_height (const unsigned) override
 See twidget::request_reduce_height. More...
 
virtual tpoint calculate_best_size () const override
 See twidget::calculate_best_size. More...
 
virtual void place (const tpoint &, const tpoint &) override
 See twidget::place. More...
 
virtual void set_origin (const tpoint &) override
 See twidget::set_origin. More...
 
void set_visible_rectangle (const SDL_Rect &)
 See thorizontal_list::set_visible_rectangle(). More...
 
virtual twidgetfind_at (const tpoint &, const bool) override
 See twidget::find_at. More...
 
virtual const twidgetfind_at (const tpoint &, const bool) const override
 See twidget::find_at. More...
 
void handle_key_up_arrow (SDLMod, bool &)
 Inherited from tgenerator_. More...
 
void handle_key_down_arrow (SDLMod, bool &)
 Inherited from tgenerator_. More...
 
void handle_key_left_arrow (SDLMod, bool &)
 Inherited from tgenerator_. More...
 
void handle_key_right_arrow (SDLMod, bool &)
 Inherited from tgenerator_. More...
 
- Public Member Functions inherited from gui2::tgenerator_
virtual ~tgenerator_ ()
 
virtual void delete_item (const unsigned index)=0
 Deletes an item. More...
 
virtual void clear ()=0
 Deletes all items. More...
 
virtual void select_item (const unsigned index, const bool select)=0
 (De)selects an item. More...
 
void toggle_item (const unsigned index)
 Toggles the selection state of an item. More...
 
virtual bool is_selected (const unsigned index) const =0
 Returns whether the item is selected. More...
 
virtual void set_item_shown (const unsigned index, const bool show)=0
 Shows or hides an item. More...
 
virtual bool get_item_shown (const unsigned index) const =0
 Returns whether the item is shown. More...
 
virtual unsigned get_item_count () const =0
 Returns the number of items. More...
 
virtual unsigned get_selected_item_count () const =0
 Returns the number of selected items. More...
 
virtual int get_selected_item () const =0
 Returns the selected item. More...
 
virtual tgriditem (const unsigned index)=0
 Gets the grid of an item. More...
 
virtual const tgriditem (const unsigned index) const =0
 Gets the grid of an item. More...
 
virtual tgridcreate_item (const int index, tbuilder_grid_const_ptr list_builder, const string_map &item_data, const std::function< void(twidget &)> &callback)=0
 Creates a new item. More...
 
virtual tgridcreate_item (const int index, tbuilder_grid_const_ptr list_builder, const std::map< std::string, string_map > &data, const std::function< void(twidget &)> &callback)=0
 Creates a new item. More...
 
virtual void create_items (const int index, tbuilder_grid_const_ptr list_builder, const std::vector< string_map > &data, const std::function< void(twidget &)> &callback)=0
 Creates one or more new item(s). More...
 
virtual void create_items (const int index, tbuilder_grid_const_ptr list_builder, const std::vector< std::map< std::string, string_map > > &data, const std::function< void(twidget &)> &callback)=0
 Creates one or more new item(s). More...
 
virtual void set_order (const torder_func &order)=0
 
virtual void layout_initialise (const bool full_initialisation) override=0
 See twidget::layout_initialise. More...
 
virtual void impl_draw_children (surface &frame_buffer, int x_offset, int y_offset) override=0
 See twidget::impl_draw_children. More...
 
- Public Member Functions inherited from gui2::twidget
 twidget ()
 
 twidget (const tbuilder_widget &builder)
 Constructor. More...
 
virtual ~twidget () override
 
void set_id (const std::string &id)
 
const std::stringid () const
 
twindowget_window ()
 Get the parent window. More...
 
const twindowget_window () const
 The constant version of get_window. More...
 
tdialogdialog ()
 Returns the top-level dialogue. More...
 
void set_parent (twidget *parent)
 
twidgetparent ()
 
virtual void demand_reduce_width (const unsigned maximum_width)
 Tries to reduce the width of a widget. More...
 
virtual void demand_reduce_height (const unsigned maximum_height)
 Tries to reduce the height of a widget. More...
 
tpoint get_best_size () const
 Gets the best size for the widget. More...
 
virtual bool can_mouse_focus () const
 Whether the mouse move/click event go 'through' this widget. More...
 
virtual bool can_wrap () const
 Can the widget wrap. More...
 
virtual void set_size (const tpoint &size)
 Sets the size of the widget. More...
 
virtual void move (const int x_offset, const int y_offset)
 Moves a widget. More...
 
virtual void layout_children ()
 Allows a widget to update its children. More...
 
tpoint get_origin () const
 Returns the screen origin of the widget. More...
 
tpoint get_size () const
 Returns the size of the widget. More...
 
SDL_Rect get_rectangle () const
 Gets the bounding rectangle of the widget on the screen. More...
 
int get_x () const
 
int get_y () const
 
unsigned get_width () const
 
unsigned get_height () const
 
void set_linked_group (const std::string &linked_group)
 
SDL_Rect calculate_blitting_rectangle (const int x_offset, const int y_offset)
 Calculates the blitting rectangle of the widget. More...
 
SDL_Rect calculate_clipping_rectangle (const int x_offset, const int y_offset)
 Calculates the clipping rectangle of the widget. More...
 
void draw_background (surface &frame_buffer, int x_offset, int y_offset)
 Draws the background of a widget. More...
 
void draw_children (surface &frame_buffer, int x_offset, int y_offset)
 Draws the children of a widget. More...
 
void draw_foreground (surface &frame_buffer, int x_offset, int y_offset)
 Draws the foreground of the widget. More...
 
void populate_dirty_list (twindow &caller, std::vector< twidget * > &call_stack)
 Adds a widget to the dirty list if it is dirty. More...
 
SDL_Rect get_dirty_rectangle () const
 Gets the dirty rectangle of the widget. More...
 
void set_is_dirty (const bool is_dirty)
 
bool get_is_dirty () const
 
void set_visible (const tvisible::scoped_enum visible)
 
tvisible::scoped_enum get_visible () const
 
tredraw_action::scoped_enum get_drawing_action () const
 
void set_debug_border_mode (const unsigned debug_border_mode)
 
void set_debug_border_colour (const unsigned debug_border_colour)
 
virtual twidgetfind (const std::string &id, const bool must_be_active)
 Returns a widget with the wanted id. More...
 
virtual const twidgetfind (const std::string &id, const bool must_be_active) const
 The constant version of find. More...
 
virtual bool has_widget (const twidget &widget) const
 Does the widget contain the widget. More...
 
virtual bool disable_click_dismiss () const =0
 Does the widget disable easy close? More...
 
virtual iterator::twalker_create_walker ()=0
 Creates a new walker object on the heap. More...
 
- Public Member Functions inherited from gui2::tevent_executor
 tevent_executor ()
 
virtual ~tevent_executor ()
 
void set_wants_mouse_hover (const bool hover=true)
 
bool wants_mouse_hover () const
 
void set_wants_mouse_left_double_click (const bool click=true)
 
bool wants_mouse_left_double_click () const
 
void set_wants_mouse_middle_double_click (const bool click=true)
 
bool wants_mouse_middle_double_click () const
 
tevent_executorset_wants_mouse_right_double_click (const bool click=true)
 
bool wants_mouse_right_double_click () const
 
- Public Member Functions inherited from gui2::event::tdispatcher
 tdispatcher ()
 
virtual ~tdispatcher ()
 
void connect ()
 Connects the dispatcher to the event handler. More...
 
bool has_event (const tevent event, const tevent_type event_type)
 
bool fire (const tevent event, twidget &target)
 Fires an event which has no extra parameters. More...
 
bool fire (const tevent event, twidget &target, const tpoint &coordinate)
 Fires an event which takes a coordinate parameter. More...
 
bool fire (const tevent event, twidget &target, const SDLKey key, const SDLMod modifier, const utf8::string &unicode)
 Fires an event which takes keyboard parameters. More...
 
bool fire (const tevent event, twidget &target, void *)
 Fires an event which takes notification parameters. More...
 
bool fire (const tevent event, twidget &target, tmessage &message)
 Fires an event which takes message parameters. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event, boost::mpl::int_
< E > > >::type 
connect_signal (const tsignal_function &signal, const tposition position=back_child)
 Connect a signal for callback in tset_event. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event, boost::mpl::int_
< E > > >::type 
disconnect_signal (const tsignal_function &signal, const tposition position=back_child)
 Disconnect a signal for callback in tset_event. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_mouse,
boost::mpl::int_< E >
> >::type 
connect_signal (const tsignal_mouse_function &signal, const tposition position=back_child)
 Connect a signal for callback in tset_event_mouse. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_mouse,
boost::mpl::int_< E >
> >::type 
disconnect_signal (const tsignal_mouse_function &signal, const tposition position=back_child)
 Disconnect a signal for callback in tset_event_mouse. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_keyboard,
boost::mpl::int_< E >
> >::type 
connect_signal (const tsignal_keyboard_function &signal, const tposition position=back_child)
 Connect a signal for callback in tset_event_keyboard. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_keyboard,
boost::mpl::int_< E >
> >::type 
disconnect_signal (const tsignal_keyboard_function &signal, const tposition position=back_child)
 Disconnect a signal for callback in tset_event_keyboard. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_notification,
boost::mpl::int_< E >
> >::type 
connect_signal (const tsignal_notification_function &signal, const tposition position=back_child)
 Connect a signal for callback in tset_event_notification. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_notification,
boost::mpl::int_< E >
> >::type 
disconnect_signal (const tsignal_notification_function &signal, const tposition position=back_child)
 Disconnect a signal for callback in tset_event_notification. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_message,
boost::mpl::int_< E >
> >::type 
connect_signal (const tsignal_message_function &signal, const tposition position=back_child)
 Connect a signal for callback in tset_event_message. More...
 
template<tevent E>
boost::enable_if
< boost::mpl::has_key
< tset_event_message,
boost::mpl::int_< E >
> >::type 
disconnect_signal (const tsignal_message_function &signal, const tposition position=back_child)
 Disconnect a signal for callback in tset_event_message. More...
 
void capture_mouse ()
 Captures the mouse. More...
 
void release_mouse ()
 Releases the mouse capture. More...
 
void set_mouse_behavior (const tmouse_behavior mouse_behavior)
 
tmouse_behavior get_mouse_behavior () const
 
void set_want_keyboard_input (const bool want_keyboard_input)
 
bool get_want_keyboard_input () const
 
void register_hotkey (const hotkey::HOTKEY_COMMAND id, const thotkey_function &function)
 Registers a hotkey. More...
 
bool execute_hotkey (const hotkey::HOTKEY_COMMAND id)
 Executes a hotkey. More...
 

Additional Inherited Members

- Public Types inherited from gui2::tgenerator_
enum  tplacement { horizontal_list, vertical_list, grid, independent }
 Determines how the items are placed. More...
 
typedef std::function< bool(unsigned,
unsigned)> 
torder_func
 
- Public Types inherited from gui2::event::tdispatcher
enum  tevent_type { pre = 1, child = 2, post = 4 }
 
enum  tposition {
  front_pre_child, back_pre_child, front_child, back_child,
  front_post_child, back_post_child
}
 The position where to add a new callback in the signal handler. More...
 
enum  tmouse_behavior { all, hit, none }
 The behavior of the mouse events. More...
 
- Static Public Member Functions inherited from gui2::tgenerator_
static tgenerator_build (const bool has_minimum, const bool has_maximum, const tplacement placement, const bool select)
 Create a new generator. More...
 
- Protected Member Functions inherited from gui2::tgenerator_
virtual void child_populate_dirty_list (twindow &caller, const std::vector< twidget * > &call_stack) override=0
 See twidget::child_populate_dirty_list. More...
 
virtual void do_select_item (const unsigned index)=0
 Selects a not selected item. More...
 
virtual void do_deselect_item (const unsigned index)=0
 Deselects a selected item. More...
 
virtual tgriditem_ordered (const unsigned index)=0
 Gets the grid of an item. More...
 
virtual const tgriditem_ordered (const unsigned index) const =0
 Gets the grid of an item. More...
 
virtual unsigned get_ordered_index (unsigned index) const =0
 
virtual unsigned get_item_at_ordered (unsigned index_ordered) const =0
 
- Protected Member Functions inherited from gui2::twidget
void set_layout_size (const tpoint &size)
 
const tpointlayout_size () const
 

Detailed Description

Places the items in a grid.

The items will be placed in rows and columns. It has to be determined whether the number of columns will be fixed or variable.

Todo:
Implement.

Definition at line 350 of file generator_private.hpp.

Member Function Documentation

virtual tpoint gui2::policy::placement::tmatrix::calculate_best_size ( ) const
inlineoverridevirtual

See twidget::calculate_best_size.

Implements gui2::tgenerator_.

Definition at line 375 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::create_item ( const unsigned  )
inline

See thorizontal_list::create_item().

Definition at line 353 of file generator_private.hpp.

References ERROR_LOG.

virtual twidget* gui2::policy::placement::tmatrix::find_at ( const tpoint ,
const bool   
)
inlineoverridevirtual

See twidget::find_at.

Implements gui2::tgenerator_.

Definition at line 401 of file generator_private.hpp.

References ERROR_LOG.

virtual const twidget* gui2::policy::placement::tmatrix::find_at ( const tpoint ,
const bool   
) const
inlineoverridevirtual

See twidget::find_at.

Implements gui2::tgenerator_.

Definition at line 409 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::handle_key_down_arrow ( SDLMod  ,
bool &   
)
inlinevirtual

Inherited from tgenerator_.

Implements gui2::tgenerator_.

Definition at line 425 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::handle_key_left_arrow ( SDLMod  ,
bool &   
)
inlinevirtual

Inherited from tgenerator_.

Implements gui2::tgenerator_.

Definition at line 431 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::handle_key_right_arrow ( SDLMod  ,
bool &   
)
inlinevirtual

Inherited from tgenerator_.

Implements gui2::tgenerator_.

Definition at line 437 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::handle_key_up_arrow ( SDLMod  ,
bool &   
)
inlinevirtual

Inherited from tgenerator_.

Implements gui2::tgenerator_.

Definition at line 419 of file generator_private.hpp.

References ERROR_LOG.

virtual void gui2::policy::placement::tmatrix::place ( const tpoint ,
const tpoint  
)
inlineoverridevirtual

See twidget::place.

Implements gui2::tgenerator_.

Definition at line 381 of file generator_private.hpp.

References ERROR_LOG.

virtual void gui2::policy::placement::tmatrix::request_reduce_height ( const unsigned  )
inlineoverridevirtual

See twidget::request_reduce_height.

Implements gui2::tgenerator_.

Definition at line 368 of file generator_private.hpp.

virtual void gui2::policy::placement::tmatrix::request_reduce_width ( const unsigned  )
inlineoverridevirtual

See twidget::request_reduce_width.

Implements gui2::tgenerator_.

Definition at line 362 of file generator_private.hpp.

virtual void gui2::policy::placement::tmatrix::set_origin ( const tpoint )
inlineoverridevirtual

See twidget::set_origin.

Implements gui2::tgenerator_.

Definition at line 389 of file generator_private.hpp.

References ERROR_LOG.

void gui2::policy::placement::tmatrix::set_visible_rectangle ( const SDL_Rect &  )
inlinevirtual

See thorizontal_list::set_visible_rectangle().

Implements gui2::tgenerator_.

Definition at line 395 of file generator_private.hpp.

References ERROR_LOG.


The documentation for this struct was generated from the following file: