summaryrefslogtreecommitdiffstats
path: root/src/libs/gui/ObjectMenu.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/libs/gui/ObjectMenu.cpp')
-rw-r--r--src/libs/gui/ObjectMenu.cpp26
1 files changed, 19 insertions, 7 deletions
diff --git a/src/libs/gui/ObjectMenu.cpp b/src/libs/gui/ObjectMenu.cpp
index ca000cfa..73d01389 100644
--- a/src/libs/gui/ObjectMenu.cpp
+++ b/src/libs/gui/ObjectMenu.cpp
@@ -33,11 +33,13 @@ ObjectMenu::ObjectMenu(BaseObjectType* cobject, const Glib::RefPtr<Gnome::Glade:
, _disconnect_menuitem(NULL)
, _rename_menuitem(NULL)
, _destroy_menuitem(NULL)
+ , _properties_menuitem(NULL)
{
xml->get_widget("object_polyphonic_menuitem", _polyphonic_menuitem);
xml->get_widget("object_disconnect_menuitem", _disconnect_menuitem);
xml->get_widget("object_rename_menuitem", _rename_menuitem);
xml->get_widget("object_destroy_menuitem", _destroy_menuitem);
+ xml->get_widget("object_properties_menuitem", _properties_menuitem);
}
@@ -62,6 +64,9 @@ ObjectMenu::init(SharedPtr<ObjectModel> object)
_destroy_menuitem->signal_activate().connect(
sigc::mem_fun(this, &ObjectMenu::on_menu_destroy));
+
+ _properties_menuitem->signal_activate().connect(
+ sigc::mem_fun(this, &ObjectMenu::on_menu_properties));
object->signal_polyphonic.connect(sigc::mem_fun(this, &ObjectMenu::polyphonic_changed));
@@ -70,13 +75,6 @@ ObjectMenu::init(SharedPtr<ObjectModel> object)
void
-ObjectMenu::on_menu_destroy()
-{
- App::instance().engine()->destroy(_object->path());
-}
-
-
-void
ObjectMenu::on_menu_polyphonic()
{
if (_enable_signal)
@@ -99,6 +97,20 @@ ObjectMenu::on_menu_disconnect()
App::instance().engine()->disconnect_all(_object->path());
}
+
+void
+ObjectMenu::on_menu_destroy()
+{
+ App::instance().engine()->destroy(_object->path());
+}
+
+
+void
+ObjectMenu::on_menu_properties()
+{
+ App::instance().window_factory()->present_properties(_object);
+}
+
} // namespace GUI
} // namespace Ingen