summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorColin Guthrie <cguthrie@mandriva.org>2009-03-16 12:45:53 +0000
committerColin Guthrie <cguthrie@mandriva.org>2009-03-16 12:45:53 +0000
commited4f413ec5a2bcfacc17d8430eabea488e81397d (patch)
tree5a90dac151f0b87fc6796c0999b13909f11b6e4b /src
parent38e7792eec00e139c2166d452ba1b96da41f4a2c (diff)
Split sourcewidget into it's own files.
Diffstat (limited to 'src')
-rw-r--r--src/Makefile.am1
-rw-r--r--src/pavucontrol.cc77
-rw-r--r--src/sourcewidget.cc81
-rw-r--r--src/sourcewidget.h46
4 files changed, 129 insertions, 76 deletions
diff --git a/src/Makefile.am b/src/Makefile.am
index 1b7c02e..8de1b28 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -30,6 +30,7 @@ pavucontrol_SOURCES= \
streamwidget.h streamwidget.cc \
cardwidget.h cardwidget.cc \
sinkwidget.h sinkwidget.cc \
+ sourcewidget.h sourcewidget.cc \
pavucontrol.h pavucontrol.cc \
i18n.h
diff --git a/src/pavucontrol.cc b/src/pavucontrol.cc
index a8bc2ad..96edf91 100644
--- a/src/pavucontrol.cc
+++ b/src/pavucontrol.cc
@@ -36,30 +36,13 @@
#include "streamwidget.h"
#include "cardwidget.h"
#include "sinkwidget.h"
+#include "sourcewidget.h"
static pa_context *context = NULL;
static int n_outstanding = 0;
class MainWindow;
-class SourceWidget : public StreamWidget {
-public:
- SourceWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x);
- static SourceWidget* create();
-
- SourceType type;
- Glib::ustring name;
- Glib::ustring description;
- uint32_t index, card_index;
- bool can_decibel;
-
- Gtk::CheckMenuItem defaultMenuItem;
-
- virtual void onMuteToggleButton();
- virtual void executeVolumeUpdate();
- virtual void onDefaultToggle();
-};
-
class SinkInputWidget : public StreamWidget {
public:
SinkInputWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x);
@@ -225,64 +208,6 @@ void show_error(const char *txt) {
}
-SourceWidget::SourceWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x) :
- StreamWidget(cobject, x),
- defaultMenuItem(_("_Default"), true){
-
- add_events(Gdk::BUTTON_PRESS_MASK);
-
- defaultMenuItem.set_active(false);
- defaultMenuItem.signal_toggled().connect(sigc::mem_fun(*this, &SourceWidget::onDefaultToggle));
- menu.append(defaultMenuItem);
- menu.show_all();
-}
-
-SourceWidget* SourceWidget::create() {
- SourceWidget* w;
- Glib::RefPtr<Gnome::Glade::Xml> x = Gnome::Glade::Xml::create(GLADE_FILE, "streamWidget");
- x->get_widget_derived("streamWidget", w);
- return w;
-}
-
-void SourceWidget::executeVolumeUpdate() {
- pa_operation* o;
-
- if (!(o = pa_context_set_source_volume_by_index(context, index, &volume, NULL, NULL))) {
- show_error(_("pa_context_set_source_volume_by_index() failed"));
- return;
- }
-
- pa_operation_unref(o);
-}
-
-void SourceWidget::onMuteToggleButton() {
- StreamWidget::onMuteToggleButton();
-
- if (updating)
- return;
-
- pa_operation* o;
- if (!(o = pa_context_set_source_mute_by_index(context, index, muteToggleButton->get_active(), NULL, NULL))) {
- show_error(_("pa_context_set_source_mute_by_index() failed"));
- return;
- }
-
- pa_operation_unref(o);
-}
-
-void SourceWidget::onDefaultToggle() {
- pa_operation* o;
-
- if (updating)
- return;
-
- if (!(o = pa_context_set_default_source(context, name.c_str(), NULL, NULL))) {
- show_error(_("pa_context_set_default_source() failed"));
- return;
- }
- pa_operation_unref(o);
-}
-
SinkInputWidget::SinkInputWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x) :
StreamWidget(cobject, x),
mainWindow(NULL),
diff --git a/src/sourcewidget.cc b/src/sourcewidget.cc
new file mode 100644
index 0000000..dd401b4
--- /dev/null
+++ b/src/sourcewidget.cc
@@ -0,0 +1,81 @@
+/***
+ 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/>.
+***/
+
+#include "sourcewidget.h"
+
+#include "i18n.h"
+
+SourceWidget::SourceWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x) :
+ StreamWidget(cobject, x),
+ defaultMenuItem(_("_Default"), true){
+
+ add_events(Gdk::BUTTON_PRESS_MASK);
+
+ defaultMenuItem.set_active(false);
+ defaultMenuItem.signal_toggled().connect(sigc::mem_fun(*this, &SourceWidget::onDefaultToggle));
+ menu.append(defaultMenuItem);
+ menu.show_all();
+}
+
+SourceWidget* SourceWidget::create() {
+ SourceWidget* w;
+ Glib::RefPtr<Gnome::Glade::Xml> x = Gnome::Glade::Xml::create(GLADE_FILE, "streamWidget");
+ x->get_widget_derived("streamWidget", w);
+ return w;
+}
+
+void SourceWidget::executeVolumeUpdate() {
+ pa_operation* o;
+
+ if (!(o = pa_context_set_source_volume_by_index(get_context(), index, &volume, NULL, NULL))) {
+ show_error(_("pa_context_set_source_volume_by_index() failed"));
+ return;
+ }
+
+ pa_operation_unref(o);
+}
+
+void SourceWidget::onMuteToggleButton() {
+ StreamWidget::onMuteToggleButton();
+
+ if (updating)
+ return;
+
+ pa_operation* o;
+ if (!(o = pa_context_set_source_mute_by_index(get_context(), index, muteToggleButton->get_active(), NULL, NULL))) {
+ show_error(_("pa_context_set_source_mute_by_index() failed"));
+ return;
+ }
+
+ pa_operation_unref(o);
+}
+
+void SourceWidget::onDefaultToggle() {
+ pa_operation* o;
+
+ if (updating)
+ return;
+
+ if (!(o = pa_context_set_default_source(get_context(), name.c_str(), NULL, NULL))) {
+ show_error(_("pa_context_set_default_source() failed"));
+ return;
+ }
+ pa_operation_unref(o);
+}
diff --git a/src/sourcewidget.h b/src/sourcewidget.h
new file mode 100644
index 0000000..2fd137e
--- /dev/null
+++ b/src/sourcewidget.h
@@ -0,0 +1,46 @@
+/***
+ 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 sourcewidget_h
+#define sourcewidget_h
+
+#include "pavucontrol.h"
+
+#include "streamwidget.h"
+
+class SourceWidget : public StreamWidget {
+public:
+ SourceWidget(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& x);
+ static SourceWidget* create();
+
+ SourceType type;
+ Glib::ustring name;
+ Glib::ustring description;
+ uint32_t index, card_index;
+ bool can_decibel;
+
+ Gtk::CheckMenuItem defaultMenuItem;
+
+ virtual void onMuteToggleButton();
+ virtual void executeVolumeUpdate();
+ virtual void onDefaultToggle();
+};
+
+#endif