#include <papyrus/selector.h>
Inheritance diagram for Papyrus::Selector:
Public Types | |
typedef PapyrusSmartPointer< Selector > | pointer |
typedef std::list< Drawable::pointer > | Selection |
typedefs a container to be used to define the selection | |
Public Member Functions | |
Selector (Group::pointer select_from_group=Group::pointer(), SelectionMode mode=SELECT_PRESS, int selection_depth=1) | |
Selector (Group::pointer select_from_group, Group::pointer selection_group, SelectionMode mode=SELECT_PRESS, int selection_depth=1, bool add_drawable_only=true) | |
Group::pointer | select_from_group () |
void | set_select_from_group (Group::pointer select_from_group) |
Group::pointer | selection_group () |
virtual void | set_selection_group (Group::pointer selection_group, bool add_drawable_only=true) |
void | set_select_mode (unsigned mode) |
void | enable_select_mode (unsigned mode) |
void | disable_select_mode (unsigned mode) |
unsigned | select_mode () |
int | selection_depth () |
void | set_selection_depth (int selection_depth) |
void | clear () |
const Selection & | selection () |
void | add_to_selection (Drawable::pointer drawable) |
void | remove_from_selection (Drawable::pointer drawable) |
bool | in_selection (Drawable::pointer drawable) |
const Region & | extents () |
sigc::signal< void, Drawable::pointer > | signal_selected () |
sigc::signal< void, Drawable::pointer > | signal_deselected () |
sigc::signal< void > | signal_cleared () |
Static Public Member Functions | |
static Selector::pointer | create (Group::pointer select_from_group=Group::pointer(), SelectionMode mode=SELECT_PRESS, int selection_depth=1) |
static Selector::pointer | create (Group::pointer select_from_group, Group::pointer selection_group, SelectionMode mode=SELECT_PRESS, int selection_depth=1, bool add_drawable_only=true) |
Protected Member Functions | |
virtual bool | on_button_press (const Event::ButtonPress &event) |
virtual bool | on_button_release (const Event::ButtonRelease &event) |
virtual bool | on_motion (const Event::Motion &event) |
Protected Attributes | |
unsigned | m_select_mode |
Selection | m_selection |
int | m_selection_depth |
Group::pointer | m_select_from_group |
Group::pointer | m_selection_group |
bool | m_add_drawable_only |
Drawable::pointer | m_picked |
double | m_last_position [2] |
Region | m_extents |
sigc::signal< void, Drawable::pointer > | m_signal_selected |
sigc::signal< void, Drawable::pointer > | m_signal_deselected |
sigc::signal< void > | m_signal_cleared |
typedef std::list<Drawable::pointer> Papyrus::Selector::Selection |
typedefs a container to be used to define the selection
A list was chosen to allow rapid deletion in the middle of a list, in particular when an item is selected twice and removed from what is likely to be the middle of the list and placed at the end.