The Battle for Wesnoth  1.13.4+dev
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
gui::slider Class Reference

#include <slider.hpp>

Inheritance diagram for gui::slider:
Inheritance graph

Public Member Functions

 slider (CVideo &video, const std::string &image="buttons/sliders/slider", bool black=false)
 
void set_min (int value)
 
void set_max (int value)
 
void set_value (int value)
 
void set_increment (int increment)
 
int value () const
 
int max_value () const
 
int min_value () const
 
bool value_change ()
 
virtual void enable (bool new_val=true)
 
void set_location (int x, int y)
 
virtual void set_location (SDL_Rect const &rect)
 
- Public Member Functions inherited from gui::widget
SDL_Rect const & location () const
 
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)
 
virtual void hide (bool value=true)
 
bool hidden () const
 
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::stringid () 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_help_string (int mousex, int mousey)
 
virtual void process_tooltip_string (int mousex, int mousey)
 
- Public Member Functions inherited from events::sdl_handler
virtual void process_event ()
 
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 ()
 

Protected Member Functions

bool requires_event_focus (const SDL_Event *event=nullptr) const
 
virtual void handle_event (const SDL_Event &event)
 
virtual void draw_contents ()
 
virtual bool allow_key_events ()
 
- Protected Member Functions inherited from gui::widget
 widget (widget const &o)
 
 widget (CVideo &video, const bool auto_join=true)
 
virtual ~widget ()
 
void bg_register (SDL_Rect const &rect)
 
void bg_restore () const
 
void bg_restore (SDL_Rect const &rect) const
 
void bg_update ()
 
void bg_cancel ()
 
CVideovideo () const
 
virtual void draw ()
 
virtual void update_location (SDL_Rect const &rect)
 
const SDL_Rect * clip_rect () const
 
virtual sdl_handler_vector member_handlers ()
 
virtual void handle_window_event (SDL_Event const &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)
 
virtual ~sdl_handler ()
 
virtual std::vector
< sdl_handler * > 
handler_members ()
 

Private Types

enum  STATE {
  UNINIT, NORMAL, ACTIVE, CLICKED,
  DRAGGED
}
 

Private Member Functions

void mouse_motion (const SDL_MouseMotionEvent &event)
 
void mouse_down (const SDL_MouseButtonEvent &event)
 
void mouse_wheel (const SDL_MouseWheelEvent &event)
 
void set_slider_position (int x)
 
SDL_Rect slider_area () const
 

Private Attributes

surface image_
 
surface pressedImage_
 
surface activeImage_
 
surface disabledImage_
 
SDL_Color line_color_
 
int min_
 
int max_
 
int value_
 
int increment_
 
bool value_change_
 
STATE state_
 

Additional Inherited Members

- Protected Attributes inherited from gui::widget
bool focus_
 

Detailed Description

Definition at line 27 of file slider.hpp.

Member Enumeration Documentation

enum gui::slider::STATE
private
Enumerator
UNINIT 
NORMAL 
ACTIVE 
CLICKED 
DRAGGED 

Definition at line 72 of file slider.hpp.

Constructor & Destructor Documentation

gui::slider::slider ( CVideo video,
const std::string image = "buttons/sliders/slider",
bool  black = false 
)

Definition at line 40 of file slider.cpp.

Member Function Documentation

virtual bool gui::slider::allow_key_events ( )
inlineprotectedvirtual

Reimplemented in gui::zoom_slider.

Definition at line 54 of file slider.hpp.

Referenced by handle_event().

void gui::slider::draw_contents ( )
protectedvirtual
void gui::slider::enable ( bool  new_val = true)
virtual

Reimplemented from gui::widget.

Definition at line 51 of file slider.cpp.

References gui::widget::enable(), gui::widget::enabled(), NORMAL, and state_.

Referenced by mp::configure::process_event_impl(), and mp::connect::side::side().

void gui::slider::handle_event ( const SDL_Event &  event)
protectedvirtual
int gui::slider::max_value ( ) const

Definition at line 117 of file slider.cpp.

References max_.

Referenced by mp::configure::get_parameters().

int gui::slider::min_value ( ) const
inline

Definition at line 39 of file slider.hpp.

References min_.

void gui::slider::mouse_down ( const SDL_MouseButtonEvent &  event)
private
void gui::slider::mouse_motion ( const SDL_MouseMotionEvent &  event)
private
void gui::slider::mouse_wheel ( const SDL_MouseWheelEvent &  event)
private
bool gui::slider::requires_event_focus ( const SDL_Event *  event = nullptr) const
protectedvirtual

Reimplemented from events::sdl_handler.

Definition at line 270 of file slider.cpp.

References gui::widget::enabled(), gui::widget::focus_, gui::widget::hidden(), and SDLKey.

void gui::slider::set_increment ( int  increment)
void gui::slider::set_location ( int  x,
int  y 
)
inline
void gui::slider::set_location ( SDL_Rect const &  rect)
virtual

Reimplemented from gui::widget.

Definition at line 60 of file slider.cpp.

References image_, and gui::widget::set_location().

void gui::slider::set_max ( int  value)
void gui::slider::set_min ( int  value)
void gui::slider::set_slider_position ( int  x)
private

Definition at line 184 of file slider.cpp.

References image_, gui::widget::location(), max_, min_, and set_value().

Referenced by mouse_down(), and mouse_motion().

void gui::slider::set_value ( int  value)
SDL_Rect gui::slider::slider_area ( ) const
private
int gui::slider::value ( ) const
bool gui::slider::value_change ( )

Definition at line 122 of file slider.cpp.

References value_change_.

Member Data Documentation

surface gui::slider::activeImage_
private

Definition at line 62 of file slider.hpp.

Referenced by draw_contents().

surface gui::slider::disabledImage_
private

Definition at line 62 of file slider.hpp.

Referenced by draw_contents().

surface gui::slider::image_
private

Definition at line 62 of file slider.hpp.

Referenced by draw_contents(), set_location(), set_slider_position(), and slider_area().

int gui::slider::increment_
private

Definition at line 68 of file slider.hpp.

Referenced by handle_event(), mouse_wheel(), set_increment(), and set_value().

SDL_Color gui::slider::line_color_
private

Definition at line 63 of file slider.hpp.

Referenced by draw_contents().

int gui::slider::max_
private

Definition at line 66 of file slider.hpp.

Referenced by max_value(), set_max(), set_slider_position(), set_value(), and slider_area().

int gui::slider::min_
private

Definition at line 65 of file slider.hpp.

Referenced by min_value(), set_min(), set_slider_position(), set_value(), and slider_area().

surface gui::slider::pressedImage_
private

Definition at line 62 of file slider.hpp.

Referenced by draw_contents().

STATE gui::slider::state_
private

Definition at line 73 of file slider.hpp.

Referenced by draw_contents(), enable(), handle_event(), mouse_down(), and mouse_motion().

int gui::slider::value_
private

Definition at line 67 of file slider.hpp.

Referenced by handle_event(), mouse_wheel(), set_max(), set_min(), set_value(), slider_area(), and value().

bool gui::slider::value_change_
private

Definition at line 70 of file slider.hpp.

Referenced by mouse_down(), mouse_motion(), mouse_wheel(), set_max(), set_min(), set_value(), and value_change().


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