Mercurial > hg > svgui
comparison layer/Layer.h @ 133:9e6b3e239b9d
* Add zoom thumbwheels to Pane. Implement horizontal thumbwheel, and
vertical depending on layer type (supported for waveform and spectrogram,
though wrong for log-scale spectrogram at the moment).
* Add bare bones of a spectrum layer.
* Add window icon
* Add shortcut for "insert time instant" on laptops without keypad enter (";")
* Delete FFT processing thread when it exits (at least, next time we're asked
for something interesting)
* Get audio file extensions from the file readers, and thus from libsndfile for
the wave file reader -- leads to rather a wide combo box in file dialog though
* Better refresh order for spectrogram (redraw centre section first)
author | Chris Cannam |
---|---|
date | Fri, 04 Aug 2006 17:01:37 +0000 |
parents | eaae73b6bd28 |
children | 10a82b2bbb8b |
comparison
equal
deleted
inserted
replaced
132:5d3a483856ff | 133:9e6b3e239b9d |
---|---|
278 virtual bool setDisplayExtents(float /* min */, | 278 virtual bool setDisplayExtents(float /* min */, |
279 float /* max */) { | 279 float /* max */) { |
280 return false; | 280 return false; |
281 } | 281 } |
282 | 282 |
283 /** | |
284 * Get the number of vertical zoom steps available for this layer. | |
285 * If vertical zooming is not available, return 0. The meaning of | |
286 * "zooming" is entirely up to the layer -- changing the zoom | |
287 * level may cause the layer to reset its display extents or | |
288 * change another property such as display gain. | |
289 * Layers that provide this facility should also emit the | |
290 * verticalZoomChanged signal if their vertical zoom changes | |
291 * due to factors other than setVerticalZoomStep being called. | |
292 */ | |
293 virtual int getVerticalZoomSteps(int &defaultStep) const { return 0; } | |
294 | |
295 /** | |
296 * Get the current vertical zoom step. A layer may support finer | |
297 * control over ranges etc than is available through the integer | |
298 * zoom step mechanism; if this one does, it should just return | |
299 * the nearest of the available zoom steps to the current settings. | |
300 */ | |
301 virtual int getCurrentVerticalZoomStep() const { return 0; } | |
302 | |
303 /** | |
304 * Set the vertical zoom step. The meaning of "zooming" is | |
305 * entirely up to the layer -- changing the zoom level may cause | |
306 * the layer to reset its display extents or change another | |
307 * property such as display gain. | |
308 */ | |
309 virtual void setVerticalZoomStep(int) { } | |
310 | |
283 public slots: | 311 public slots: |
284 void showLayer(View *, bool show); | 312 void showLayer(View *, bool show); |
285 | 313 |
286 signals: | 314 signals: |
287 void modelChanged(); | 315 void modelChanged(); |
290 void modelReplaced(); | 318 void modelReplaced(); |
291 | 319 |
292 void layerParametersChanged(); | 320 void layerParametersChanged(); |
293 void layerNameChanged(); | 321 void layerNameChanged(); |
294 | 322 |
323 void verticalZoomChanged(); | |
324 | |
295 private: | 325 private: |
296 mutable QMutex m_dormancyMutex; | 326 mutable QMutex m_dormancyMutex; |
297 mutable std::map<const void *, bool> m_dormancy; | 327 mutable std::map<const void *, bool> m_dormancy; |
298 }; | 328 }; |
299 | 329 |