Base class for a scroll bar. More...
#include <slider_base.hpp>
Classes | |
| struct | slider_position_t | 
| Helper container for the slider's current position.  More... | |
Public Types | |
| enum | scroll_mode {  BEGIN , ITEM_BACKWARDS , HALF_JUMP_BACKWARDS , JUMP_BACKWARDS , END , ITEM_FORWARD , HALF_JUMP_FORWARD , JUMP_FORWARD }  | 
| scroll 'step size'.  More... | |
| enum | state_t {  ENABLED , DISABLED , PRESSED , FOCUSED , COUNT }  | 
| Possible states of the widget.  More... | |
  Public Types inherited from gui2::widget | |
| enum class | visibility { visible , hidden , invisible } | 
| Visibility settings done by the user.  More... | |
| enum class | redraw_action { full , partly , none } | 
| Visibility set by the engine.  More... | |
| enum class | debug_border { none , outline , fill } | 
  Public Types inherited from gui2::event::dispatcher | |
| enum | event_queue_type { pre = 1 , child = 2 , post = 4 } | 
| enum | queue_position {  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 class | mouse_behavior { all , hit , none } | 
| The behavior of the mouse events.  More... | |
Public Member Functions | |
| slider_base (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
| void | scroll (const scroll_mode scroll) | 
| Sets the item position.  More... | |
| void | finalize_setup () | 
| virtual void | place (const point &origin, const point &size) override | 
| See widget::place.  More... | |
| virtual void | set_active (const bool active) override | 
| See styled_widget::set_active.  More... | |
| virtual bool | get_active () const override | 
| See styled_widget::get_active.  More... | |
| virtual unsigned | get_state () const override | 
| See styled_widget::get_state.  More... | |
  Public Member Functions inherited from gui2::styled_widget | |
| styled_widget (const implementation::builder_styled_widget &builder, const std::string &control_type) | |
| Constructor.  More... | |
| virtual void | set_members (const widget_item &data) | 
| Sets the members of the styled_widget.  More... | |
| bool | disable_click_dismiss () const override | 
| See widget::disable_click_dismiss.  More... | |
| virtual iteration::walker_ptr | create_walker () override | 
| See widget::create_walker.  More... | |
| point | get_config_minimum_size () const | 
| Gets the minimum size as defined in the config.  More... | |
| point | get_config_default_size () const | 
| Gets the default size as defined in the config.  More... | |
| point | get_config_maximum_size () const | 
| Gets the best size as defined in the config.  More... | |
| virtual unsigned | get_characters_per_line () const | 
| Returns the number of characters per line.  More... | |
| virtual bool | get_link_aware () const | 
| Returns whether the label should be link_aware, in in rendering and in searching for links with get_link.  More... | |
| virtual color_t | get_link_color () const | 
| Returns the color string to be used with links.  More... | |
| virtual void | layout_initialize (const bool full_initialization) override | 
| See widget::layout_initialize.  More... | |
| virtual void | request_reduce_width (const unsigned maximum_width) override | 
| See widget::request_reduce_width.  More... | |
| virtual void | request_reduce_height (const unsigned maximum_height) override | 
| See widget::request_reduce_height.  More... | |
| virtual widget * | find_at (const point &coordinate, const bool must_be_active) override | 
| See widget::find_at.  More... | |
| virtual const widget * | find_at (const point &coordinate, const bool must_be_active) const override | 
| See widget::find_at.  More... | |
| widget * | find (const std::string_view id, const bool must_be_active) override | 
| See widget::find.  More... | |
| const widget * | find (const std::string_view id, const bool must_be_active) const override | 
| See widget::find.  More... | |
| bool | get_use_tooltip_on_label_overflow () const | 
| void | set_use_tooltip_on_label_overflow (const bool use_tooltip=true) | 
| const t_string & | get_label () const | 
| virtual void | set_label (const t_string &text) | 
| virtual void | set_use_markup (bool use_markup) | 
| bool | get_use_markup () const | 
| const t_string & | tooltip () const | 
| void | set_tooltip (const t_string &tooltip) | 
| const t_string & | help_message () const | 
| void | set_help_message (const t_string &help_message) | 
| std::vector< canvas > & | get_canvases () | 
| canvas & | get_canvas (const unsigned index) | 
| virtual void | set_text_alignment (const PangoAlignment text_alignment) | 
| PangoAlignment | get_text_alignment () const | 
| void | set_text_ellipse_mode (const PangoEllipsizeMode ellipse_mode) | 
| PangoEllipsizeMode | get_text_ellipse_mode () const | 
| Get the text's ellipsize mode.  More... | |
| virtual const std::string & | get_control_type () const =0 | 
| Returns the type of this styled_widget.  More... | |
  Public Member Functions inherited from gui2::widget | |
| widget (const widget &)=delete | |
| widget & | operator= (const widget &)=delete | 
| widget () | |
| widget (const builder_widget &builder) | |
| Constructor.  More... | |
| virtual | ~widget () override | 
| void | set_id (const std::string &id) | 
| const std::string & | id () const | 
| window * | get_window () | 
| Get the parent window.  More... | |
| const window * | get_window () const | 
| The constant version of get_window.  More... | |
| grid * | get_parent_grid () | 
| Get the parent grid.  More... | |
| const grid * | get_parent_grid () const | 
| void | set_parent (widget *parent) | 
| widget * | parent () | 
| 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... | |
| point | 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_origin (const point &origin) | 
| Sets the origin of the widget.  More... | |
| virtual void | set_size (const point &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 | set_horizontal_alignment (const std::string &alignment) | 
| Sets the horizontal alignment of the widget within its parent grid.  More... | |
| virtual void | set_vertical_alignment (const std::string &alignment) | 
| Sets the horizontal alignment of the widget within its parent grid.  More... | |
| virtual void | layout_children () | 
| Allows a widget to update its children.  More... | |
| point | get_origin () const | 
| Returns the screen origin of the widget.  More... | |
| point | get_size () const | 
| Returns the size of the widget.  More... | |
| 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) | 
| std::string | get_linked_group () const | 
| rect | calculate_blitting_rectangle () const | 
| Calculates the blitting rectangle of the widget.  More... | |
| rect | calculate_clipping_rectangle () const | 
| Calculates the clipping rectangle of the widget.  More... | |
| bool | draw_background () | 
| Draws the background of a widget.  More... | |
| void | draw_children () | 
| Draws the children of a widget.  More... | |
| bool | draw_foreground () | 
| Draws the foreground of the widget.  More... | |
| rect | get_dirty_rectangle () const | 
| Gets the dirty rectangle of the widget.  More... | |
| virtual void | set_visible_rectangle (const rect &rectangle) | 
| Sets the visible rectangle for a widget.  More... | |
| void | queue_redraw () | 
| Indicates that this widget should be redrawn.  More... | |
| void | queue_redraw (const rect ®ion) | 
| Indicate that specific region of the screen should be redrawn.  More... | |
| void | set_visible (const visibility visible) | 
| visibility | get_visible () const | 
| void | set_visible (bool visible) | 
| Sets widget to visible if visible is true, else invisible.  More... | |
| redraw_action | get_drawing_action () const | 
| void | set_debug_border_mode (const debug_border debug_border_mode) | 
| void | set_debug_border_color (const color_t debug_border_color) | 
| virtual bool | has_widget (const widget &widget) const | 
| Does the widget contain the widget.  More... | |
| template<class T > | |
| T * | find_widget (const std::string_view id, const bool must_be_active, const bool must_exist) | 
| Gets a widget with the wanted id.  More... | |
| template<class T > | |
| const T * | find_widget (const std::string_view id, const bool must_be_active, const bool must_exist) const | 
| template<class T > | |
| T & | find_widget (const std::string_view id, const bool must_be_active=false) | 
| Gets a widget with the wanted id.  More... | |
| template<class T > | |
| const T & | find_widget (const std::string_view id, const bool must_be_active=false) const | 
  Public Member Functions inherited from gui2::event_executor | |
| event_executor () | |
| virtual | ~event_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 | 
| event_executor & | set_wants_mouse_right_double_click (const bool click=true) | 
| bool | wants_mouse_right_double_click () const | 
  Public Member Functions inherited from gui2::event::dispatcher | |
| dispatcher () | |
| virtual | ~dispatcher () | 
| void | connect () | 
| Connects the dispatcher to the event handler.  More... | |
| void | disconnect () | 
| Disconnects the dispatcher from the event handler.  More... | |
| bool | is_connected () const | 
| Return whether the dispatcher is currently connected.  More... | |
| bool | has_event (const ui_event event, const event_queue_type event_type) | 
| bool | fire (const ui_event event, widget &target) | 
| Fires an event which has no extra parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point &coordinate) | 
| Fires an event which takes a coordinate parameter.  More... | |
| bool | fire (const ui_event event, widget &target, const SDL_Keycode key, const SDL_Keymod modifier, const std::string &unicode) | 
| Fires an event which takes keyboard parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point &pos, const point &distance) | 
| Fires an event which takes touch-motion parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const point ¢er, float dTheta, float dDist, uint8_t numFingers) | 
| Fires an event which takes touch-gesture parameters.  More... | |
| bool | fire (const ui_event event, widget &target, void *) | 
| Fires an event which takes notification parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const message &msg) | 
| Fires an event which takes message parameters.  More... | |
| bool | fire (const ui_event event, widget &target, const SDL_Event &sdlevent) | 
| Fires an event that's a raw SDL event.  More... | |
| bool | fire (const ui_event event, widget &target, const std::string &text, int32_t start, int32_t len) | 
| Fires an event which takes text input parameters.  More... | |
| template<ui_event E, typename F > | |
| void | connect_signal (const F &func, const queue_position position=back_child) | 
| Adds a callback to the appropriate queue based on event type.  More... | |
| template<ui_event E, typename F > | |
| void | disconnect_signal (const F &func, const queue_position position=back_child) | 
| Removes a callback from the appropriate queue based on event type.  More... | |
| void | capture_mouse () | 
| Captures the mouse.  More... | |
| void | release_mouse () | 
| Releases the mouse capture.  More... | |
| void | set_mouse_behavior (const mouse_behavior mouse_behavior) | 
| mouse_behavior | get_mouse_behavior () const | 
| void | set_want_keyboard_input (const bool want_keyboard_input) | 
| bool | get_want_keyboard_input () const | 
| template<typename Func > | |
| void | register_hotkey (const hotkey::HOTKEY_COMMAND id, Func &&function) | 
| Registers a hotkey.  More... | |
| bool | execute_hotkey (const hotkey::HOTKEY_COMMAND id) | 
| Executes a hotkey.  More... | |
  Public Member Functions inherited from enable_lua_ptr< widget > | |
