summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/PatchWindow.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/PatchWindow.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/PatchWindow.h')
-rw-r--r--src/progs/ingenuity/PatchWindow.h24
1 files changed, 9 insertions, 15 deletions
diff --git a/src/progs/ingenuity/PatchWindow.h b/src/progs/ingenuity/PatchWindow.h
index d538db78..2e0a388b 100644
--- a/src/progs/ingenuity/PatchWindow.h
+++ b/src/progs/ingenuity/PatchWindow.h
@@ -24,13 +24,15 @@
#include <libglademm.h>
#include "util/Path.h"
#include "util/CountedPtr.h"
-#include "PatchController.h"
+#include "PatchModel.h"
+#include "PatchView.h"
+using Ingen::Client::PatchModel;
+
using std::string; using std::list;
namespace Ingen { namespace Client {
class PatchModel;
- class NodeModel;
class PortModel;
class ControlModel;
class MetadataModel;
@@ -40,7 +42,6 @@ using namespace Ingen::Client;
namespace Ingenuity {
-class PatchController;
class OmFlowCanvas;
class LoadPluginWindow;
class LoadPatchWindow;
@@ -64,13 +65,10 @@ public:
PatchWindow(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade::Xml>& glade_xml);
~PatchWindow();
- void set_patch_from_path(const Path& path);
- void set_patch(CountedPtr<PatchController> pc);
+ void set_patch_from_path(const Path& path, CountedPtr<PatchView> view);
+ void set_patch(CountedPtr<PatchModel> pc, CountedPtr<PatchView> view);
- CountedPtr<PatchController> patch_controller() const { return m_patch; }
- LoadPluginWindow* load_plugin_window() const { return m_load_plugin_window; }
- LoadSubpatchWindow* load_subpatch_window() const { return m_load_subpatch_window; }
- NewSubpatchWindow* new_subpatch_window() const { return m_new_subpatch_window; }
+ CountedPtr<PatchModel> patch() const { return m_patch; }
Gtk::MenuItem* menu_view_control_window() { return m_menu_view_control_window; }
@@ -93,12 +91,8 @@ private:
void event_show_controls();
void event_show_engine();
- CountedPtr<PatchController> m_patch;
-
- LoadPluginWindow* m_load_plugin_window;
- LoadPatchWindow* m_load_patch_window;
- NewSubpatchWindow* m_new_subpatch_window;
- LoadSubpatchWindow* m_load_subpatch_window;
+ CountedPtr<PatchModel> m_patch;
+ CountedPtr<PatchView> m_view;
bool m_enable_signal;
bool m_position_stored;