summaryrefslogtreecommitdiffstats
path: root/src/gui/Controls.hpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2011-10-22 03:08:06 +0000
committerDavid Robillard <d@drobilla.net>2011-10-22 03:08:06 +0000
commitac1d6d135bda8d739fdb8bf564f89c38b664c097 (patch)
treed750da79dd88b64ab2a88cca1651c2a5a240bd72 /src/gui/Controls.hpp
parent143968e38cc2f058dd7c500e984904a39864d652 (diff)
downloadingen-ac1d6d135bda8d739fdb8bf564f89c38b664c097.tar.gz
ingen-ac1d6d135bda8d739fdb8bf564f89c38b664c097.tar.bz2
ingen-ac1d6d135bda8d739fdb8bf564f89c38b664c097.zip
De-singleton-ify GUI.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3584 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/Controls.hpp')
-rw-r--r--src/gui/Controls.hpp24
1 files changed, 16 insertions, 8 deletions
diff --git a/src/gui/Controls.hpp b/src/gui/Controls.hpp
index 7ea5e6c3..9f33a53a 100644
--- a/src/gui/Controls.hpp
+++ b/src/gui/Controls.hpp
@@ -44,7 +44,9 @@ public:
const Glib::RefPtr<Gtk::Builder>& xml);
virtual ~Control();
- virtual void init(ControlPanel* panel, SharedPtr<const Client::PortModel> pm);
+ virtual void init(App& app,
+ ControlPanel* panel,
+ SharedPtr<const Client::PortModel> pm);
void enable();
void disable();
@@ -58,14 +60,14 @@ protected:
void set_label(const std::string& name);
void menu_properties();
+ App* _app;
ControlPanel* _control_panel;
SharedPtr<const Client::PortModel> _port_model;
sigc::connection _control_connection;
+ Gtk::Menu* _menu;
+ Gtk::MenuItem* _menu_properties;
+ Gtk::Label* _name_label;
bool _enable_signal;
-
- Gtk::Menu* _menu;
- Gtk::MenuItem* _menu_properties;
- Gtk::Label* _name_label;
};
/** A slider for a continuous control.
@@ -78,7 +80,9 @@ public:
SliderControl(BaseObjectType* cobject,
const Glib::RefPtr<Gtk::Builder>& xml);
- void init(ControlPanel* panel, SharedPtr<const Client::PortModel> pm);
+ void init(App& app,
+ ControlPanel* panel,
+ SharedPtr<const Client::PortModel> pm);
void set_min(float val);
void set_max(float val);
@@ -112,7 +116,9 @@ public:
ToggleControl(BaseObjectType* cobject,
const Glib::RefPtr<Gtk::Builder>& xml);
- void init(ControlPanel* panel, SharedPtr<const Client::PortModel> pm);
+ void init(App& app,
+ ControlPanel* panel,
+ SharedPtr<const Client::PortModel> pm);
private:
void set_value(const Raul::Atom& value);
@@ -131,7 +137,9 @@ public:
StringControl(BaseObjectType* cobject,
const Glib::RefPtr<Gtk::Builder>& xml);
- void init(ControlPanel* panel, SharedPtr<const Client::PortModel> pm);
+ void init(App& app,
+ ControlPanel* panel,
+ SharedPtr<const Client::PortModel> pm);
private:
void set_value(const Raul::Atom& value);