| enable_lua_ptr (widget *tp) | |
| enable_lua_ptr (enable_lua_ptr &&o) | |
| The weak_ptrs are pointing to o's shared_ptr's control block, so to keep existing weak_ptrs valid the existing control block is reused instead of replaced.  More... | |
| enable_lua_ptr & | operator= (enable_lua_ptr &&o) | 
Protected Member Functions | |
| bool | at_begin () const | 
| Is the positioner at the beginning of the slider?  More... | |
| bool | at_end () const | 
| Is the positioner at the and of the slider?  More... | |
| void | update_slider_position (slider_position_t &pos) | 
| void | slider_set_item_last (const unsigned item_last) | 
| unsigned | slider_get_item_count () const | 
| unsigned | slider_get_item_last () const | 
| void | set_slider_position (int item_position) | 
| Note the position isn't guaranteed to be the wanted position the step size is honored.  More... | |
| unsigned | get_slider_position () const | 
| unsigned | get_positioner_offset () const | 
| unsigned | get_positioner_length () const | 
| virtual void | update_canvas () override | 
| See styled_widget::update_canvas.  More... | |
| virtual void | child_callback_positioner_moved () | 
| Callback for subclasses to get notified about positioner movement.  More... | |
| virtual int | jump_size () const | 
  Protected Member Functions inherited from gui2::styled_widget | |
