From f4d6256067e9581e67162dc9516b5ad11c8c0d93 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 23 Sep 2007 04:00:03 +0000 Subject: Working LV2 GUI embedding, except for size issues... git-svn-id: http://svn.drobilla.net/lad/ingen@767 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/gui/NodeMenu.cpp | 20 +++++++++++++------- 1 file changed, 13 insertions(+), 7 deletions(-) (limited to 'src/libs/gui/NodeMenu.cpp') diff --git a/src/libs/gui/NodeMenu.cpp b/src/libs/gui/NodeMenu.cpp index 6e4cb1d2..93c76cc6 100644 --- a/src/libs/gui/NodeMenu.cpp +++ b/src/libs/gui/NodeMenu.cpp @@ -37,13 +37,16 @@ NodeMenu::NodeMenu(BaseObjectType* cobject, const Glib::RefPtrget_widget("node_menu", node_menu); xml->get_widget("node_controls_menuitem", _controls_menuitem); - xml->get_widget("node_gui_menuitem", _gui_menuitem); + xml->get_widget("node_popup_gui_menuitem", _popup_gui_menuitem); + xml->get_widget("node_embed_gui_menuitem", _embed_gui_menuitem); node_menu->remove(*_controls_menuitem); - node_menu->remove(*_gui_menuitem); + node_menu->remove(*_popup_gui_menuitem); + node_menu->remove(*_embed_gui_menuitem); items().push_front(Gtk::Menu_Helpers::SeparatorElem()); insert(*_controls_menuitem, 0); - insert(*_gui_menuitem, 0); + insert(*_popup_gui_menuitem, 0); + insert(*_embed_gui_menuitem, 0); } @@ -56,8 +59,11 @@ NodeMenu::init(SharedPtr node) sigc::mem_fun(App::instance().window_factory(), &WindowFactory::present_controls), node)); - if (node->plugin()->ui(App::instance().engine().get(), node.get())) - _gui_menuitem->signal_activate().connect(sigc::mem_fun(this, &NodeMenu::show_gui)); + //if (node->plugin()->ui(App::instance().engine().get(), node.get())) + _popup_gui_menuitem->signal_activate().connect(sigc::mem_fun(signal_popup_gui, + &sigc::signal::emit)); + _embed_gui_menuitem->signal_toggled().connect(sigc::mem_fun(this, + &NodeMenu::on_menu_embed_gui)); //else // _gui_menuitem->hide(); @@ -66,9 +72,9 @@ NodeMenu::init(SharedPtr node) void -NodeMenu::show_gui() +NodeMenu::on_menu_embed_gui() { - cerr << "SHOW GUI" << endl; + signal_embed_gui.emit(_embed_gui_menuitem->get_active()); } -- cgit v1.2.1