From 4999a7199470ee751d710cfca2a39b4fdc561a82 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Fri, 20 May 2011 03:27:08 +0000 Subject: Remove dependency on glade and glademm (migrate to GtkBuilder). git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@3295 a436a847-0d15-0410-975c-d299462d15a1 --- src/gui/App.cpp | 12 +- src/gui/App.hpp | 6 +- src/gui/BreadCrumbs.hpp | 6 +- src/gui/ConnectWindow.cpp | 4 +- src/gui/ConnectWindow.hpp | 7 +- src/gui/ControlPanel.cpp | 18 +- src/gui/ControlPanel.hpp | 13 +- src/gui/Controls.cpp | 18 +- src/gui/Controls.hpp | 20 +- src/gui/GladeFactory.cpp | 83 - src/gui/GladeFactory.hpp | 45 - src/gui/LoadPatchWindow.cpp | 4 +- src/gui/LoadPatchWindow.hpp | 9 +- src/gui/LoadPluginWindow.cpp | 4 +- src/gui/LoadPluginWindow.hpp | 11 +- src/gui/LoadRemotePatchWindow.cpp | 4 +- src/gui/LoadRemotePatchWindow.hpp | 9 +- src/gui/MessagesWindow.cpp | 9 +- src/gui/MessagesWindow.hpp | 10 +- src/gui/NewSubpatchWindow.cpp | 4 +- src/gui/NewSubpatchWindow.hpp | 10 +- src/gui/NodeControlWindow.cpp | 4 +- src/gui/NodeControlWindow.hpp | 3 +- src/gui/NodeMenu.cpp | 3 +- src/gui/NodeMenu.hpp | 3 +- src/gui/NodeModule.cpp | 4 +- src/gui/ObjectMenu.cpp | 3 +- src/gui/ObjectMenu.hpp | 8 +- src/gui/PatchCanvas.cpp | 4 +- src/gui/PatchPortModule.cpp | 4 +- src/gui/PatchTreeWindow.cpp | 4 +- src/gui/PatchTreeWindow.hpp | 8 +- src/gui/PatchView.cpp | 8 +- src/gui/PatchView.hpp | 8 +- src/gui/PatchWindow.cpp | 3 +- src/gui/PatchWindow.hpp | 7 +- src/gui/Port.cpp | 4 +- src/gui/PortMenu.cpp | 4 +- src/gui/PortMenu.hpp | 4 +- src/gui/PortPropertiesWindow.cpp | 4 +- src/gui/PortPropertiesWindow.hpp | 10 +- src/gui/PropertiesWindow.cpp | 16 +- src/gui/PropertiesWindow.hpp | 10 +- src/gui/RenameWindow.cpp | 14 +- src/gui/RenameWindow.hpp | 8 +- src/gui/UploadPatchWindow.cpp | 3 +- src/gui/UploadPatchWindow.hpp | 11 +- src/gui/WidgetFactory.cpp | 84 + src/gui/WidgetFactory.hpp | 46 + src/gui/Window.hpp | 1 - src/gui/WindowFactory.cpp | 6 +- src/gui/ingen_gui.glade | 3076 ------------------------------------- src/gui/ingen_gui.ui | 2983 +++++++++++++++++++++++++++++++++++ src/gui/wscript | 8 +- src/serialisation/Parser.cpp | 2 +- wscript | 8 +- 56 files changed, 3318 insertions(+), 3364 deletions(-) delete mode 100644 src/gui/GladeFactory.cpp delete mode 100644 src/gui/GladeFactory.hpp create mode 100644 src/gui/WidgetFactory.cpp create mode 100644 src/gui/WidgetFactory.hpp delete mode 100644 src/gui/ingen_gui.glade create mode 100644 src/gui/ingen_gui.ui diff --git a/src/gui/App.cpp b/src/gui/App.cpp index 9d3fc49a..723c3cd8 100644 --- a/src/gui/App.cpp +++ b/src/gui/App.cpp @@ -42,7 +42,7 @@ #include "LoadPluginWindow.hpp" #include "PatchWindow.hpp" #include "MessagesWindow.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "PatchTreeWindow.hpp" #include "Configuration.hpp" #include "ConnectWindow.hpp" @@ -78,15 +78,15 @@ App::App(Ingen::Shared::World* world) , _world(world) , _enable_signal(true) { - Glib::RefPtr glade_xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); Glib::set_application_name("Ingen"); gtk_window_set_default_icon_name("ingen"); - glade_xml->get_widget_derived("connect_win", _connect_window); - glade_xml->get_widget_derived("messages_win", _messages_window); - glade_xml->get_widget_derived("patch_tree_win", _patch_tree_window); - glade_xml->get_widget("about_win", _about_dialog); + xml->get_widget_derived("connect_win", _connect_window); + xml->get_widget_derived("messages_win", _messages_window); + xml->get_widget_derived("patch_tree_win", _patch_tree_window); + xml->get_widget("about_win", _about_dialog); _about_dialog->property_program_name() = "Ingen"; _about_dialog->property_logo_icon_name() = "ingen"; diff --git a/src/gui/App.hpp b/src/gui/App.hpp index 82eab2f3..ca5c590f 100644 --- a/src/gui/App.hpp +++ b/src/gui/App.hpp @@ -22,11 +22,13 @@ #include #include #include -#include + #include -#include +#include + #include "raul/SharedPtr.hpp" #include "raul/Deletable.hpp" + #include "shared/World.hpp" namespace Ingen { diff --git a/src/gui/BreadCrumbs.hpp b/src/gui/BreadCrumbs.hpp index c716e33e..700ac226 100644 --- a/src/gui/BreadCrumbs.hpp +++ b/src/gui/BreadCrumbs.hpp @@ -19,12 +19,14 @@ #define INGEN_GUI_BREADCRUMBS_HPP #include + #include -#include -#include + #include "raul/Path.hpp" #include "raul/SharedPtr.hpp" + #include "client/PatchModel.hpp" + #include "PatchView.hpp" namespace Ingen { diff --git a/src/gui/ConnectWindow.cpp b/src/gui/ConnectWindow.cpp index c07eef71..eb98bb6b 100644 --- a/src/gui/ConnectWindow.cpp +++ b/src/gui/ConnectWindow.cpp @@ -54,8 +54,8 @@ namespace Raul { class Deletable; } namespace Ingen { namespace GUI { -ConnectWindow::ConnectWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +ConnectWindow::ConnectWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Dialog(cobject) , _xml(xml) , _mode(CONNECT_REMOTE) diff --git a/src/gui/ConnectWindow.hpp b/src/gui/ConnectWindow.hpp index 92f29f16..44d4c925 100644 --- a/src/gui/ConnectWindow.hpp +++ b/src/gui/ConnectWindow.hpp @@ -25,8 +25,6 @@ #endif #include -#include -#include #include "raul/SharedPtr.hpp" @@ -47,7 +45,8 @@ class App; class ConnectWindow : public Dialog { public: - ConnectWindow(BaseObjectType* cobject, const Glib::RefPtr& xml); + ConnectWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void set_connected_to(SharedPtr engine); void start(Ingen::Shared::World* world); @@ -77,7 +76,7 @@ private: bool gtk_callback(); void quit(); - const Glib::RefPtr _xml; + const Glib::RefPtr _xml; Mode _mode; int32_t _ping_id; diff --git a/src/gui/ControlPanel.cpp b/src/gui/ControlPanel.cpp index 59309ab4..c87f7c5d 100644 --- a/src/gui/ControlPanel.cpp +++ b/src/gui/ControlPanel.cpp @@ -24,7 +24,7 @@ #include "App.hpp" #include "ControlPanel.hpp" #include "Controls.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" using namespace std; using namespace Raul; @@ -32,8 +32,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -ControlPanel::ControlPanel(BaseObjectType* cobject, - const Glib::RefPtr& xml) +ControlPanel::ControlPanel(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::HBox(cobject) , _callback_enabled(true) { @@ -89,21 +89,21 @@ ControlPanel::add_port(SharedPtr pm) if (pm->is_input()) { if (pm->is_toggle()) { ToggleControl* tc; - Glib::RefPtr xml - = GladeFactory::new_glade_reference("toggle_control"); + Glib::RefPtr xml + = WidgetFactory::create("toggle_control"); xml->get_widget_derived("toggle_control", tc); control = tc; } else if (pm->is_a(PortType::CONTROL) || pm->supports(App::instance().uris().atom_Float32)) { SliderControl* sc; - Glib::RefPtr xml - = GladeFactory::new_glade_reference("control_strip"); + Glib::RefPtr xml + = WidgetFactory::create("control_strip"); xml->get_widget_derived("control_strip", sc); control = sc; } else if (pm->supports(App::instance().uris().atom_String)) { StringControl* sc; - Glib::RefPtr xml - = GladeFactory::new_glade_reference("string_control"); + Glib::RefPtr xml + = WidgetFactory::create("string_control"); xml->get_widget_derived("string_control", sc); control = sc; } diff --git a/src/gui/ControlPanel.hpp b/src/gui/ControlPanel.hpp index cff7e946..a657b8d2 100644 --- a/src/gui/ControlPanel.hpp +++ b/src/gui/ControlPanel.hpp @@ -18,13 +18,12 @@ #ifndef INGEN_GUI_CONTROLPANEL_HPP #define INGEN_GUI_CONTROLPANEL_HPP -#include #include -#include // for pair<> -#include +#include +#include + #include -#include -#include + #include "Controls.hpp" namespace Raul { class Path; } @@ -47,8 +46,8 @@ namespace GUI { */ class ControlPanel : public Gtk::HBox { public: - ControlPanel(BaseObjectType* cobject, - const Glib::RefPtr& glade_xml); + ControlPanel(BaseObjectType* cobject, + const Glib::RefPtr& xml); virtual ~ControlPanel(); void init(SharedPtr node, uint32_t poly); diff --git a/src/gui/Controls.cpp b/src/gui/Controls.cpp index b9362ed7..af4a139e 100644 --- a/src/gui/Controls.cpp +++ b/src/gui/Controls.cpp @@ -26,7 +26,7 @@ #include "App.hpp" #include "ControlPanel.hpp" #include "Controls.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "PortPropertiesWindow.hpp" using namespace std; @@ -38,13 +38,14 @@ namespace GUI { // ////////////////////// Control ///////////////////////////////// // -Control::Control(BaseObjectType* cobject, const Glib::RefPtr& glade_xml) +Control::Control(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::VBox(cobject) , _control_panel(NULL) , _enable_signal(false) , _name_label(NULL) { - Glib::RefPtr menu_xml = GladeFactory::new_glade_reference("port_control_menu"); + Glib::RefPtr menu_xml = WidgetFactory::create("port_control_menu"); menu_xml->get_widget("port_control_menu", _menu); menu_xml->get_widget("port_control_menu_properties", _menu_properties); @@ -105,7 +106,7 @@ Control::set_label(const string& name) void Control::menu_properties() { - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); PortPropertiesWindow* window; xml->get_widget_derived("port_properties_win", window); @@ -114,7 +115,8 @@ Control::menu_properties() // ////////////////// SliderControl ////////////////////// // -SliderControl::SliderControl(BaseObjectType* cobject, const Glib::RefPtr& xml) +SliderControl::SliderControl(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Control(cobject, xml) , _enabled(true) { @@ -289,7 +291,8 @@ SliderControl::slider_pressed(GdkEvent* ev) // ///////////// ToggleControl ////////////// // -ToggleControl::ToggleControl(BaseObjectType* cobject, const Glib::RefPtr& xml) +ToggleControl::ToggleControl(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Control(cobject, xml) { xml->get_widget("toggle_control_name_label", _name_label); @@ -347,7 +350,8 @@ ToggleControl::toggled() // ///////////// StringControl ////////////// // -StringControl::StringControl(BaseObjectType* cobject, const Glib::RefPtr& xml) +StringControl::StringControl(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Control(cobject, xml) { xml->get_widget("string_control_name_label", _name_label); diff --git a/src/gui/Controls.hpp b/src/gui/Controls.hpp index c64f7062..66969393 100644 --- a/src/gui/Controls.hpp +++ b/src/gui/Controls.hpp @@ -19,12 +19,13 @@ #define INGEN_GUI_CONTROLS_HPP #include + #include -#include -#include -#include "client/PortModel.hpp" + #include "raul/SharedPtr.hpp" +#include "client/PortModel.hpp" + namespace Ingen { namespace Client { class PortModel; } } namespace Ingen { @@ -39,7 +40,8 @@ class ControlPanel; class Control : public Gtk::VBox { public: - Control(BaseObjectType* cobject, const Glib::RefPtr& glade_xml); + Control(BaseObjectType* cobject, + const Glib::RefPtr& xml); virtual ~Control(); virtual void init(ControlPanel* panel, SharedPtr pm); @@ -73,7 +75,9 @@ protected: class SliderControl : public Control { public: - SliderControl(BaseObjectType* cobject, const Glib::RefPtr& glade_xml); + SliderControl(BaseObjectType* cobject, + const Glib::RefPtr& xml); + void init(ControlPanel* panel, SharedPtr pm); void set_min(float val); @@ -105,7 +109,8 @@ private: class ToggleControl : public Control { public: - ToggleControl(BaseObjectType* cobject, const Glib::RefPtr& xml); + ToggleControl(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(ControlPanel* panel, SharedPtr pm); @@ -123,7 +128,8 @@ private: class StringControl : public Control { public: - StringControl(BaseObjectType* cobject, const Glib::RefPtr& xml); + StringControl(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(ControlPanel* panel, SharedPtr pm); diff --git a/src/gui/GladeFactory.cpp b/src/gui/GladeFactory.cpp deleted file mode 100644 index b13129db..00000000 --- a/src/gui/GladeFactory.cpp +++ /dev/null @@ -1,83 +0,0 @@ -/* This file is part of Ingen. - * Copyright 2007-2011 David Robillard - * - * Ingen is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) any later - * version. - * - * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#include "GladeFactory.hpp" -#include -#include "raul/log.hpp" -#include "ingen-config.h" -#include "shared/runtime_paths.hpp" - -using namespace std; -using namespace Raul; - -namespace Ingen { -namespace GUI { - -Glib::ustring GladeFactory::glade_filename = ""; - -inline static bool -is_readable(const std::string& filename) -{ - std::ifstream fs(filename.c_str()); - const bool fail = fs.fail(); - fs.close(); - return !fail; -} - -void -GladeFactory::find_glade_file() -{ - // Try file in bundle (directory where executable resides) - glade_filename = Shared::bundle_file_path("ingen_gui.glade"); - if (is_readable(glade_filename)) - return; - - // Try ENGINE_GLADE_PATH from the environment - const char* const env_path = getenv("INGEN_GLADE_PATH"); - if (env_path && is_readable(env_path)) { - glade_filename = env_path; - return; - } - - // Try the default system installed path - glade_filename = Shared::data_file_path("ingen_gui.glade"); - if (is_readable(glade_filename)) - return; - - error << "[GladeFactory] Unable to find ingen_gui.glade in " << INGEN_DATA_DIR << endl; - throw std::runtime_error("Unable to find glade file"); -} - -Glib::RefPtr -GladeFactory::new_glade_reference(const string& toplevel_widget) -{ - if (glade_filename.empty()) - find_glade_file(); - - try { - if (toplevel_widget.empty()) - return Gnome::Glade::Xml::create(glade_filename); - else - return Gnome::Glade::Xml::create(glade_filename, toplevel_widget.c_str()); - } catch (const Gnome::Glade::XmlError& ex) { - error << "[GladeFactory] " << ex.what() << endl; - throw ex; - } -} - -} // namespace GUI -} // namespace Ingen diff --git a/src/gui/GladeFactory.hpp b/src/gui/GladeFactory.hpp deleted file mode 100644 index 9860c3f8..00000000 --- a/src/gui/GladeFactory.hpp +++ /dev/null @@ -1,45 +0,0 @@ -/* This file is part of Ingen. - * Copyright 2007-2011 David Robillard - * - * Ingen is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free Software - * Foundation; either version 2 of the License, or (at your option) any later - * version. - * - * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details. - * - * You should have received a copy of the GNU General Public License along - * with this program; if not, write to the Free Software Foundation, Inc., - * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA - */ - -#ifndef INGEN_GUI_GLADEFACTORY_HPP -#define INGEN_GUI_GLADEFACTORY_HPP - -#include -#include - -namespace Ingen { -namespace GUI { - -/** Creates glade references, so various objects can create widgets. - * Purely static. - * - * \ingroup GUI - */ -class GladeFactory { -public: - static Glib::RefPtr - new_glade_reference(const std::string& toplevel_widget = ""); - -private: - static void find_glade_file(); - static Glib::ustring glade_filename; -}; - -} // namespace GUI -} // namespace Ingen - -#endif // INGEN_GUI_GLADEFACTORY_HPP diff --git a/src/gui/LoadPatchWindow.cpp b/src/gui/LoadPatchWindow.cpp index f002e36e..1b5e3c80 100644 --- a/src/gui/LoadPatchWindow.cpp +++ b/src/gui/LoadPatchWindow.cpp @@ -40,8 +40,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -LoadPatchWindow::LoadPatchWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +LoadPatchWindow::LoadPatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::FileChooserDialog(cobject) , _merge_ports(false) { diff --git a/src/gui/LoadPatchWindow.hpp b/src/gui/LoadPatchWindow.hpp index cc60ef80..cc8b906b 100644 --- a/src/gui/LoadPatchWindow.hpp +++ b/src/gui/LoadPatchWindow.hpp @@ -18,10 +18,12 @@ #ifndef INGEN_GUI_LOADSUBPATCHWINDOW_HPP #define INGEN_GUI_LOADSUBPATCHWINDOW_HPP -#include #include + #include "raul/SharedPtr.hpp" + #include "ingen/GraphObject.hpp" + using namespace Ingen::Shared; namespace Ingen { @@ -33,14 +35,15 @@ namespace GUI { /** 'Add Subpatch' window. * - * Loaded by glade as a derived object. + * Loaded from XML as a derived object. * * \ingroup GUI */ class LoadPatchWindow : public Gtk::FileChooserDialog { public: - LoadPatchWindow(BaseObjectType* cobject, const Glib::RefPtr& xml); + LoadPatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void set_patch(SharedPtr patch); diff --git a/src/gui/LoadPluginWindow.cpp b/src/gui/LoadPluginWindow.cpp index b763c0ae..135f63f1 100644 --- a/src/gui/LoadPluginWindow.cpp +++ b/src/gui/LoadPluginWindow.cpp @@ -35,8 +35,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -LoadPluginWindow::LoadPluginWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +LoadPluginWindow::LoadPluginWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) , _name_offset(0) , _has_shown(false) diff --git a/src/gui/LoadPluginWindow.hpp b/src/gui/LoadPluginWindow.hpp index 3ba9a590..c637db82 100644 --- a/src/gui/LoadPluginWindow.hpp +++ b/src/gui/LoadPluginWindow.hpp @@ -19,14 +19,16 @@ #define INGEN_GUI_LOADPLUGINWINDOW_HPP #include -#include -#include + #include + #include "raul/SharedPtr.hpp" #include "raul/Table.hpp" + #include "ingen-config.h" #include "ingen/GraphObject.hpp" #include "client/ClientStore.hpp" + #include "Window.hpp" using namespace Ingen::Shared; @@ -41,14 +43,15 @@ namespace GUI { /** 'Load Plugin' window. * - * Loaded by glade as a derived object. + * Loaded from XML as a derived object. * * \ingroup GUI */ class LoadPluginWindow : public Window { public: - LoadPluginWindow(BaseObjectType* cobject, const Glib::RefPtr& xml); + LoadPluginWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void set_patch(SharedPtr patch); void set_plugins(SharedPtr plugins); diff --git a/src/gui/LoadRemotePatchWindow.cpp b/src/gui/LoadRemotePatchWindow.cpp index 84b304da..0ca984b3 100644 --- a/src/gui/LoadRemotePatchWindow.cpp +++ b/src/gui/LoadRemotePatchWindow.cpp @@ -33,8 +33,8 @@ using namespace std; namespace Ingen { namespace GUI { -LoadRemotePatchWindow::LoadRemotePatchWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +LoadRemotePatchWindow::LoadRemotePatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Dialog(cobject) { xml->get_widget("load_remote_patch_treeview", _treeview); diff --git a/src/gui/LoadRemotePatchWindow.hpp b/src/gui/LoadRemotePatchWindow.hpp index dd0bb116..b6f86892 100644 --- a/src/gui/LoadRemotePatchWindow.hpp +++ b/src/gui/LoadRemotePatchWindow.hpp @@ -18,11 +18,14 @@ #ifndef INGEN_GUI_LOADREMOTEPATCHWINDOW_HPP #define INGEN_GUI_LOADREMOTEPATCHWINDOW_HPP -#include #include + #include "raul/SharedPtr.hpp" + #include "ingen/GraphObject.hpp" + #include "Window.hpp" + using namespace Ingen::Shared; namespace Ingen { @@ -55,8 +58,8 @@ public: class LoadRemotePatchWindow : public Dialog { public: - LoadRemotePatchWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml); + LoadRemotePatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void set_patch(SharedPtr patch); diff --git a/src/gui/MessagesWindow.cpp b/src/gui/MessagesWindow.cpp index d335b4bb..4271fca6 100644 --- a/src/gui/MessagesWindow.cpp +++ b/src/gui/MessagesWindow.cpp @@ -22,12 +22,13 @@ namespace Ingen { namespace GUI { using std::string; -MessagesWindow::MessagesWindow(BaseObjectType* cobject, const Glib::RefPtr& glade_xml) +MessagesWindow::MessagesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) { - glade_xml->get_widget("messages_textview", _textview); - glade_xml->get_widget("messages_clear_button", _clear_button); - glade_xml->get_widget("messages_close_button", _close_button); + xml->get_widget("messages_textview", _textview); + xml->get_widget("messages_clear_button", _clear_button); + xml->get_widget("messages_close_button", _close_button); _clear_button->signal_clicked().connect(sigc::mem_fun(this, &MessagesWindow::clear_clicked)); _close_button->signal_clicked().connect(sigc::mem_fun(this, &Window::hide)); diff --git a/src/gui/MessagesWindow.hpp b/src/gui/MessagesWindow.hpp index c0508f6b..4ef639a2 100644 --- a/src/gui/MessagesWindow.hpp +++ b/src/gui/MessagesWindow.hpp @@ -19,8 +19,9 @@ #define INGEN_GUI_MESSAGESWINDOW_HPP #include + #include -#include + #include "Window.hpp" namespace Ingen { @@ -28,15 +29,16 @@ namespace GUI { /** Messages Window. * - * Loaded by libglade as a derived object. - * This is shown when errors occur (ie during patch loading). + * Loaded from XML as a derived object. + * This is shown when errors occur (e.g. during patch loading). * * \ingroup GUI */ class MessagesWindow : public Window { public: - MessagesWindow(BaseObjectType* cobject, const Glib::RefPtr& refGlade); + MessagesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void post(const std::string& str); diff --git a/src/gui/NewSubpatchWindow.cpp b/src/gui/NewSubpatchWindow.cpp index f2e2227a..4ea7c172 100644 --- a/src/gui/NewSubpatchWindow.cpp +++ b/src/gui/NewSubpatchWindow.cpp @@ -29,8 +29,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -NewSubpatchWindow::NewSubpatchWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +NewSubpatchWindow::NewSubpatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) { xml->get_widget("new_subpatch_name_entry", _name_entry); diff --git a/src/gui/NewSubpatchWindow.hpp b/src/gui/NewSubpatchWindow.hpp index 5da4c314..5e22a0d4 100644 --- a/src/gui/NewSubpatchWindow.hpp +++ b/src/gui/NewSubpatchWindow.hpp @@ -18,10 +18,12 @@ #ifndef INGEN_GUI_NEWSUBPATCHWINDOW_HPP #define INGEN_GUI_NEWSUBPATCHWINDOW_HPP -#include #include + #include "raul/SharedPtr.hpp" + #include "ingen/GraphObject.hpp" + #include "Window.hpp" namespace Ingen { @@ -35,15 +37,15 @@ namespace GUI { /** 'New Subpatch' window. * - * Loaded by glade as a derived object. + * Loaded from XML as a derived object. * * \ingroup GUI */ class NewSubpatchWindow : public Window { public: - NewSubpatchWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml); + NewSubpatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void set_patch(SharedPtr patch); diff --git a/src/gui/NodeControlWindow.cpp b/src/gui/NodeControlWindow.cpp index ebee1ad3..a99de9a8 100644 --- a/src/gui/NodeControlWindow.cpp +++ b/src/gui/NodeControlWindow.cpp @@ -21,7 +21,7 @@ #include "client/NodeModel.hpp" #include "App.hpp" #include "NodeControlWindow.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "Controls.hpp" #include "ControlPanel.hpp" #include "PatchWindow.hpp" @@ -47,7 +47,7 @@ NodeControlWindow::NodeControlWindow(SharedPtr node, set_title(_node->plugin_model()->human_name() + " - Ingen"); - Glib::RefPtr xml = GladeFactory::new_glade_reference("warehouse_win"); + Glib::RefPtr xml = WidgetFactory::create("warehouse_win"); xml->get_widget_derived("control_panel_vbox", _control_panel); show_all_children(); diff --git a/src/gui/NodeControlWindow.hpp b/src/gui/NodeControlWindow.hpp index 97ec7ba3..30fb0a40 100644 --- a/src/gui/NodeControlWindow.hpp +++ b/src/gui/NodeControlWindow.hpp @@ -19,9 +19,10 @@ #define INGEN_GUI_NODECONTROLWINDOW_HPP #include -#include #include + #include "raul/SharedPtr.hpp" + #include "Window.hpp" namespace Ingen { namespace Client { diff --git a/src/gui/NodeMenu.cpp b/src/gui/NodeMenu.cpp index 7da1c374..87ad5030 100644 --- a/src/gui/NodeMenu.cpp +++ b/src/gui/NodeMenu.cpp @@ -31,7 +31,8 @@ using namespace Ingen::Client; namespace Ingen { namespace GUI { -NodeMenu::NodeMenu(BaseObjectType* cobject, const Glib::RefPtr& xml) +NodeMenu::NodeMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml) : ObjectMenu(cobject, xml) , _controls_menuitem(NULL) , _presets_menu(NULL) diff --git a/src/gui/NodeMenu.hpp b/src/gui/NodeMenu.hpp index 5a10e021..78ad886f 100644 --- a/src/gui/NodeMenu.hpp +++ b/src/gui/NodeMenu.hpp @@ -36,7 +36,8 @@ namespace GUI { class NodeMenu : public ObjectMenu { public: - NodeMenu(BaseObjectType* cobject, const Glib::RefPtr& xml); + NodeMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(SharedPtr node); diff --git a/src/gui/NodeModule.cpp b/src/gui/NodeModule.cpp index e385c8ec..6e598b27 100644 --- a/src/gui/NodeModule.cpp +++ b/src/gui/NodeModule.cpp @@ -26,7 +26,7 @@ #include "client/PluginModel.hpp" #include "client/PluginUI.hpp" #include "App.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "NodeControlWindow.hpp" #include "NodeModule.hpp" #include "PatchCanvas.hpp" @@ -78,7 +78,7 @@ NodeModule::~NodeModule() void NodeModule::create_menu() { - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); xml->get_widget_derived("object_menu", _menu); _menu->init(_node); _menu->signal_embed_gui.connect( diff --git a/src/gui/ObjectMenu.cpp b/src/gui/ObjectMenu.cpp index ac0dda5c..2991f2d1 100644 --- a/src/gui/ObjectMenu.cpp +++ b/src/gui/ObjectMenu.cpp @@ -29,7 +29,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -ObjectMenu::ObjectMenu(BaseObjectType* cobject, const Glib::RefPtr& xml) +ObjectMenu::ObjectMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::Menu(cobject) , _polyphonic_menuitem(NULL) , _disconnect_menuitem(NULL) diff --git a/src/gui/ObjectMenu.hpp b/src/gui/ObjectMenu.hpp index ffac870d..8bd5fc97 100644 --- a/src/gui/ObjectMenu.hpp +++ b/src/gui/ObjectMenu.hpp @@ -19,10 +19,13 @@ #define INGEN_GUI_OBJECTMENU_HPP #include + #include -#include + #include "raul/SharedPtr.hpp" + #include "client/ObjectModel.hpp" + using Ingen::Client::ObjectModel; namespace Ingen { @@ -39,7 +42,8 @@ class PatchCanvas; class ObjectMenu : public Gtk::Menu { public: - ObjectMenu(BaseObjectType* cobject, const Glib::RefPtr& xml); + ObjectMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(SharedPtr object); diff --git a/src/gui/PatchCanvas.cpp b/src/gui/PatchCanvas.cpp index 99110eb6..0a0adecd 100644 --- a/src/gui/PatchCanvas.cpp +++ b/src/gui/PatchCanvas.cpp @@ -42,7 +42,7 @@ #include "Connection.hpp" #include "NodeModule.hpp" #include "SubpatchModule.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "WindowFactory.hpp" #include "ThreadedLoader.hpp" #include "ingen-config.h" @@ -72,7 +72,7 @@ PatchCanvas::PatchCanvas(SharedPtr patch, int width, int heigh , _human_names(true) , _show_port_names(true) { - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); xml->get_widget("canvas_menu", _menu); xml->get_widget("canvas_menu_add_audio_input", _menu_add_audio_input); diff --git a/src/gui/PatchPortModule.cpp b/src/gui/PatchPortModule.cpp index b491e249..224a8f7e 100644 --- a/src/gui/PatchPortModule.cpp +++ b/src/gui/PatchPortModule.cpp @@ -24,7 +24,7 @@ #include "client/NodeModel.hpp" #include "App.hpp" #include "Configuration.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "PatchCanvas.hpp" #include "PatchWindow.hpp" #include "Port.hpp" @@ -77,7 +77,7 @@ PatchPortModule::create(boost::shared_ptr canvas, void PatchPortModule::create_menu() { - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); xml->get_widget_derived("object_menu", _menu); _menu->init(_model, true); diff --git a/src/gui/PatchTreeWindow.cpp b/src/gui/PatchTreeWindow.cpp index f4fb69b6..0e19590f 100644 --- a/src/gui/PatchTreeWindow.cpp +++ b/src/gui/PatchTreeWindow.cpp @@ -34,8 +34,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -PatchTreeWindow::PatchTreeWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +PatchTreeWindow::PatchTreeWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) , _enable_signal(true) { diff --git a/src/gui/PatchTreeWindow.hpp b/src/gui/PatchTreeWindow.hpp index aed181b5..861913c2 100644 --- a/src/gui/PatchTreeWindow.hpp +++ b/src/gui/PatchTreeWindow.hpp @@ -19,7 +19,7 @@ #define INGEN_GUI_PATCHTREEWINDOW_HPP #include -#include + #include "Window.hpp" namespace Raul { class Path; } @@ -40,7 +40,8 @@ class PatchTreeView; class PatchTreeWindow : public Window { public: - PatchTreeWindow(BaseObjectType* cobject, const Glib::RefPtr& refGlade); + PatchTreeWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(Client::ClientStore& store); @@ -85,7 +86,8 @@ protected: class PatchTreeView : public Gtk::TreeView { public: - PatchTreeView(BaseObjectType* cobject, const Glib::RefPtr& xml) + PatchTreeView(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::TreeView(cobject) , _window(NULL) {} diff --git a/src/gui/PatchView.cpp b/src/gui/PatchView.cpp index 4df3d4b7..04d6cf9c 100644 --- a/src/gui/PatchView.cpp +++ b/src/gui/PatchView.cpp @@ -28,7 +28,7 @@ #include "NewSubpatchWindow.hpp" #include "NodeControlWindow.hpp" #include "PatchTreeWindow.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" using namespace std; using namespace Raul; @@ -36,8 +36,8 @@ using namespace Raul; namespace Ingen { namespace GUI { -PatchView::PatchView(BaseObjectType* cobject, - const Glib::RefPtr& xml) +PatchView::PatchView(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Gtk::Box(cobject) , _breadcrumb_container(NULL) , _enable_signal(true) @@ -117,7 +117,7 @@ PatchView::set_patch(SharedPtr patch) SharedPtr PatchView::create(SharedPtr patch) { - const Glib::RefPtr& xml = GladeFactory::new_glade_reference("patch_view_box"); + const Glib::RefPtr& xml = WidgetFactory::create("patch_view_box"); PatchView* result = NULL; xml->get_widget_derived("patch_view_box", result); assert(result); diff --git a/src/gui/PatchView.hpp b/src/gui/PatchView.hpp index f637ce5d..0d3e0fab 100644 --- a/src/gui/PatchView.hpp +++ b/src/gui/PatchView.hpp @@ -19,10 +19,10 @@ #define INGEN_GUI_PATCHVIEW_HPP #include + #include -#include -#include #include + #include "raul/SharedPtr.hpp" namespace Raul { class Atom; } @@ -54,8 +54,8 @@ class SubpatchModule; class PatchView : public Gtk::Box { public: - PatchView(BaseObjectType* cobject, - const Glib::RefPtr& glade_xml); + PatchView(BaseObjectType* cobject, + const Glib::RefPtr& xml); SharedPtr canvas() const { return _canvas; } SharedPtr patch() const { return _patch; } diff --git a/src/gui/PatchWindow.cpp b/src/gui/PatchWindow.cpp index 844cac81..0bbeddfa 100644 --- a/src/gui/PatchWindow.cpp +++ b/src/gui/PatchWindow.cpp @@ -51,7 +51,8 @@ static const int STATUS_CONTEXT_ENGINE = 0; static const int STATUS_CONTEXT_PATCH = 1; static const int STATUS_CONTEXT_HOVER = 2; -PatchWindow::PatchWindow(BaseObjectType* cobject, const Glib::RefPtr& xml) +PatchWindow::PatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) , _enable_signal(true) , _position_stored(false) diff --git a/src/gui/PatchWindow.hpp b/src/gui/PatchWindow.hpp index 420359a0..65725e06 100644 --- a/src/gui/PatchWindow.hpp +++ b/src/gui/PatchWindow.hpp @@ -19,9 +19,9 @@ #define INGEN_GUI_PATCHWINDOW_HPP #include -#include -#include + #include "raul/SharedPtr.hpp" + #include "Window.hpp" namespace Raul { class Atom; class Path; } @@ -53,7 +53,8 @@ class SubpatchModule; class PatchWindow : public Window { public: - PatchWindow(BaseObjectType* cobject, const Glib::RefPtr& glade_xml); + PatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); ~PatchWindow(); Gtk::TextView* doc_textview() { return _doc_textview; } diff --git a/src/gui/Port.cpp b/src/gui/Port.cpp index 0ebc3418..115afefc 100644 --- a/src/gui/Port.cpp +++ b/src/gui/Port.cpp @@ -24,7 +24,7 @@ #include "client/PortModel.hpp" #include "App.hpp" #include "Configuration.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "PatchWindow.hpp" #include "Port.hpp" #include "PortMenu.hpp" @@ -126,7 +126,7 @@ void Port::create_menu() { PortMenu* menu = NULL; - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); xml->get_widget_derived("object_menu", menu); menu->init(model(), _flipped); set_menu(menu); diff --git a/src/gui/PortMenu.cpp b/src/gui/PortMenu.cpp index 7d1e765b..a5d00a3e 100644 --- a/src/gui/PortMenu.cpp +++ b/src/gui/PortMenu.cpp @@ -29,8 +29,8 @@ namespace Ingen { namespace GUI { -PortMenu::PortMenu(BaseObjectType* cobject, - const Glib::RefPtr& xml) +PortMenu::PortMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml) : ObjectMenu(cobject, xml) , _patch_port(NULL) { diff --git a/src/gui/PortMenu.hpp b/src/gui/PortMenu.hpp index 2eec5e02..ed06f571 100644 --- a/src/gui/PortMenu.hpp +++ b/src/gui/PortMenu.hpp @@ -36,8 +36,8 @@ namespace GUI { class PortMenu : public ObjectMenu { public: - PortMenu(BaseObjectType* cobject, - const Glib::RefPtr& xml); + PortMenu(BaseObjectType* cobject, + const Glib::RefPtr& xml); void init(SharedPtr port, bool patch_port=false); diff --git a/src/gui/PortPropertiesWindow.cpp b/src/gui/PortPropertiesWindow.cpp index 2d317456..cdc4c17a 100644 --- a/src/gui/PortPropertiesWindow.cpp +++ b/src/gui/PortPropertiesWindow.cpp @@ -32,8 +32,8 @@ namespace Ingen { using namespace Client; namespace GUI { -PortPropertiesWindow::PortPropertiesWindow(BaseObjectType* cobject, - const Glib::RefPtr& xml) +PortPropertiesWindow::PortPropertiesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) , _initial_min(0.0f) , _initial_max(1.0f) diff --git a/src/gui/PortPropertiesWindow.hpp b/src/gui/PortPropertiesWindow.hpp index 3358e1fb..74c26e7b 100644 --- a/src/gui/PortPropertiesWindow.hpp +++ b/src/gui/PortPropertiesWindow.hpp @@ -19,9 +19,11 @@ #define INGEN_GUI_PORTPROPERTIESWINDOW_HPP #include -#include + #include "raul/SharedPtr.hpp" + #include "client/PortModel.hpp" + #include "Window.hpp" namespace Ingen { @@ -29,15 +31,15 @@ namespace GUI { /** Port properties window. * - * Loaded by libglade as a derived object. + * Loaded from XML as a derived object. * * \ingroup GUI */ class PortPropertiesWindow : public Window { public: - PortPropertiesWindow(BaseObjectType* cobject, - const Glib::RefPtr& refGlade); + PortPropertiesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void present(SharedPtr port_model); diff --git a/src/gui/PropertiesWindow.cpp b/src/gui/PropertiesWindow.cpp index 26436022..2886b9a9 100644 --- a/src/gui/PropertiesWindow.cpp +++ b/src/gui/PropertiesWindow.cpp @@ -32,16 +32,16 @@ using namespace Raul; namespace Ingen { namespace GUI { -PropertiesWindow::PropertiesWindow(BaseObjectType* cobject, - const Glib::RefPtr& glade_xml) +PropertiesWindow::PropertiesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) { - glade_xml->get_widget("properties_vbox", _vbox); - glade_xml->get_widget("properties_scrolledwindow", _scrolledwindow); - glade_xml->get_widget("properties_table", _table); - glade_xml->get_widget("properties_cancel_button", _cancel_button); - glade_xml->get_widget("properties_apply_button", _apply_button); - glade_xml->get_widget("properties_ok_button", _ok_button); + xml->get_widget("properties_vbox", _vbox); + xml->get_widget("properties_scrolledwindow", _scrolledwindow); + xml->get_widget("properties_table", _table); + xml->get_widget("properties_cancel_button", _cancel_button); + xml->get_widget("properties_apply_button", _apply_button); + xml->get_widget("properties_ok_button", _ok_button); _type_choices = Gtk::ListStore::create(_type_cols); for (int i = Raul::Atom::INT; i <= Raul::Atom::BLOB; ++i) { diff --git a/src/gui/PropertiesWindow.hpp b/src/gui/PropertiesWindow.hpp index cdde7495..e8e48fc7 100644 --- a/src/gui/PropertiesWindow.hpp +++ b/src/gui/PropertiesWindow.hpp @@ -19,9 +19,11 @@ #define INGEN_GUI_PROPERTIES_WINDOW_HPP #include -#include + #include "raul/SharedPtr.hpp" + #include "client/NodeModel.hpp" + #include "Window.hpp" using namespace Ingen::Client; @@ -31,15 +33,15 @@ namespace GUI { /** Object properties window. * - * Loaded by libglade as a derived object. + * Loaded from XML as a derived object. * * \ingroup GUI */ class PropertiesWindow : public Window { public: - PropertiesWindow(BaseObjectType* cobject, - const Glib::RefPtr& refGlade); + PropertiesWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void present(SharedPtr model); void set_object(SharedPtr model); diff --git a/src/gui/RenameWindow.cpp b/src/gui/RenameWindow.cpp index 0ca8b7d0..65230c70 100644 --- a/src/gui/RenameWindow.cpp +++ b/src/gui/RenameWindow.cpp @@ -30,15 +30,15 @@ using namespace Raul; namespace Ingen { namespace GUI { -RenameWindow::RenameWindow(BaseObjectType* cobject, - const Glib::RefPtr& glade_xml) +RenameWindow::RenameWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Window(cobject) { - glade_xml->get_widget("rename_symbol_entry", _symbol_entry); - glade_xml->get_widget("rename_label_entry", _label_entry); - glade_xml->get_widget("rename_message_label", _message_label); - glade_xml->get_widget("rename_cancel_button", _cancel_button); - glade_xml->get_widget("rename_ok_button", _ok_button); + xml->get_widget("rename_symbol_entry", _symbol_entry); + xml->get_widget("rename_label_entry", _label_entry); + xml->get_widget("rename_message_label", _message_label); + xml->get_widget("rename_cancel_button", _cancel_button); + xml->get_widget("rename_ok_button", _ok_button); _symbol_entry->signal_changed().connect( sigc::mem_fun(this, &RenameWindow::values_changed)); diff --git a/src/gui/RenameWindow.hpp b/src/gui/RenameWindow.hpp index ede09f4b..d7a09e6d 100644 --- a/src/gui/RenameWindow.hpp +++ b/src/gui/RenameWindow.hpp @@ -19,9 +19,11 @@ #define INGEN_GUI_RENAMEWINDOW_HPP #include -#include + #include "raul/SharedPtr.hpp" + #include "client/ObjectModel.hpp" + #include "Window.hpp" using Ingen::Client::ObjectModel; @@ -36,8 +38,8 @@ namespace GUI { class RenameWindow : public Window { public: - RenameWindow(BaseObjectType* cobject, - const Glib::RefPtr& refGlade); + RenameWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void present(SharedPtr object); diff --git a/src/gui/UploadPatchWindow.cpp b/src/gui/UploadPatchWindow.cpp index 326aa968..ef014f31 100644 --- a/src/gui/UploadPatchWindow.cpp +++ b/src/gui/UploadPatchWindow.cpp @@ -40,7 +40,8 @@ using namespace std; namespace Ingen { namespace GUI { -UploadPatchWindow::UploadPatchWindow(BaseObjectType* cobject, const Glib::RefPtr& xml) +UploadPatchWindow::UploadPatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml) : Dialog(cobject) , _thread(NULL) , _progress_pct(0) diff --git a/src/gui/UploadPatchWindow.hpp b/src/gui/UploadPatchWindow.hpp index c1a26504..f0dce373 100644 --- a/src/gui/UploadPatchWindow.hpp +++ b/src/gui/UploadPatchWindow.hpp @@ -19,13 +19,17 @@ #define INGEN_GUI_UPLOADPATCHWINDOW_HPP #include -#include -#include + #include + +#include + #include "raul/SharedPtr.hpp" #include "raul/Thread.hpp" #include "raul/AtomicInt.hpp" + #include "client/PluginModel.hpp" + #include "Window.hpp" namespace Ingen { @@ -64,7 +68,8 @@ private: class UploadPatchWindow : public Dialog { public: - UploadPatchWindow(BaseObjectType* cobject, const Glib::RefPtr& xml); + UploadPatchWindow(BaseObjectType* cobject, + const Glib::RefPtr& xml); void present(SharedPtr patch); diff --git a/src/gui/WidgetFactory.cpp b/src/gui/WidgetFactory.cpp new file mode 100644 index 00000000..9579a1e1 --- /dev/null +++ b/src/gui/WidgetFactory.cpp @@ -0,0 +1,84 @@ +/* This file is part of Ingen. + * Copyright 2007-2011 David Robillard + * + * Ingen is free software; you can redistribute it and/or modify it under the + * terms of the GNU General Public License as published by the Free Software + * Foundation; either version 2 of the License, or (at your option) any later + * version. + * + * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include "WidgetFactory.hpp" +#include +#include "raul/log.hpp" +#include "ingen-config.h" +#include "shared/runtime_paths.hpp" + +using namespace std; +using namespace Raul; + +namespace Ingen { +namespace GUI { + +Glib::ustring WidgetFactory::ui_filename = ""; + +inline static bool +is_readable(const std::string& filename) +{ + std::ifstream fs(filename.c_str()); + const bool fail = fs.fail(); + fs.close(); + return !fail; +} + +void +WidgetFactory::find_ui_file() +{ + // Try file in bundle (directory where executable resides) + ui_filename = Shared::bundle_file_path("ingen_gui.ui"); + if (is_readable(ui_filename)) + return; + + // Try ENGINE_UI_PATH from the environment + const char* const env_path = getenv("INGEN_UI_PATH"); + if (env_path && is_readable(env_path)) { + ui_filename = env_path; + return; + } + + // Try the default system installed path + ui_filename = Shared::data_file_path("ingen_gui.ui"); + if (is_readable(ui_filename)) + return; + + error << "[WidgetFactory] Unable to find ingen_gui.ui in " + << INGEN_DATA_DIR << endl; + throw std::runtime_error("Unable to find UI file"); +} + +Glib::RefPtr +WidgetFactory::create(const string& toplevel_widget) +{ + if (ui_filename.empty()) + find_ui_file(); + + try { + if (toplevel_widget.empty()) + return Gtk::Builder::create_from_file(ui_filename); + else + return Gtk::Builder::create_from_file(ui_filename, toplevel_widget.c_str()); + } catch (const Gtk::BuilderError& ex) { + error << "[WidgetFactory] " << ex.what() << endl; + throw ex; + } +} + +} // namespace GUI +} // namespace Ingen diff --git a/src/gui/WidgetFactory.hpp b/src/gui/WidgetFactory.hpp new file mode 100644 index 00000000..43525246 --- /dev/null +++ b/src/gui/WidgetFactory.hpp @@ -0,0 +1,46 @@ +/* This file is part of Ingen. + * Copyright 2007-2011 David Robillard + * + * Ingen is free software; you can redistribute it and/or modify it under the + * terms of the GNU General Public License as published by the Free Software + * Foundation; either version 2 of the License, or (at your option) any later + * version. + * + * Ingen is distributed in the hope that it will be useful, but WITHOUT ANY + * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS + * FOR A PARTICULAR PURPOSE. See the GNU General Public License for details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#ifndef INGEN_GUI_GLADEFACTORY_HPP +#define INGEN_GUI_GLADEFACTORY_HPP + +#include + +#include + +namespace Ingen { +namespace GUI { + +/** Loads widgets from an XML description. + * Purely static. + * + * \ingroup GUI + */ +class WidgetFactory { +public: + static Glib::RefPtr + create(const std::string& toplevel_widget=""); + +private: + static void find_ui_file(); + static Glib::ustring ui_filename; +}; + +} // namespace GUI +} // namespace Ingen + +#endif // INGEN_GUI_GLADEFACTORY_HPP diff --git a/src/gui/Window.hpp b/src/gui/Window.hpp index 59cb8229..cbe72fbb 100644 --- a/src/gui/Window.hpp +++ b/src/gui/Window.hpp @@ -19,7 +19,6 @@ #define INGEN_GUI_WINDOW_HPP #include -#include namespace Raul { class Path; } diff --git a/src/gui/WindowFactory.cpp b/src/gui/WindowFactory.cpp index 56f4dd74..99cf9d1d 100644 --- a/src/gui/WindowFactory.cpp +++ b/src/gui/WindowFactory.cpp @@ -19,7 +19,7 @@ #include "ingen-config.h" #include "client/PatchModel.hpp" #include "App.hpp" -#include "GladeFactory.hpp" +#include "WidgetFactory.hpp" #include "LoadPatchWindow.hpp" #include "LoadPluginWindow.hpp" #include "LoadRemotePatchWindow.hpp" @@ -47,7 +47,7 @@ WindowFactory::WindowFactory() , _new_subpatch_win(NULL) , _properties_win(NULL) { - Glib::RefPtr xml = GladeFactory::new_glade_reference(); + Glib::RefPtr xml = WidgetFactory::create(); xml->get_widget_derived("load_plugin_win", _load_plugin_win); xml->get_widget_derived("load_patch_win", _load_patch_win); @@ -169,7 +169,7 @@ WindowFactory::new_patch_window(SharedPtr patch, { assert( !view || view->patch() == patch); - Glib::RefPtr xml = GladeFactory::new_glade_reference("patch_win"); + Glib::RefPtr xml = WidgetFactory::create("patch_win"); PatchWindow* win = NULL; xml->get_widget_derived("patch_win", win); diff --git a/src/gui/ingen_gui.glade b/src/gui/ingen_gui.glade deleted file mode 100644 index ef691f35..00000000 --- a/src/gui/ingen_gui.glade +++ /dev/null @@ -1,3076 +0,0 @@ - - - - - - Ingen - 776 - 480 - - - True - vertical - - - True - - - True - _File - True - - - - - _Import... - True - Load a patch into the current patch (merge with existing contents). - True - False - - - - - True - gtk-open - - - - - - - Import _Location... - True - Import a patch from a URI - True - False - - - - - True - gtk-open - - - - - - - True - - - - - gtk-save - True - Save this patch - True - True - - - - - - Save _As... - True - Save this patch to a specific file name - True - False - - - - - True - gtk-save-as - - - - - - - _Upload... - True - True - False - - - - - - - _Draw... - True - True - False - - - - - - - True - - - - - gtk-close - True - Close this window (patch will not be destroyed) - True - True - - - - - - True - - - - - gtk-quit - True - Quit GUI (engine may continue running) - True - True - - - - - - - - - - True - _Edit - True - - - - - True - Enable editing of connections and dragging of nodes (disable to manipulate controls) - _Edit connections - True - True - - - - - - True - - - - - gtk-cut - True - False - True - True - - - - - - gtk-copy - True - True - True - - - - - - gtk-paste - True - False - True - True - - - - - - gtk-delete - True - Delete the selected object(s) - True - True - - - - - - - gtk-select-all - True - Select all objects in a patch - True - True - - - - - - - True - - - - - Arrange - True - Automatically arrange canvas - True - False - - - - - - True - - - - - C_ontrols... - True - View/Edit controls for this patch - True - False - - - - - - - gtk-properties - True - View/Edit properties for this patch - True - True - - - - - - - - - - - True - _View - True - - - - - True - Show human readable names instead of identifiers - _Human names - True - True - - - - - - True - Show labels on ports - Port _Names - True - True - - - - - - True - _Status Bar - True - True - - - - - - True - - - - - gtk-zoom-in - True - Increase font size - True - True - - - - - - gtk-zoom-out - True - Decrease font size - True - True - - - - - - gtk-zoom-100 - True - True - True - - - - - - True - - - - - gtk-fullscreen - True - True - True - - - - - - - - - - - True - _Windows - True - - - - - - _Engine - True - Connect to, Disconnect from, or Launch Engine - True - False - - - - - True - gtk-execute - - - - - - - _Patch Tree - True - View all patches in the engine as a heirarchial list - True - False - - - - - True - gtk-index - - - - - - - _Messages - True - View error messages from the engine - True - False - - - - - True - gtk-info - - - - - - - - - - - True - _Help - True - - - - - - Right-click the canvas to add objects - True - True - False - - - - - Press 'e' to toggle edit mode - True - True - False - - - - - True - - - - - gtk-about - True - True - True - - - - - - - - - - False - False - 0 - - - - - True - True - - - True - True - automatic - automatic - - - True - queue - none - - - - - - - - True - False - - - - - True - True - False - word - False - - - False - True - - - - - 1 - - - - - True - 2 - - - False - 2 - - - - - - - 8 - Load Plugin - Ingen - center-on-parent - True - dialog - - - True - 1 - - - True - True - 2 - automatic - automatic - - - True - True - 2 - True - True - - - - - 0 - - - - - True - 3 - 3 - 12 - - - True - 1 - Node _Symbol: - True - True - load_plugin_name_entry - - - 2 - 3 - GTK_FILL - - - - - - True - - - 1 - 2 - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - - - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - - - 2 - 3 - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - - - True - True - Name of new Module - - - 0 - - - - - _Polyphonic - True - True - False - True - True - True - - - False - False - 8 - 1 - - - - - 1 - 2 - 2 - 3 - GTK_FILL - 6 - - - - - True - True - True - Search string to filter plugin list - gtk-clear - True - True - - - 1 - 3 - GTK_FILL - - - - - True - Name contains: - - - GTK_FILL - - - - - - True - 4 - - - gtk-close - True - True - True - True - - - False - False - 0 - - - - - gtk-add - True - True - True - True - - - False - False - 1 - - - - - 2 - 3 - 2 - 3 - GTK_FILL - GTK_FILL - - - - - False - False - 1 - - - - - - - 320 - 8 - Create Subpatch - Ingen - False - center-on-parent - dialog - - - True - - - True - 2 - 2 - - - True - 0 - _Symbol: - True - new_subpatch_name_entry - - - GTK_FILL - GTK_EXPAND - 5 - - - - - True - 0 - _Polyphony: - True - new_subpatch_polyphony_spinbutton - - - 1 - 2 - GTK_FILL - GTK_EXPAND - 5 - - - - - True - True - True - 1 0 100 1 10 0 - 1 - - - 1 - 2 - 1 - 2 - GTK_FILL - - 4 - - - - - True - True - True - True - - - 1 - 2 - - 4 - - - - - 0 - - - - - True - True - - - False - False - 1 - - - - - True - 4 - end - - - gtk-cancel - True - True - False - True - - - False - False - 0 - - - - - gtk-ok - True - True - True - True - False - True - - - False - False - 1 - - - - - 2 - - - - - - - Load Patch - Ingen - center-on-parent - dialog - - - 24 - - - True - 0 - 0 - - - True - 3 - 3 - 12 - 12 - - - True - 0 - Polyphony: - True - - - 1 - 2 - GTK_FILL - - - - - - Load from _File - True - True - False - True - Use the polyphony value stored in the patch file - True - True - load_patch_poly_voices_radio - - - 2 - 3 - 1 - 2 - GTK_FILL - - - - - - True - 0 - Ports: - True - - - 2 - 3 - GTK_FILL - - - - - _Insert new ports - True - True - False - True - Create new ports for all of the loaded patch's ports - True - True - load_patch_merge_ports_radio - - - 2 - 3 - 2 - 3 - GTK_FILL - - - - - _Merge with existing ports - True - True - False - True - Merge current ports and loaded patch's ports wherever possible - True - True - True - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - True - 6 - - - _Voices: - True - True - False - True - Set polyphonic to a specific number of voices - True - True - True - - - False - False - 0 - - - - - True - True - Specify a custom polyphony value for new patch - - 1 0 100 1 10 0 - 1 - - - False - 1 - - - - - 1 - 2 - 1 - 2 - GTK_FILL - GTK_FILL - - - - - True - 0 - _Symbol: - True - True - load_patch_symbol_entry - - - GTK_FILL - - - - - - True - True - Specify the name for the new patch - - True - - - 1 - 3 - GTK_FILL - - - - - - - False - False - 2 - - - - - True - end - - - gtk-cancel - -6 - True - True - True - False - True - - - False - False - 0 - - - - - gtk-open - -5 - True - True - True - True - False - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - - Warehouse - Ingen - - - True - 6 - 12 - 12 - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - 0 - 4 - <b>Name</b> - True - True - - - False - False - 0 - - - - - True - 1 - 0 - 1 - 1 - 4 - - - True - - - - - 1 - - - - - True - True - False - True - - - False - 2 - - - - - False - False - 0 - - - - - 4 - 5 - 8 - - - - - True - - - True - 0 - - - True - True - never - automatic - - - True - none - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - - - - - - - 0 - - - - - - - True - - - True - - - True - icons - 1 - - - True - - - - - - False - - - - - 0 - - - - - True - icons - False - 1 - - - True - Enable patch - True - gtk-execute - True - - - False - True - - - - - True - - - True - 4 - gtk-copy - - - - - False - - - - - True - Polyphony - - - True - True - Patch polyphony - 1 1 512 1 10 0 - 1 - True - - - - - False - - - - - True - - - False - - - - - True - Save patch to a file - gtk-save - - - False - True - - - - - True - - - False - - - - - True - Refresh view - gtk-refresh - - - False - True - - - - - True - Zoom to normal size - True - gtk-zoom-100 - - - False - True - - - - - True - Zoom to contents - True - gtk-zoom-fit - - - False - True - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - False - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Edit connections - Edit - gtk-connect - True - - - False - True - - - - - False - 1 - - - - - False - False - 0 - - - - - True - True - True - True - True - True - GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK - 1 - in - - - - - - 1 - - - - - 2 - 3 - GTK_FILL - - - - - True - - - 1 - 2 - GTK_FILL - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - 0 - 1 - 4 - <b>Name</b> - True - True - - - False - False - 0 - - - - - True - 1 - 0 - 1 - 1 - 4 - - - True - - - - - 1 - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 12 - 0 -9.9999999999999999e+45 1.0000000000000001e+63 1 10 0 - 4 - True - - - False - 2 - - - - - False - False - 0 - - - - - True - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - 9.0923076923076922e+136 -1e+113 1e+137 0 0 0 - 63 - False - - - False - 1 - - - - - 3 - 4 - 8 - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - vertical - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - 0 - 4 - <b>Name</b> - True - True - - - False - False - 0 - - - - - True - True - - False - - - 1 - - - - - False - False - 0 - - - - - 5 - 6 - 8 - - - - - - - 400 - 180 - 8 - Messages - Ingen - - - True - 6 - - - True - True - automatic - automatic - in - - - True - True - Error messages from the engine since the last time "Clear" was pressed - 5 - 5 - False - word - 5 - 5 - False - False - - - - - 0 - - - - - True - 6 - end - - - gtk-clear - True - False - True - True - False - True - - - False - False - 0 - - - - - gtk-close - True - True - False - True - - - False - False - 1 - - - - - False - 1 - - - - - - - 8 - Configuration - Ingen - - - True - 6 - - - True - 2 - 2 - - - True - <b>Patch Search Path: </b> - True - - - GTK_FILL - - - - - - True - True - - - 1 - 2 - - - - - - True - <i>Example: /foo/bar:/home/john/patches:/usr/share/om/patches</i> - True - - - 1 - 2 - 1 - 2 - GTK_FILL - - - - - - True - 0 - - - 1 - 2 - GTK_FILL - - - - - - False - 0 - - - - - True - 6 - end - - - gtk-save - True - True - False - Save these settings for future sessions - True - - - False - False - 0 - - - - - gtk-cancel - True - True - False - True - - - False - False - 1 - - - - - gtk-ok - True - True - False - Apply these settings to this session only - True - - - False - False - 2 - - - - - False - 1 - - - - - - - 250 - Rename - center-on-parent - True - dialog - - - True - 5 - vertical - - - True - 2 - 2 - 8 - - - True - _Symbol: - True - rename_symbol_entry - - - GTK_FILL - - - - - True - True - - True - - - 1 - 2 - 1 - 2 - - - - - True - _Label: - True - rename_label_entry - - - 1 - 2 - GTK_FILL - - - - - True - True - True - - True - - - 1 - 2 - - - - - 0 - - - - - True - - - 12 - 1 - - - - - True - 8 - end - - - gtk-cancel - True - True - True - True - True - - - False - False - 0 - - - - - gtk-ok - True - True - True - True - False - True - - - False - False - 1 - - - - - False - 2 - - - - - - - True - normal - Ingen - @INGEN_VERSION@ - Copyright 2005-2011 David Robillard <http://drobilla.net> - http://drobilla.net/software/ingen - Licensed under the GNU GPL, Version 2. - -See COPYING file included with this distribution, or http://www.gnu.org/licenses/gpl.txt for more information - Author: - David Robillard <d@drobilla.net> - -Contributors: - Lars Luthman - DSSI enhancements, bugfixes - Mario Lang - SuperCollider bindings, bugfixes - Leonard Ritter - Python bindings - - translator-credits - Usability / UI Design: - Thorsten Wilms - True - - - - - - False - end - 0 - - - - - - - 320 - 340 - 8 - Patches - Ingen - - - True - True - 3 - automatic - automatic - in - - - True - True - All patches loaded in the engine - True - - - - - - - 6 - Engine - Ingen - False - dialog - - - True - 6 - - - True - - - True - - - True - 12 - gtk-disconnect - 3 - - - False - 0 - - - - - True - 5 - True - - - True - 0.10000000149 - - - False - False - 0 - - - - - True - 0 - Not Connected - - - False - 1 - - - - - 1 - - - - - False - 0 - - - - - True - - - False - 4 - 1 - - - - - True - 3 - 2 - 8 - - - True - - - True - False - True - 16180 1 65535 1 10 0 - 1 - True - - - False - False - 0 - - - - - 1 - 2 - 1 - 2 - GTK_FILL - 8 - - - - - True - - - True - True - True - 28 - osc.udp://localhost:16180 - - - 0 - - - - - 1 - 2 - GTK_FILL - GTK_FILL - 8 - - - - - _Connect to running server at: - True - True - False - True - True - - - GTK_FILL - - - - - - _Launch and connect to server on port: - True - True - False - True - True - connect_server_radiobutton - - - 1 - 2 - GTK_FILL - - - - - - Use _internal engine - True - False - True - False - True - True - connect_server_radiobutton - - - 2 - 3 - GTK_FILL - - - - - - True - 0 - - - 1 - 2 - 2 - 3 - GTK_FILL - - - - - - 2 - - - - - True - - - False - 3 - - - - - True - 6 - start - - - D_eactivate - True - True - True - True - - - False - False - 0 - - - - - _Activate - True - True - True - True - - - False - False - 1 - - - - - 6 - 4 - - - - - 2 - - - - - True - end - - - gtk-quit - True - True - True - False - True - - - False - False - 0 - - - - - gtk-disconnect - -6 - True - False - True - True - False - True - - - False - False - 1 - - - - - gtk-connect - -6 - True - True - True - True - False - True - - - False - False - 2 - - - - - False - False - end - 0 - - - - - - - True - - - True - Toggle edit mode - _Edit - True - True - - - - - True - - - - - _Input - True - True - False - - - - - True - Add an audio input to this patch - _Audio - True - - - - - - True - Add a control input (and a control slider for it) to this patch - _Control - True - - - - - - True - Add a generic event input to this patch - _Event - True - - - - - - - - - - _Output - True - True - False - - - - - True - Add an audio output to this patch - _Audio - True - - - - - - True - Add a control output to this patch - _Control - True - - - - - - True - Add a generic event output to this patch - _Event - True - - - - - - - - - - _Find Plugin... - True - Load a plugin as a child of this patch - True - False - - - - - - True - - - - - _Load Patch... - True - Load a patch as a child of this patch - True - False - - - - - - _New Patch... - True - Create a new (empty) patch as a child of this patch - True - False - - - - - - 8 - Download Patch - Ingen - dialog - - - True - 8 - - - True - 8 - - - True - True - True - automatic - automatic - in - - - True - True - - - - - 0 - - - - - True - - - True - URI: - - - False - False - 0 - - - - - True - True - 78 - - - 1 - - - - - False - 1 - - - - - 2 - - - - - True - end - - - gtk-cancel - -6 - True - True - True - False - True - - - False - False - 0 - - - - - gtk-open - -5 - True - False - True - True - True - False - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - - 8 - Upload Patch - Ingen - False - dialog - - - True - 9 - - - True - 2 - 2 - 8 - - - True - True - Enter a short name suitable for use as an identifier or filename. - -The first character must be one of _, a-z or A-Z and subsequenct characters can be from _, a-z, A-Z or 0-9. - - True - - - 1 - 2 - - - - - - True - True - Enter a short name for this patch, e.g. "Mega Synth" - True - - - 1 - 2 - 1 - 2 - - - - - - True - 0 - Symbol: - - - GTK_FILL - - - - - - True - 0 - Short Name: - - - 1 - 2 - GTK_FILL - - - - - - 2 - - - - - True - 4 - Succesfully uploaded patches will be available immediately in the remote patch browser. - -By uploading patches, you agree to license them under the Creative Commons Attribution-Share Alike 3.0 License. - -Thank you for contributing. - True - - - False - False - 3 - - - - - True - Upload progress - 0.10000000149 - - - False - False - 4 - - - - - True - end - - - gtk-close - -7 - True - True - True - False - True - - - False - False - 0 - - - - - -5 - True - False - True - True - True - False - - - True - 0 - 0 - - - True - 2 - - - True - gtk-ok - - - False - False - 0 - - - - - True - Upload - True - - - False - False - 1 - - - - - - - - - False - False - 1 - - - - - False - end - 0 - - - - - - - - - gtk-properties - True - True - True - - - - - - 8 - Port Properties - Ingen - False - mouse - - - True - 8 - - - True - 2 - 2 - 2 - 4 - - - True - True - 0 -100000000 100000000 1 10 0 - 1 - 5 - True - - - 1 - 2 - - - - - - True - True - 1 -99999 99999 1 10 0 - 1 - 5 - True - - - 1 - 2 - 1 - 2 - - - - - - True - 0 - Minimum Value: - - - GTK_FILL - - - - - - True - 0 - Maximum Value: - - - 1 - 2 - GTK_FILL - - - - - - 2 - - - - - True - end - - - gtk-cancel - True - True - True - False - True - - - False - False - 0 - - - - - gtk-ok - True - True - True - True - False - True - - - False - False - 1 - - - - - False - end - 0 - - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Expose individual voices - P_olyphonic - True - - - - - True - _Learn - True - - - - - True - _Unlearn - True - - - - - Dis_connect - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Disconnect all connections - True - False - - - - - _Rename... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Rename this object - True - False - - - - - gtk-delete - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Destroy this object - True - True - - - - - True - - - - - gtk-properties - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - View and edit properties - True - True - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - Con_trols... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Manipulate controls in a separate window - True - False - - - - - _GUI... - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Show this node's custom graphical interface in a separate window - True - False - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - Embed the custom GUI for this plugin in the patch canvas - _Embed GUI - True - - - - - R_andomize - True - Set all controls on this node to random values - True - False - - - - - 12 - center-on-parent - - - True - vertical - 12 - - - True - True - automatic - automatic - - - True - queue - none - - - True - 3 - 12 - 6 - - - - - - - - - - - - - - - - 0 - - - - - True - 6 - end - - - gtk-cancel - True - True - True - True - True - - - False - False - 0 - - - - - gtk-apply - True - True - True - True - - - False - False - 1 - - - - - gtk-ok - True - True - True - True - True - True - - - False - False - 2 - - - - - False - end - 1 - - - - - - - True - GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK - - - True - Set m_inimum to current value - True - - - - - True - Set m_aximum to current value - True - - - - - True - Reset range to plugin defaults - R_eset Range - True - - - - diff --git a/src/gui/ingen_gui.ui b/src/gui/ingen_gui.ui new file mode 100644 index 00000000..168a6e0b --- /dev/null +++ b/src/gui/ingen_gui.ui @@ -0,0 +1,2983 @@ + + + + + + Ingen + 776 + 480 + + + True + vertical + + + True + + + True + _File + True + + + + + _Import... + True + True + False + + + + + + + Import _Location... + True + True + False + + + + + + + True + + + + + gtk-save + True + True + True + + + + + + Save _As... + True + True + False + + + + + + + _Upload... + True + True + False + + + + + + + _Draw... + True + True + False + + + + + + + True + + + + + gtk-close + True + True + True + + + + + + True + + + + + gtk-quit + True + True + True + + + + + + + + + + True + _Edit + True + + + + + True + _Edit connections + True + True + + + + + + True + + + + + gtk-cut + True + False + True + True + + + + + + gtk-copy + True + True + True + + + + + + gtk-paste + True + False + True + True + + + + + + gtk-delete + True + True + True + + + + + + + gtk-select-all + True + True + True + + + + + + + True + + + + + Arrange + True + True + False + + + + + + True + + + + + C_ontrols... + True + True + False + + + + + + + gtk-properties + True + True + True + + + + + + + + + + + True + _View + True + + + + + True + _Human names + True + True + + + + + + True + Port _Names + True + True + + + + + + True + _Status Bar + True + True + + + + + + True + + + + + gtk-zoom-in + True + True + True + + + + + + gtk-zoom-out + True + True + True + + + + + + gtk-zoom-100 + True + True + True + + + + + + True + + + + + gtk-fullscreen + True + True + True + + + + + + + + + + + True + _Windows + True + + + + + + _Engine + True + True + False + + + + + + + _Patch Tree + True + True + False + + + + + + + _Messages + True + True + False + + + + + + + + + + + True + _Help + True + + + + + + Right-click the canvas to add objects + True + True + False + + + + + Press 'e' to toggle edit mode + True + True + False + + + + + True + + + + + gtk-about + True + True + True + + + + + + + + + + False + False + 0 + + + + + True + True + + + True + True + automatic + automatic + + + True + queue + none + + + + + + + + True + False + + + + + True + True + False + word + False + + + False + True + + + + + 1 + + + + + True + 2 + + + False + 2 + + + + + + + 8 + Load Plugin - Ingen + center-on-parent + True + dialog + + + True + 1 + + + True + True + 2 + automatic + automatic + + + True + True + 2 + True + True + + + + + 0 + + + + + True + 3 + 3 + 12 + + + True + 1 + Node _Symbol: + True + True + load_plugin_name_entry + + + 2 + 3 + GTK_FILL + + + + + + True + + + 1 + 2 + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + + + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + + + 2 + 3 + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + + + True + True + + + 0 + + + + + _Polyphonic + True + True + False + True + True + True + + + False + False + 8 + 1 + + + + + 1 + 2 + 2 + 3 + GTK_FILL + 6 + + + + + True + True + True + gtk-clear + True + True + + + 1 + 3 + GTK_FILL + + + + + True + + + GTK_FILL + + + + + + True + 4 + + + gtk-close + True + True + True + True + + + False + False + 0 + + + + + gtk-add + True + True + True + True + + + False + False + 1 + + + + + 2 + 3 + 2 + 3 + GTK_FILL + GTK_FILL + + + + + False + False + 1 + + + + + + + 320 + 8 + Create Subpatch - Ingen + False + center-on-parent + dialog + + + True + + + True + 2 + 2 + + + True + 0 + _Symbol: + True + new_subpatch_name_entry + + + GTK_FILL + GTK_EXPAND + 5 + + + + + True + 0 + _Polyphony: + True + new_subpatch_polyphony_spinbutton + + + 1 + 2 + GTK_FILL + GTK_EXPAND + 5 + + + + + True + True + True + + 1 + + + 1 + 2 + 1 + 2 + GTK_FILL + + 4 + + + + + True + True + True + True + + + 1 + 2 + + 4 + + + + + 0 + + + + + True + True + + + False + False + 1 + + + + + True + 4 + end + + + gtk-cancel + True + True + False + True + + + False + False + 0 + + + + + gtk-ok + True + True + True + True + False + True + + + False + False + 1 + + + + + 2 + + + + + + + Load Patch - Ingen + center-on-parent + dialog + + + 24 + + + True + 0 + 0 + + + True + 3 + 3 + 12 + 12 + + + True + 0 + Polyphony: + True + + + 1 + 2 + GTK_FILL + + + + + + Load from _File + True + True + False + True + True + True + load_patch_poly_voices_radio + + + 2 + 3 + 1 + 2 + GTK_FILL + + + + + + True + 0 + Ports: + True + + + 2 + 3 + GTK_FILL + + + + + _Insert new ports + True + True + False + True + True + True + load_patch_merge_ports_radio + + + 2 + 3 + 2 + 3 + GTK_FILL + + + + + _Merge with existing ports + True + True + False + True + True + True + True + + + 1 + 2 + 2 + 3 + GTK_FILL + + + + + True + 6 + + + _Voices: + True + True + False + True + True + True + True + + + False + False + 0 + + + + + True + True + + + 1 + + + False + 1 + + + + + 1 + 2 + 1 + 2 + GTK_FILL + GTK_FILL + + + + + True + 0 + _Symbol: + True + True + load_patch_symbol_entry + + + GTK_FILL + + + + + + True + True + + True + + + 1 + 3 + GTK_FILL + + + + + + + False + False + 2 + + + + + True + end + + + gtk-cancel + True + True + True + False + True + + + False + False + 0 + + + + + gtk-open + True + True + True + True + False + True + + + False + False + 1 + + + + + False + end + 0 + + + + + + load_patch_cancel_button + load_patch_ok_button + + + + Warehouse - Ingen + + + True + 6 + 12 + 12 + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + 0 + 4 + <b>Name</b> + True + True + + + False + False + 0 + + + + + True + 1 + 0 + 1 + 1 + 4 + + + True + + + + + 1 + + + + + True + True + False + True + + + False + 2 + + + + + False + False + 0 + + + + + 4 + 5 + 8 + + + + + True + + + True + 0 + + + True + True + never + automatic + + + True + none + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + + + + + + + 0 + + + + + + + True + + + True + + + True + icons + 1 + + + True + + + + + + False + + + + + 0 + + + + + True + icons + False + 1 + + + True + True + gtk-execute + True + + + False + True + + + + + True + + + True + 4 + gtk-copy + + + + + False + + + + + True + + + True + True + + 1 + True + + + + + False + + + + + True + + + False + + + + + True + gtk-save + + + False + True + + + + + True + + + False + + + + + True + gtk-refresh + + + False + True + + + + + True + True + gtk-zoom-100 + + + False + True + + + + + True + True + gtk-zoom-fit + + + False + True + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + False + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + Edit + gtk-connect + True + + + False + True + + + + + False + 1 + + + + + False + False + 0 + + + + + True + True + True + True + True + True + GDK_EXPOSURE_MASK | GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_MOTION_MASK | GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK | GDK_FOCUS_CHANGE_MASK | GDK_STRUCTURE_MASK | GDK_PROPERTY_CHANGE_MASK | GDK_VISIBILITY_NOTIFY_MASK | GDK_PROXIMITY_IN_MASK | GDK_PROXIMITY_OUT_MASK | GDK_SUBSTRUCTURE_MASK | GDK_SCROLL_MASK + 1 + in + + + + + + 1 + + + + + 2 + 3 + GTK_FILL + + + + + True + + + 1 + 2 + GTK_FILL + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + 0 + 1 + 4 + <b>Name</b> + True + True + + + False + False + 0 + + + + + True + 1 + 0 + 1 + 1 + 4 + + + True + + + + + 1 + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + 12 + + 4 + True + + + False + 2 + + + + + False + False + 0 + + + + + True + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + 63 + False + + + False + 1 + + + + + 3 + 4 + 8 + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + vertical + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + 0 + 4 + <b>Name</b> + True + True + + + False + False + 0 + + + + + True + True + + False + + + 1 + + + + + False + False + 0 + + + + + 5 + 6 + 8 + + + + + + + 400 + 180 + 8 + Messages - Ingen + + + True + 6 + + + True + True + automatic + automatic + in + + + True + True + 5 + 5 + False + word + 5 + 5 + False + False + + + + + 0 + + + + + True + 6 + end + + + gtk-clear + True + False + True + True + False + True + + + False + False + 0 + + + + + gtk-close + True + True + False + True + + + False + False + 1 + + + + + False + 1 + + + + + + + 8 + Configuration - Ingen + + + True + 6 + + + True + 2 + 2 + + + True + <b>Patch Search Path: </b> + True + + + GTK_FILL + + + + + + True + True + + + 1 + 2 + + + + + + True + <i>Example: /foo/bar:/home/john/patches:/usr/share/om/patches</i> + True + + + 1 + 2 + 1 + 2 + GTK_FILL + + + + + + True + 0 + + + 1 + 2 + GTK_FILL + + + + + + False + 0 + + + + + True + 6 + end + + + gtk-save + True + True + False + True + + + False + False + 0 + + + + + gtk-cancel + True + True + False + True + + + False + False + 1 + + + + + gtk-ok + True + True + False + True + + + False + False + 2 + + + + + False + 1 + + + + + + + 250 + Rename + center-on-parent + True + dialog + + + True + 5 + vertical + + + True + 2 + 2 + 8 + + + True + _Symbol: + True + rename_symbol_entry + + + GTK_FILL + + + + + True + True + + True + + + 1 + 2 + 1 + 2 + + + + + True + _Label: + True + rename_label_entry + + + 1 + 2 + GTK_FILL + + + + + True + True + True + + True + + + 1 + 2 + + + + + 0 + + + + + True + + + 12 + 1 + + + + + True + 8 + end + + + gtk-cancel + True + True + True + True + True + + + False + False + 0 + + + + + gtk-ok + True + True + True + True + False + True + + + False + False + 1 + + + + + False + 2 + + + + + + + True + normal + Ingen + @INGEN_VERSION@ + Copyright 2005-2011 David Robillard <http://drobilla.net> + http://drobilla.net/software/ingen + Licensed under the GNU GPL, Version 2. + +See COPYING file included with this distribution, or http://www.gnu.org/licenses/gpl.txt for more information + Author: + David Robillard <d@drobilla.net> + +Contributors: + Lars Luthman - DSSI enhancements, bugfixes + Mario Lang - SuperCollider bindings, bugfixes + Leonard Ritter - Python bindings + + translator-credits + Usability / UI Design: + Thorsten Wilms + True + + + + + + False + end + 0 + + + + + + + 320 + 340 + 8 + Patches - Ingen + + + True + True + 3 + automatic + automatic + in + + + True + True + True + + + + + + + 6 + Engine - Ingen + False + dialog + + + True + 6 + + + True + + + True + + + True + 12 + gtk-disconnect + 3 + + + False + 0 + + + + + True + 5 + True + + + True + 0.10000000149 + + + False + False + 0 + + + + + True + 0 + Not Connected + + + False + 1 + + + + + 1 + + + + + False + 0 + + + + + True + + + False + 4 + 1 + + + + + True + 3 + 2 + 8 + + + True + + + True + False + True + + 1 + True + + + False + False + 0 + + + + + 1 + 2 + 1 + 2 + GTK_FILL + 8 + + + + + True + + + True + True + True + 28 + osc.udp://localhost:16180 + + + 0 + + + + + 1 + 2 + GTK_FILL + GTK_FILL + 8 + + + + + _Connect to running server at: + True + True + False + True + True + + + GTK_FILL + + + + + + _Launch and connect to server on port: + True + True + False + True + True + connect_server_radiobutton + + + 1 + 2 + GTK_FILL + + + + + + Use _internal engine + True + False + True + False + True + True + connect_server_radiobutton + + + 2 + 3 + GTK_FILL + + + + + + True + 0 + + + 1 + 2 + 2 + 3 + GTK_FILL + + + + + + 2 + + + + + True + + + False + 3 + + + + + True + 6 + start + + + D_eactivate + True + True + True + True + + + False + False + 0 + + + + + _Activate + True + True + True + True + + + False + False + 1 + + + + + 6 + 4 + + + + + 2 + + + + + True + end + + + gtk-quit + True + True + True + False + True + + + False + False + 0 + + + + + gtk-disconnect + True + False + True + True + False + True + + + False + False + 1 + + + + + gtk-connect + True + True + True + True + False + True + + + False + False + 2 + + + + + False + False + end + 0 + + + + + + connect_quit_button + connect_disconnect_button + connect_connect_button + + + + True + + + True + _Edit + True + True + + + + + True + + + + + _Input + True + True + False + + + + + True + _Audio + True + + + + + + True + _Control + True + + + + + + True + _Event + True + + + + + + + + + + _Output + True + True + False + + + + + True + _Audio + True + + + + + + True + _Control + True + + + + + + True + _Event + True + + + + + + + + + + _Find Plugin... + True + True + False + + + + + + True + + + + + _Load Patch... + True + True + False + + + + + + _New Patch... + True + True + False + + + + + + 8 + Download Patch - Ingen + dialog + + + True + 8 + + + True + 8 + + + True + True + True + automatic + automatic + in + + + True + True + + + + + 0 + + + + + True + + + True + URI: + + + False + False + 0 + + + + + True + True + 78 + + + 1 + + + + + False + 1 + + + + + 2 + + + + + True + end + + + gtk-cancel + True + True + True + False + True + + + False + False + 0 + + + + + gtk-open + True + False + True + True + True + False + True + + + False + False + 1 + + + + + False + end + 0 + + + + + + load_remote_patch_cancel_button + load_remote_patch_open_button + + + + 8 + Upload Patch - Ingen + False + dialog + + + True + 9 + + + True + 2 + 2 + 8 + + + True + True + True + + + 1 + 2 + + + + + + True + True + True + + + 1 + 2 + 1 + 2 + + + + + + True + 0 + Symbol: + + + GTK_FILL + + + + + + True + 0 + Short Name: + + + 1 + 2 + GTK_FILL + + + + + + 2 + + + + + True + 4 + Succesfully uploaded patches will be available immediately in the remote patch browser. + +By uploading patches, you agree to license them under the Creative Commons Attribution-Share Alike 3.0 License. + +Thank you for contributing. + True + + + False + False + 3 + + + + + True + 0.10000000149 + + + False + False + 4 + + + + + True + end + + + gtk-close + True + True + True + False + True + + + False + False + 0 + + + + + True + False + True + True + True + False + + + True + 0 + 0 + + + True + 2 + + + True + gtk-ok + + + False + False + 0 + + + + + True + Upload + True + + + False + False + 1 + + + + + + + + + False + False + 1 + + + + + False + end + 0 + + + + + + upload_patch_cancel_button + upload_patch_upload_button + + + + + + gtk-properties + True + True + True + + + + + + 8 + Port Properties - Ingen + False + mouse + + + True + 8 + + + True + 2 + 2 + 2 + 4 + + + True + True + + 1 + 5 + True + + + 1 + 2 + + + + + + True + True + + 1 + 5 + True + + + 1 + 2 + 1 + 2 + + + + + + True + 0 + Minimum Value: + + + GTK_FILL + + + + + + True + 0 + Maximum Value: + + + 1 + 2 + GTK_FILL + + + + + + 2 + + + + + True + end + + + gtk-cancel + True + True + True + False + True + + + False + False + 0 + + + + + gtk-ok + True + True + True + True + False + True + + + False + False + 1 + + + + + False + end + 0 + + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + P_olyphonic + True + + + + + True + _Learn + True + + + + + True + _Unlearn + True + + + + + Dis_connect + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + False + + + + + _Rename... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + False + + + + + gtk-delete + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + True + + + + + True + + + + + gtk-properties + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + True + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + Con_trols... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + False + + + + + _GUI... + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + True + False + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + _Embed GUI + True + + + + + R_andomize + True + True + False + + + + + 12 + center-on-parent + + + True + vertical + 12 + + + True + True + automatic + automatic + + + True + queue + none + + + True + 3 + 12 + 6 + + + + + + + + + + + + + + + + 0 + + + + + True + 6 + end + + + gtk-cancel + True + True + True + True + True + + + False + False + 0 + + + + + gtk-apply + True + True + True + True + + + False + False + 1 + + + + + gtk-ok + True + True + True + True + True + True + + + False + False + 2 + + + + + False + end + 1 + + + + + + + True + GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK + + + True + Set m_inimum to current value + True + + + + + True + Set m_aximum to current value + True + + + + + True + R_eset Range + True + + + + diff --git a/src/gui/wscript b/src/gui/wscript index f5f28499..43a96904 100644 --- a/src/gui/wscript +++ b/src/gui/wscript @@ -15,7 +15,6 @@ def build(bld): Connection.cpp ControlPanel.cpp Controls.cpp - GladeFactory.cpp LoadPatchWindow.cpp LoadPluginWindow.cpp LoadRemotePatchWindow.cpp @@ -37,6 +36,7 @@ def build(bld): RenameWindow.cpp SubpatchModule.cpp ThreadedLoader.cpp + WidgetFactory.cpp Window.cpp WindowFactory.cpp ingen_gui.cpp @@ -67,10 +67,10 @@ def build(bld): SUIL ''') - # Glade XML UI definition + # XML UI definition bld(features = 'subst', - source = 'ingen_gui.glade', - target = '../../ingen_gui.glade', + source = 'ingen_gui.ui', + target = '../../ingen_gui.ui', install_path = '${DATADIR}/ingen', chmod = Utils.O755, INGEN_VERSION = bld.env['INGEN_VERSION']) diff --git a/src/serialisation/Parser.cpp b/src/serialisation/Parser.cpp index 88b12d6c..5197c175 100644 --- a/src/serialisation/Parser.cpp +++ b/src/serialisation/Parser.cpp @@ -43,7 +43,7 @@ #define LOG(s) s << "[Parser] " -#define NS_INGEN "http://drobilla.net/ns/ingen#" +//#define NS_INGEN "http://drobilla.net/ns/ingen#" // defined in Resource.hpp #define NS_LV2 "http://lv2plug.in/ns/lv2core#" #define NS_RDF "http://www.w3.org/1999/02/22-rdf-syntax-ns#" #define NS_RDFS "http://www.w3.org/2000/01/rdf-schema#" diff --git a/wscript b/wscript index 95b2414c..cfd1284d 100644 --- a/wscript +++ b/wscript @@ -58,11 +58,9 @@ def configure(conf): atleast_version='0.3.0', mandatory=False) if not Options.options.no_gui: autowaf.check_pkg(conf, 'gtkmm-2.4', uselib_store='GTKMM', - atleast_version='2.11.12', mandatory=False) + atleast_version='2.12.0', mandatory=False) autowaf.check_pkg(conf, 'gtkmm-2.4', uselib_store='NEW_GTKMM', atleast_version='2.14.0', mandatory=False) - autowaf.check_pkg(conf, 'libglademm-2.4', uselib_store='GLADEMM', - atleast_version='2.6.0', mandatory=False) autowaf.check_pkg(conf, 'flowcanvas', uselib_store='FLOWCANVAS', atleast_version='0.8.0', mandatory=False) if not Options.options.no_http: @@ -92,9 +90,7 @@ def configure(conf): autowaf.define(conf, 'INGEN_VERSION', INGEN_VERSION) - if (not Options.options.no_gui - and conf.is_defined('HAVE_GLADEMM') - and conf.is_defined('HAVE_FLOWCANVAS')): + if not Options.options.no_gui and conf.is_defined('HAVE_FLOWCANVAS'): autowaf.define(conf, 'INGEN_BUILD_GUI', 1) if conf.is_defined('HAVE_JACK'): -- cgit v1.2.1