| virtual point | calculate_best_size () const override | 
| See widget::calculate_best_size.  More... | |
| resolution_definition_ptr | get_config () | 
| resolution_definition_const_ptr | get_config () const | 
| template<typename T > | |
| std::shared_ptr< const typename T::resolution > | cast_config_to () const | 
| Casts the current resolution definition config to the respective type of a derived widget.  More... | |
| unsigned int | get_text_font_size () const | 
| Resolves and returns the text_font_size.  More... | |
| int | get_text_maximum_width () const | 
| Returns the maximum width available for the text.  More... | |
| int | get_text_maximum_height () const | 
| Returns the maximum height available for the text.  More... | |
| virtual bool | impl_draw_background () override | 
| See widget::impl_draw_background.  More... | |
| virtual bool | impl_draw_foreground () override | 
| See widget::impl_draw_foreground.  More... | |
| std::string | get_label_token (const point &position, std::string_view delimiters=" \n\r\t") const | 
| Exposes font::pango_text::get_token, for the text label of this styled_widget.  More... | |
| std::string | get_label_link (const point &position) const | 
  Protected Member Functions inherited from gui2::widget | |
| void | set_layout_size (const point &size) | 
| const point & | layout_size () const | 
| void | clear_layout_size () | 
| Throws away layout_size_.  More... | |
Private Member Functions | |
| void | set_state (const state_t state) | 
| virtual unsigned | get_length () const =0 | 
| Get the length of the slider.  More... | |
| int | available_length () const | 
| int | max_offset () const | 
| virtual unsigned | offset_before () const =0 | 
| The number of pixels we can't use since they're used for borders.  More... | |
| virtual unsigned | offset_after () const =0 | 
| The number of pixels we can't use since they're used for borders.  More... | |
| virtual bool | on_positioner (const point &coordinate) const =0 | 
| Is the coordinate on the positioner?  More... | |
| virtual int | on_bar (const point &coordinate) const =0 | 
| Is the coordinate on the bar?  More... | |
| virtual int | get_length_difference (const point &original, const point ¤t) const =0 | 
| Gets the relevant difference in between the two positions.  More... | |
| void | recalculate () | 
| Updates the slider.  More... | |
| virtual int | positioner_length () const =0 | 
| Updates the positioner.  More... | |
| void | recalculate_positioner () | 
| void | move_positioner (int offset) | 
| Moves the positioner.  More... | |
| void | signal_handler_mouse_enter (const event::ui_event event, bool &handled, bool &halt) | 
| void | signal_handler_mouse_motion (const event::ui_event event, bool &handled, bool &halt, const point &coordinate) | 
| void | signal_handler_mouse_leave (const event::ui_event event, bool &handled) | 
| void | signal_handler_left_button_down (const event::ui_event event, bool &handled) | 
| void | signal_handler_left_button_up (const event::ui_event event, bool &handled) | 
Private Attributes | |
| state_t | state_ | 
| Current state of the widget.  More... | |
| int | item_last_ | 
| one less than the number items the slider 'holds'.  More... | |
| int | item_position_ | 
| The item the positioner is at, starts at 0.  More... | |
| point | drag_initial_mouse_ | 
| The position the mouse was when draggin the slider was started.  More... | |
| int | drag_initial_offset_ | 
| The offset in pixels the slider was when dragging the positioner was started.  More... | |
| int | positioner_offset_ | 
| The start offset of the positioner.  More... | |
| int | positioner_length_ | 
| The current length of the positioner.  More... | |
| bool | snap_ | 
| Whether the slider should 'snap' into its supported values or not.  More... | |
Base class for a scroll bar.
class will be subclassed for the horizontal and vertical scroll bar. It might be subclassed for a slider class.
To make this class generic we talk a lot about offset and length and use pure virtual functions. The classes implementing us can use the heights or widths, whichever is applicable.
The NOTIFY_MODIFIED event is send when the position of slider is changed.
Common signal handlers:
Definition at line 38 of file slider_base.hpp.
scroll 'step size'.
When scrolling we always scroll a 'fixed' amount, these are the parameters for these amounts.
Definition at line 49 of file slider_base.hpp.
Possible states of the widget.
Note the order of the states must be the same as defined in settings.hpp.
| Enumerator | |
|---|---|
| ENABLED | |
| DISABLED | |
| PRESSED | |
| FOCUSED | |
| COUNT | |
Definition at line 119 of file slider_base.hpp.
| gui2::slider_base::slider_base | ( | const implementation::builder_styled_widget & | builder, | 
| const std::string & | control_type | ||
| ) | 
Definition at line 43 of file slider_base.cpp.
References signal_handler_left_button_down(), signal_handler_left_button_up(), signal_handler_mouse_enter(), signal_handler_mouse_leave(), and signal_handler_mouse_motion().
      
  | 
  inlineprotected | 
