Fawkes API
Fawkes Development Version
|
Blackboard interface chooser dialog that supports multiple choices. More...
#include <>>
Classes | |
class | Record |
Blackboard interface record. More... | |
Public Types | |
typedef std::pair< Glib::ustring, Glib::ustring > | TypeIdPair |
Pair of type and IDs of interfaces. More... | |
typedef std::list< TypeIdPair > | TypeIdPairList |
List of type and ID of an interface. More... | |
Public Member Functions | |
virtual | ~MultiInterfaceChooserDialog () |
Destructor. More... | |
TypeIdPairList | get_selected_interfaces () const |
Get selected interface types and their respective IDs. More... | |
TypeIdPairList | get_newly_selected_interfaces () const |
Get selected interface types and their respective IDs. More... | |
![]() | |
virtual | ~InterfaceChooserDialog () |
Destructor. More... | |
void | get_selected_interface (Glib::ustring &type, Glib::ustring &id) |
Get selected interface type and ID. More... | |
fawkes::Interface * | run_and_open_for_reading () |
Run dialog and try to connect. More... | |
Static Public Member Functions | |
static MultiInterfaceChooserDialog * | create (Gtk::Window &parent, BlackBoard *blackboard, const char *type_pattern, const char *id_pattern, const TypeIdPairList &loaded_interfaces, const Glib::ustring &title=DEFAULT_TITLE) |
Factory method. More... | |
![]() | |
static InterfaceChooserDialog * | create (Gtk::Window &parent, BlackBoard *blackboard, const char *type_pattern, const char *id_pattern, const Glib::ustring &title=DEFAULT_TITLE) |
Factory method. More... | |
Protected Member Functions | |
MultiInterfaceChooserDialog (Gtk::Window &parent, const TypeIdPairList &loaded_interfaces, const Glib::ustring &title) | |
Constructor for subclasses. More... | |
virtual const Record & | record () const |
Returns the Record of this chooser dialog. More... | |
virtual int | init_columns () |
Initializes the columns GUI-wise. More... | |
virtual void | init_row (Gtk::TreeModel::Row &row, const InterfaceInfo &ii) |
Initializes a row with the given interface. More... | |
![]() | |
InterfaceChooserDialog (Gtk::Window &parent, const Glib::ustring &title) | |
Constructor for subclasses. More... | |
void | init (BlackBoard *blackboard, const char *type_pattern, const char *id_pattern) |
Initialization method. More... | |
Additional Inherited Members | |
![]() | |
static const char *const | DEFAULT_TITLE = "Select Interfaces" |
Default title of interface chooser dialogs. More... | |
![]() | |
Gtk::TreeView | __treeview |
Tree widget for interfaces. More... | |
Glib::RefPtr< Gtk::ListStore > | __model |
Data model of the tree. More... | |
Blackboard interface chooser dialog that supports multiple choices.
Allows to choose multiple blackboard interfaces from a list of interfaces matching given type and ID patterns.
Definition at line 34 of file multi_interface_chooser_dialog.h.
typedef std::pair<Glib::ustring, Glib::ustring> fawkes::MultiInterfaceChooserDialog::TypeIdPair |
Pair of type and IDs of interfaces.
Definition at line 38 of file multi_interface_chooser_dialog.h.
typedef std::list<TypeIdPair> fawkes::MultiInterfaceChooserDialog::TypeIdPairList |
List of type and ID of an interface.
Definition at line 40 of file multi_interface_chooser_dialog.h.
|
virtual |
Destructor.
Definition at line 116 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::__model, fawkes::MultiInterfaceChooserDialog::Record::load, and record().
|
protected |
Constructor for subclasses.
After calling this constructor, the init() method needs to be called.
parent | parent window |
loaded_interfaces | list of interfaces which are already loaded |
title | title of the dialog |
Definition at line 99 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::__treeview.
Referenced by create().
|
static |
Factory method.
Why a factory method instead of a ctor? The factory method calls init(), and init() calls other virtual methods. If this was a ctor, this ctor would not be allowed to be called by subclasses, because then the virtual methods in init() don't dispatch the right way during construction (see Effective C++ #9).
parent | parent window |
blackboard | blackboard instance to query interfaces from |
type_pattern | pattern with shell like globs (* for any number of characters, ? for exactly one character) to match the interface type. |
id_pattern | pattern with shell like globs (* for any number of characters, ? for exactly one character) to match the interface ID. |
loaded_interfaces | list of interfaces which are already loaded |
title | title of the dialog |
Definition at line 76 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::init(), and MultiInterfaceChooserDialog().
Referenced by LaserGuiGtkWindow::on_select_clicked().
MultiInterfaceChooserDialog::TypeIdPairList fawkes::MultiInterfaceChooserDialog::get_newly_selected_interfaces | ( | ) | const |
Get selected interface types and their respective IDs.
Definition at line 220 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::__model, fawkes::MultiInterfaceChooserDialog::Record::load, and record().
MultiInterfaceChooserDialog::TypeIdPairList fawkes::MultiInterfaceChooserDialog::get_selected_interfaces | ( | ) | const |
Get selected interface types and their respective IDs.
Definition at line 195 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::__model, fawkes::MultiInterfaceChooserDialog::Record::load, and record().
|
protectedvirtual |
Initializes the columns GUI-wise.
Called in the ctor. Subclasses of InterfaceChooserDialog might want to override this method, but should probably still call their super-class's implementation (i.e., this one).
Reimplemented from fawkes::InterfaceChooserDialog.
Definition at line 155 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceChooserDialog::__treeview, fawkes::InterfaceChooserDialog::init_columns(), and record().
|
protectedvirtual |
Initializes a row with the given interface.
Called in the ctor. Subclasses of InterfaceChooserDialog might want to override this method, but should probably still call their super-class's implementation (i.e., this one).
row | The row whose content is to be set. |
ii | The interface info that should populate the row. |
Reimplemented from fawkes::InterfaceChooserDialog.
Definition at line 182 of file multi_interface_chooser_dialog.cpp.
References fawkes::InterfaceInfo::id(), fawkes::InterfaceChooserDialog::init_row(), fawkes::MultiInterfaceChooserDialog::Record::load, record(), and fawkes::InterfaceInfo::type().
|
protectedvirtual |
Returns the Record of this chooser dialog.
Subclasses of InterfaceChooserDialog might want to override this method.
Reimplemented from fawkes::InterfaceChooserDialog.
Definition at line 137 of file multi_interface_chooser_dialog.cpp.
Referenced by get_newly_selected_interfaces(), get_selected_interfaces(), init_columns(), init_row(), and ~MultiInterfaceChooserDialog().