Move get_child_list() into TimeAxisView.
[ardour.git] / gtk2_ardour / crossfade_view.h
index 556d8c80c59ac7b793391fc824d69e8cb638a95a..db1d33fdf81163e653698942b26cf7c23ac473c6 100644 (file)
@@ -1,5 +1,5 @@
 /*
-    Copyright (C) 2003 Paul Davis 
+    Copyright (C) 2003 Paul Davis
 
     This program is free software; you can redistribute it and/or modify
     it under the terms of the GNU General Public License as published by
@@ -22,8 +22,8 @@
 
 #include <vector>
 #include <libgnomecanvasmm.h>
-#include <sigc++/signal.h>
-#include <ardour/crossfade.h>
+#include "pbd/signals.h"
+#include "ardour/crossfade.h"
 
 #include "time_axis_view_item.h"
 
@@ -32,10 +32,10 @@ class AudioRegionView;
 
 struct CrossfadeView : public TimeAxisViewItem
 {
-    CrossfadeView (ArdourCanvas::Group*, 
+    CrossfadeView (ArdourCanvas::Group*,
                   RouteTimeAxisView&,
                   boost::shared_ptr<ARDOUR::Crossfade>,
-                  double initial_samples_per_unit, 
+                  double initial_samples_per_unit,
                   Gdk::Color& basic_color,
                   AudioRegionView& leftview,
                   AudioRegionView& rightview);
@@ -52,14 +52,14 @@ struct CrossfadeView : public TimeAxisViewItem
     bool visible() const { return _visible; }
     void set_valid (bool yn);
 
-    static sigc::signal<void,CrossfadeView*> GoingAway;
+    static PBD::Signal1<void,CrossfadeView*> CatchDeletion;
 
     AudioRegionView& upper_regionview () const;
 
     void fake_hide ();
     void hide ();
     void show ();
-    
+
   protected:
     void reset_width_dependent_items (double pixel_width);
 
@@ -67,16 +67,15 @@ struct CrossfadeView : public TimeAxisViewItem
     bool _valid;
     bool _visible;
 
-    double spu;
-
-    ArdourCanvas::Item *overlap_rect;
     ArdourCanvas::Line *fade_in;
     ArdourCanvas::Line *fade_out;
     ArdourCanvas::Item *active_button;
 
-    void crossfade_changed (ARDOUR::Change);
+    void crossfade_changed (const PBD::PropertyChange&);
+    void crossfade_fades_changed ();
     void active_changed ();
     void redraw_curves ();
+    void color_handler ();
 };
 
 #endif /* __gtk_ardour_crossfade_view_h__ */