Is the positioner at the beginning of the slider?
Definition at line 78 of file slider_base.hpp.
References item_position_.
      
  | 
  inlineprotected | 
Is the positioner at the and of the slider?
Note both begin and end might be true at the same time.
Definition at line 88 of file slider_base.hpp.
References item_last_, and item_position_.
      
  | 
  inlineprivate | 
Definition at line 231 of file slider_base.hpp.
References get_length(), offset_after(), and offset_before().
Referenced by max_offset(), and recalculate().
      
  | 
  inlineprotectedvirtual | 
Callback for subclasses to get notified about positioner movement.
Reimplemented in gui2::slider.
Definition at line 175 of file slider_base.hpp.
Referenced by update_slider_position().
| void gui2::slider_base::finalize_setup | ( | ) | 
Definition at line 326 of file slider_base.cpp.
References gui2::styled_widget::get_canvases(), offset_after(), and offset_before().
      
  | 
  overridevirtual | 
See styled_widget::get_active.
Implements gui2::styled_widget.
Definition at line 123 of file slider_base.cpp.
References DISABLED, and state_.
Referenced by set_active().
      
  | 
  privatepure virtual | 
Get the length of the slider.
Implemented in gui2::slider.
Referenced by available_length(), and recalculate().
      
  | 
  privatepure virtual | 
