annotate widgets/LevelPanToolButton.h @ 933:9022635c615a tonioni

Fixes to enabled/disabled state in level-pan tool button
author Chris Cannam
date Wed, 25 Mar 2015 11:41:17 +0000
parents 37bb4b416c52
children 77110abca8a1
rev   line source
Chris@929 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@929 2
Chris@929 3 /*
Chris@929 4 Sonic Visualiser
Chris@929 5 An audio file viewer and annotation editor.
Chris@929 6 Centre for Digital Music, Queen Mary, University of London.
Chris@929 7
Chris@929 8 This program is free software; you can redistribute it and/or
Chris@929 9 modify it under the terms of the GNU General Public License as
Chris@929 10 published by the Free Software Foundation; either version 2 of the
Chris@929 11 License, or (at your option) any later version. See the file
Chris@929 12 COPYING included with this distribution for more information.
Chris@929 13 */
Chris@929 14
Chris@929 15 #ifndef LEVEL_PAN_TOOLBUTTON_H
Chris@929 16 #define LEVEL_PAN_TOOLBUTTON_H
Chris@929 17
Chris@929 18 #include <QToolButton>
Chris@929 19
Chris@929 20 class LevelPanWidget;
Chris@929 21
Chris@929 22 class LevelPanToolButton : public QToolButton
Chris@929 23 {
Chris@929 24 Q_OBJECT
Chris@929 25
Chris@929 26 public:
Chris@929 27 LevelPanToolButton(QWidget *parent = 0);
Chris@929 28 ~LevelPanToolButton();
Chris@929 29
Chris@929 30 /// Return level as a gain value in the range [0,1]
Chris@929 31 float getLevel() const;
Chris@929 32
Chris@929 33 /// Return pan as a value in the range [-1,1]
Chris@929 34 float getPan() const;
Chris@929 35
Chris@929 36 void setImageSize(int pixels);
Chris@929 37
Chris@929 38 public slots:
Chris@929 39 /// Set level in the range [0,1] -- will be rounded
Chris@929 40 void setLevel(float);
Chris@929 41
Chris@929 42 /// Set pan in the range [-1,1] -- will be rounded
Chris@929 43 void setPan(float);
Chris@929 44
Chris@933 45 void setEnabled(bool enabled);
Chris@933 46
Chris@929 47 signals:
Chris@929 48 void levelChanged(float);
Chris@929 49 void panChanged(float);
Chris@929 50
Chris@930 51 private slots:
Chris@930 52 void selfLevelChanged(float);
Chris@930 53 void selfClicked();
Chris@930 54
Chris@929 55 protected:
Chris@932 56 void paintEvent(QPaintEvent *);
Chris@932 57
Chris@929 58 LevelPanWidget *m_lpw;
Chris@929 59 int m_pixels;
Chris@930 60 bool m_muted;
Chris@930 61 float m_savedLevel;
Chris@929 62 };
Chris@929 63
Chris@929 64 #endif