summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/ControlGroups.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-04-23 02:41:20 +0000
committerDavid Robillard <d@drobilla.net>2007-04-23 02:41:20 +0000
commit67fff73eaa9c78cfbae53ac1948f38fe3812c77f (patch)
tree6125a493f3ad36e6decb14f98da17ffdb8103c4b /src/progs/ingenuity/ControlGroups.h
parentbd315305771e98eba1d81672a47ce4fe7bcc95cc (diff)
downloadingen-67fff73eaa9c78cfbae53ac1948f38fe3812c77f.tar.gz
ingen-67fff73eaa9c78cfbae53ac1948f38fe3812c77f.tar.bz2
ingen-67fff73eaa9c78cfbae53ac1948f38fe3812c77f.zip
Moved range controls from node controls window to popup dialog to declutter.
git-svn-id: http://svn.drobilla.net/lad/ingen@472 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/progs/ingenuity/ControlGroups.h')
-rw-r--r--src/progs/ingenuity/ControlGroups.h17
1 files changed, 11 insertions, 6 deletions
diff --git a/src/progs/ingenuity/ControlGroups.h b/src/progs/ingenuity/ControlGroups.h
index 1cbf34d7..a05cceee 100644
--- a/src/progs/ingenuity/ControlGroups.h
+++ b/src/progs/ingenuity/ControlGroups.h
@@ -31,6 +31,7 @@ using namespace Ingen::Client;
namespace Ingenuity {
class ControlPanel;
+class PortPropertiesWindow;
/** A group of controls (for a single Port) in a NodeControlWindow.
@@ -52,9 +53,10 @@ public:
}
protected:
+ friend class PortPropertiesWindow;
virtual void set_value(float value) = 0;
- virtual void metadata_update(const string& key, const Atom& value) = 0;
+ virtual void set_range(float min, float max) {}
ControlPanel* _control_panel;
SharedPtr<PortModel> _port_model;
@@ -82,15 +84,17 @@ public:
private:
void set_name(const string& name);
- virtual void metadata_update(const string& key, const Atom& value);
+
+ bool clicked(GdkEventButton* ev);
void set_value(float value);
+ void set_range(float min, float max);
- void min_changed();
- void max_changed();
void update_range();
void update_value_from_slider();
void update_value_from_spinner();
+
+ void menu_properties();
//void slider_grabbed(bool b);
@@ -99,10 +103,11 @@ private:
bool _enabled;
Gtk::Label* _name_label;
- Gtk::SpinButton* _min_spinner;
- Gtk::SpinButton* _max_spinner;
//Gtk::SpinButton* _value_spinner;
Gtk::VScale* _slider;
+
+ Gtk::Menu* _menu;
+ Gtk::MenuItem* _menu_properties;
};