annotate base/PlayParameters.cpp @ 340:516819f2b97b

* Add Erase tool and mode * Add icons for Normalize buttons in property boxes, and for Show Peaks * Add support for velocity in notes -- not yet reflected in display or editable in the note edit dialog, but they are imported from MIDI, played, and exported * Begin work on making pastes align pasted times (subtler than I thought)
author Chris Cannam
date Fri, 23 Nov 2007 16:48:23 +0000
parents 70a232b1f12a
children 5858cc462d0a
rev   line source
Chris@49 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@0 2
Chris@0 3 /*
Chris@52 4 Sonic Visualiser
Chris@52 5 An audio file viewer and annotation editor.
Chris@52 6 Centre for Digital Music, Queen Mary, University of London.
Chris@52 7 This file copyright 2006 Chris Cannam.
Chris@0 8
Chris@52 9 This program is free software; you can redistribute it and/or
Chris@52 10 modify it under the terms of the GNU General Public License as
Chris@52 11 published by the Free Software Foundation; either version 2 of the
Chris@52 12 License, or (at your option) any later version. See the file
Chris@52 13 COPYING included with this distribution for more information.
Chris@0 14 */
Chris@0 15
Chris@0 16 #include "PlayParameters.h"
Chris@0 17
Chris@29 18 #include <iostream>
Chris@29 19
Chris@314 20 #include <QTextStream>
Chris@314 21
Chris@284 22 void
Chris@284 23 PlayParameters::copyFrom(const PlayParameters *pp)
Chris@284 24 {
Chris@284 25 m_playMuted = pp->isPlayMuted();
Chris@284 26 m_playPan = pp->getPlayPan();
Chris@284 27 m_playGain = pp->getPlayGain();
Chris@284 28 m_playPluginId = pp->getPlayPluginId();
Chris@284 29 m_playPluginConfiguration = pp->getPlayPluginConfiguration();
Chris@284 30 }
Chris@284 31
Chris@314 32 void
Chris@314 33 PlayParameters::toXml(QTextStream &stream,
Chris@314 34 QString indent,
Chris@314 35 QString extraAttributes) const
Chris@81 36 {
Chris@314 37 stream << indent;
Chris@314 38 stream << QString("<playparameters mute=\"%1\" pan=\"%2\" gain=\"%3\" pluginId=\"%4\" %6")
Chris@81 39 .arg(m_playMuted ? "true" : "false")
Chris@81 40 .arg(m_playPan)
Chris@81 41 .arg(m_playGain)
Chris@81 42 .arg(m_playPluginId)
Chris@81 43 .arg(extraAttributes);
Chris@81 44 if (m_playPluginConfiguration != "") {
Chris@314 45 stream << ">\n " << indent << m_playPluginConfiguration
Chris@314 46 << "\n" << indent << "</playparameters>\n";
Chris@81 47 } else {
Chris@314 48 stream << "/>\n";
Chris@81 49 }
Chris@81 50 }
Chris@81 51
Chris@0 52 void
Chris@0 53 PlayParameters::setPlayMuted(bool muted)
Chris@0 54 {
Chris@117 55 // std::cerr << "PlayParameters: setPlayMuted(" << muted << ")" << std::endl;
Chris@0 56 m_playMuted = muted;
Chris@29 57 emit playMutedChanged(muted);
Chris@30 58 emit playAudibleChanged(!muted);
Chris@0 59 emit playParametersChanged();
Chris@0 60 }
Chris@0 61
Chris@29 62 void
Chris@29 63 PlayParameters::setPlayAudible(bool audible)
Chris@29 64 {
Chris@117 65 // std::cerr << "PlayParameters(" << this << "): setPlayAudible(" << audible << ")" << std::endl;
Chris@29 66 setPlayMuted(!audible);
Chris@29 67 }
Chris@0 68
Chris@0 69 void
Chris@0 70 PlayParameters::setPlayPan(float pan)
Chris@0 71 {
Chris@57 72 if (m_playPan != pan) {
Chris@57 73 m_playPan = pan;
Chris@57 74 emit playPanChanged(pan);
Chris@57 75 emit playParametersChanged();
Chris@57 76 }
Chris@0 77 }
Chris@0 78
Chris@0 79 void
Chris@0 80 PlayParameters::setPlayGain(float gain)
Chris@0 81 {
Chris@57 82 if (m_playGain != gain) {
Chris@57 83 m_playGain = gain;
Chris@57 84 emit playGainChanged(gain);
Chris@57 85 emit playParametersChanged();
Chris@57 86 }
Chris@0 87 }
Chris@0 88
Chris@57 89 void
Chris@57 90 PlayParameters::setPlayPluginId(QString id)
Chris@57 91 {
Chris@57 92 if (m_playPluginId != id) {
Chris@57 93 m_playPluginId = id;
Chris@57 94 emit playPluginIdChanged(id);
Chris@57 95 emit playParametersChanged();
Chris@57 96 }
Chris@57 97 }
Chris@0 98
Chris@57 99 void
Chris@57 100 PlayParameters::setPlayPluginConfiguration(QString configuration)
Chris@57 101 {
Chris@57 102 if (m_playPluginConfiguration != configuration) {
Chris@57 103 m_playPluginConfiguration = configuration;
Chris@117 104 // std::cerr << "PlayParameters(" << this << "): setPlayPluginConfiguration to \"" << configuration.toStdString() << "\"" << std::endl;
Chris@57 105 emit playPluginConfigurationChanged(configuration);
Chris@57 106 emit playParametersChanged();
Chris@57 107 }
Chris@57 108 }
Chris@57 109
Chris@57 110