X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fcrossfade_edit.h;h=5d9e665ba0f3f0515b3a1fe53af4402c972b97d0;hb=caae0546a76eb8c41701b92ba52ac0c6f199d79e;hp=d92288e6502950963ec08f18e1fe133874e17ce1;hpb=3c00a7ca2ae34cb65c8d3394d9a012f20c69ee77;p=ardour.git diff --git a/gtk2_ardour/crossfade_edit.h b/gtk2_ardour/crossfade_edit.h index d92288e650..5d9e665ba0 100644 --- a/gtk2_ardour/crossfade_edit.h +++ b/gtk2_ardour/crossfade_edit.h @@ -26,11 +26,12 @@ #include #include +#include "canvas/canvas.h" + #include "evoral/Curve.hpp" #include "ardour/session_handle.h" #include "ardour_dialog.h" -#include "canvas.h" namespace ARDOUR { @@ -39,6 +40,13 @@ namespace ARDOUR class Crossfade; } +namespace ArdourCanvas { + class Rectangle; + class Line; + class Polygon; + class WaveView; +} + class CrossfadeEditor : public ArdourDialog { public: @@ -87,8 +95,8 @@ class CrossfadeEditor : public ArdourDialog struct Point { ~Point(); - ArdourCanvas::SimpleRect* box; - ArdourCanvas::Line* curve; + ArdourCanvas::Rectangle* box; + ArdourCanvas::PolyLine* curve; double x; double y; @@ -103,11 +111,11 @@ class CrossfadeEditor : public ArdourDialog } }; - ArdourCanvas::SimpleRect* toplevel; - ArdourCanvas::Canvas* canvas; + ArdourCanvas::Rectangle* toplevel; + ArdourCanvas::GtkCanvas* canvas; struct Half { - ArdourCanvas::Line* line; + ArdourCanvas::PolyLine* line; ArdourCanvas::Polygon* shading; std::list points; ARDOUR::AutomationList normative_curve; /* 0 - 1.0, linear */ @@ -183,7 +191,7 @@ class CrossfadeEditor : public ArdourDialog void set (const ARDOUR::AutomationList& alist, WhichFade); - PBD::ScopedConnection peaks_ready_connection; + PBD::ScopedConnection* _peaks_ready_connection; PBD::ScopedConnection state_connection; void make_waves (boost::shared_ptr, WhichFade); @@ -213,7 +221,7 @@ class CrossfadeEditor : public ArdourDialog void audition_right_dry (); void audition_right (); - void xfade_changed (PBD::Change); + void xfade_changed (const PBD::PropertyChange&); void dump (); };