diff layer/Colour3DPlotLayer.h @ 25:dcdb21b62dbb

* Refactor sparse models. Previously the 1D and time-value models duplicated a lot of code; now there is a base class (SparseModel) templated on the stored point type, and the subclasses define point types with the necessary characteristics. * Add NoteModel, a new SparseModel subclass. * Reorganise local feature description display. Instead of asking the layer to draw its own, just query it for a textual description and draw that in Pane. Greatly simplifies this part of the layer code. * Add local feature descriptions to colour 3D plot and waveform layers. * Add pitch in MIDI-pitch-and-cents to spectrogram layer. * Give AudioGenerator its own mutex to shorten lock times in CallbackPlaySource. * Minor adjustments to layers menu &c
author Chris Cannam
date Thu, 02 Feb 2006 16:10:19 +0000
parents 6b794a2af3d9
children 202d1dca67d2
line wrap: on
line diff
--- a/layer/Colour3DPlotLayer.h	Wed Feb 01 14:49:49 2006 +0000
+++ b/layer/Colour3DPlotLayer.h	Thu Feb 02 16:10:19 2006 +0000
@@ -43,10 +43,17 @@
     virtual const Model *getModel() const { return m_model; }
     virtual void paint(QPainter &paint, QRect rect) const;
 
+    virtual int getVerticalScaleWidth(QPainter &) const;
+    virtual void paintVerticalScale(QPainter &paint, QRect rect) const;
+
+    virtual QString getFeatureDescription(QPoint &) const;
+
     virtual int getNearestFeatureFrame(int frame, 
 				       size_t &resolution,
 				       bool snapRight = true) const;
 
+    virtual bool isLayerScrollable() const;
+
     void setModel(const DenseThreeDimensionalModel *model);
 
     virtual int getCompletion() const { return m_model->getCompletion(); }