summaryrefslogtreecommitdiffstats
path: root/src/MainWindow.hh
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2004-08-15 11:27:34 +0000
committerLennart Poettering <lennart@poettering.net>2004-08-15 11:27:34 +0000
commit4b682a9eba6590d8fe090f68dda6afe59ae64f85 (patch)
tree75345c90f9174dd45c9b5196645a5054c889b698 /src/MainWindow.hh
parentf8b436993e3ea7059984538cd65d50bd50671fe6 (diff)
Move everything to src/ directory
git-svn-id: file:///home/lennart/svn/public/paman/trunk@8 cdefa82f-4ce1-0310-97f5-ab6066f37c3c
Diffstat (limited to 'src/MainWindow.hh')
-rw-r--r--src/MainWindow.hh117
1 files changed, 117 insertions, 0 deletions
diff --git a/src/MainWindow.hh b/src/MainWindow.hh
new file mode 100644
index 0000000..2d5f173
--- /dev/null
+++ b/src/MainWindow.hh
@@ -0,0 +1,117 @@
+#ifndef foomainwindowhhfoo
+#define foomainwindowhhfoo
+
+#include <gtkmm.h>
+#include <libglademm.h>
+#include <polyp/polyplib.h>
+
+class MainWinow;
+
+#include "ServerInfo.hh"
+
+class MainWindow : public Gtk::Window {
+public:
+ MainWindow(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& refGlade);
+ virtual ~MainWindow();
+ static MainWindow* create();
+
+ Gtk::Label *statusLabel,
+ *serverNameLabel,
+ *serverVersionLabel,
+ *defaultSampleTypeLabel,
+ *userNameLabel,
+ *hostNameLabel;
+
+ Gtk::Button *deviceOpenButton,
+ *clientOpenButton,
+ *moduleOpenButton,
+ *connectButton;
+
+ Gtk::TreeView *deviceTreeView,
+ *clientTreeView,
+ *moduleTreeView;
+
+protected:
+
+ class DeviceTreeModelColumns : public Gtk::TreeModel::ColumnRecord {
+ public:
+
+ DeviceTreeModelColumns() {
+ add(name);
+ add(description);
+ add(index);
+ add(type);
+ }
+
+ Gtk::TreeModelColumn<Glib::ustring> name;
+ Gtk::TreeModelColumn<Glib::ustring> description;
+ Gtk::TreeModelColumn<uint32_t> index;
+ Gtk::TreeModelColumn<int> type;
+ };
+
+ DeviceTreeModelColumns deviceTreeModelColumns;
+ Glib::RefPtr<Gtk::TreeStore> deviceTreeStore;
+ Gtk::TreeRowReference sinkRef, sourceRef;
+
+ class ClientTreeModelColumns : public Gtk::TreeModel::ColumnRecord {
+ public:
+ ClientTreeModelColumns() {
+ add(name);
+ add(index);
+ }
+
+ Gtk::TreeModelColumn<Glib::ustring> name;
+ Gtk::TreeModelColumn<uint32_t> index;
+ };
+
+ ClientTreeModelColumns clientTreeModelColumns;
+ Glib::RefPtr<Gtk::TreeStore> clientTreeStore;
+
+ class ModuleTreeModelColumns : public Gtk::TreeModel::ColumnRecord {
+ public:
+ ModuleTreeModelColumns() {
+ add(name);
+ add(argument);
+ add(index);
+ }
+
+ Gtk::TreeModelColumn<Glib::ustring> name;
+ Gtk::TreeModelColumn<Glib::ustring> argument;
+ Gtk::TreeModelColumn<uint32_t> index;
+ };
+
+ ModuleTreeModelColumns moduleTreeModelColumns;
+ Glib::RefPtr<Gtk::TreeStore> moduleTreeStore;
+
+public:
+ virtual void updateInfo(const struct pa_server_info &i);
+ virtual void updateInfo(SinkInfo &i);
+ virtual void updateInfo(SourceInfo &i);
+ virtual void updateInfo(ClientInfo &i);
+ virtual void updateInfo(ModuleInfo &i);
+
+ virtual void removeInfo(SinkInfo &i);
+ virtual void removeInfo(SourceInfo &i);
+ virtual void removeInfo(ClientInfo &i);
+ virtual void removeInfo(ModuleInfo &i);
+
+ virtual void onDeviceTreeViewCursorChanged();
+ virtual void onDeviceTreeViewRowActivated(const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn* /* column */);
+ virtual void onClientTreeViewRowActivated(const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn* /* column */);
+ virtual void onModuleTreeViewRowActivated(const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn* /* column */);
+
+ virtual void showSuccess(const char *t);
+ virtual void showFailure(const char *t);
+ virtual void clearAllData();
+
+ virtual void onDeviceOpenButton();
+ virtual void onClientOpenButton();
+ virtual void onModuleOpenButton();
+ virtual void onConnectButton();
+
+ virtual void showDeviceWindow(const Gtk::TreePath &p);
+ virtual void showClientWindow(const Gtk::TreePath &p);
+ virtual void showModuleWindow(const Gtk::TreePath &p);
+};
+
+#endif