Add select all / deselect all to timespan section of export dialogue (#4273).
[ardour.git] / gtk2_ardour / crossfade_edit.h
index f2ec1a125bdd493d064bab253c1b6739833f4ac4..fab459c54fead1fdfbce9b9e245e67955721f2cf 100644 (file)
@@ -27,6 +27,8 @@
 #include <gtkmm/radiobutton.h>
 
 #include "evoral/Curve.hpp"
+#include "ardour/session_handle.h"
+
 #include "ardour_dialog.h"
 #include "canvas.h"
 
@@ -40,7 +42,7 @@ namespace ARDOUR
 class CrossfadeEditor : public ArdourDialog
 {
   public:
-       CrossfadeEditor (ARDOUR::Session&, boost::shared_ptr<ARDOUR::Crossfade>, double miny, double maxy);
+       CrossfadeEditor (ARDOUR::Session*, boost::shared_ptr<ARDOUR::Crossfade>, double miny, double maxy);
        ~CrossfadeEditor ();
 
        void apply ();
@@ -79,7 +81,6 @@ class CrossfadeEditor : public ArdourDialog
 
   private:
        boost::shared_ptr<ARDOUR::Crossfade> xfade;
-       ARDOUR::Session& session;
 
        Gtk::VBox vpacker;
 
@@ -182,10 +183,11 @@ class CrossfadeEditor : public ArdourDialog
 
        void set (const ARDOUR::AutomationList& alist, WhichFade);
 
-       sigc::connection peaks_ready_connection;
+       PBD::ScopedConnection* _peaks_ready_connection;
+       PBD::ScopedConnection state_connection;
 
        void make_waves (boost::shared_ptr<ARDOUR::AudioRegion>, WhichFade);
-       void peaks_ready (boost::shared_ptr<ARDOUR::AudioRegion> r, WhichFade);
+       void peaks_ready (boost::weak_ptr<ARDOUR::AudioRegion> r, WhichFade);
 
        void _apply_to (boost::shared_ptr<ARDOUR::Crossfade> xf);
        void setup (boost::shared_ptr<ARDOUR::Crossfade>);
@@ -211,7 +213,7 @@ class CrossfadeEditor : public ArdourDialog
        void audition_right_dry ();
        void audition_right ();
 
-       void xfade_changed (ARDOUR::Change);
+       void xfade_changed (const PBD::PropertyChange&);
 
        void dump ();
 };