fix reversion of keyboard focus from gain display editing widget in both mixer and...
[ardour.git] / gtk2_ardour / export_timespan_selector.h
index d855df4d89c2d1f59b30ca5d0a52b3714453e04d..2118a57b836f23353203524b41acdc4f25f7374e 100644 (file)
@@ -21,7 +21,6 @@
 #ifndef __export_timespan_selector_h__
 #define __export_timespan_selector_h__
 
-#include "public_editor.h"
 #include "audio_clock.h"
 
 #include <list>
@@ -40,6 +39,7 @@ namespace ARDOUR {
 }
 
 using ARDOUR::CDMarkerFormat;
+using ARDOUR::framecnt_t;
 
 /// Timespan Selector base
 class ExportTimespanSelector : public Gtk::VBox, public ARDOUR::SessionHandlePtr
@@ -49,8 +49,7 @@ class ExportTimespanSelector : public Gtk::VBox, public ARDOUR::SessionHandlePtr
        typedef boost::shared_ptr<ARDOUR::ExportHandler> HandlerPtr;
        typedef boost::shared_ptr<ARDOUR::ExportProfileManager> ProfileManagerPtr;
 
-       typedef boost::shared_ptr<ARDOUR::ExportTimespan> TimespanPtr;
-       typedef std::list<TimespanPtr> TimespanList;
+       typedef std::list<ARDOUR::ExportTimespanPtr> TimespanList;
        typedef boost::shared_ptr<TimespanList> TimespanListPtr;
        typedef ARDOUR::ExportProfileManager::TimespanStatePtr TimespanStatePtr;
 
@@ -77,12 +76,15 @@ class ExportTimespanSelector : public Gtk::VBox, public ARDOUR::SessionHandlePtr
        void change_time_format ();
 
        std::string construct_label (ARDOUR::Location const * location) const;
-       std::string bbt_str (nframes_t frames) const;
-       std::string timecode_str (nframes_t frames) const;
-       std::string ms_str (nframes_t frames) const;
+       std::string construct_length (ARDOUR::Location const * location) const;
+       std::string bbt_str (framepos_t frames) const;
+       std::string timecode_str (framecnt_t frames) const;
+       std::string ms_str (framecnt_t frames) const;
 
        void update_range_name (std::string const & path, std::string const & new_text);
 
+       void set_selection_state_of_all_timespans (bool);
+
        /*** GUI components ***/
 
        Gtk::HBox      option_hbox;
@@ -111,10 +113,11 @@ class ExportTimespanSelector : public Gtk::VBox, public ARDOUR::SessionHandlePtr
          public:
                Gtk::TreeModelColumn<ARDOUR::Location *>  location;
                Gtk::TreeModelColumn<std::string>       label;
-               Gtk::TreeModelColumn<bool>                selected;
+               Gtk::TreeModelColumn<bool>              selected;
                Gtk::TreeModelColumn<std::string>       name;
+               Gtk::TreeModelColumn<std::string>       length;
 
-               RangeCols () { add (location); add(label); add(selected); add(name); }
+               RangeCols () { add (location); add(label); add(selected); add(name); add(length); }
        };
        RangeCols                    range_cols;