annotate layer/LogNumericalScale.h @ 1548:bd6af89982d7

Permit getScaleProvidingLayerForUnit to return a dormant layer if there is no visible alternative. This is necessary to avoid the scale disappearing in Tony when the spectrogram is toggled off.
author Chris Cannam
date Thu, 17 Oct 2019 14:44:22 +0100
parents fc9d9f1103fa
children
rev   line source
Chris@696 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@696 2
Chris@696 3 /*
Chris@696 4 Sonic Visualiser
Chris@696 5 An audio file viewer and annotation editor.
Chris@696 6 Centre for Digital Music, Queen Mary, University of London.
Chris@1281 7 This file copyright 2006-2018 Chris Cannam and QMUL.
Chris@696 8
Chris@696 9 This program is free software; you can redistribute it and/or
Chris@696 10 modify it under the terms of the GNU General Public License as
Chris@696 11 published by the Free Software Foundation; either version 2 of the
Chris@696 12 License, or (at your option) any later version. See the file
Chris@696 13 COPYING included with this distribution for more information.
Chris@696 14 */
Chris@696 15
Chris@1276 16 #ifndef SV_LOG_NUMERICAL_SCALE_H
Chris@1276 17 #define SV_LOG_NUMERICAL_SCALE_H
Chris@696 18
Chris@696 19 #include <QRect>
Chris@696 20
Chris@696 21 class QPainter;
Chris@918 22 class LayerGeometryProvider;
Chris@696 23 class VerticalScaleLayer;
Chris@696 24
Chris@696 25 class LogNumericalScale
Chris@696 26 {
Chris@696 27 public:
Chris@1281 28 int getWidth(LayerGeometryProvider *v, QPainter &paint);
Chris@696 29
Chris@696 30 void paintVertical
Chris@1276 31 (LayerGeometryProvider *v, const VerticalScaleLayer *layer,
Chris@1276 32 QPainter &paint, int x0, double minlog, double maxlog);
Chris@696 33 };
Chris@696 34
Chris@696 35 #endif
Chris@696 36