diff options
author | Sakari Bergen <sakari.bergen@beatwaves.net> | 2008-09-19 16:56:01 +0000 |
---|---|---|
committer | Sakari Bergen <sakari.bergen@beatwaves.net> | 2008-09-19 16:56:01 +0000 |
commit | 68f04adec110a991e2b2c1657e67a7dc791decc1 (patch) | |
tree | e5a47603b50d0e17e69ffcfd904424ed06180ddf /libs/ardour/ardour/export_profile_manager.h | |
parent | fa4bca989b18259456ec713b8f02e061ec8bc8e2 (diff) |
* Added PBD::UUID
* uuid headers are needed for building!
* Export presets and format profiles use UUID
* Moved ExportPreset class away from ExportProfileManager
* Workaround for Gtk::NoteBook bug in ExportMainDialog
git-svn-id: svn://localhost/ardour2/branches/3.0@3762 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/export_profile_manager.h')
-rw-r--r-- | libs/ardour/ardour/export_profile_manager.h | 52 |
1 files changed, 8 insertions, 44 deletions
diff --git a/libs/ardour/ardour/export_profile_manager.h b/libs/ardour/ardour/export_profile_manager.h index 1a855d6868..84a5251aa8 100644 --- a/libs/ardour/ardour/export_profile_manager.h +++ b/libs/ardour/ardour/export_profile_manager.h @@ -31,6 +31,7 @@ #include <sigc++/signal.h> #include <glibmm/ustring.h> +#include <pbd/uuid.h> #include <pbd/file_utils.h> #include <pbd/xml++.h> @@ -50,6 +51,7 @@ class ExportTimespan; class ExportChannelConfiguration; class ExportFormatSpecification; class ExportFilename; +class ExportPreset; class Location; class Session; @@ -57,46 +59,6 @@ class Session; class ExportProfileManager { public: - class Preset { - public: - Preset (string filename, Session & s); - ~Preset (); - - uint32_t id () const { return _id; } - string name () const { return _name; } - - void set_name (string name); - void set_id (uint32_t id); - - // Note: The set_..._state functions take ownership of the XMLNode - void set_global_state (XMLNode & state); - void set_local_state (XMLNode & state); - - XMLNode const * get_global_state () const { return global.root(); } - XMLNode const * get_local_state () const { return local; } - - void save () const; - void remove_local () const; - - private: - - XMLNode * get_instant_xml () const; - void save_instant_xml () const; - void remove_instant_xml () const; - - uint32_t _id; - string _name; - - Session & session; - XMLTree global; - XMLNode * local; - - }; - - typedef boost::shared_ptr<Preset> PresetPtr; - typedef std::list<PresetPtr> PresetList; - - public: ExportProfileManager (Session & s); ~ExportProfileManager (); @@ -104,6 +66,9 @@ class ExportProfileManager void load_profile (); void prepare_for_export (); + typedef boost::shared_ptr<ExportPreset> PresetPtr; + typedef std::list<PresetPtr> PresetList; + PresetList const & get_presets () { return preset_list; } void load_preset (PresetPtr preset); PresetPtr save_preset (string const & name); @@ -112,14 +77,14 @@ class ExportProfileManager private: typedef boost::shared_ptr<ExportHandler> HandlerPtr; - typedef std::pair<uint32_t, PBD::sys::path> FilePair; - typedef std::map<uint32_t, PBD::sys::path> FileMap; + typedef std::pair<PBD::UUID, PBD::sys::path> FilePair; + typedef std::map<PBD::UUID, PBD::sys::path> FileMap; HandlerPtr handler; Session & session; void load_presets (); - uint32_t load_preset_from_disk (PBD::sys::path const & path); // Returns preset id + void load_preset_from_disk (PBD::sys::path const & path); void set_state (XMLNode const & root); void set_global_state (XMLNode const & root); @@ -131,7 +96,6 @@ class ExportProfileManager PresetList preset_list; PresetPtr current_preset; - uint32_t preset_id_counter; FileMap preset_file_map; std::vector<PBD::sys::path> find_file (std::string const & pattern); |