X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fsession_import_dialog.h;h=a6ed77516ec1866bb0ff48d1628cefd77156c918;hb=ebcabf59dae618a3c5f1b2e6c177b61fe0f9ea26;hp=cf1f5b0a4ec246ce5c9156293e8f75f80f645534;hpb=7e48118bf16702dc174875510b935f37290d56a7;p=ardour.git diff --git a/gtk2_ardour/session_import_dialog.h b/gtk2_ardour/session_import_dialog.h index cf1f5b0a4e..a6ed77516e 100644 --- a/gtk2_ardour/session_import_dialog.h +++ b/gtk2_ardour/session_import_dialog.h @@ -26,76 +26,83 @@ #include #include -#include + +#include +#include +#include +#include +#include +#include +#include +#include +#include #include "pbd/xml++.h" -#include "ardour/element_importer.h" -#include "ardour/element_import_handler.h" #include "ardour_dialog.h" - -using std::string; - namespace ARDOUR { + class ElementImportHandler; + class ElementImporter; class Session; } class SessionImportDialog : public ArdourDialog { - private: +private: typedef boost::shared_ptr HandlerPtr; typedef std::list HandlerList; - + typedef boost::shared_ptr ElementPtr; typedef std::list ElementList; - public: - SessionImportDialog (ARDOUR::Session & target); - +public: + SessionImportDialog (ARDOUR::Session* target); + virtual Gtk::FileChooserAction browse_action() const { return Gtk::FILE_CHOOSER_ACTION_OPEN; } - - private: - void load_session (const string& filename); +private: + + void load_session (const std::string& filename); void fill_list (); void browse (); void do_merge (); void end_dialog (); - void update (string path); + void update (std::string path); void show_info(const Gtk::TreeModel::Path& path, Gtk::TreeViewColumn* column); - - std::pair open_rename_dialog (string text, string name); - bool open_prompt_dialog (string text); + + std::pair open_rename_dialog (std::string text, std::string name); + bool open_prompt_dialog (std::string text); // Data HandlerList handlers; XMLTree tree; - ARDOUR::Session ⌖ // GUI Gtk::Frame file_frame; Gtk::HBox file_hbox; Gtk::Entry file_entry; Gtk::Button file_browse_button; - + struct SessionBrowserColumns : public Gtk::TreeModel::ColumnRecord { public: - Gtk::TreeModelColumn name; - Gtk::TreeModelColumn queued; - Gtk::TreeModelColumn element; - Gtk::TreeModelColumn info; + Gtk::TreeModelColumn name; + Gtk::TreeModelColumn queued; + Gtk::TreeModelColumn element; + Gtk::TreeModelColumn info; - SessionBrowserColumns() { add (name); add (queued); add (element); add (info); } + SessionBrowserColumns() { add (name); add (queued); add (element); add (info); } }; - + SessionBrowserColumns sb_cols; Glib::RefPtr session_tree; Gtk::TreeView session_browser; Gtk::ScrolledWindow session_scroll; - + Gtk::Button* ok_button; Gtk::Button* cancel_button; + + PBD::ScopedConnectionList connections; }; #endif