summaryrefslogtreecommitdiff
path: root/libs/canvas/canvas/wave_view.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-04-16 14:04:59 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-04-16 14:04:59 -0400
commitccc9b6adee762bc1e899bf5bcba7941d2e7d6db4 (patch)
treed60cc09b20ded6ecaea5b15252e53ffab01f3fc7 /libs/canvas/canvas/wave_view.h
parentabba366fcea05d86e77cdf899157efc236ad34b6 (diff)
change rendering technique for waveforms, add back optional gradient, add back amplitude scaling, add rgb/hsv conversion utilities to canvas
Diffstat (limited to 'libs/canvas/canvas/wave_view.h')
-rw-r--r--libs/canvas/canvas/wave_view.h10
1 files changed, 10 insertions, 0 deletions
diff --git a/libs/canvas/canvas/wave_view.h b/libs/canvas/canvas/wave_view.h
index 33fec55e72..63be77cfe4 100644
--- a/libs/canvas/canvas/wave_view.h
+++ b/libs/canvas/canvas/wave_view.h
@@ -55,6 +55,8 @@ public:
void render (Rect const & area, Cairo::RefPtr<Cairo::Context>) const;
void compute_bounding_box () const;
+
+ void rebuild ();
void set_samples_per_pixel (double);
void set_height (Distance);
@@ -75,6 +77,9 @@ public:
void set_shape (Shape);
Shape shape() const;
+ static void set_gradient_waveforms (bool);
+ static bool gradient_waveforms() { return _gradient_waveforms; }
+
#ifdef CANVAS_COMPATIBILITY
void*& property_gain_src () {
return _foo_void;
@@ -149,6 +154,11 @@ private:
ARDOUR::frameoffset_t _region_start;
mutable std::list<CacheEntry*> _cache;
+
+ PBD::ScopedConnection invalidation_connection;
+
+ static bool _gradient_waveforms;
+ static PBD::Signal0<void> InvalidateAllImages;
};
}