fix issue with solo-in-place
[ardour.git] / gtk2_ardour / export_format_selector.h
index 46d9bc3f069486a18dba139b439cb6fe5af44e5f..4af647ac9c8e8355f57b29df142e0778a5465ba9 100644 (file)
 #ifndef __export_format_selector_h__
 #define __export_format_selector_h__
 
-#include "ardour/export_profile_manager.h"
-
+#include <string>
 #include <gtkmm.h>
 #include <sigc++/signal.h>
 #include <boost/shared_ptr.hpp>
 
+#include "ardour/export_profile_manager.h"
+#include "ardour/session_handle.h"
+
 namespace ARDOUR {
-       class Session;
        class ExportFormatSpecification;
        class ExportProfileManager;
 }
 
 ///
-class ExportFormatSelector : public Gtk::HBox {
+class ExportFormatSelector : public Gtk::HBox, public ARDOUR::SessionHandlePtr
+{
 
   private:
 
@@ -61,13 +63,12 @@ class ExportFormatSelector : public Gtk::HBox {
 
        void select_format (FormatPtr f);
        void add_new_format ();
-       void remove_format ();
+       void remove_format (bool called_from_button = false);
        int open_edit_dialog (bool new_dialog = false);
        void update_format_combo ();
        void update_format_description ();
 
        ARDOUR::ExportProfileManager::FormatStatePtr state;
-       ARDOUR::Session * session;
 
        /*** GUI componenets ***/
 
@@ -75,7 +76,7 @@ class ExportFormatSelector : public Gtk::HBox {
        {
          public:
                Gtk::TreeModelColumn<FormatPtr>      format;
-               Gtk::TreeModelColumn<Glib::ustring>  label;
+               Gtk::TreeModelColumn<std::string>  label;
 
                FormatCols () { add (format); add (label); }
        };