diff options
| author | Bent Bisballe Nyeng <deva@aasimon.org> | 2014-04-17 17:56:05 +0200 | 
|---|---|---|
| committer | Bent Bisballe Nyeng <deva@aasimon.org> | 2014-04-17 17:56:05 +0200 | 
| commit | d296ad38cb4f0fdd932fdf154b258e8c837d51dd (patch) | |
| tree | fdbaa1a0ea513a8f8ecf5edd52ffeaf6be5210d8 /dgedit | |
| parent | 5935492fe66e408d2656b9a3434b9a89cf5d892c (diff) | |
| parent | 4b2720ed4f29c2d7c66cf62aa603fa253f49d8df (diff) | |
Merge branch 'master' of http://git.drumgizmo.org/drumgizmo
Diffstat (limited to 'dgedit')
| -rw-r--r-- | dgedit/volumefader.cc | 21 | ||||
| -rw-r--r-- | dgedit/volumefader.h | 12 | 
2 files changed, 32 insertions, 1 deletions
| diff --git a/dgedit/volumefader.cc b/dgedit/volumefader.cc index 9a153a6..c7cb9d0 100644 --- a/dgedit/volumefader.cc +++ b/dgedit/volumefader.cc @@ -29,10 +29,20 @@  #include <QSlider>  #include <QVBoxLayout> +#include <math.h> + +#define SCALAR 10 +  VolumeFader::VolumeFader()   { +  volslider = new QSlider(); +  volslider->setRange(-60 * SCALAR , 10 * SCALAR); +   +  connect(volslider, SIGNAL(valueChanged(int)), this, SLOT(handleValueChanged())); +    QVBoxLayout* lo = new QVBoxLayout(); -  lo->addWidget(new QSlider()); +  lo->addWidget(volslider); +      setLayout(lo);  } @@ -59,3 +69,12 @@ void VolumeFader::setVolumePower(double vol)  {  } + +void VolumeFader::handleValueChanged()  +{ +  double db = ((double)volslider->value())/((double)SCALAR); +  double power = pow(10, db/10); +//  printf("Volume %f db, %f power\n", vol, pow(10, vol/10)); +  emit volumeChangedDb(db); +  emit volumeChangedPower(power); +} diff --git a/dgedit/volumefader.h b/dgedit/volumefader.h index 51ff953..33dfc2b 100644 --- a/dgedit/volumefader.h +++ b/dgedit/volumefader.h @@ -28,6 +28,9 @@  #define __DRUMGIZMO_VOLUMEFADER_H__  #include <QWidget> +#include <QSlider> + +#include <stdio.h>  class VolumeFader : public QWidget {  Q_OBJECT @@ -35,15 +38,24 @@ public:    VolumeFader();    ~VolumeFader(); +  void volumeDb(); +  void volumePower(); +  public slots:    void updatePeakDb(double vol);    void updatePeakPower(double vol);    void setVolumeDb(double vol);    void setVolumePower(double vol); +private slots: +  void handleValueChanged(); +  signals:    void volumeChangedDb(double vol);    void volumeChangedPower(double vol); + +private: +  QSlider *volslider;  };  #endif/*__DRUMGIZMO_VOLUMEFADER_H__*/ | 
