summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/LoadPluginWindow.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2006-09-13 06:11:25 +0000
committerDavid Robillard <d@drobilla.net>2006-09-13 06:11:25 +0000
commite5675ebfeb93175e16762d0a078bd51d15d05f63 (patch)
tree189249ed9014e4c482cfaed0d6af28ced68570ca /src/progs/ingenuity/LoadPluginWindow.h
parent23b7568ab7a87a79c186b8ddf3d3db4f1f934b06 (diff)
downloadingen-e5675ebfeb93175e16762d0a078bd51d15d05f63.tar.gz
ingen-e5675ebfeb93175e16762d0a078bd51d15d05f63.tar.bz2
ingen-e5675ebfeb93175e16762d0a078bd51d15d05f63.zip
Heavy-duty redesign of client library and GUI (now fully signal driven with clean Model/View separation).
Smarter, centralized window creation/management (should make window unification easy (panes?)). Typed metadata system, no more fugly string conversion of floats. Supports OSC fundamental types string, int, float, blob for now (though blob isn't working over the wire yet). git-svn-id: http://svn.drobilla.net/lad/ingen@131 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/progs/ingenuity/LoadPluginWindow.h')
-rw-r--r--src/progs/ingenuity/LoadPluginWindow.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/src/progs/ingenuity/LoadPluginWindow.h b/src/progs/ingenuity/LoadPluginWindow.h
index 1654b777..0af40d05 100644
--- a/src/progs/ingenuity/LoadPluginWindow.h
+++ b/src/progs/ingenuity/LoadPluginWindow.h
@@ -24,12 +24,13 @@
#include <libglademm.h>
#include <gtkmm.h>
#include "util/CountedPtr.h"
-
+#include "PatchModel.h"
using Ingen::Client::PluginModel;
+using Ingen::Client::PatchModel;
+using Ingen::Client::MetadataMap;
namespace Ingenuity {
-class PatchController;
// Gtkmm _really_ needs to add some helper to abstract away this stupid nonsense
@@ -87,15 +88,14 @@ class LoadPluginWindow : public Gtk::Window
public:
LoadPluginWindow(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& xml);
- void set_patch(CountedPtr<PatchController> pc);
+ void set_patch(CountedPtr<PatchModel> patch);
void set_plugin_list(const std::map<string, CountedPtr<PluginModel> >& m);
- void set_next_module_location(double x, double y)
- { m_new_module_x = x; m_new_module_y = y; }
-
void add_plugin(CountedPtr<PluginModel> plugin);
bool has_shown() const { return m_has_shown; }
+ void present(CountedPtr<PatchModel> patch, MetadataMap data);
+
protected:
void on_show();
void on_hide();
@@ -113,7 +113,10 @@ private:
void plugin_selection_changed();
string generate_module_name(int offset = 0);
- CountedPtr<PatchController> m_patch_controller;
+ MetadataMap m_initial_data;
+
+ CountedPtr<PatchModel> m_patch;
+
bool m_has_shown; // plugin list only populated on show to speed patch window creation
Glib::RefPtr<Gtk::ListStore> m_plugins_liststore;