From ca1ddcc761b6546f9b81d357466071634d573d36 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Sun, 14 Feb 2010 22:34:36 +0000 Subject: Merge LoadPatchWindow and LoadSubpatchWindow. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2454 a436a847-0d15-0410-975c-d299462d15a1 --- src/gui/LoadPatchWindow.hpp | 43 +++++++++++++++++++++++-------------------- 1 file changed, 23 insertions(+), 20 deletions(-) (limited to 'src/gui/LoadPatchWindow.hpp') diff --git a/src/gui/LoadPatchWindow.hpp b/src/gui/LoadPatchWindow.hpp index faae39dd..c8eafa1e 100644 --- a/src/gui/LoadPatchWindow.hpp +++ b/src/gui/LoadPatchWindow.hpp @@ -15,33 +15,26 @@ * 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ -#ifndef INGEN_GUI_LOADPATCHWINDOW_HPP -#define INGEN_GUI_LOADPATCHWINDOW_HPP +#ifndef INGEN_GUI_LOADSUBPATCHWINDOW_HPP +#define INGEN_GUI_LOADSUBPATCHWINDOW_HPP #include #include #include "raul/SharedPtr.hpp" #include "interface/GraphObject.hpp" -#include "Window.hpp" - using namespace Ingen::Shared; namespace Ingen { -namespace Client { class PatchModel; class PluginModel; } -using Ingen::Client::PluginModel; +namespace Client { class PatchModel; } using Ingen::Client::PatchModel; namespace GUI { -/** 'Load Patch' window. - * - * Loaded by glade as a derived object. Used for both "Import" and "Load" - * (e.g. Replace, clear-then-import) operations (the radio button state - * should be changed with the provided methods before presenting). +/** 'Add Subpatch' window. * - * This is not for loading subpatches. See @a LoadSubpatchWindow for that. + * Loaded by glade as a derived object. * * \ingroup GUI */ @@ -52,35 +45,45 @@ public: void set_patch(SharedPtr patch); - void present(SharedPtr patch, GraphObject::Properties data); + void present(SharedPtr patch, bool import, GraphObject::Properties data); protected: void on_show(); private: - void poly_voices_selected(); - void poly_from_file_selected(); + void disable_poly_spinner(); + void enable_poly_spinner(); void merge_ports_selected(); void insert_ports_selected(); - void ok_clicked(); + + void selection_changed(); void cancel_clicked(); + void ok_clicked(); + + Raul::Symbol symbol_from_filename(const Glib::ustring& filename); + Raul::Symbol avoid_symbol_clash(const Raul::Symbol& symbol); GraphObject::Properties _initial_data; SharedPtr _patch; - bool _merge_ports; + Gtk::Label* _symbol_label; + Gtk::Entry* _symbol_entry; + Gtk::Label* _ports_label; + Gtk::RadioButton* _merge_ports_radio; + Gtk::RadioButton* _insert_ports_radio; Gtk::RadioButton* _poly_voices_radio; Gtk::RadioButton* _poly_from_file_radio; Gtk::SpinButton* _poly_spinbutton; - Gtk::RadioButton* _merge_ports_radio; - Gtk::RadioButton* _insert_ports_radio; Gtk::Button* _ok_button; Gtk::Button* _cancel_button; + + bool _import; + bool _merge_ports; }; } // namespace GUI } // namespace Ingen -#endif // INGEN_GUI_LOADPATCHWINDOW_HPP +#endif // INGEN_GUI_LOADSUBPATCHWINDOW_HPP -- cgit v1.2.1