diff options
author | Colin Guthrie <cguthrie@mandriva.org> | 2009-03-15 13:32:28 +0000 |
---|---|---|
committer | Colin Guthrie <cguthrie@mandriva.org> | 2009-03-15 13:32:28 +0000 |
commit | d3a66f65b57b74dff41815620f8e45fd926ec50f (patch) | |
tree | a95803cd671920ec1d490aa1c8ba3641c954a9a0 /src/cardwidget.h | |
parent | a8357b3dc21ee666bd81aa2e1f3e27170354d226 (diff) |
Split cardwidget out into it's own files.
Also define a get_context() method to get the context from outside of the main file.
Diffstat (limited to 'src/cardwidget.h')
-rw-r--r-- | src/cardwidget.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/cardwidget.h b/src/cardwidget.h new file mode 100644 index 0000000..bca22c1 --- /dev/null +++ b/src/cardwidget.h @@ -0,0 +1,68 @@ +/*** + This file is part of pavucontrol. + + Copyright 2006-2008 Lennart Poettering + Copyright 2009 Colin Guthrie + + pavucontrol is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 2 of the License, or + (at your option) any later version. + + pavucontrol is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + + You should have received a copy of the GNU General Public License + along with pavucontrol. If not, see <http://www.gnu.org/licenses/>. +***/ + +#ifndef cardwidget_h +#define cardwidget_h + +#include "pavucontrol.h" + +class CardWidget : public Gtk::VBox { +public: + CardWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x); + static CardWidget* create(); + + Gtk::Label *nameLabel; + Gtk::ToggleButton *streamToggleButton; + Gtk::Menu menu; + Gtk::Image *iconImage; + Glib::ustring name; + uint32_t index; + bool updating; + + std::map<Glib::ustring,Glib::ustring> profiles; + Glib::ustring activeProfile; + bool hasSinks; + bool hasSources; + + void prepareMenu(); + +protected: + virtual void onProfileChange(); + + //Tree model columns: + class ModelColumns : public Gtk::TreeModel::ColumnRecord + { + public: + + ModelColumns() + { add(name); add(desc); } + + Gtk::TreeModelColumn<Glib::ustring> name; + Gtk::TreeModelColumn<Glib::ustring> desc; + }; + + ModelColumns profileModel; + + //Child widgets: + Gtk::ComboBox *profileList; + Glib::RefPtr<Gtk::ListStore> treeModel; +}; + +#endif |