diff options
Diffstat (limited to 'muse2/awl/midivolentry.cpp')
-rw-r--r-- | muse2/awl/midivolentry.cpp | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/muse2/awl/midivolentry.cpp b/muse2/awl/midivolentry.cpp new file mode 100644 index 00000000..0b74afcc --- /dev/null +++ b/muse2/awl/midivolentry.cpp @@ -0,0 +1,50 @@ +//============================================================================= +// Awl +// Audio Widget Library +// $Id:$ +// +// Copyright (C) 2002-2006 by Werner Schweer and others +// +// This program is free software; you can redistribute it and/or modify +// it under the terms of the GNU General Public License version 2. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with this program; if not, write to the Free Software +// Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +//============================================================================= + +#include "fastlog.h" +#include "midivolentry.h" + +namespace Awl { + +//--------------------------------------------------------- +// MidiVolEntry +//--------------------------------------------------------- + +MidiVolEntry::MidiVolEntry(QWidget* parent) + : FloatEntry(parent) + { + _max = 127; + setRange(-98.0f, 0.0f); + setSpecialText(tr("off")); + setSuffix(tr("db")); + setFrame(true); + setPrecision(0); + } + +//--------------------------------------------------------- +// setValue +//--------------------------------------------------------- + +void MidiVolEntry::setValue(double v) + { + FloatEntry::setValue(-fast_log10(double(_max*_max)/(v*v))*20.0f); + } +} + |