diff --git a/ChangeLog b/ChangeLog index bf0f5bc9f..5087abb97 100644 --- a/ChangeLog +++ b/ChangeLog @@ -2,6 +2,15 @@ * src/lib/sample_buffer.cpp: corrected miscalculation of buffer size in resample + + * nine_button_selector.cpp: + * nine_button_selector.h: + * string_container.cpp: + * string_container.h: + * vibed.cpp: + * vibed.h: + changed QPtrList variables to vlist type to make things more + Qt4 friendly 2006-03-27 Tobias Doerffel diff --git a/plugins/vibed/nine_button_selector.cpp b/plugins/vibed/nine_button_selector.cpp index 584f0e296..6dcc58bd7 100644 --- a/plugins/vibed/nine_button_selector.cpp +++ b/plugins/vibed/nine_button_selector.cpp @@ -152,13 +152,17 @@ nineButtonSelector::nineButtonSelector( QPixmap _button0_on, this, SLOT ( button8Clicked( void ) ) ); m_buttons.append( m_button ); - m_lastBtn = m_buttons.at( _default ); + m_lastBtn = m_buttons[_default]; m_lastBtn->setChecked( TRUE ); } nineButtonSelector::~ nineButtonSelector() { + for( Uint8 i = 0; i < 9; i++ ) + { + delete m_buttons[i]; + } } @@ -167,7 +171,7 @@ nineButtonSelector::~ nineButtonSelector() void nineButtonSelector::button0Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 0 ); + m_lastBtn = m_buttons[0]; m_lastBtn->setChecked( TRUE ); m_selected = 0; @@ -180,7 +184,7 @@ void nineButtonSelector::button0Clicked( void ) void nineButtonSelector::button1Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 1 ); + m_lastBtn = m_buttons[1]; m_lastBtn->setChecked( TRUE ); m_selected = 1; @@ -193,7 +197,7 @@ void nineButtonSelector::button1Clicked( void ) void nineButtonSelector::button2Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 2 ); + m_lastBtn = m_buttons[2]; m_lastBtn->setChecked( TRUE ); m_selected = 2; @@ -206,7 +210,7 @@ void nineButtonSelector::button2Clicked( void ) void nineButtonSelector::button3Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 3 ); + m_lastBtn = m_buttons[3]; m_lastBtn->setChecked( TRUE ); m_selected = 3; @@ -219,7 +223,7 @@ void nineButtonSelector::button3Clicked( void ) void nineButtonSelector::button4Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 4 ); + m_lastBtn = m_buttons[4]; m_lastBtn->setChecked( TRUE ); m_selected = 4; @@ -232,7 +236,7 @@ void nineButtonSelector::button4Clicked( void ) void nineButtonSelector::button5Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 5 ); + m_lastBtn = m_buttons[5]; m_lastBtn->setChecked( TRUE ); m_selected = 5; @@ -245,7 +249,7 @@ void nineButtonSelector::button5Clicked( void ) void nineButtonSelector::button6Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 6 ); + m_lastBtn = m_buttons[6]; m_lastBtn->setChecked( TRUE ); m_selected = 6; @@ -258,7 +262,7 @@ void nineButtonSelector::button6Clicked( void ) void nineButtonSelector::button7Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 7 ); + m_lastBtn = m_buttons[7]; m_lastBtn->setChecked( TRUE ); m_selected = 7; @@ -271,7 +275,7 @@ void nineButtonSelector::button7Clicked( void ) void nineButtonSelector::button8Clicked( void ) { m_lastBtn->setChecked( FALSE); - m_lastBtn = m_buttons.at( 8 ); + m_lastBtn = m_buttons[8]; m_lastBtn->setChecked( TRUE ); m_selected = 8; diff --git a/plugins/vibed/nine_button_selector.h b/plugins/vibed/nine_button_selector.h index 153b02a90..fd5af32fc 100644 --- a/plugins/vibed/nine_button_selector.h +++ b/plugins/vibed/nine_button_selector.h @@ -24,13 +24,12 @@ #ifndef _NINE_BUTTON_SELECTOR_H #define _NINE_BUTTON_SELECTOR_H -#include - #include "qt3support.h" #include "config.h" #include "types.h" #include "pixmap_button.h" + class nineButtonSelector: public QWidget, public engineObject { Q_OBJECT @@ -79,7 +78,7 @@ signals: void nineButtonSelection( Uint8 ); private: - QPtrList m_buttons; + vlist m_buttons; pixmapButton * m_button; pixmapButton * m_lastBtn; QPixmap m_base; diff --git a/plugins/vibed/string_container.cpp b/plugins/vibed/string_container.cpp index c005e3e2c..e63705dcc 100644 --- a/plugins/vibed/string_container.cpp +++ b/plugins/vibed/string_container.cpp @@ -25,9 +25,9 @@ #include "string_container.h" -stringContainer::stringContainer( const float _pitch, - const sample_rate_t _sample_rate, - const Uint32 _buffer_length ) : +stringContainer::stringContainer(const float _pitch, + const sample_rate_t _sample_rate, + const Uint32 _buffer_length ) : m_pitch( _pitch ), m_sampleRate( _sample_rate ), m_bufferLength( _buffer_length ) diff --git a/plugins/vibed/string_container.h b/plugins/vibed/string_container.h index 7812c3ca5..f47640022 100644 --- a/plugins/vibed/string_container.h +++ b/plugins/vibed/string_container.h @@ -24,16 +24,9 @@ #define _TWO_STRINGS_H -#ifdef QT4 - -#include - -#else - -#include "qptrlist.h" - -#endif +#include "qt3support.h" +#include #include "config.h" #include "types.h" @@ -44,7 +37,7 @@ class stringContainer { public: - stringContainer( const float _pitch, + stringContainer(const float _pitch, const sample_rate_t _sample_rate, const Uint32 _buffer_length ); @@ -56,25 +49,24 @@ public: const float _string_loss, const float _detune, const Uint8 _oversample, - const bool _state ); + const bool _state ); inline ~stringContainer() { - m_strings.setAutoDelete( TRUE ); Uint32 strings = m_strings.count(); for( Uint32 i = 0; i < strings; i++ ) { - m_strings.removeFirst(); + delete m_strings[i]; } } inline float getStringSample( Uint8 _string ) { - return( m_strings.at( _string )->nextSample() ); + return( m_strings[_string]->nextSample() ); } private: - QPtrList m_strings; + vvector m_strings; const float m_pitch; const sample_rate_t m_sampleRate; const Uint32 m_bufferLength; diff --git a/plugins/vibed/vibed.cpp b/plugins/vibed/vibed.cpp index 397f15490..bef8a1714 100644 --- a/plugins/vibed/vibed.cpp +++ b/plugins/vibed/vibed.cpp @@ -358,17 +358,17 @@ vibed::vibed( instrumentTrack * _channel_track ) : "vibrating strings. The LED in the lower right corner of the " "waveform editor indicates whether the selected string is active." ) ); - m_pickKnob = m_pickKnobs.at( 0 ); - m_pickupKnob = m_pickupKnobs.at( 0 ); - m_stiffnessKnob = m_stiffnessKnobs.at( 0 ); - m_volumeKnob = m_volumeKnobs.at( 0 ); - m_panKnob = m_panKnobs.at( 0 ); - m_detuneKnob = m_detuneKnobs.at( 0 ); - m_randomKnob = m_randomKnobs.at( 0 ); - m_lengthKnob = m_lengthKnobs.at( 0 ); - m_editor = m_editors.at( 0 ); - m_impulse = m_impulses.at( 0 ); - m_harmonic = m_harmonics.at( 0 ); + m_pickKnob = m_pickKnobs[0]; + m_pickupKnob = m_pickupKnobs[0]; + m_stiffnessKnob = m_stiffnessKnobs[0]; + m_volumeKnob = m_volumeKnobs[0]; + m_panKnob = m_panKnobs[0]; + m_detuneKnob = m_detuneKnobs[0]; + m_randomKnob = m_randomKnobs[0]; + m_lengthKnob = m_lengthKnobs[0]; + m_editor = m_editors[0]; + m_impulse = m_impulses[0]; + m_harmonic = m_harmonics[0]; m_editor->setOn( TRUE ); showString( 0 ); @@ -407,30 +407,20 @@ vibed::vibed( instrumentTrack * _channel_track ) : vibed::~vibed() { delete m_sampleBuffer; - m_pickKnobs.setAutoDelete( TRUE ); - m_pickupKnobs.setAutoDelete( TRUE ); - m_stiffnessKnobs.setAutoDelete( TRUE ); - m_volumeKnobs.setAutoDelete( TRUE ); - m_panKnobs.setAutoDelete( TRUE ); - m_detuneKnobs.setAutoDelete( TRUE ); - m_randomKnobs.setAutoDelete( TRUE ); - m_lengthKnobs.setAutoDelete( TRUE ); - m_editors.setAutoDelete( TRUE ); - m_impulses.setAutoDelete( TRUE ); for( Uint8 harm = 0; harm < 9; harm++ ) { - m_pickKnobs.removeFirst(); - m_pickupKnobs.removeFirst(); - m_stiffnessKnobs.removeFirst(); - m_volumeKnobs.removeFirst(); - m_panKnobs.removeFirst(); - m_detuneKnobs.removeFirst(); - m_randomKnobs.removeFirst(); - m_lengthKnobs.removeFirst(); - m_editors.removeFirst(); - m_impulses.removeFirst(); - m_harmonics.removeFirst(); - } + delete m_pickKnobs[harm]; + delete m_pickupKnobs[harm]; + delete m_stiffnessKnobs[harm]; + delete m_volumeKnobs[harm]; + delete m_panKnobs[harm]; + delete m_detuneKnobs[harm]; + delete m_randomKnobs[harm]; + delete m_lengthKnobs[harm]; + delete m_editors[harm]; + delete m_impulses[harm]; + delete m_harmonics[harm]; + } } @@ -448,48 +438,48 @@ void vibed::saveSettings( QDomDocument & _doc, { name = "active" + QString::number( i ); _this.setAttribute( name, QString::number( - m_editors.at( i )->isOn() ) ); - if( m_editors.at( i )->isOn() ) + m_editors[i]->isOn() ) ); + if( m_editors[i]->isOn() ) { name = "volume" + QString::number( i ); _this.setAttribute( name, QString::number( - m_volumeKnobs.at( i )->value() ) ); + m_volumeKnobs[i]->value() ) ); name = "stiffness" + QString::number( i ); _this.setAttribute( name, QString::number( - m_stiffnessKnobs.at( i )->value() ) ); + m_stiffnessKnobs[i]->value() ) ); name = "pick" + QString::number( i ); _this.setAttribute( name, QString::number( - m_pickKnobs.at( i )->value() ) ); + m_pickKnobs[i]->value() ) ); name = "pickup" + QString::number( i ); _this.setAttribute( name, QString::number( - m_pickupKnobs.at( i )->value() ) ); + m_pickupKnobs[i]->value() ) ); name = "length" + QString::number( i ); _this.setAttribute( name, QString::number( - m_lengthKnobs.at( i )->value() ) ); + m_lengthKnobs[i]->value() ) ); name = "pan" + QString::number( i ); _this.setAttribute( name, QString::number( - m_panKnobs.at( i )->value() ) ); + m_panKnobs[i]->value() ) ); name = "detune" + QString::number( i ); _this.setAttribute( name, QString::number( - m_detuneKnobs.at( i )->value() ) ); + m_detuneKnobs[i]->value() ) ); name = "slap" + QString::number( i ); _this.setAttribute( name, QString::number( - m_randomKnobs.at( i )->value() ) ); + m_randomKnobs[i]->value() ) ); name = "impulse" + QString::number( i ); _this.setAttribute( name, QString::number( - m_impulses.at( i )->isChecked() ) ); + m_impulses[i]->isChecked() ) ); QString sampleString; base64::encode( - (const char *)m_editors.at( i )->getValues(), + (const char *)m_editors[i]->getValues(), 128 * sizeof(float), sampleString ); name = "graph" + QString::number( i ); _this.setAttribute( name, sampleString ); @@ -508,44 +498,44 @@ void vibed::loadSettings( const QDomElement & _this ) for( Uint8 i = 0; i < 9; i++ ) { name = "active" + QString::number( i ); - m_editors.at( i )->setOn( _this.attribute( name ).toInt() ); + m_editors[i]->setOn( _this.attribute( name ).toInt() ); - if( m_editors.at( i )->isOn() ) + if( m_editors[i]->isOn() ) { name = "volume" + QString::number( i ); - m_volumeKnobs.at( i )->setValue( + m_volumeKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "stiffness" + QString::number( i ); - m_stiffnessKnobs.at( i )->setValue( + m_stiffnessKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "pick" + QString::number( i ); - m_pickKnobs.at( i )->setValue( + m_pickKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "pickup" + QString::number( i ); - m_pickupKnobs.at( i )->setValue( + m_pickupKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "length" + QString::number( i ); - m_lengthKnobs.at( i )->setValue( + m_lengthKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "pan" + QString::number( i ); - m_panKnobs.at( i )->setValue( + m_panKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "detune" + QString::number( i ); - m_detuneKnobs.at( i )->setValue( + m_detuneKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "slap" + QString::number( i ); - m_randomKnobs.at( i )->setValue( + m_randomKnobs[i]->setValue( _this.attribute( name ).toFloat() ); name = "impulse" + QString::number( i ); - m_impulses.at( i )->setChecked( + m_impulses[i]->setChecked( _this.attribute( name ).toInt() ); name = "graph" + QString::number( i ); @@ -555,7 +545,7 @@ void vibed::loadSettings( const QDomElement & _this ) char * dst = 0; base64::decode( sampleString, &dst, &size ); memcpy( shape, dst, size ); - m_editors.at( i )->setValues( shape ); + m_editors[i]->setValues( shape ); } } @@ -586,20 +576,20 @@ void vibed::playNote( notePlayHandle * _n ) for( Uint8 i = 0; i < 9; i++ ) { - if( m_editors.at( i )->isOn() ) + if( m_editors[i]->isOn() ) { static_cast( _n->m_pluginData )->addString( - m_harmonics.at( i )->getSelected(), - m_pickKnobs.at( i )->value(), - m_pickupKnobs.at( i )->value(), - m_editors.at( i )->getValues(), - m_randomKnobs.at( i )->value(), - m_stiffnessKnobs.at( i )->value(), - m_detuneKnobs.at( i )->value(), + m_harmonics[i]->getSelected(), + m_pickKnobs[i]->value(), + m_pickupKnobs[i]->value(), + m_editors[i]->getValues(), + m_randomKnobs[i]->value(), + m_stiffnessKnobs[i]->value(), + m_detuneKnobs[i]->value(), static_cast( - m_lengthKnobs.at( i )->value() ), - m_impulses.at( i )->isChecked() ); + m_lengthKnobs[i]->value() ), + m_impulses[i]->isChecked() ); } } } @@ -622,12 +612,11 @@ void vibed::playNote( notePlayHandle * _n ) s = 0; for( Uint8 string = 0; string < 9; string ++ ) { - if( m_editors.at( string )->isOn() ) + if( m_editors[string]->isOn() ) { - vol = m_volumeKnobs.at( - string )->value(); + vol = m_volumeKnobs[string]->value(); pan = ( - m_panKnobs.at( string )->value() + 1 ) / 2.0; + m_panKnobs[string]->value() + 1 ) / 2.0; sample = ps->getStringSample( s ); buf[i][0] += pan * vol * sample; @@ -667,30 +656,30 @@ void vibed::showString( Uint8 _string ) m_impulse->hide(); m_harmonic->hide(); - m_editors.at( _string )->show(); - m_volumeKnobs.at( _string )->show(); - m_stiffnessKnobs.at( _string )->show(); - m_pickKnobs.at( _string )->show(); - m_pickupKnobs.at( _string )->show(); - m_panKnobs.at( _string )->show(); - m_detuneKnobs.at( _string )->show(); - m_randomKnobs.at( _string )->show(); - m_lengthKnobs.at( _string )->show(); - m_impulses.at( _string )->show(); - m_impulses.at( _string )->update(); - m_harmonics.at( _string )->show(); + m_editors[_string]->show(); + m_volumeKnobs[_string]->show(); + m_stiffnessKnobs[_string]->show(); + m_pickKnobs[_string]->show(); + m_pickupKnobs[_string]->show(); + m_panKnobs[_string]->show(); + m_detuneKnobs[_string]->show(); + m_randomKnobs[_string]->show(); + m_lengthKnobs[_string]->show(); + m_impulses[_string]->show(); + m_impulses[_string]->update(); + m_harmonics[_string]->show(); - m_pickKnob = m_pickKnobs.at( _string ); - m_pickupKnob = m_pickupKnobs.at( _string ); - m_stiffnessKnob = m_stiffnessKnobs.at( _string ); - m_volumeKnob = m_volumeKnobs.at( _string ); - m_panKnob = m_panKnobs.at( _string ); - m_detuneKnob = m_detuneKnobs.at( _string ); - m_randomKnob = m_randomKnobs.at( _string ); - m_lengthKnob = m_lengthKnobs.at( _string ); - m_editor = m_editors.at( _string ); - m_impulse = m_impulses.at( _string ); - m_harmonic = m_harmonics.at( _string ); + m_pickKnob = m_pickKnobs[_string]; + m_pickupKnob = m_pickupKnobs[_string]; + m_stiffnessKnob = m_stiffnessKnobs[_string]; + m_volumeKnob = m_volumeKnobs[_string]; + m_panKnob = m_panKnobs[_string]; + m_detuneKnob = m_detuneKnobs[_string]; + m_randomKnob = m_randomKnobs[_string]; + m_lengthKnob = m_lengthKnobs[_string]; + m_editor = m_editors[_string]; + m_impulse = m_impulses[_string]; + m_harmonic = m_harmonics[_string]; } diff --git a/plugins/vibed/vibed.h b/plugins/vibed/vibed.h index 357f0a92e..03c6dcee0 100644 --- a/plugins/vibed/vibed.h +++ b/plugins/vibed/vibed.h @@ -23,7 +23,7 @@ #ifndef _VIBED_STRINGS_H #define _VIBED_STRINGS_H -#include +#include "qt3support.h" #include "instrument.h" #include "sample_buffer.h" @@ -63,17 +63,17 @@ public slots: void displayHelp( void ); private: - QPtrList m_pickKnobs; - QPtrList m_pickupKnobs; - QPtrList m_stiffnessKnobs; - QPtrList m_volumeKnobs; - QPtrList m_panKnobs; - QPtrList m_detuneKnobs; - QPtrList m_randomKnobs; - QPtrList m_lengthKnobs; - QPtrList m_editors; - QPtrList m_impulses; - QPtrList m_harmonics; + vlist m_pickKnobs; + vlist m_pickupKnobs; + vlist m_stiffnessKnobs; + vlist m_volumeKnobs; + vlist m_panKnobs; + vlist m_detuneKnobs; + vlist m_randomKnobs; + vlist m_lengthKnobs; + vlist m_editors; + vlist m_impulses; + vlist m_harmonics; knob * m_pickKnob; knob * m_pickupKnob; diff --git a/plugins/vibed/vibrating_string.cpp b/plugins/vibed/vibrating_string.cpp index c68d27483..31710bd06 100644 --- a/plugins/vibed/vibrating_string.cpp +++ b/plugins/vibed/vibrating_string.cpp @@ -38,7 +38,7 @@ vibratingString::vibratingString( float _pitch, float _randomize, float _string_loss, float _detune, - bool _state ): + bool _state ) : m_oversample( _oversample ), m_randomize( _randomize ), m_stringLoss( 1.0f - _string_loss ), @@ -156,3 +156,4 @@ void FASTCALL vibratingString::resample( float *_src, frac_pos ); } } + diff --git a/plugins/vibed/vibrating_string.h b/plugins/vibed/vibrating_string.h index 74e974a91..624401512 100644 --- a/plugins/vibed/vibrating_string.h +++ b/plugins/vibed/vibrating_string.h @@ -33,6 +33,7 @@ class vibratingString { + public: vibratingString( float _pitch, float _pick,