Gets the relevant difference in between the two positions.
This function is used to determine how much the positioner needs to be moved.
Implemented in gui2::slider.
Referenced by signal_handler_mouse_motion().
      
  | 
  inlineprotected | 
Definition at line 156 of file slider_base.hpp.
References positioner_length_.
Referenced by gui2::slider::on_bar(), and gui2::slider::on_positioner().
      
  | 
  inlineprotected | 
Definition at line 151 of file slider_base.hpp.
References positioner_offset_.
Referenced by gui2::slider::on_bar(), and gui2::slider::on_positioner().
      
  | 
  inlineprotected | 
Definition at line 146 of file slider_base.hpp.
References item_position_.
Referenced by gui2::slider::get_value(), and gui2::slider::get_value_label().
      
  | 
  overridevirtual | 
      
  | 
  inlineprotectedvirtual | 
Definition at line 179 of file slider_base.hpp.
Referenced by scroll().
      
  | 
  inlineprivate | 
Definition at line 236 of file slider_base.hpp.
References available_length(), and positioner_length().
Referenced by move_positioner(), and set_slider_position().
      
  | 
  private | 
Moves the positioner.
| offset | The new offset in pixels of the positioner; | 
Definition at line 177 of file slider_base.cpp.
References gui2::slider_base::slider_position_t::max_offset, max_offset(), gui2::slider_base::slider_position_t::offset, offset_before(), positioner_offset_, update_canvas(), and update_slider_position().
Referenced by signal_handler_mouse_motion().
      
  | 
  privatepure virtual | 
The number of pixels we can't use since they're used for borders.
These are the pixels after the widget (right side if horizontal, bottom side if vertical).
Implemented in gui2::slider.
Referenced by available_length(), and finalize_setup().
      
  | 
  privatepure virtual | 
The number of pixels we can't use since they're used for borders.
These are the pixels before the widget (left side if horizontal, top side if vertical).
Implemented in gui2::slider.
Referenced by available_length(), finalize_setup(), move_positioner(), set_slider_position(), and signal_handler_left_button_down().
      
  | 
  privatepure virtual | 
Is the coordinate on the bar?
| coordinate | Coordinate to test whether it's on the bar. | 
| -1 | Coordinate is on the bar before positioner. | 
| 0 | Coordinate is not on the bar. | 
| 1 | Coordinate is on the bar after the positioner. | 
Implemented in gui2::slider.
Referenced by signal_handler_left_button_down().
      
  | 
  privatepure virtual | 
