diff --git a/ChangeLog b/ChangeLog index a60a62e6c..3a3d1ca62 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-12-18 Tobias Doerffel + + * plugins/midi_import/midi_import.cpp: + load Patman-plugin instead of TripleOsc and try to load patch + according to program-change-events + 2007-12-14 Paul Wayper * include/volume_knob.h: @@ -6,9 +12,9 @@ * data/locale/nl.ts: * data/locale/it.ts: * data/locale/ca.ts: - * data/locale/ru.t: - * data/locale/de.t: - * data/locale/sv.t: + * data/locale/ru.ts: + * data/locale/de.ts: + * data/locale/sv.ts: Changed dbV to dBV throughout 2007-12-12 Javier Serrano Polo diff --git a/configure.in b/configure.in index da13b72e1..9b4e280f9 100644 --- a/configure.in +++ b/configure.in @@ -2,8 +2,8 @@ # Process this file with autoconf to produce a configure script. AC_PREREQ(2.50) -AC_INIT(lmms, 0.4.0-svn20071212, lmms-devel/at/lists/dot/sf/dot/net) -AM_INIT_AUTOMAKE(lmms, 0.4.0-svn20071212) +AC_INIT(lmms, 0.4.0-svn20071218, lmms-devel/at/lists/dot/sf/dot/net) +AM_INIT_AUTOMAKE(lmms, 0.4.0-svn20071218) AM_CONFIG_HEADER(config.h) diff --git a/plugins/midi_import/midi_import.cpp b/plugins/midi_import/midi_import.cpp index 7de76fa0d..380c76769 100644 --- a/plugins/midi_import/midi_import.cpp +++ b/plugins/midi_import/midi_import.cpp @@ -24,6 +24,7 @@ #include +#include #include #include @@ -33,6 +34,7 @@ #include "pattern.h" #include "automation_pattern.h" #include "level_object.h" +#include "instrument.h" #include "debug.h" @@ -268,8 +270,10 @@ invalid_format: assert( it != NULL ); #endif // TODO: setup program, channel etc. - it->loadInstrument( "tripleoscillator" ); + instrument * it_inst = it->loadInstrument( "patman" ); it->toggledInstrumentTrackButton( FALSE ); + bool sample_loaded = FALSE; + // TODO: track_name.trimmed().isEmpty() (Qt4) if( !track_name.isEmpty() ) { @@ -327,19 +331,23 @@ invalid_format: } break; -/* case MIDI_META_EVENT: + case PROGRAM_CHANGE: { - switch( ev.m_data.m_param[0] ) + const QString num = QString::number( ev.key() ); + const QString filter = QString().fill( '0', 3 - num.length() ) + num + "*.pat"; + const QString dir = "/usr/share/midi/" + "freepats/Tone_000/"; + const QStringList files = QDir( dir ). + entryList( QStringList( + filter ) ); + if( !files.empty() && !sample_loaded ) { - case MIDI_SET_TEMPO: - { - break; - } - default: - break; + it_inst->setParameter( "samplefile", + dir+files.front() ); + sample_loaded = TRUE; } break; - }*/ + } default: /* printf( "Unhandled event: %#x\n",