libsuit  0.1.1
SFML User Interface Toolkit
Public Types | Public Member Functions | List of all members
ui::Select Class Reference

A select widget. More...

#include <ui/Select.h>

Inheritance diagram for ui::Select:
Inheritance graph
[legend]

Public Types

typedef std::size_t index_type
 
typedef std::pair< std::string,
index_type
value_type
 

Public Member Functions

 Select ()
 Construct a select widget. More...
 
void addValue (std::string name, index_type index)
 Add a value to the selection. More...
 
const std::string & getSelectedName () const
 Get the current selected name. More...
 
index_type getSelectedIndex () const
 Get the current selected index. More...
 
void pickNextValue ()
 Pick the next value. More...
 
void pickPreviousValue ()
 Pick the previous value. More...
 
virtual void onClick (sf::Mouse::Button button, const sf::Vector2f &mouse) override
 Do something when the widget is clicked. More...
 
virtual void onPrimaryAction () override
 Do something if a primary action has been triggered. More...
 
virtual void onSecondaryAction () override
 Do something if a secondary action has been triggered. More...
 
virtual void accept (WidgetVisitor &visitor) override
 Accept the visitor. More...
 
- Public Member Functions inherited from ui::Leaf
 Leaf ()
 Construct a leaf widget. More...
 
virtual void layoutRequest () override
 Compute the size hint of the widget. More...
 
virtual void layoutAllocation () override
 Compute the size of the widget. More...
 
bool isFocusable () const
 Tell whether the widget is focusable. More...
 
void setFocusable (bool focusable=true)
 Set the focusable state of the widget. More...
 
bool isFocused () const
 Tell whether the widget is focused. More...
 
void setFocused (bool focused=true)
 Set the focused state of the widget. More...
 
void setHorizontalPadding (float padding)
 Set the horizontal padding of the widget. More...
 
void setVerticalPadding (float padding)
 Set the vertical padding of the widget. More...
 
void setPadding (float padding)
 Set the padding of the widget. More...
 
float getHorizontalPadding () const
 Get the horizontal padding. More...
 
float getVerticalPadding () const
 Get the vertical padding. More...
 
sf::FloatRect getInternalGeometry () const
 Compute the internal geometry. More...
 
- Public Member Functions inherited from ui::Widget
 Widget ()
 Construct a widget. More...
 
 Widget (const Widget &)=delete
 
Widgetoperator= (const Widget &)=delete
 
 Widget (Widget &&)=delete
 
Widgetoperator= (Widget &&)=delete
 
virtual ~Widget ()
 Destroy a widget. More...
 
void setSizeHint (float width, float height)
 Set the size hint of the widget. More...
 
sf::Vector2f getSizeHint () const
 Get the size hint of the widget. More...
 
void setHorizontalPolicy (SizePolicy policy)
 Set the horizontal size policy. More...
 
void setVerticalPolicy (SizePolicy policy)
 Set the vertical size policy. More...
 
void setSizePolicy (SizePolicy horizontal, SizePolicy vertical)
 Set the size policy. More...
 
void setHorizontalAlignment (Alignment alignment)
 Set the horizontal alignment policy. More...
 
void setVerticalAlignment (Alignment alignment)
 Set the vertical alignment policy. More...
 
const GeometrygetHorizontalGeometry () const
 Get the horizontal geometry. More...
 
GeometrygetHorizontalGeometry ()
 Get the horizontal geometry. More...
 
const GeometrygetVerticalGeometry () const
 Get the vertical geometry. More...
 
GeometrygetVerticalGeometry ()
 Get the vertical geometry. More...
 
void setGeometry (const sf::FloatRect &geometry)
 Set the vertical geometry thanks to a rectangle. More...
 
const sf::FloatRect getGeometry () const
 Get the geometry of the widget. More...
 
sf::Vector2f getCenter () const
 Get the center of the widget. More...
 

Detailed Description

A select widget.

A select widget is a widget that offer a choice between several values.

Member Typedef Documentation

typedef std::size_t ui::Select::index_type
typedef std::pair<std::string, index_type> ui::Select::value_type

Constructor & Destructor Documentation

ui::Select::Select ( )

Construct a select widget.

Member Function Documentation

virtual void ui::Select::accept ( WidgetVisitor visitor)
overridevirtual

Accept the visitor.

Parameters
visitorthe visitor.

Implements ui::Widget.

void ui::Select::addValue ( std::string  name,
index_type  index 
)

Add a value to the selection.

A value consist in a name and a user-defined index.

const double contants[] = { M_PI, M_E };
ui::Select select; // associated with constants
select.addValue("pi", 0); // 0 is the index of M_PI
select.addValue("e", 1); // 1 is the index of M_E
Parameters
namethe name of the value
indexa user-defined index for the value
index_type ui::Select::getSelectedIndex ( ) const

Get the current selected index.

Returns
the current selected index.
const std::string& ui::Select::getSelectedName ( ) const

Get the current selected name.

Returns
the current selected name.
virtual void ui::Select::onClick ( sf::Mouse::Button  button,
const sf::Vector2f &  mouse 
)
overridevirtual

Do something when the widget is clicked.

Reimplemented from ui::Widget.

virtual void ui::Select::onPrimaryAction ( )
overridevirtual

Do something if a primary action has been triggered.

Reimplemented from ui::Widget.

virtual void ui::Select::onSecondaryAction ( )
overridevirtual

Do something if a secondary action has been triggered.

Reimplemented from ui::Widget.

void ui::Select::pickNextValue ( )

Pick the next value.

void ui::Select::pickPreviousValue ( )

Pick the previous value.