Is the coordinate on the positioner?
| coordinate | Coordinate to test whether it's on the positioner. | 
Implemented in gui2::slider.
Referenced by signal_handler_left_button_down(), signal_handler_left_button_up(), and signal_handler_mouse_motion().
See widget::place.
Reimplemented from gui2::styled_widget.
Definition at line 108 of file slider_base.cpp.
References gui2::styled_widget::place(), recalculate(), and utf8::size().
      
  | 
  privatepure virtual | 
Updates the positioner.
This is a helper for recalculate().
Implemented in gui2::slider.
Referenced by max_offset(), and recalculate_positioner().
      
  | 
  private | 
Updates the slider.
Needs to be called when something changes eg number of items or available size. It can only be called once we have a size otherwise we can't calculate a thing.
Definition at line 162 of file slider_base.cpp.
References available_length(), get_length(), item_position_, recalculate_positioner(), and set_slider_position().
Referenced by place(), and slider_set_item_last().
      
  | 
  inlineprivate | 
Definition at line 305 of file slider_base.hpp.
References positioner_length(), and positioner_length_.
Referenced by recalculate().
| void gui2::slider_base::scroll | ( | const scroll_mode | scroll | ) | 
Sets the item position.
We scroll a predefined step.
| scroll | 'step size' to scroll. | 
Definition at line 66 of file slider_base.cpp.
References BEGIN, END, gui2::event::dispatcher::fire(), HALF_JUMP_BACKWARDS, HALF_JUMP_FORWARD, ITEM_BACKWARDS, ITEM_FORWARD, item_last_, item_position_, JUMP_BACKWARDS, JUMP_FORWARD, jump_size(), gui2::event::NOTIFY_MODIFIED, and set_slider_position().
Referenced by gui2::slider::handle_key_decrease(), gui2::slider::handle_key_increase(), and signal_handler_left_button_down().
      
  | 
  overridevirtual | 
See styled_widget::set_active.
Implements gui2::styled_widget.
Definition at line 116 of file slider_base.cpp.
References DISABLED, ENABLED, get_active(), and set_state().
Referenced by gui2::dialogs::mp_staging::add_side_node(), and gui2::dialogs::chat_log::controller::update_view_from_model().
      
  | 
  protected | 
Note the position isn't guaranteed to be the wanted position the step size is honored.
The value will be rounded down.
Definition at line 133 of file slider_base.cpp.
References item_last_, item_position_, max_offset(), offset_before(), positioner_offset_, rounded_division(), and update_canvas().
Referenced by recalculate(), scroll(), and gui2::slider::set_value().
      
  | 
  private | 
Definition at line 154 of file slider_base.cpp.
References gui2::widget::queue_redraw(), and state_.
Referenced by set_active(), signal_handler_left_button_down(), signal_handler_left_button_up(), signal_handler_mouse_leave(), and signal_handler_mouse_motion().
      
  | 
  private | 
Definition at line 268 of file slider_base.cpp.
References DBG_GUI_E, drag_initial_mouse_, drag_initial_offset_, gui2::get_mouse_position(), gui2::widget::get_window(), gui2::widget::get_x(), gui2::widget::get_y(), JUMP_BACKWARDS, JUMP_FORWARD, LOG_HEADER, gui2::window::mouse_capture(), offset_before(), on_bar(), on_positioner(), positioner_offset_, PRESSED, scroll(), and set_state().
Referenced by slider_base().
      
  | 
  private | 
Definition at line 299 of file slider_base.cpp.
References DBG_GUI_E, drag_initial_mouse_, drag_initial_offset_, ENABLED, FOCUSED, gui2::get_mouse_position(), gui2::widget::get_window(), gui2::widget::get_x(), gui2::widget::get_y(), LOG_HEADER, gui2::window::mouse_capture(), on_positioner(), PRESSED, set_state(), and state_.
Referenced by slider_base().
      
  | 
  private | 
