diff options
author | David Robillard <d@drobilla.net> | 2010-01-29 01:43:54 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2010-01-29 01:43:54 +0000 |
commit | d5a514148bec58cd7e97d032259362b2e19c0e95 (patch) | |
tree | 64ea4dd182a8918b47a6d5f391e2cd097aebb526 /src/gui/ObjectMenu.cpp | |
parent | 36039b294ee823ceb2c239129defc5eafa110247 (diff) | |
download | ingen-d5a514148bec58cd7e97d032259362b2e19c0e95.tar.gz ingen-d5a514148bec58cd7e97d032259362b2e19c0e95.tar.bz2 ingen-d5a514148bec58cd7e97d032259362b2e19c0e95.zip |
Magic MIDI binding via special ingen_control port.
Always set lv2:minimum and lv2:maximum properties for control ports so they show up in properties dialog (and can be used for MIDI binding).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2391 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/gui/ObjectMenu.cpp')
-rw-r--r-- | src/gui/ObjectMenu.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/gui/ObjectMenu.cpp b/src/gui/ObjectMenu.cpp index 261cbd44..781c4359 100644 --- a/src/gui/ObjectMenu.cpp +++ b/src/gui/ObjectMenu.cpp @@ -37,6 +37,7 @@ ObjectMenu::ObjectMenu(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade: , _destroy_menuitem(NULL) , _properties_menuitem(NULL) { + xml->get_widget("object_learn_menuitem", _learn_menuitem); xml->get_widget("object_polyphonic_menuitem", _polyphonic_menuitem); xml->get_widget("object_disconnect_menuitem", _disconnect_menuitem); xml->get_widget("object_rename_menuitem", _rename_menuitem); @@ -57,6 +58,9 @@ ObjectMenu::init(SharedPtr<ObjectModel> object) _polyphonic_menuitem->set_active(object->polyphonic()); + _learn_menuitem->signal_activate().connect( + sigc::mem_fun(this, &ObjectMenu::on_menu_learn)); + _disconnect_menuitem->signal_activate().connect( sigc::mem_fun(this, &ObjectMenu::on_menu_disconnect)); @@ -72,11 +76,20 @@ ObjectMenu::init(SharedPtr<ObjectModel> object) object->signal_property.connect(sigc::mem_fun(this, &ObjectMenu::property_changed)); + _learn_menuitem->hide(); + _enable_signal = true; } void +ObjectMenu::on_menu_learn() +{ + App::instance().engine()->learn(_object->path()); +} + + +void ObjectMenu::on_menu_polyphonic() { if (_enable_signal) |