diff options
Diffstat (limited to 'MainWindow.hh')
-rw-r--r-- | MainWindow.hh | 50 |
1 files changed, 47 insertions, 3 deletions
diff --git a/MainWindow.hh b/MainWindow.hh index d13dca3..2d5f173 100644 --- a/MainWindow.hh +++ b/MainWindow.hh @@ -23,10 +23,13 @@ public: *hostNameLabel; Gtk::Button *deviceOpenButton, + *clientOpenButton, *moduleOpenButton, *connectButton; - Gtk::TreeView *deviceTreeView, *moduleTreeView; + Gtk::TreeView *deviceTreeView, + *clientTreeView, + *moduleTreeView; protected: @@ -42,32 +45,73 @@ protected: Gtk::TreeModelColumn<Glib::ustring> name; Gtk::TreeModelColumn<Glib::ustring> description; - Gtk::TreeModelColumn<int> index; + Gtk::TreeModelColumn<uint32_t> index; Gtk::TreeModelColumn<int> type; }; DeviceTreeModelColumns deviceTreeModelColumns; Glib::RefPtr<Gtk::TreeStore> deviceTreeStore; + Gtk::TreeRowReference sinkRef, sourceRef; - Gtk::TreePath sinkPath, sourcePath; + 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 |