Definition at line 208 of file slider_base.cpp.
References DBG_GUI_E, gui2::get_mouse_position(), LOG_HEADER, and signal_handler_mouse_motion().
Referenced by slider_base().
      
  | 
  private | 
Definition at line 257 of file slider_base.cpp.
References DBG_GUI_E, ENABLED, FOCUSED, LOG_HEADER, set_state(), and state_.
Referenced by slider_base().
      
  | 
  private | 
Definition at line 216 of file slider_base.cpp.
References DBG_GUI_E, DISABLED, drag_initial_mouse_, drag_initial_offset_, ENABLED, FOCUSED, get_length_difference(), gui2::widget::get_x(), gui2::widget::get_y(), LOG_HEADER, move_positioner(), on_positioner(), PRESSED, set_state(), and state_.
Referenced by signal_handler_mouse_enter(), and slider_base().
      
  | 
  inlineprotected | 
Definition at line 130 of file slider_base.hpp.
References item_last_.
      
  | 
  inlineprotected | 
Definition at line 135 of file slider_base.hpp.
References item_last_.
Referenced by gui2::slider::get_item_count(), and gui2::slider::get_maximum_value().
      
  | 
  inlineprotected | 
Definition at line 124 of file slider_base.hpp.
References item_last_, and recalculate().
Referenced by gui2::slider::set_step_size(), and gui2::slider::set_value_range().
      
  | 
  overrideprotectedvirtual | 
See styled_widget::update_canvas.
After a recalculation the canvasses also need to be updated.
Reimplemented from gui2::styled_widget.
Reimplemented in gui2::slider.
Definition at line 144 of file slider_base.cpp.
References gui2::styled_widget::get_canvases(), positioner_length_, positioner_offset_, and gui2::widget::queue_redraw().
Referenced by move_positioner(), set_slider_position(), and gui2::slider::update_canvas().
      
  | 
  protected | 
Definition at line 191 of file slider_base.cpp.
References child_callback_positioner_moved(), gui2::event::dispatcher::fire(), item_last_, item_position_, gui2::slider_base::slider_position_t::max_offset, gui2::event::NOTIFY_MODIFIED, gui2::slider_base::slider_position_t::offset, rounded_division(), and snap_.
Referenced by move_positioner().
      
  | 
  private | 
The position the mouse was when draggin the slider was started.
This is used during dragging the positioner.
Definition at line 206 of file slider_base.hpp.
Referenced by signal_handler_left_button_down(), signal_handler_left_button_up(), and signal_handler_mouse_motion().
      
  | 
  private | 
The offset in pixels the slider was when dragging the positioner was started.
Definition at line 211 of file slider_base.hpp.
Referenced by signal_handler_left_button_down(), signal_handler_left_button_up(), and signal_handler_mouse_motion().
      
  | 
  private | 
one less than the number items the slider 'holds'.
Definition at line 196 of file slider_base.hpp.
Referenced by at_end(), scroll(), set_slider_position(), slider_get_item_count(), slider_get_item_last(), slider_set_item_last(), and update_slider_position().
      
  | 
  private | 
The item the positioner is at, starts at 0.
Definition at line 199 of file slider_base.hpp.
Referenced by at_begin(), at_end(), get_slider_position(), recalculate(), scroll(), set_slider_position(), and update_slider_position().
      
  | 
  private | 
The current length of the positioner.
Definition at line 221 of file slider_base.hpp.
Referenced by get_positioner_length(), recalculate_positioner(), and update_canvas().
      
  | 
  private | 
The start offset of the positioner.
This takes the offset before in consideration.
Definition at line 218 of file slider_base.hpp.
Referenced by get_positioner_offset(), move_positioner(), set_slider_position(), signal_handler_left_button_down(), and update_canvas().
      
  | 
  private | 
Whether the slider should 'snap' into its supported values or not.
Definition at line 224 of file slider_base.hpp.
Referenced by update_slider_position().
      
  | 
  private | 
Current state of the widget.
The state of the widget determines what to render and how the widget reacts to certain 'events'.
Definition at line 193 of file slider_base.hpp.
Referenced by get_active(), get_state(), set_state(), signal_handler_left_button_up(), signal_handler_mouse_leave(), and signal_handler_mouse_motion().