Made 0.4.12 release
[lmms/mlankhorst.git] / ChangeLog.old
blobdc103749caa439ff48633b119ad6e268709df92a
1 2009-02-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3         * README:
4         * CMakeLists.txt:
5         made 0.4.3 release
7         * include/atomic_int.h:
8         - fixed typo
9         - added copy constructor implementation for AtomicInt class - fixes
10           build failure with Qt < 4.4.0
12         * CMakeLists.txt:
13         fixed typos
15         * cmake/modules/FindSTK.cmake:
16         * CMakeLists.txt:
17         reflect changes in MinGW crosscompiling environment
19 2009-02-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
21         * include/fade_button.h:
22         * src/gui/widgets/fade_button.cpp:
23         rewrote timing of fading animation for not postponing updates of
24         hidden fadeButton until it becomes visible
26         * src/gui/widgets/automatable_button.cpp:
27         * src/core/track.cpp:
28         make sure all buttons in trackOperationsWidget have focus-policy
29         set to Qt::NoFocus in order to make space play song even if you clicked
30         e.g. a mute-button (closes #2486211)
32         * include/note.h:
33         * src/core/note.cpp:
34         - coding style fixes
35         - improved handling of shared detuningHelper object
37         * include/instrument_track.h:
38         * include/piano_roll.h:
39         * src/gui/piano_roll.cpp:
40         * src/gui/song_editor.cpp:
41         * src/tracks/instrument_track.cpp:
42         fixed various bugs regarding recording:
43         - once recording has been started, stop it as soon as playMode of song
44           changes or similiar things happen (closes #2486341)
45         - fixed broken record-accompany in most use-cases other than using
46           record-while-playing-song by also tracking NoteOn events and remember
47           current play position to use the correct note postitions on NoteOff
48           events (play position might have wrapped around in the meantime due
49           to looppoints or end of BB track) (closes #2486299, #2486203)
50         - move timeLine marker in Piano Roll and autoscroll when recording while
51           playing song (closes #2486334)
53 2009-02-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
55         * src/3rdparty/samplerate/samplerate.h:
56         reverted rev 2037 as we have custom changes in this file
58 2009-02-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
60         * include/pattern.h:
61         * src/tracks/pattern.cpp:
62         - added missing slot declaration for abortFreeze(), fixes lockup when
63           freezing pattern (closes #2530320)
64         - update patternView after freezing
65         - fixed drawing of frozen pattern
67         * include/sample_buffer.h:
68         * src/core/sample_buffer.cpp:
69         - when resampling whole sampleBuffer, set end_of_input = 1 in
70           libsamplerate data struct - fixes lots of zero samples at the end
71           of output buffer (closes #2531452)
72         - coding style fixes
73         - removed obsolete save/restore of EOF-property in libsample rate
74           data struct when resampling successively (always use 0)
76         * src/3rdparty/samplerate/src_linear.c:
77         * src/3rdparty/samplerate/samplerate.h:
78         * src/3rdparty/samplerate/src_sinc.c:
79         * src/3rdparty/samplerate/src_zoh.c:
80         * src/3rdparty/samplerate/samplerate.c:
81         * CMakeLists.txt:
82         integrated latest libsamplerate which is both faster and more reliable
84         * src/gui/widgets/visualization_widget.cpp:
85         disable output monitor per default and show click-hint
87 2009-02-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
89         * include/group_box.h:
90         * src/gui/widgets/effect_rack_view.cpp:
91         backport: manage effectRackView with a QVBoxLayout
93         * src/gui/widgets/controller_rack_view.cpp:
94         * src/gui/widgets/effect_rack_view.cpp:
95         backport: prevent Horizontal bars from appearing in some cases
97         * cmake/modules/Win32Toolchain.cmake:
98         reflect recent changes to MinGW cross compiling environment
100         * plugins/sf2_player/sf2_player.cpp:
101         update patch after loading settings (closes #2486372)
103         * src/gui/piano_roll.cpp:
104         ensure, cursor is never NULL when painting it in paintEvent()
106         * src/core/sample_buffer.cpp:
107         do not load samples bigger than 100 MB (closes #2458375)
109 2009-02-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
111         * plugins/ladspa_effect/caps/dsp/Eq.h:
112         better workaround for optimizer bug in GCC >= 4.3
114         * plugins/sid/sid_instrument.cpp:
115         * plugins/flp_import/unrtf.cpp:
116         * src/core/track.cpp:
117         added missing header for compilation with GCC 4.4
119         * include/pattern.h:
120         * src/tracks/pattern.cpp:
121         cleanups
123         * src/core/envelope_and_lfo_parameters.cpp:
124         - simplified formulas for calculating envelope array resulting in about
125           3x performance with traditional FPU code
126         - loops now can be vectorized by GCC 4.4
128         * include/atomic_int.h:
129         * include/audio_port.h:
130         * include/mixer.h:
131         * src/core/mixer.cpp:
132         reworked mixer-threads (synchronization, realization of jobqueue etc.)
133         which results in a much better performance and stability
135 2009-02-04      Andrew Kelley   <superjoe30/at/gmail/dot/com>
137         * src/gui/piano_roll.cpp:
138         fixed bug: you can use shift+left to move notes past the beginning
140 2009-02-01      Andrew Kelley   <superjoe30/at/gmail/dot/com>
142         * src/core/track.cpp:
143         integrated pitanga's patch to fix unquantized BB dragging in 
144         song editor. Changed ctrl modifier to alt to be consistent.
146 2009-01-25      Paul Giblock <drfaygo/at/gmail/dot/com>
148         * src/tracks/bb_track.cpp:
149         Integrate broken BB-clone bug from pitanga
151 2009-01-25      Paul Giblock <drfaygo/at/gmail/dot/com>
153         * src/gui/widgets/knob.cpp:
154         Fix infinite recursion on Mac OSX
156         * plugins/flp_import/unrtf/html.c:
157         * plugins/flp_import/unrtf/output.h:
158         * plugins/flp_import/unrtf/convert.c:
159         Avoid compile warnings
161 2008-12-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
163         * CMakeLists.txt:
164         fixed plugins/ directory when updating localization file
166         * plugins/flp_import/flp_import.cpp:
167         in FL_EffectChannel initialize isMuted member - fixes muted FX channels
168         when importing older FLP files
170 2008-12-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
172         * CMakeLists.txt:
173         * README:
174         made 0.4.2 release
176         * plugins/vst_base/vst_plugin.h:
177         * plugins/vst_base/vst_plugin.cpp:
178         * plugins/vst_effect/vst_effect_control_dialog.cpp:
179         * plugins/vst_effect/vst_effect.cpp:
180         * plugins/vestige/vestige.cpp:
181         fixed crash when adding VST effects
183         * include/project_version.h:
184         * src/core/project_version.cpp:
185         fixed broken version comparing which indicated 0.x.y to be less than
186         0.x.y-patch - fixes messed up projects when loading files created
187         with LMMS 0.4.0
189 2008-12-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
191         * CMakeLists.txt:
192         * README:
193         made 0.4.1 release
195         * cmake/modules/FindSTK.cmake:
196         * include/combobox_model.h:
197         * include/combobox.h:
198         * src/core/config_mgr.cpp:
199         * data/CMakeLists.txt:
200         * CMakeLists.txt:
201         added STK support to win32 version of LMMS
203         * data/locale/ja.ts:
204         * data/locale/ja.qm:
205         added Japanese localization files by
206         Keishi Suenaga <skeishi/at/yahoo/dot/co/dot/jp>
208         * include/instrument_track.h:
209         * src/tracks/instrument_track.cpp:
210         backport: do not create a instrument track window just for calling
211         dragEnterEvent() - use a static method instead
213 2008-12-17      Paul Giblock <drfaygo/at/gmail/dot/com>
215         * include/track.h:
216         * src/core/track.cpp:
217         backport: cache background per-object instead of per-class
219 2008-12-17      Andrew Kelley   <superjoe30/at/gmail/dot/com>
221         * AUTHORS:
222         backport: added Andrew Kelley as author
224         * src/core/timeline.cpp:
225         * src/gui/automatable_model_view.cpp:
226         * src/gui/automation_editor.cpp:
227         * src/gui/piano_roll.cpp:
228         * src/gui/widgets/automatable_button.cpp:
229         * src/gui/widgets/automatable_slider.cpp:
230         * src/gui/widgets/combobox.cpp:
231         * src/gui/widgets/fader.cpp:
232         * src/gui/widgets/knob.cpp:
233         * src/gui/widgets/lcd_spinbox.cpp:
234         * src/tracks/sample_track.cpp:
235         backport: changed modifier detection from mainWindow::isCtrlPressed
236         etc to Qt framework detection. Fixes a bunch of little glitches and
237         enables horizontal scroll wheels.
239         * include/midi.h:
240         * include/note.h:
241         * include/panning.h:
242         * include/panning_constants.h:
243         * include/pattern.h:
244         * include/piano_roll.h:
245         * src/core/note.cpp:
246         * src/core/piano.cpp:
247         * src/tracks/pattern.cpp:
248         backport: added support for panning editing of notes
250 2008-12-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
252         * CMakeLists.txt:
253         require at least Qt 4.3.0
255 2008-12-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
257         * include/automation_pattern.h:
258         * src/core/automation_pattern.cpp:
259         do not disable automation when just editing first point of an
260         automation pattern (closes #2146230)
262         * include/automation_pattern_view.h:
263         * src/gui/automation_pattern_view.cpp:
264         splitted view component out of automation_pattern.*
266 2008-12-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
268         * plugins/vst_base/communication.h:
269         * plugins/vst_base/vst_plugin.cpp:
270         * plugins/vst_base/remote_vst_plugin.cpp:
271         rewrote wide parts of LVSL backend:
272         - now supports two threading models which makes LMMS support plugins
273           like Sytrus, z3ta+ etc.
274         - on win32 create native widget as parent for plugin's GUI, fixes
275           warning message when loading KarmaSynth (closes #2276787)
276         - try more symbol names for entry procedure
278         * include/aeffectx.h:
279         - made "int"s to "const int"s
280         - added CCONST macro
282         * include/remote_plugin.h:
283         * src/core/remote_plugin.cpp:
284         added support for debug messages from remote plugin
286 2008-12-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
288         * plugins/vst_base/vst_plugin.cpp:
289         win32-version: fixed crash when using VST plugins without GUI
291         * include/effect_chain.h:
292         export effectChain for properly building FLP import DLL
294         * include/song_editor.h:
295         * src/gui/song_editor.cpp:
296         fixed recent commit (m_timeLine was not declared as member yet)
298 2008-12-07      Andrew Kelley   <superjoe30/at/gmail/dot/com>
300         * src/gui/song_editor.cpp:
301         fixed glitch where it would auto-scroll even if it was off in
302         song-editor
304 2008-12-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
306         * plugins/vst_base/remote_vst_plugin.cpp:
307         explicitely declare updateSampleRate() and updateBufferSize() as virtual
309         * src/tracks/instrument_track.cpp:
310         decreased step-property of volumeModel and panningModel from 1.0 to 0.1
311         for allowing smoother transitions when automating etc.
313 2008-12-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
315         * data/locale/ja.ts:
316         * data/locale/ja.qm:
317         added Japanese localization files by
318         Keishi Suenaga <skeishi/at/yahoo/dot/co/dot/jp>
320 2008-12-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
322         * plugins/triple_oscillator/triple_oscillator.cpp:
323         per default play sub-octaves of first oscillator in osc 2 and 3
325 2008-11-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
327         * src/core/automatable_model.cpp:
328         fixed wrong logic in automatableModel::setValue() which led to bugs when
329         changing linked controls to 0
331         * src/gui/file_browser.cpp:
332         do not allow to import unhandled file types, e.g. ZynAddSubFX presets if
333         plugin is not available (closes #2326384)
335 2008-11-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
337         * plugins/flp_import/flp_import.h:
338         * plugins/flp_import/flp_import.cpp:
339         completely rewrote FLP import filter since it didn't work at all
340         anymore - it now doesn't create or change any things in LMMS while
341         importing and instead builds up a complete data structure first
342         which represents the FL Studio project and then creates an LMMS
343         project based upon this data structure
344         - now supports projects from FL Studio 3 to 8
345         - more verbose debug output
346         - import volume, panning, pitch and FX channel for instrument tracks
347         - import amplification, loop-mode and reverse-mode settings for
348           AudioFileProcessor
349         - import FX mixer settings and effects
350         - import automation data
351         - import channel- and pattern names
352         - import volume and panning settings of individual notes
353         - add notes of instrument layer master to each layer children for at
354           least having a complete sound - need to replace with real layering
355           support later
356         - map more instruments to various LMMS instruments
357         - fixed calculations of length and position of notes
358         - fixed importing steps/dots
359         - fixed scaling factor of various controls (arpeggio time,
360           envelope sustain and amount, filter cut/res, TripleOsc volumes etc.)
361         - if three user defined samples were found for TripleOscillator set
362           first oscillator to oscillator::SawWave
364         * plugins/flp_import/unrtf.cpp:
365         * plugins/flp_import/CMakeLists.txt:
366         * plugins/flp_import/unrtf/error.h:
367         * plugins/flp_import/unrtf/output.c:
368         * plugins/flp_import/unrtf/html.c:
369         * plugins/flp_import/unrtf/output.h:
370         * plugins/flp_import/unrtf/malloc.c:
371         * plugins/flp_import/unrtf/html.h:
372         * plugins/flp_import/unrtf/attr.c:
373         * plugins/flp_import/unrtf/parse.c:
374         * plugins/flp_import/unrtf/word.c:
375         * plugins/flp_import/unrtf/malloc.h:
376         * plugins/flp_import/unrtf/util.c:
377         * plugins/flp_import/unrtf/attr.h:
378         * plugins/flp_import/unrtf/parse.h:
379         * plugins/flp_import/unrtf/convert.c:
380         * plugins/flp_import/unrtf/word.h:
381         * plugins/flp_import/unrtf/util.h:
382         * plugins/flp_import/unrtf/hash.c:
383         * plugins/flp_import/unrtf/convert.h:
384         * plugins/flp_import/unrtf/defs.h:
385         * plugins/flp_import/unrtf/hash.h:
386         * plugins/flp_import/unrtf/main.h:
387         * plugins/flp_import/unrtf/error.c:
388         updated to latest version of unrtf and improved string operations
390         * src/core/main.cpp:
391         added support for importing file from commandline
393         * include/effect_chain.h:
394         added method for enabling/disabling FX chain
396         * include/file_browser.h:
397         * src/gui/file_browser.cpp:
398         enhanced support for importing various file types directly from browser
400         * include/pattern.h:
401         * src/tracks/pattern.cpp:
402         added method for toggling steps
404         * include/fx_mixer.h:
405         added method for accessing FX channels
407         * plugins/midi_import/midi_import.cpp:
408         check for tempoAutomationPattern being NULL for not crashing when
409         importing to BB-Editor
411         * include/instrument_track.h:
412         return pointers instead of references to various internal models
414         * include/basic_filters.h:
415         * include/bb_track_container.h:
416         * include/instrument_track.h:
417         * include/pattern.h:
418         * include/track_container.h:
419         * src/core/instrument_functions.cpp:
420         * src/tracks/pattern.cpp:
421         * src/gui/track_container_view.cpp:
422         coding style fixes
424 2008-11-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
426         * src/core/track.cpp:
427         * src/core/timeline.cpp:
428         * src/core/piano.cpp:
429         * src/core/automation_pattern.cpp:
430         * src/gui/piano_roll.cpp:
431         * src/gui/fx_mixer_view.cpp:
432         * src/gui/widgets/track_label_button.cpp:
433         * src/gui/widgets/visualization_widget.cpp:
434         * src/gui/widgets/combobox.cpp:
435         * src/gui/widgets/tab_widget.cpp:
436         * src/gui/widgets/kmultitabbar.cpp:
437         * src/gui/widgets/envelope_and_lfo_view.cpp:
438         * src/gui/widgets/cpuload_widget.cpp:
439         * src/gui/widgets/fade_button.cpp:
440         * src/gui/widgets/lcd_spinbox.cpp:
441         * src/gui/widgets/group_box.cpp:
442         * src/gui/widgets/fader.cpp:
443         * src/gui/widgets/effect_rack_view.cpp:
444         * src/gui/widgets/effect_view.cpp:
445         * src/gui/automation_editor.cpp:
446         set OpaquePaintEvent attribute for all widgets where suitable - makes
447         whole GUI less sluggish :)
449 2008-11-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
451         * plugins/sf2_player/sf2_player.cpp:
452         fixed broken reference sharing
454         * include/automatable_model.h:
455         * src/core/automatable_model.cpp:
456         fixed loops when adding a controller to a model which is linked to
457         another model
459         * src/core/effect.cpp:
460         call saveSettings()/loadSettings() on model rather than loading/saving
461         value directly - fixes lost automation on basic effect controls
463 2008-10-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
465         * CMakeLists.txt:
466         made 0.4.0 release
468         * CMakeLists.txt:
469         - include all necessary DLLs in win64 build
470         - fix versioning for CPack if no VERSION_SUFFIX is set
472         * plugins/sid/sid_instrument.cpp:
473         * plugins/papu/papu_instrument.cpp:
474         * include/clipboard.h:
475         include QtXml/QDomElement rather than Qt/QtXml - fixes compilation on
476         OS X
478 2008-10-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
480         * plugins/ladspa_effect/ladspa_effect.cpp:
481         limit processing of TAP Reflector to 192 KHz as it otherwise crashes
483         * include/timeline.h:
484         * src/gui/piano_roll.cpp:
485         fixed autoscroll feature in piano-roll (closes #2204508)
487 2008-10-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
489         * CMakeLists.txt:
490         disabled PortAudio support until a fix for the crash when accepting
491         setup-dialog is available
493 2008-10-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
495         * data/presets/TripleOscillator/SEGuitar.xpf:
496         * data/presets/TripleOscillator/SBass2.xpf:
497         * data/presets/TripleOscillator/STrash.xpf:
498         * data/presets/TripleOscillator/SString.xpf:
499         * data/presets/TripleOscillator/SBass.xpf:
500         added some cool presets by Skiessi
502         * plugins/ladspa_effect/ladspa_effect.cpp:
503         added Freeverb to blacklist as it does not work samplerate independent
505         * cmake/modules/Win64Toolchain.cmake:
506         * cmake/modules/DetectMachine.cmake:
507         * cmake/modules/BuildPlugin.cmake:
508         * plugins/ladspa_effect/swh/CMakeLists.txt:
509         * plugins/ladspa_effect/cmt/CMakeLists.txt:
510         * plugins/ladspa_effect/tap/CMakeLists.txt:
511         * plugins/ladspa_effect/caps/CMakeLists.txt:
512         * plugins/ladspa_effect/caps/dsp/windows.h:
513         * plugins/vst_base/remote_vst_plugin.cpp:
514         * plugins/vst_base/basename.c:
515         * plugins/vst_base/CMakeLists.txt:
516         * plugins/midi_import/portsmf/allegro.h:
517         * src/core/midi/midi_winmm.cpp:
518         * src/core/mixer.cpp:
519         * lmmsconfig.h.in:
520         * CMakeLists.txt:
521         various fixes for successfully building LMMS for win64
523 2008-10-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
525         * include/mixer.h:
526         * src/core/mixer.cpp:
527         * src/core/project_renderer.cpp:
528         - initial (not yet enabled) support for binding mixer threads to CPUs to
529           reduce scheduling overhead and cache misses (gives avg. 10% performance
530           boost)
531         - merged mixer-thread with first worker-thread - no more duplicate
532           code for single- and multicore processing and better scheduling
533           on multicore systems
535         * include/automatable_model.h:
536         * src/core/automatable_model.cpp:
537         * src/core/audio/audio_alsa.cpp:
538         * src/core/audio/audio_oss.cpp:
539         * src/core/audio/audio_jack.cpp:
540         * src/core/envelope_and_lfo_parameters.cpp:
541         * src/core/piano.cpp:
542         * src/core/controller.cpp:
543         * src/gui/fx_mixer_view.cpp:
544         * src/gui/widgets/combobox.cpp:
545         * src/gui/widgets/envelope_and_lfo_view.cpp:
546         * src/gui/widgets/knob.cpp:
547         * src/gui/widgets/instrument_midi_io_view.cpp:
548         * src/gui/widgets/automatable_slider.cpp:
549         * src/gui/widgets/lcd_spinbox.cpp:
550         * src/gui/widgets/fader.cpp:
551         * src/gui/widgets/automatable_button.cpp:
552         * src/tracks/automation_track.cpp:
553         do not inline code for fetching value from controller and thus reduce
554         header dependencies
556         * plugins/vst_effect/CMakeLists.txt:
557         * plugins/vestige/CMakeLists.txt:
558         * plugins/vst_base/CMakeLists.txt:
559         * CMakeLists.txt:
560         made building the WINE-part of VST Support Layer optional to allow
561         packaging it in separate package (e.g. on 64 bit platforms)
563 2008-10-25      dieEasy <dieeasy/at/cheapnet/dot/it>
565         * data/locale/it.qm:
566         * data/locale/it.ts:
567         updated Italian localization
569 2008-10-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
571         * data/locale/cs.qm:
572         * data/locale/pt_br.qm:
573         * data/locale/es.qm:
574         * data/locale/fr.qm:
575         * data/locale/nl.qm:
576         * data/locale/ir.qm:
577         * data/locale/en.ts:
578         * data/locale/cs.ts:
579         * data/locale/pt_br.ts:
580         * data/locale/es.ts:
581         * data/locale/fr.ts:
582         * data/locale/nl.ts:
583         * data/locale/ca.qm:
584         * data/locale/ir.ts:
585         * data/locale/ru.qm:
586         * data/locale/sv.qm:
587         * data/locale/ca.ts:
588         * data/locale/ru.ts:
589         * data/locale/sv.ts:
590         * data/locale/en.qm:
591         refreshed localization files
593         * data/locale/de.ts:
594         * data/locale/de.qm:
595         updated German localization file
597         * src/gui/lfo_controller_dialog.cpp:
598         fixed strings
600         * include/file_browser.h:
601         * src/gui/file_browser.cpp:
602         renamed class "listView" to "fileBrowserTreeWidget"
604         * cmake/modules/DetectMachine.cmake:
605         allow specifying destination directory for libs via CMAKE_INSTALL_LIBDIR
607         * src/core/sample_buffer.cpp:
608         - fixed out-of-boundary array access when reversing samples
609         - optimized loops for loading samples
611 2008-10-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
613         * include/plugin.h:
614         reverted to rev. 1766 - fixes broken label on LADSPA effects
616         * include/knob.h:
617         * src/gui/widgets/knob.cpp:
618         track focusOutEvents in order to unhide cursor in certain situations
620 2008-10-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
622         * CMakeLists.txt:
623         made 0.4.0-rc3 release
625         * README:
626         various fixes
628         * src/gui/dialogs/about_dialog.ui:
629         use QTextEdit rather than QPlainTextEdit for Qt 4.3 compatibility
631 2008-10-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
633         * plugins/sid/sid_instrument.cpp:
634         * plugins/ladspa_effect/ladspa_effect.cpp:
635         * plugins/patman/patman.cpp:
636         * plugins/lb302/lb302.cpp:
637         * plugins/organic/organic.cpp:
638         * plugins/lb303/lb303.cpp:
639         * plugins/stereo_matrix/stereo_matrix.cpp:
640         * plugins/bass_booster/bass_booster.cpp:
641         * plugins/bit_invader/bit_invader.cpp:
642         * plugins/vst_effect/vst_effect.cpp:
643         * plugins/vibed/vibed.cpp:
644         * plugins/triple_oscillator/triple_oscillator.cpp:
645         * plugins/peak_controller_effect/peak_controller_effect.cpp:
646         * plugins/audio_file_processor/audio_file_processor.cpp:
647         * plugins/stk/mallets/mallets.cpp:
648         * plugins/stereo_enhancer/stereo_enhancer.cpp:
649         * plugins/papu/papu_instrument.cpp:
650         * plugins/sf2_player/sf2_player.cpp:
651         * plugins/vestige/vestige.cpp:
652         * plugins/vst_base/vst_base.cpp:
653         * plugins/ladspa_browser/ladspa_browser.cpp:
654         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
655         * plugins/kicker/kicker.cpp:
656         * plugins/flp_import/flp_import.cpp:
657         * plugins/midi_import/midi_import.cpp:
658         * include/embed.h:
659         * include/lmms_basics.h:
660         * include/plugin.h:
661         * src/gui/embed.cpp:
662         made STRINGIFY_PLUGIN_NAME from embed.h a generic macro STRINGIFY in
663         lmms_basics.h
665         * include/about_dialog.h:
666         * src/gui/about_dialog.cpp:
667         * src/gui/dialogs/about_dialog.ui:
668         designed-based about dialog
670         * src/gui/widgets/rename_dialog.cpp:
671         initially select whole string so it can be overwritten easily
673         * AUTHORS:
674         moved an item to lmms-extras/AUTHORS
676         * plugins/vst_base/vst_plugin.h:
677         * plugins/vst_base/vst_plugin.cpp:
678         * plugins/vst_effect/vst_effect_control_dialog.cpp:
679         improved VST GUI embedding (closes #2167745)
681         * src/gui/track_container_view.cpp:
682         do not call method on deleted trackView but fetch pointer to track
683         before deleting trackView (fixes crash when removing a track)
685 2008-10-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
687         * src/gui/widgets/track_label_button.cpp:
688         more checks before accessing icon - fixes crash when using ZynAddSubFX
689         plugin
691         * plugins/vst_base/remote_vst_plugin.cpp:
692         various tweakings
694         * src/core/piano.cpp:
695         check for focusWidget() being NULL before checking inheritance - fixes
696         crash for example when loading VST plugins
698         * src/gui/main_window.cpp:
699         use "Root directory" rather than "My computer" in non-win32-version
701         * cmake/modules/FindAlsa.cmake:
702         * CMakeLists.txt:
703         do not create alsaconfig.h
705         * plugins/sf2_player/sf2_player.cpp:
706         do not mess around with global static pointers for a single instance
707         of patchesDialog - create a local object instead (closes #2139701)
709         * include/file_browser.h:
710         * src/gui/file_browser.cpp:
711         added filter feature allowing quick file access
713         * include/file_browser.h:
714         * src/gui/main_window.cpp:
715         * src/gui/file_browser.cpp:
716         * data/themes/default/computer.png:
717         * data/themes/default/home.png:
718         - renamed tab "root" to "My computer"
719         - on win32 allow browsing drives in "My computer" tab
720         - improved icons for home and "My computer" browser
722         * include/embed.h:
723         * include/instrument_track.h:
724         * include/plugin.h:
725         * include/track_label_button.h:
726         * src/gui/widgets/track_label_button.cpp:
727         in instrument tracks draw icon of instrument rather than displaying the
728         full name of the instrument on track label button
730         * src/tracks/instrument_track.cpp:
731         do not call trackView::dragEnterEvent() if instrument track window
732         already accepted drag event - fixes dragging of presets and
733         instruments onto track label button
735         * src/core/piano.cpp:
736         do not reclaim keyboard focus if new focus widget is a QLineEdit
738 2008-10-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
740         * include/remote_plugin.h:
741         * src/core/remote_plugin.cpp:
742         added helper thread processWatcher which monitors the remote plugin
743         process - if it terminates unexpectedly, invalidate remotePlugin so
744         LMMS doesn't lock up - fixes crashes and lockups when using VST
745         plugins or ZynAddSubFX plugin
747 2008-10-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
749         * src/core/piano.cpp:
750         reclaim keyboard focus if the current focus-widget lives in the same
751         instrument-track-window as the previously active test piano - this way
752         running notes are not stopped when modifying a control in the same
753         instrument-track-window (closes #2139806)
755         * include/file_browser.h:
756         * src/gui/file_browser.cpp:
757         heavily improved performance when adding items to file browser
758         tree-widget (closes #2146218)
760 2008-10-15      dieEasy <dieeasy/at/cheapnet/dot/it>
762         * data/locale/it.qm:
763         * data/locale/it.ts:
764         updated Italian localization
766 2008-10-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
768         * data/locale/cs.qm:
769         * data/locale/cs.ts:
770         added Czech localization by Ludek Cerny <erl/at/erlmedia/dot/cz>
772         * src/core/timeline.cpp:
773         move position marker lines even if autoscrolling is disabled
775         * include/envelope_and_lfo_parameters.h:
776         * src/core/envelope_and_lfo_parameters.cpp:
777         reverted to rev. 1479 as the optimizations lately completely screwed
778         up things...
780         * plugins/flp_import/flp_import.cpp:
781         * include/basic_filters.h:
782         cleanups
784 2008-10-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
786         * tests/README:
787         * tests/emptyproject.mmp:
788         first initial "test"
790         * src/core/mixer.cpp:
791         - use ordered memory semantics for atomic int
792         - more debug output when encountering bad jobqueue items
794         * CMakeLists.txt:
795         improved dependency handling for building manpage
797 2008-10-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
799         * include/mmp.h:
800         * include/cpuload_widget.h:
801         * include/endian_handling.h:
802         * include/track.h:
803         * include/controller_rack_view.h:
804         * include/mixer.h:
805         * include/ladspa_manager.h:
806         * include/instrument_functions.h:
807         * include/sample_buffer.h:
808         * include/effect_lib.h:
809         * include/midi.h:
810         * include/effect_rack_view.h:
811         * include/graph.h:
812         * include/micro_timer.h:
813         * include/envelope_and_lfo_parameters.h:
814         * include/piano_roll.h:
815         * include/volume.h:
816         * include/midi_time.h:
817         * include/basic_filters.h:
818         * include/journalling_object.h:
819         * include/automation_editor.h:
820         * include/panning.h:
821         * include/project_journal.h:
822         * include/play_handle.h:
823         * plugins/bit_invader/bit_invader.h:
824         * plugins/vibed/vibrating_string.h:
825         * plugins/vibed/nine_button_selector.h:
826         * plugins/vibed/string_container.h:
827         * plugins/vst_base/remote_vst_plugin.cpp:
828         * src/core/base64.cpp:
829         * src/gui/widgets/side_bar_widget.cpp:
830         renamed types.h to lmms_basics.h
832 2008-10-06      Attila Herman <attila589/at/gmail/dot/com>
834         * plugins/papu/papu_intrument.cpp:
835         - renamed from PAPU to FreeBoy
836         - help added to the knobs
838 2008-10-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
840         * plugins/kicker/kicker.cpp:
841         moved constants out of loop
843         * include/types.h:
844         set global alignment via a #define
846         * src/gui/piano_roll.cpp:
847         - fixed typo
848         - do not crash when pressing right mouse button while moving a note
849           with left mouse button
851         * src/core/song.cpp:
852         lock mixer while adjusting lengths of notePlayHandles after tempo change
854         * src/gui/file_browser.cpp:
855         * src/core/note_play_handle.cpp:
856         * src/core/audio/audio_port.cpp:
857         coding style fixes
859         * include/mixer.h:
860         * src/core/mixer.cpp:
861         removed fine-granular locking of various playHandle-vectors, just use
862         one global big lock for everything now - prevents various
863         deadlocks (e.g. when previewing samples in file browser)
865         * src/gui/automation_editor.cpp:
866         in erase-mode do not remove values without clicking
868         * src/core/envelope_and_lfo_parameters.cpp:
869         fixed what I broke a few hours ago.. (closes #2146864)
871         * src/core/mmp.cpp:
872         fixed extension for presets
874         * plugins/ladspa_effect/ladspa_effect.cpp:
875         * include/automatable_model.h:
876         * include/automation_pattern.h:
877         * src/core/automatable_model.cpp:
878         * src/core/ladspa_control.cpp:
879         * src/core/automation_pattern.cpp:
880         fixed lost automation relations when switching samplerate
882         * plugins/lb302/lb302.cpp:
883         * plugins/lb302/lb302.h:
884         * plugins/bass_booster/bass_booster.cpp:
885         * plugins/bass_booster/bass_booster.h:
886         * plugins/bit_invader/bit_invader.cpp:
887         * plugins/vst_effect/vst_effect.cpp:
888         * plugins/peak_controller_effect/peak_controller_effect.cpp:
889         * plugins/stereo_enhancer/stereo_enhancer.cpp:
890         * plugins/stereo_enhancer/stereo_enhancer.h:
891         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
892         * plugins/kicker/kicker.cpp:
893         * include/sweep_oscillator.h:
894         * include/envelope_and_lfo_parameters.h:
895         * include/remote_plugin.h:
896         * include/types.h:
897         * src/core/midi/midi_client.cpp:
898         * src/core/journalling_object.cpp:
899         * src/core/audio/audio_pulseaudio.cpp:
900         * src/core/envelope_and_lfo_parameters.cpp:
901         * src/core/instrument_sound_shaping.cpp:
902         * src/core/effect.cpp:
903         * src/core/ladspa_control.cpp:
904         * src/core/peak_controller.cpp:
905         * src/gui/widgets/visualization_widget.cpp:
906         * src/gui/widgets/tempo_sync_knob.cpp:
907         - added missing includes to compile with GCC 4.4
908         - optimized various loops for getting tree-vectorized, especially with
909           upcoming GCC 4.4
911         * CMakeLists.txt:
912         use -ftree-vectorize per default - everyone compiling LMMS (which
913         needs Qt >= 4.3.0) will at least have GCC 4.1, anyways only makes
914         sense when setting C(XX)FLAGS=-march=...
916         * include/effect_lib.h:
917         improved effectLib for not being based on virtual-functions rather than
918         direct function-inlining via template parameter
920 2008-10-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
922         * plugins/lb302/lb302.h:
923         * plugins/lb303/lb303.h:
924         removed obsolete supportsParallelizing() method
926         * src/tracks/instrument_track.cpp:
927         fixed volume-scaling for IPH-based but not MIDI-based instruments
929         * src/core/envelope_and_lfo_parameters.cpp:
930         use memset() rather than initializing the buffer in a loop with 0
932         * plugins/ladspa_effect/ladspa_effect.cpp:
933         fetch pointer to LADSPA port descriptor once outside the inner loops -
934         improves performance of ladspaEffect::processAudioBuffer() by 400%
936         * include/types.h:
937         faster floating point comparison
939         * data/locale/ru.ts:
940         added updated Russian localization by Alexey Kouznetsov
942         * buildtools/bin2res.cpp:
943         * include/mmp.h:
944         * include/knob.h:
945         * include/effect.h:
946         * include/templates.h:
947         * include/track.h:
948         * include/note.h:
949         * include/automatable_model.h:
950         * include/import_filter.h:
951         * include/mixer.h:
952         * include/combobox_model.h:
953         * include/ladspa_manager.h:
954         * include/instrument.h:
955         * include/sample_buffer.h:
956         * include/midi.h:
957         * include/effect_lib.h:
958         * include/sample_record_handle.h:
959         * include/shared_object.h:
960         * include/plugin.h:
961         * include/note_play_handle.h:
962         * include/instrument_sound_shaping.h:
963         * include/oscillator.h:
964         * include/tempo_sync_knob.h:
965         * include/midi_time.h:
966         * include/remote_plugin.h:
967         * include/basic_filters.h:
968         * include/journalling_object.h:
969         * include/types.h:
970         * include/dummy_effect.h:
971         * include/automatable_model_view.h:
972         * include/inline_automation.h:
973         * include/audio_device.h:
974         * include/panning.h:
975         * include/combobox.h:
976         * include/ladspa_2_lmms.h:
977         * src/core/preset_preview_play_handle.cpp:
978         * src/core/note_play_handle.cpp:
979         * src/core/song.cpp:
980         * src/core/serializing_object.cpp:
981         * src/core/bb_track_container.cpp:
982         * src/core/remote_plugin.cpp:
983         * src/core/journalling_object.cpp:
984         * src/core/automatable_model.cpp:
985         * src/core/audio/audio_alsa.cpp:
986         * src/core/audio/audio_sdl.cpp:
987         * src/core/audio/audio_portaudio.cpp:
988         * src/core/audio/audio_jack.cpp:
989         * src/core/main.cpp:
990         * src/core/instrument_sound_shaping.cpp:
991         * src/core/effect.cpp:
992         * src/core/instrument_functions.cpp:
993         * src/core/controller_connection.cpp:
994         * src/core/track.cpp:
995         * src/core/engine.cpp:
996         * src/core/piano.cpp:
997         * src/core/timeline.cpp:
998         * src/core/instrument.cpp:
999         * src/core/surround_area.cpp:
1000         * src/core/sample_buffer.cpp:
1001         * src/core/oscillator.cpp:
1002         * src/core/automation_pattern.cpp:
1003         * src/core/lfo_controller.cpp:
1004         * src/core/sample_record_handle.cpp:
1005         * src/gui/piano_roll.cpp:
1006         * src/gui/plugin_browser.cpp:
1007         * src/gui/main_window.cpp:
1008         * src/gui/song_editor.cpp:
1009         * src/gui/widgets/kmultitabbar.cpp:
1010         * src/gui/widgets/knob.cpp:
1011         * src/gui/widgets/lcd_spinbox.cpp:
1012         * src/gui/automation_editor.cpp:
1013         * src/tracks/sample_track.cpp:
1014         * src/tracks/bb_track.cpp:
1015         * src/tracks/instrument_track.cpp:
1016         * src/tracks/pattern.cpp:
1017         * plugins/ladspa_effect/tap/CMakeLists.txt:
1018         * plugins/audio_file_processor/audio_file_processor.cpp:
1019         fixed a bunch warnings and remarks issued by Intel Compiler
1021         * include/fx_mixer.h:
1022         * src/core/fx_mixer.cpp:
1023         * src/core/mixer.cpp:
1024         - use one static jobqueue for not getting problems with cached pointers
1025         - check for job being NULL
1026         - improved performance of master mix
1028         * CMakeLists.txt:
1029         allow overriding compiler flags
1031 2008-09-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1033         * plugins/sid/sid_instrument.h:
1034         * plugins/sid/sid_instrument.cpp:
1035         * plugins/ladspa_effect/tap/CMakeLists.txt:
1036         * plugins/ladspa_effect/caps/CMakeLists.txt:
1037         * plugins/patman/patman.cpp:
1038         * plugins/patman/patman.h:
1039         * plugins/lb302/lb302.cpp:
1040         * plugins/lb302/lb302.h:
1041         * plugins/organic/organic.cpp:
1042         * plugins/organic/organic.h:
1043         * plugins/lb303/lb303.cpp:
1044         * plugins/lb303/lb303.h:
1045         * plugins/bit_invader/bit_invader.cpp:
1046         * plugins/bit_invader/bit_invader.h:
1047         * plugins/vst_effect/vst_effect.cpp:
1048         * plugins/vibed/vibed.h:
1049         * plugins/vibed/vibed.cpp:
1050         * plugins/triple_oscillator/triple_oscillator.h:
1051         * plugins/triple_oscillator/triple_oscillator.cpp:
1052         * plugins/audio_file_processor/audio_file_processor.cpp:
1053         * plugins/audio_file_processor/audio_file_processor.h:
1054         * plugins/stk/mallets/mallets.cpp:
1055         * plugins/stk/mallets/mallets.h:
1056         * plugins/papu/papu_instrument.h:
1057         * plugins/papu/papu_instrument.cpp:
1058         * plugins/sf2_player/sf2_player.cpp:
1059         * plugins/sf2_player/sf2_player.h:
1060         * plugins/vestige/vestige.cpp:
1061         * plugins/vestige/vestige.h:
1062         * plugins/kicker/kicker.cpp:
1063         * plugins/kicker/kicker.h:
1064         * include/instrument_play_handle.h:
1065         * include/instrument_track.h:
1066         * include/instrument.h:
1067         * include/sample_record_handle.h:
1068         * include/plugin.h:
1069         * include/note_play_handle.h:
1070         * include/sample_play_handle.h:
1071         * include/remote_plugin.h:
1072         * include/preset_preview_play_handle.h:
1073         * include/play_handle.h:
1074         * src/core/plugin.cpp:
1075         * src/core/preset_preview_play_handle.cpp:
1076         * src/core/note_play_handle.cpp:
1077         * src/core/remote_plugin.cpp:
1078         * src/core/sample_play_handle.cpp:
1079         * src/core/mixer.cpp:
1080         * src/core/instrument.cpp:
1081         * src/core/sample_record_handle.cpp:
1082         * src/tracks/instrument_track.cpp:
1083         removed obsolete instrument-parallelization support as this is handled
1084         much better by worker threads and adds unnecessary complexity
1086         * cmake/modules/FindPCHSupport.cmake:
1087         * INSTALL:
1088         * CMakeLists.txt:
1089         - removed (buggy) PCH support
1090         - added support for CFLAGS and CXXFLAGS environment variables
1092 2008-09-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1094         * plugins/sf2_player/sf2_player.cpp:
1095         use notePlayHandle::getMidiVelocty() rather than
1096         notePlayHandle::getVolume() for allowing less bright sounds by
1097         decreasing instrument-track's volume (if soundfont supports it)
1099         * plugins/sf2_player/sf2_player.h:
1100         * plugins/vestige/vestige.h:
1101         * plugins/vibed/vibed.h:
1102         * include/instrument.h:
1103         * include/note_play_handle.h:
1104         * src/core/note_play_handle.cpp:
1105         * src/tracks/instrument_track.cpp:
1106         - replaced instrument::notePlayHandleBased() with
1107           instrument::isMidiBased()
1108         - renamed bendable() to isBendable()
1109         - if the instrument is MIDI based and instrument-track's volume
1110           is below 100, adjust velocity of MIDI events and scaling factor when
1111           mixing sound
1113 2008-09-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1115         * plugins/CMakeLists.txt:
1116         moved LiveTool to LMMS-extras
1118         * plugins/live_tool/live_tool.h:
1119         * plugins/live_tool/live_tool.cpp:
1120         replaced X11-specific parts by platform independent code but still
1121         does not work properly
1123         * src/gui/piano_roll.cpp:
1124         play preview notes also while playing (closes #2089399)
1126         * src/gui/widgets/project_notes.cpp:
1127         minor code improvements
1129 2008-09-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1131         * plugins/ladspa_effect/cmt/src/syndrum.cpp:
1132         * plugins/ladspa_effect/cmt/src/vcf303.cpp:
1133         * plugins/ladspa_effect/cmt/src/canyondelay.cpp:
1134         * plugins/ladspa_effect/cmt/src/lofi.cpp:
1135         * plugins/ladspa_effect/cmt/src/phasemod.cpp:
1136         * plugins/ladspa_effect/cmt/src/analogue.cpp:
1137         * plugins/ladspa_effect/swh/CMakeLists.txt:
1138         * CMakeLists.txt:
1139         properly build on OS X
1141         * src/core/main.cpp:
1142         do not show splash if environment variable NOSPLASH is set
1144         * include/audio_portaudio.h:
1145         * src/core/audio/audio_portaudio.cpp:
1146         * src/core/audio/audio_pulseaudio.cpp:
1147         * src/core/sample_buffer.cpp:
1148         * src/core/sample_record_handle.cpp:
1149         * src/tracks/sample_track.cpp:
1150         * plugins/bit_invader/bit_invader.cpp:
1151         * plugins/sid/wave.cc:
1152         * plugins/sid/sid.cc:
1153         * plugins/sid/sid.h:
1154         * plugins/sid/filter.cc:
1155         fixed compiler warnings
1157         * src/gui/controller_connection_dialog.cpp:
1158         do not crash when opening controller connection dialog and using a
1159         non-sequenced (raw) MIDI-client
1161         * data/presets/TripleOscillator/SawLead.xpf:
1162         fixed preset name
1164 2008-09-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1166         * CMakeLists.txt:
1167         made 0.4.0-rc2 release
1169         * src/gui/song_editor.cpp:
1170         * data/themes/default/playpos_marker.png:
1171         improved appearence of position line
1173         * src/gui/file_browser.cpp:
1174         if adding play handle failed for some reason, set internal pointer to
1175         it to NULL
1177         * include/play_handle.h:
1178         made QThread pointer const
1180         * include/mixer.h:
1181         * src/core/mixer.cpp:
1182         - lock playHandle mutex in mixer::clear()
1183         - moved implementation of mixer::removePlayHandle() from header to
1184           source-file
1185         - only delete play-handle in mixer::removePlayHandle() if it was
1186           found in playHandle vector (fixes crash when previewing a preset
1187           under high load)
1189 2008-09-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1191         * CMakeLists.txt:
1192         package ZynAddSubFX into win32 build
1194         * plugins/vst_base/remote_vst_plugin.cpp:
1195         * include/remote_plugin.h:
1196         made remotePluginClient::process() have no return value
1198         * src/core/main.cpp:
1199         * data/locale/CMakeLists.txt:
1200         install and load Qt translation files on win32
1202         * src/core/song.cpp:
1203         fixed file-dialog for choosing export filename
1205         * src/core/project_renderer.cpp:
1206         start render-thread with normal priority on win32 as otherwise the
1207         whole GUI is almost frozen
1209         * CMakeLists.txt:
1210         removed -Wstrict-aliasing=2 warning
1212         * src/core/midi/midi_winmm.cpp:
1213         cleanups
1215         * include/audio_sdl.h:
1216         * src/core/audio/audio_sdl.cpp:
1217         fixed deadlocks after projectRenderer ran
1219         * src/core/main.cpp:
1220         set PaintOnScreen property for splash for not taking part of
1221         compositing management
1223         * include/song_editor.h:
1224         * include/timeline.h:
1225         * src/core/timeline.cpp:
1226         * src/gui/song_editor.cpp:
1227         added a vertical position line
1229         * src/core/midi/midi_winmm.cpp:
1230         added support for MIDI out in WinMM MIDI client
1232 2008-09-22      Paul Giblock <drfaygo/at/gmail/dot/com>
1234         * plugins/midi_import/portsmf/allegro.cpp:
1235         fixed broken SVN on 64bit systems. Who needs these printfs anyways?
1237         * plugins/lb302/lb302.cpp:
1238         max wave-shape model's max match the new total of wave-shapes.
1240         * include/peak_controller.h:
1241         * src/core/peak_controller.cpp:
1242         delete controller when effect is destroyed, but not the other way around
1244 2008-09-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1246         * src/core/plugin.cpp:
1247         always return a dummy model in plugin::getChildModel() for not
1248         crashing if something goes wrong
1250         * include/controller_connection_dialog.h:
1251         * src/gui/controller_connection_dialog.cpp:
1252         automatically enable auto-detect LED when selecting a MIDI device
1254         * include/remote_plugin.h:
1255         * src/core/audio/audio_device.cpp:
1256         * src/core/audio/audio_oss.cpp:
1257         * src/core/drumsynth.cpp:
1258         * src/core/main.cpp:
1259         * src/core/mixer.cpp:
1260         * src/core/sample_record_handle.cpp:
1261         * src/core/track_container.cpp:
1262         * src/gui/widgets/lcd_spinbox.cpp:
1263         * plugins/bit_invader/bit_invader.cpp:
1264         * plugins/lb302/lb302.cpp:
1265         * plugins/midi_import/portsmf/allegrosmfwr.cpp:
1266         * plugins/midi_import/portsmf/allegro.cpp:
1267         * plugins/midi_import/midi_import.cpp:
1268         * plugins/papu/gb_apu/Blip_Buffer.cpp:
1269         * plugins/papu/gb_apu/Blip_Synth.h:
1270         * plugins/papu/gb_apu/blargg_source.h:
1271         * plugins/papu/gb_apu/Blip_Buffer.h:
1272         * plugins/sf2_player/sf2_player.cpp:
1273         fixed compiler warnings
1275         * src/core/midi/midi_alsa_seq.cpp:
1276         fixed subscription of output ports
1278         * include/group_box.h:
1279         * include/midi.h:
1280         * include/midi_port.h:
1281         * include/instrument_midi_io_view.h:
1282         * src/core/midi/midi_port.cpp:
1283         * src/gui/widgets/instrument_midi_io_view.cpp:
1284         * data/themes/default/midi_in.png:
1285         * data/themes/default/midi_out.png:
1286         refactored MIDI tab in instrumentTrackWindow which now also allows
1287         setting arbitrary fixed velocity and defining a program for MIDI output
1289         * include/midi_mapper.h:
1290         * src/core/midi/midi_mapper.cpp:
1291         * data/midi-maps/gm.map:
1292         * data/midi-maps/YamahaPSS790.map:
1293         * data/midi-maps/YamahaPSR400.map:
1294         * data/midi-maps/YamahaPSR500.map:
1295         * data/midi-maps/YamahaQY10.map:
1296         * data/midi-maps/README:
1297         removed obsolete/unused support for MIDI maps
1299         * CMakeLists.txt:
1300         enable all compiler warnings per default
1302         * include/audio_file_ogg.h:
1303         * include/audio_file_device.h:
1304         * src/gui/export_project_dialog.cpp:
1305         * src/core/audio/audio_file_device.cpp:
1306         * src/core/audio/audio_file_ogg.cpp:
1307         fixed crashes when exporting as OGG and output file can't be created
1308         or OGG encoding settings are wrong
1310         * src/core/automation_pattern.cpp:
1311         fixed automationPattern::length() for cases where the key of the
1312         last value was the first tick in a new tact
1314         * plugins/ladspa_effect/cmt/src/delay.cpp:
1315         initialize CMT_PluginDescriptor with correct number of ports
1317         * plugins/ladspa_effect/cmt/src/freeverb/Components/allpass.h:
1318         * plugins/ladspa_effect/cmt/src/freeverb/Components/comb.h:
1319         * plugins/ladspa_effect/cmt/src/freeverb/Components/denormals.h:
1320         fixed strict aliasing violation
1322         * plugins/ladspa_effect/cmt/src/analogue.cpp:
1323         initialize members
1325         * plugins/ladspa_effect/swh/CMakeLists.txt:
1326         * plugins/ladspa_effect/cmt/CMakeLists.txt:
1327         * plugins/ladspa_effect/tap/CMakeLists.txt:
1328         * plugins/ladspa_effect/caps/basics.h:
1329         * plugins/ladspa_effect/CMakeLists.txt:
1330         - build LADSPA-effect plugin after subdirs have been processed,
1331           otherwise LADSPA plugins are linked against Qt4 and so on
1332         - compile with -fno-strict-aliasing, fixes win32 builds of plugins
1334 2008-09-21      Paul Giblock <drfaygo/at/gmail/dot/com>
1336         * include/config_mgr.h:
1337         * include/setup_dialog.h:
1338         * src/gui/main_window.cpp:
1339         * src/gui/setup_dialog.cpp:
1340         * src/core/config_mgr.cpp:
1341         Add support for user-configurable backgound artwork
1343         * src/core/mmp.cpp:
1344         * data/samples/drumsynth/r_b:
1345         * data/samples/drumsynth/r_n_b:
1346         - Fix incorrect replacement for drumsynth/misc
1347         - Replace r&b,r_b with r_n_b
1349         * src/core/main.cpp:
1350         - Make "could not set realtime priority" sound less like an error
1351         - Actually commit the file
1353         * plugins/lb302/lb302.cpp:
1354         * plugins/lb302/lb302.h:
1355         * src/core/mmp.cpp:
1356         * data/themes/default/round_square_wave_inactive.png:
1357         * data/themes/default/round_square_wave_active.png:
1358         - Remove useless inverted-saw waveform
1359         - Add Sine, Noise, and Exponential waveforms
1360         - Use buttons instead of a knob
1362         * plugins/bit_invader/bit_invader.cpp:
1363         * plugins/bit_invader/bit_invader.h:
1364         - Add support for pitch bend
1365         - Move smoothing button to a more noticable location
1366         - Some coding style changes
1368         * plugins/stk/mallets/mallets.cpp:
1369         * plugins/stk/mallets/mallets.h:
1370         Add support for pitch bend
1372         * src/tracks/instrument_track.cpp:
1373         * include/instrument_track.h: 
1374         - Correctly update instrumentTrackView when changing the instrument plugin
1375         - Add bendable property to hide pitchBend knob for Vibed
1377         * plugins/vibed/vibed.h:
1378         * include/instrument.h:
1379         * src/tracks/instrument_track.cpp:
1380         Hide pitch bend one vibed instrument
1381         
1382         * src/gui/setup_dialog.cpp:
1383         - Minor layout fix
1384         - Fix incorrect starting directory for STK
1386         * data/CMakeLists.txt:
1387         * data/backgrounds:
1388         * data/backgrounds/CMakeLists.txt:
1389         * data/backgrounds/lmms_tile.png:
1390         * data/backgrounds/vinnie.png:
1391         - Move llama theme background to backgrounds/
1392         - Resurrect the old background
1393         - more to come..
1395         * data/themes/llama:
1396         * data/themes/llama/background_artwork.png:
1397         - Remove llama theme
1399 2008-09-20      Paul Giblock <drfaygo/at/gmail/dot/com>
1401         * plugins/sf2_player/sf2_player.cpp:
1402         Fix bug introduced in the last edit.  Reference sharing was not working
1403         at all because the check was performed with a different filename than
1404         the insert
1405         
1406         * plugins/vibed/logo.png:
1407         Add fabi's improved vibed logo
1409         * CMakeLists.txt:
1410         Fix copy-and-paste error in a message
1412         * plugins/papu/papu_instrument.cpp:
1413         - Unselect the noise-channel (ch4) by default
1414         - Coding style changes
1416         * src/core/song.cpp:
1417         Add hard-coded file-extension filters to the import file screen
1419 2008-09-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1421         * src/core/config_mgr.cpp:
1422         set default path if a path only contains of a dir-separator
1424         * data/presets/CMakeLists.txt:
1425         fixed extension of presets
1427         * plugins/ladspa_effect/cmt/doc/bugs.html:
1428         * plugins/ladspa_effect/cmt/doc/plugins.html:
1429         * plugins/ladspa_effect/cmt/doc/installation.html:
1430         * plugins/ladspa_effect/cmt/doc/license.html:
1431         * plugins/ladspa_effect/cmt/doc/tasks.html:
1432         * plugins/ladspa_effect/cmt/doc/COPYING:
1433         * plugins/ladspa_effect/cmt/doc/overview.html:
1434         * plugins/ladspa_effect/cmt/doc/index.html:
1435         * plugins/ladspa_effect/cmt/doc/adding_plugins.html:
1436         * plugins/ladspa_effect/cmt/doc/changes.html:
1437         * plugins/ladspa_effect/cmt/src/sine.cpp:
1438         * plugins/ladspa_effect/cmt/src/delay.cpp:
1439         * plugins/ladspa_effect/cmt/src/syndrum.cpp:
1440         * plugins/ladspa_effect/cmt/src/vcf303.cpp:
1441         * plugins/ladspa_effect/cmt/src/utils.h:
1442         * plugins/ladspa_effect/cmt/src/wshape_sine.cpp:
1443         * plugins/ladspa_effect/cmt/src/canyondelay.cpp:
1444         * plugins/ladspa_effect/cmt/src/noise.cpp:
1445         * plugins/ladspa_effect/cmt/src/amp.cpp:
1446         * plugins/ladspa_effect/cmt/src/disintegrator.cpp:
1447         * plugins/ladspa_effect/cmt/src/run_adding.h:
1448         * plugins/ladspa_effect/cmt/src/hardgate.cpp:
1449         * plugins/ladspa_effect/cmt/src/cmt.cpp:
1450         * plugins/ladspa_effect/cmt/src/mixer.cpp:
1451         * plugins/ladspa_effect/cmt/src/filter.cpp:
1452         * plugins/ladspa_effect/cmt/src/lofi.cpp:
1453         * plugins/ladspa_effect/cmt/src/am.cpp:
1454         * plugins/ladspa_effect/cmt/src/phasemod.cpp:
1455         * plugins/ladspa_effect/cmt/src/grain.cpp:
1456         * plugins/ladspa_effect/cmt/src/pink.cpp:
1457         * plugins/ladspa_effect/cmt/src/init.cpp:
1458         * plugins/ladspa_effect/cmt/src/ambisonic.cpp:
1459         * plugins/ladspa_effect/cmt/src/pinknoise.h:
1460         * plugins/ladspa_effect/cmt/src/organ.cpp:
1461         * plugins/ladspa_effect/cmt/src/null.cpp:
1462         * plugins/ladspa_effect/cmt/src/logistic.cpp:
1463         * plugins/ladspa_effect/cmt/src/descriptor.cpp:
1464         * plugins/ladspa_effect/cmt/src/freeverb/freeverb.cpp:
1465         * plugins/ladspa_effect/cmt/src/freeverb/Components/allpass.cpp:
1466         * plugins/ladspa_effect/cmt/src/freeverb/Components/comb.cpp:
1467         * plugins/ladspa_effect/cmt/src/freeverb/Components/revmodel.h:
1468         * plugins/ladspa_effect/cmt/src/freeverb/Components/allpass.h:
1469         * plugins/ladspa_effect/cmt/src/freeverb/Components/comb.h:
1470         * plugins/ladspa_effect/cmt/src/freeverb/Components/tuning.h:
1471         * plugins/ladspa_effect/cmt/src/freeverb/Components/denormals.h:
1472         * plugins/ladspa_effect/cmt/src/freeverb/Components/revmodel.cpp:
1473         * plugins/ladspa_effect/cmt/src/freeverb/readme.txt:
1474         * plugins/ladspa_effect/cmt/src/peak.cpp:
1475         * plugins/ladspa_effect/cmt/src/pink_full.cpp:
1476         * plugins/ladspa_effect/cmt/src/dynamic.cpp:
1477         * plugins/ladspa_effect/cmt/src/cmt.h:
1478         * plugins/ladspa_effect/cmt/src/pink_sh.cpp:
1479         * plugins/ladspa_effect/cmt/src/analogue.cpp:
1480         * plugins/ladspa_effect/cmt/src/sledgehammer.cpp:
1481         * plugins/ladspa_effect/cmt/src/ladspa_types.h:
1482         * plugins/ladspa_effect/cmt/CMakeLists.txt:
1483         * plugins/ladspa_effect/CMakeLists.txt:
1484         * CMakeLists.txt:
1485         added CMT LADSPA plugins - should be enough then :)
1487         * plugins/ladspa_effect/swh/ladspa-util.h:
1488         * plugins/ladspa_effect/swh/phasers_1217.c:
1489         * plugins/ladspa_effect/swh/vynil_1905.c:
1490         * plugins/ladspa_effect/swh/mbeq_1197.c:
1491         * plugins/ladspa_effect/swh/fast_lookahead_limiter_1913.c:
1492         * plugins/ladspa_effect/swh/flanger_1191.c:
1493         * plugins/ladspa_effect/swh/comb_1190.c:
1494         * plugins/ladspa_effect/swh/dc_remove_1207.c:
1495         * plugins/ladspa_effect/swh/dj_eq_1901.c:
1496         * plugins/ladspa_effect/swh/util/biquad.h:
1497         * plugins/ladspa_effect/swh/CMakeLists.txt:
1498         * plugins/ladspa_effect/swh/AUTHORS:
1499         * plugins/ladspa_effect/swh/COPYING:
1500         * plugins/ladspa_effect/swh/README:
1501         * plugins/ladspa_effect/CMakeLists.txt:
1502         * CMakeLists.txt:
1503         added a selection of nice SWH LADSPA plugins
1505         * include/piano_roll.h:
1506         * src/gui/piano_roll.cpp:
1507         fixed quantization when moving selected notes (closes #2118371)
1509         * plugins/sid/envelope.h:
1510         * plugins/sid/extfilt.h:
1511         * plugins/sid/wave.h:
1512         * plugins/sid/voice.h:
1513         * plugins/sid/sid.cc:
1514         * plugins/sid/sid.h:
1515         * plugins/sid/filter.h:
1516         * plugins/sid/sid_instrument.cpp:
1517         renamed class SID to cSID for not conflicting with data structure SID
1518         in win32 headers
1520         * include/ladspa_base.h:
1521         * src/core/ladspa_control.cpp:
1522         * src/gui/widgets/ladspa_control_view.cpp:
1523         * plugins/ladspa_effect/ladspa_effect.cpp:
1524         renamed FLOAT constant to FLOATING for not conflicting with FLOAT type
1525         in win32 headers
1527         * include/midi_time.h:
1528         export MIDI class - DLL version of midiImport plugin needs it
1530 2008-09-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1532         * data/locale/pt_br.qm:
1533         * data/locale/fr.qm:
1534         * data/locale/es.qm:
1535         * data/locale/nl.qm:
1536         * data/locale/ir.qm:
1537         * data/locale/en.ts:
1538         * data/locale/it.qm:
1539         * data/locale/pt_br.ts:
1540         * data/locale/fr.ts:
1541         * data/locale/es.ts:
1542         * data/locale/nl.ts:
1543         * data/locale/ir.ts:
1544         * data/locale/ca.qm:
1545         * data/locale/it.ts:
1546         * data/locale/ru.qm:
1547         * data/locale/de.qm:
1548         * data/locale/sv.qm:
1549         * data/locale/ca.ts:
1550         * data/locale/ru.ts:
1551         * data/locale/de.ts:
1552         * data/locale/sv.ts:
1553         * data/locale/en.qm:
1554         refreshed localizations
1556         * CMakeLists.txt:
1557         added "finalize-locales" target
1559         * include/config_mgr.h:
1560         * src/core/config_mgr.cpp:
1561         * src/core/main.cpp:
1562         fixed paths when starting with no configuration file
1564         * src/core/timeline.cpp:
1565         * src/core/track.cpp:
1566         * data/themes/default/playpos_marker.png:
1567         * data/themes/default/loop_points_on.png:
1568         * data/themes/default/style.css:
1569         * data/themes/default/loop_point_disabled.png:
1570         * data/themes/default/autoscroll_off.png:
1571         * data/themes/default/loop_point.png:
1572         * data/themes/default/autoscroll_on.png:
1573         * data/themes/default/loop_points_off.png:
1574         improved visual appearence of timeline
1576         * CMakeLists.txt:
1577         improved detection of Qt4 translation directory
1579 2008-09-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1581         * src/gui/fx_mixer_view.cpp:
1582         fixed tooltip of mute button
1584         * data/presets/AudioFileProcessor/Fat-Reversed-Kick.xpf:
1585         * data/presets/AudioFileProcessor/orion.xpf:
1586         * data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.xpf:
1587         * data/presets/AudioFileProcessor/Erazor.cs.xml:
1588         * data/presets/AudioFileProcessor/Bass-Mania.xpf:
1589         * data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml:
1590         * data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml:
1591         * data/presets/AudioFileProcessor/Bass-Mania.cs.xml:
1592         * data/presets/AudioFileProcessor/Erazor.xpf:
1593         * data/presets/LB302/Oh:
1594         * data/presets/LB302/GoodOldTimes.xpf:
1595         * data/presets/LB302/Oh:
1596         * data/presets/Organic/organ_swish.xpf:
1597         * data/presets/Organic/pad_ethereal.cs.xml:
1598         * data/presets/Organic/organ_swish.cs.xml:
1599         * data/presets/Organic/puresine.xpf:
1600         * data/presets/Organic/default.cs.xml:
1601         * data/presets/Organic/organ_blues.xpf:
1602         * data/presets/Organic/puresine.cs.xml:
1603         * data/presets/Organic/sequencer_64.xpf:
1604         * data/presets/Organic/organ_blues.cs.xml:
1605         * data/presets/Organic/organ_risingsun.xpf:
1606         * data/presets/Organic/pad_sweep.xpf:
1607         * data/presets/Organic/pad_rich.xpf:
1608         * data/presets/Organic/sequencer_64.cs.xml:
1609         * data/presets/Organic/pad_ethereal.xpf:
1610         * data/presets/Organic/pad_sweep.cs.xml:
1611         * data/presets/Organic/organ_risingsun.cs.xml:
1612         * data/presets/Organic/pad_rich.cs.xml:
1613         * data/presets/BitInvader/drama.xpf:
1614         * data/presets/BitInvader/pluck.cs.xml:
1615         * data/presets/BitInvader/bell.cs.xml:
1616         * data/presets/BitInvader/spacefx.xpf:
1617         * data/presets/BitInvader/drama.cs.xml:
1618         * data/presets/BitInvader/default.cs.xml:
1619         * data/presets/BitInvader/cello.xpf:
1620         * data/presets/BitInvader/soft_pad.xpf:
1621         * data/presets/BitInvader/spacefx.cs.xml:
1622         * data/presets/BitInvader/alien_strings.xpf:
1623         * data/presets/BitInvader/toy_piano.xpf:
1624         * data/presets/BitInvader/subbass.xpf:
1625         * data/presets/BitInvader/wah_synth.xpf:
1626         * data/presets/BitInvader/cello.cs.xml:
1627         * data/presets/BitInvader/soft_pad.cs.xml:
1628         * data/presets/BitInvader/sweep_pad.xpf:
1629         * data/presets/BitInvader/beehive.xpf:
1630         * data/presets/BitInvader/toy_piano.cs.xml:
1631         * data/presets/BitInvader/alien_strings.cs.xml:
1632         * data/presets/BitInvader/subbass.cs.xml:
1633         * data/presets/BitInvader/wah_synth.cs.xml:
1634         * data/presets/BitInvader/epiano.xpf:
1635         * data/presets/BitInvader/sweep_pad.cs.xml:
1636         * data/presets/BitInvader/beehive.cs.xml:
1637         * data/presets/BitInvader/bell.xpf:
1638         * data/presets/BitInvader/pluck.xpf:
1639         * data/presets/BitInvader/epiano.cs.xml:
1640         * data/presets/Vibed/SadPad.cs.xml:
1641         * data/presets/Vibed/Harpsichord.xpf:
1642         * data/presets/Vibed/SadPad.xpf:
1643         * data/presets/Vibed/Harpsichord.cs.xml:
1644         * data/presets/TripleOscillator/Short4.xpf:
1645         * data/presets/TripleOscillator/Arpeggio_1.cs.xml:
1646         * data/presets/TripleOscillator/Fat-FMish-Bells.cs.xml:
1647         * data/presets/TripleOscillator/AmazingBubbles.xpf:
1648         * data/presets/TripleOscillator/HiPad.xpf:
1649         * data/presets/TripleOscillator/Whistle.cs.xml:
1650         * data/presets/TripleOscillator/Plucked.xpf:
1651         * data/presets/TripleOscillator/SawLead.cs.xml:
1652         * data/presets/TripleOscillator/Harp-of-a-Fairy.cs.xml:
1653         * data/presets/TripleOscillator/Short4.cs.xml:
1654         * data/presets/TripleOscillator/ArpKing.xpf:
1655         * data/presets/TripleOscillator/Dull-Bell-Arp.xpf:
1656         * data/presets/TripleOscillator/Rough!.cs.xml:
1657         * data/presets/TripleOscillator/Plucked.cs.xml:
1658         * data/presets/TripleOscillator/Harmonium.xpf:
1659         * data/presets/TripleOscillator/E-Organ.cs.xml:
1660         * data/presets/TripleOscillator/Gong.cs.xml:
1661         * data/presets/TripleOscillator/ArpKing.cs.xml:
1662         * data/presets/TripleOscillator/AnalogDreamz.xpf:
1663         * data/presets/TripleOscillator/Harmonium.cs.xml:
1664         * data/presets/TripleOscillator/PowerStrings.xpf:
1665         * data/presets/TripleOscillator/SpaceBass.cs.xml:
1666         * data/presets/TripleOscillator/RaveBass.cs.xml:
1667         * data/presets/TripleOscillator/ResonantPad.xpf:
1668         * data/presets/TripleOscillator/SawLead.xpf:
1669         * data/presets/TripleOscillator/Fat.cs.xml:
1670         * data/presets/TripleOscillator/ResoBass.xpf:
1671         * data/presets/TripleOscillator/LovelyDream.xpf:
1672         * data/presets/TripleOscillator/AnalogTimes2.xpf:
1673         * data/presets/TripleOscillator/RockOrgan.xpf:
1674         * data/presets/TripleOscillator/TB303-Arpeggio.xpf:
1675         * data/presets/TripleOscillator/Xylophon.cs.xml:
1676         * data/presets/TripleOscillator/E-Organ.xpf:
1677         * data/presets/TripleOscillator/Short3.cs.xml:
1678         * data/presets/TripleOscillator/LovelyDream.cs.xml:
1679         * data/presets/TripleOscillator/SoftStrings.cs.xml:
1680         * data/presets/TripleOscillator/DeathBass.xpf:
1681         * data/presets/TripleOscillator/Play-some-rock.xpf:
1682         * data/presets/TripleOscillator/TranceLead.xpf:
1683         * data/presets/TripleOscillator/MoveYourBody.xpf:
1684         * data/presets/TripleOscillator/SpaceBass.xpf:
1685         * data/presets/TripleOscillator/Harpsichord.xpf:
1686         * data/presets/TripleOscillator/Freaky-Bass.xpf:
1687         * data/presets/TripleOscillator/MoveYourBody.cs.xml:
1688         * data/presets/TripleOscillator/PowerStrings.cs.xml:
1689         * data/presets/TripleOscillator/Fat-FMish-Bells.xpf:
1690         * data/presets/TripleOscillator/Arpeggio_1.xpf:
1691         * data/presets/TripleOscillator/Freaky-Bass.cs.xml:
1692         * data/presets/TripleOscillator/Bell.xpf:
1693         * data/presets/TripleOscillator/Arpeggio_2.xpf:
1694         * data/presets/TripleOscillator/Xylophon.xpf:
1695         * data/presets/TripleOscillator/Jupiter.xpf:
1696         * data/presets/TripleOscillator/SawReso.xpf:
1697         * data/presets/TripleOscillator/LFO-party.cs.xml:
1698         * data/presets/TripleOscillator/ResonantPad.cs.xml:
1699         * data/presets/TripleOscillator/Rough!.xpf:
1700         * data/presets/TripleOscillator/Distorted-FM-Bass.xpf:
1701         * data/presets/TripleOscillator/Kick.cs.xml:
1702         * data/presets/TripleOscillator/Short2.cs.xml:
1703         * data/presets/TripleOscillator/SawReso.cs.xml:
1704         * data/presets/TripleOscillator/TheFirstOne.xpf:
1705         * data/presets/TripleOscillator/SoftBass.cs.xml:
1706         * data/presets/TripleOscillator/AmazingBubbles.cs.xml:
1707         * data/presets/TripleOscillator/HiPad.cs.xml:
1708         * data/presets/TripleOscillator/TB303-Arpeggio.cs.xml:
1709         * data/presets/TripleOscillator/Distorted-FM-Bass.cs.xml:
1710         * data/presets/TripleOscillator/Analogous.cs.xml:
1711         * data/presets/TripleOscillator/TheMaster.cs.xml:
1712         * data/presets/TripleOscillator/WarmStack.cs.xml:
1713         * data/presets/TripleOscillator/Ravemania.xpf:
1714         * data/presets/TripleOscillator/PluckArpeggio.cs.xml:
1715         * data/presets/TripleOscillator/Square.cs.xml:
1716         * data/presets/TripleOscillator/Play-some-rock.cs.xml:
1717         * data/presets/TripleOscillator/TranceLead.cs.xml:
1718         * data/presets/TripleOscillator/Ravemania.cs.xml:
1719         * data/presets/TripleOscillator/OldComputerGames.xpf:
1720         * data/presets/TripleOscillator/Harpsichord.cs.xml:
1721         * data/presets/TripleOscillator/MoogArpeggio.xpf:
1722         * data/presets/TripleOscillator/Snare.cs.xml:
1723         * data/presets/TripleOscillator/Harp-of-a-Fairy.xpf:
1724         * data/presets/TripleOscillator/FutureBass.xpf:
1725         * data/presets/TripleOscillator/Fat-TB303-Arp.xpf:
1726         * data/presets/TripleOscillator/SoftBass.xpf:
1727         * data/presets/TripleOscillator/Bell.cs.xml:
1728         * data/presets/TripleOscillator/Arpeggio_2.cs.xml:
1729         * data/presets/TripleOscillator/SoftStrings.xpf:
1730         * data/presets/TripleOscillator/MoogArpeggio.cs.xml:
1731         * data/presets/TripleOscillator/Short1.cs.xml:
1732         * data/presets/TripleOscillator/FatCheese.xpf:
1733         * data/presets/TripleOscillator/Analogous.xpf:
1734         * data/presets/TripleOscillator/ResoBass.cs.xml:
1735         * data/presets/TripleOscillator/Jupiter.cs.xml:
1736         * data/presets/TripleOscillator/Fat-TB303-Arp.cs.xml:
1737         * data/presets/TripleOscillator/FutureBass.cs.xml:
1738         * data/presets/TripleOscillator/Gong.xpf:
1739         * data/presets/TripleOscillator/TB303.xpf:
1740         * data/presets/TripleOscillator/RockOrgan.cs.xml:
1741         * data/presets/TripleOscillator/AnalogTimes2.cs.xml:
1742         * data/presets/TripleOscillator/PluckArpeggio.xpf:
1743         * data/presets/TripleOscillator/TheMaster.xpf:
1744         * data/presets/TripleOscillator/WarmStack.xpf:
1745         * data/presets/TripleOscillator/FatCheese.cs.xml:
1746         * data/presets/TripleOscillator/Bell_2.xpf:
1747         * data/presets/TripleOscillator/Square.xpf:
1748         * data/presets/TripleOscillator/TheFirstOne.cs.xml:
1749         * data/presets/TripleOscillator/TB303.cs.xml:
1750         * data/presets/TripleOscillator/AnalogTimes.xpf:
1751         * data/presets/TripleOscillator/Dull-Bell-Arp.cs.xml:
1752         * data/presets/TripleOscillator/ChurchOrgan.xpf:
1753         * data/presets/TripleOscillator/Kick2.xpf:
1754         * data/presets/TripleOscillator/Bell_2.cs.xml:
1755         * data/presets/TripleOscillator/RaveBass.xpf:
1756         * data/presets/TripleOscillator/Snare.xpf:
1757         * data/presets/TripleOscillator/ChurchOrgan.cs.xml:
1758         * data/presets/TripleOscillator/Kick2.cs.xml:
1759         * data/presets/TripleOscillator/AnalogTimes.cs.xml:
1760         * data/presets/TripleOscillator/E-Organ2.xpf:
1761         * data/presets/TripleOscillator/Fat.xpf:
1762         * data/presets/TripleOscillator/AnalogDreamz.cs.xml:
1763         * data/presets/TripleOscillator/LFO-party.xpf:
1764         * data/presets/TripleOscillator/Whistle.xpf:
1765         * data/presets/TripleOscillator/Short1.xpf:
1766         * data/presets/TripleOscillator/OldComputerGames.cs.xml:
1767         * data/presets/TripleOscillator/Kick.xpf:
1768         * data/presets/TripleOscillator/Short2.xpf:
1769         * data/presets/TripleOscillator/Short3.xpf:
1770         * src/gui/main_window.cpp:
1771         * src/gui/file_browser.cpp:
1772         * src/tracks/instrument_track.cpp:
1773         changed preset's extension from "*.cs.xml" to "*.xpf"
1775         * include/instrument_track.h:
1776         * include/track.h:
1777         * include/track_label_button.h:
1778         * src/core/bb_track_container.cpp:
1779         * src/core/track.cpp:
1780         * src/gui/widgets/track_label_button.cpp:
1781         * src/tracks/automation_track.cpp:
1782         * src/tracks/bb_track.cpp:
1783         * src/tracks/instrument_track.cpp:
1784         * src/tracks/sample_track.cpp:
1785         - when used on instrumentTrack, also show instrument name on
1786           trackLabelButton
1787         - removed obsolete support for choosing custom track icons
1789         * src/core/mixer.cpp:
1790         when just rendering at console, use DEFAULT_BUFFER_SIZE
1792         * data/track_icons/harp02.png:
1793         * data/track_icons/harp03.png:
1794         * data/track_icons/cello01.png:
1795         * data/track_icons/guitar_electric01.png:
1796         * data/track_icons/piano01.png:
1797         * data/track_icons/guitar_electric02.png:
1798         * data/track_icons/maracas01.png:
1799         * data/track_icons/guitar_electric03.png:
1800         * data/track_icons/guitar_electric04.png:
1801         * data/track_icons/connectors01.png:
1802         * data/track_icons/drumset01_.png:
1803         * data/track_icons/trombone01.png:
1804         * data/track_icons/CMakeLists.txt:
1805         * data/track_icons/african_drum01.png:
1806         * data/track_icons/french_horn01.png:
1807         * data/track_icons/african_drum02.png:
1808         * data/track_icons/mouth01.png:
1809         * data/track_icons/african_drum03.png:
1810         * data/track_icons/african_drum04.png:
1811         * data/track_icons/african_drum05.png:
1812         * data/track_icons/gramophone01.png:
1813         * data/track_icons/trumpet01.png:
1814         * data/track_icons/violin01.png:
1815         * data/track_icons/trumpet02.png:
1816         * data/track_icons/violin02.png:
1817         * data/track_icons/trumpet03.png:
1818         * data/track_icons/microphone01.png:
1819         * data/track_icons/guitar_bass01.png:
1820         * data/track_icons/trumpet04.png:
1821         * data/track_icons/microphone02.png:
1822         * data/track_icons/microphone03.png:
1823         * data/track_icons/microphone04.png:
1824         * data/track_icons/flute01.png:
1825         * data/track_icons/oboe01.png:
1826         * data/track_icons/xylophone01.png:
1827         * data/track_icons/guitar_accoustic01.png:
1828         * data/track_icons/guitar_accoustic02.png:
1829         * data/track_icons/speaker01.png:
1830         * data/track_icons/harp01.png:
1831         * data/track_icons/guitar_accoustic03.png:
1832         * data/CMakeLists.txt:
1833         finally removed obsolete track icons
1835 2008-09-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1837         * plugins/sf2_player/sf2_player.cpp:
1838         try to use relative paths for s_fonts map too as otherwise
1839         s_fonts.remove( m_filename ) won't do anything if a full path was
1840         inserted and m_filename was made relative - fixes crash when
1841         re-opening a soundfont which was shared before
1843         * plugins/midi_import/portsmf/strparse.cpp:
1844         fixed compilation issue
1846 2008-09-16      Paul Giblock <drfaygo/at/gmail/dot/com>
1848         * plugins/sf2_player/sf2_player.cpp:
1849         * plugins/sf2_player/sf2_player.h:
1850         * plugins/midi_import/portsmf:
1851         * plugins/midi_import/portsmf/allegrowr.cpp:
1852         * plugins/midi_import/portsmf/trace.cpp:
1853         * plugins/midi_import/portsmf/algsmfrd_internal.h:
1854         * plugins/midi_import/portsmf/trace.h:
1855         * plugins/midi_import/portsmf/strparse.cpp:
1856         * plugins/midi_import/portsmf/allegrosmfwr.cpp:
1857         * plugins/midi_import/portsmf/mfmidi.cpp:
1858         * plugins/midi_import/portsmf/strparse.h:
1859         * plugins/midi_import/portsmf/mfmidi.h:
1860         * plugins/midi_import/portsmf/allegrord.cpp:
1861         * plugins/midi_import/portsmf/license.txt:
1862         * plugins/midi_import/portsmf/allegrosmfrd.cpp:
1863         * plugins/midi_import/portsmf/allegro.cpp:
1864         * plugins/midi_import/portsmf/allegroserial.cpp:
1865         * plugins/midi_import/portsmf/algrd_internal.h:
1866         * plugins/midi_import/portsmf/allegro.h:
1867         * plugins/midi_import/portsmf/README.txt:
1868         * plugins/midi_import/CMakeLists.txt:
1869         * plugins/midi_import/midi_import.cpp:
1870         * include/meter_model.h:
1871         * include/instrument_track.h:
1872         * include/config_mgr.h:
1873         * include/plugin.h:
1874         * include/setup_dialog.h:
1875         * src/gui/setup_dialog.cpp:
1876         * src/core/plugin.cpp:
1877         * src/core/config_mgr.cpp:
1878         - Add Portsmf-based MIDI import to trunk
1879         - Add default-sf2 to settings dialog, but currently only loads when
1880           importing a MIDI
1882         * src/gui/piano_roll.cpp:
1883         - Add new shortcuts for change Q and note length
1884         - Add "Note lock" mode to keep Q equal to note length
1886 2008-09-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1888         * src/gui/track_container_view.cpp:
1889         * src/core/track.cpp:
1890         disabled undo/redo of track/TCO addition/removal as not mature yet and
1891         causes unnecessary crashes (closes #2014439, #2100407)
1893         * data/projects/cool_songs/Skiessi-TurningPoint.mmpz:
1894         * data/projects/cool_songs/Skiessi-RandomProjectNumber14253.mmpz:
1895         added two cool projects from Skiessi - more to come
1897         * src/core/track.cpp:
1898         * src/core/automation_pattern.cpp:
1899         - fixed cloning of automation-patterns (closes #2102218)
1900         - allow dropping automation patterns onto existing automation patterns
1902         * src/core/project_journal.cpp:
1903         improved usage of random number generator (closes #2109211)
1905         * plugins/ladspa_effect/tap/tap_pinknoise.c:
1906         * plugins/ladspa_effect/caps/interface.cc:
1907         * src/core/drumsynth.cpp:
1908         * src/core/main.cpp:
1909         don't mis-initialize random number generator with default value
1911         * src/core/journalling_object.cpp:
1912         print name of object which uses ID if another object requests it
1914         * src/core/automation_pattern.cpp:
1915         make sure we don't return NULL in automationPattern::firstObject()
1917         * plugins/ladspa_effect/ladspa_effect.cpp:
1918         * include/engine.h:
1919         * include/effect_rack_view.h:
1920         * include/effect_chain.h:
1921         * src/core/effect_chain.cpp:
1922         * src/core/preset_preview_play_handle.cpp:
1923         * src/core/engine.cpp:
1924         * src/gui/widgets/effect_rack_view.cpp:
1925         - do not show messages about missing plugins when previewing
1926           presets (closes #2110203)
1927         - clear effect view before loading settings in effectChain
1929         * CMakeLists.txt:
1930         improved out-of-tree builds
1932 2008-09-14      Csaba Hruska <csaba.hruska/at/gmail.com>
1933         
1934         * src/core/audio/audio_portaudio.cpp:
1935         Bugfix: Fixed segfault when other app uses and blocks the audio device
1937 2008-09-08      Paul Giblock <drfaygo/at/gmail/dot/com>
1938         
1939         * src/core/timeline.cpp:
1940         Keep loop markers from being in same position
1942 2008-09-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1944         * include/audio_port.h:
1945         * include/midi.h:
1946         * include/mixer.h:
1947         * include/play_handle.h:
1948         * include/sample_play_handle.h:
1949         * include/track.h:
1950         * src/core/audio/audio_port.cpp:
1951         * src/core/effect_chain.cpp:
1952         * src/core/mixer.cpp:
1953         * src/core/sample_play_handle.cpp:
1954         * src/core/track.cpp:
1955         - ensure correct thread affinity when deleting play handles - fixes
1956           crash when previewing samples and LMMS was linked against Qt 4.3.x
1957         - renamed destroyed()-signals for not conflicting with
1958           QObject::destroyed() in Qt 4.3
1959         - made effectChain creation in audioPort optional
1960         - fixed various compiler warnings
1962 2008-09-08      Paul Giblock <drfaygo/at/gmail/dot/com>
1964         * plugins/papu/gb_abu/Blip_Buffer.cpp:
1965         Fix PAPU for 64bit machines
1967 2008-09-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
1969         * CMakeLists.txt:
1970         made 0.4.0-rc1 release
1972         * plugins/vst_base/CMakeLists.txt:
1973         * CMakeLists.txt:
1974         - fixed win32-specific build issues
1975         - on Linux install manpage
1977         * include/gui_templates.h:
1978         * src/core/instrument_sound_shaping.cpp:
1979         * src/gui/widgets/instrument_sound_shaping_view.cpp:
1980         * src/gui/widgets/lcd_spinbox.cpp:
1981         * data/locale/de.qm:
1982         * data/locale/de.ts:
1983         further UI finetuning
1985         * include/midi_winmm.h:
1986         * src/core/midi/midi_winmm.cpp:
1987         finally made WinMM MIDI driver work properly by fixing internal data
1988         structures
1990         * buildtools/bin2res.cpp:
1991         * plugins/bit_invader/logo.png:
1992         * plugins/bit_invader/bit_invader.cpp:
1993         * plugins/bit_invader/wavegraph.png:
1994         * plugins/bit_invader/wavegraph3.png:
1995         * plugins/bit_invader/artwork.png:
1996         * plugins/lb302/artwork.png:
1997         * plugins/papu/artwork.png:
1998         * plugins/sf2_player/chorus_off.png:
1999         * plugins/sf2_player/chorus_on.png:
2000         * plugins/sf2_player/logo.png:
2001         * plugins/sf2_player/sf2_player.cpp:
2002         * plugins/sf2_player/fileselect_off.png:
2003         * plugins/sf2_player/fileselect_on.png:
2004         * plugins/sf2_player/reverb_off.png:
2005         * plugins/sf2_player/patches_off.png:
2006         * plugins/sf2_player/patches_on.png:
2007         * plugins/sf2_player/artwork.png:
2008         * plugins/sid/3off.png:
2009         * plugins/sid/8580red.png:
2010         * plugins/sid/trianglered.png:
2011         * plugins/sid/logo.png:
2012         * plugins/sid/bp.png:
2013         * plugins/sid/6581.png:
2014         * plugins/sid/8580.png:
2015         * plugins/sid/syncred.png:
2016         * plugins/sid/hp.png:
2017         * plugins/sid/lp.png:
2018         * plugins/sid/sync.png:
2019         * plugins/sid/noise.png:
2020         * plugins/sid/test.png:
2021         * plugins/sid/pulsered.png:
2022         * plugins/sid/filter.png:
2023         * plugins/sid/sawred.png:
2024         * plugins/sid/3offred.png:
2025         * plugins/sid/pulse.png:
2026         * plugins/sid/artwork.png:
2027         * plugins/sid/saw.png:
2028         * plugins/sid/bpred.png:
2029         * plugins/sid/6581red.png:
2030         * plugins/sid/ring.png:
2031         * plugins/sid/hpred.png:
2032         * plugins/sid/triangle.png:
2033         * plugins/sid/lpred.png:
2034         * plugins/sid/noisered.png:
2035         * plugins/sid/testred.png:
2036         * plugins/sid/filterred.png:
2037         * plugins/sid/ringred.png:
2038         * plugins/spectrum_analyzer/log_x_axis.png:
2039         * plugins/spectrum_analyzer/log_y_axis.png:
2040         * plugins/spectrum_analyzer/background.png:
2041         * plugins/spectrum_analyzer/spectrum_background.png:
2042         * plugins/spectrum_analyzer/spectrum_background_plain.png:
2043         * plugins/vestige/vestige.cpp:
2044         * plugins/vst_base/remote_vst_plugin.cpp:
2045         * data/themes/default/groupbox_led_bg.png:
2046         * include/aeffectx.h:
2047         * include/effect_rack_view.h:
2048         * include/group_box.h:
2049         * include/gui_templates.h:
2050         * src/core/piano.cpp:
2051         * src/gui/fx_mixer_view.cpp:
2052         * src/gui/plugin_browser.cpp:
2053         * src/gui/widgets/effect_rack_view.cpp:
2054         * src/gui/widgets/group_box.cpp:
2055         * src/gui/widgets/instrument_function_views.cpp:
2056         * src/gui/widgets/instrument_midi_io_view.cpp:
2057         * src/gui/widgets/instrument_sound_shaping_view.cpp:
2058         * src/gui/widgets/knob.cpp:
2059         * src/gui/widgets/tab_widget.cpp:
2060         UI finetuning / recompression of some PNG-files
2062         * src/core/remote_plugin.cpp:
2063         improved destruction
2065         * src/core/mixer.cpp:
2066         re-enabled WinMM MIDI
2068         * include/midi_winmm.h:
2069         * src/core/midi/midi_winmm.cpp:
2070         create separate thread for WinMM MIDI
2072 2008-09-08      Paul Giblock <drfaygo/at/gmail/dot/com>
2074         * plugins/sid/logo.png:
2075         Un-box the sid logo
2077         * plugins/papu:
2078         * plugins/papu/Basic_Gb_Apu.cpp:
2079         * plugins/papu/btn_off.png:
2080         * plugins/papu/btn_on.png:
2081         * plugins/papu/papu_instrument.h:
2082         * plugins/papu/logo.png:
2083         * plugins/papu/Basic_Gb_Apu.h:
2084         * plugins/papu/btn_up.png:
2085         * plugins/papu/btn_15.png:
2086         * plugins/papu/btn_7.png:
2087         * plugins/papu/artwork.png:
2088         * plugins/papu/gb_apu:
2089         * plugins/papu/gb_apu/Blip_Buffer.cpp:
2090         * plugins/papu/gb_apu/Gb_Oscs.cpp:
2091         * plugins/papu/gb_apu/Blip_Synth.h:
2092         * plugins/papu/gb_apu/Gb_Apu.h:
2093         * plugins/papu/gb_apu/blargg_source.h:
2094         * plugins/papu/gb_apu/Multi_Buffer.cpp:
2095         * plugins/papu/gb_apu/Blip_Buffer.h:
2096         * plugins/papu/gb_apu/Gb_Oscs.h:
2097         * plugins/papu/gb_apu/boost:
2098         * plugins/papu/gb_apu/boost/config.hpp:
2099         * plugins/papu/gb_apu/boost/cstdint.hpp:
2100         * plugins/papu/gb_apu/boost/static_assert.hpp:
2101         * plugins/papu/gb_apu/Multi_Buffer.h:
2102         * plugins/papu/gb_apu/LGPL.txt:
2103         * plugins/papu/gb_apu/blargg_common.h:
2104         * plugins/papu/gb_apu/Gb_Apu.cpp:
2105         * plugins/papu/btn_down.png:
2106         * plugins/papu/CMakeLists.txt:
2107         * plugins/papu/papu_instrument.cpp:
2108         * plugins/CMakeLists.txt:
2109         - Add Csaba and Attila's GameBoy emulator so it can be tested in RC1
2110         - Update artwork to something not trademarked. "Freeboy" is just for now
2112 2008-09-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2114         * plugins/patman/patman.cpp:
2115         * plugins/patman/patman.h:
2116         - apply release of 128 frames
2117         - enable loop mode per default
2119         * plugins/patman/patman.cpp:
2120         * plugins/patman/patman.h:
2121         * plugins/triple_oscillator/triple_oscillator.h:
2122         * plugins/triple_oscillator/triple_oscillator.cpp:
2123         * plugins/audio_file_processor/audio_file_processor.cpp:
2124         * plugins/audio_file_processor/audio_file_processor.h:
2125         * plugins/sf2_player/sf2_player.cpp:
2126         * plugins/sf2_player/sf2_player.h:
2127         * plugins/vestige/vestige.cpp:
2128         * plugins/vestige/vestige.h:
2129         * plugins/flp_import/flp_import.cpp:
2130         * plugins/midi_import/midi_import.cpp:
2131         * include/engine.h:
2132         * include/file_browser.h:
2133         * include/preset_preview_play_handle.h:
2134         * include/plugin.h:
2135         * include/remote_plugin.h:
2136         * include/sample_play_handle.h:
2137         * src/core/engine.cpp:
2138         * src/core/plugin.cpp:
2139         * src/core/preset_preview_play_handle.cpp:
2140         * src/gui/file_browser.cpp:
2141         * src/gui/main_window.cpp:
2142         * src/gui/track_container_view.cpp:
2143         - rewrote the way plugins can handle certain filetypes
2144         - rewrote various parts of file-browser to be less redundant and
2145           more stable (closes #2071891)
2147         * data/themes/default/sample_file.png:
2148         renamed from sound_file.png
2150         * include/midi.h:
2151         * src/core/midi/midi_client.cpp:
2152         * src/core/midi/midi_port.cpp:
2153         * src/core/midi/midi_alsa_seq.cpp:
2154         fixed MIDI output channel issues (closes #2098722)
2156         * include/graph.h:
2157         * src/gui/widgets/graph.cpp:
2158         integrated patch by Attila Herman which adds support for colorized
2159         graph and quantized values
2161         * src/core/config_mgr.cpp:
2162         made default VST path to be inside LMMS working directory
2164         * src/gui/track_container_view.cpp:
2165         changed size constraint for scrollArea-widget layout - fixes messed up
2166         Song Editor after loading various projects
2168         * src/gui/main_window.cpp:
2169         set QMdiArea::DontMaximizeSubWindowOnActivation option for not
2170         crashing when loading project while a subwindow is maximized (this
2171         looks like a bug in Qt) (closes #2077774)
2173         * src/gui/controller_connection_dialog.cpp:
2174         fixed crash when closing controller select dialog and no controller
2175         has been selected (closes #2078357)
2177         * include/track_container.h:
2178         * src/core/song.cpp:
2179         * src/core/track_container.cpp:
2180         display message if project is empty and user tries to export
2181         it (closes #2091056)
2183         * src/core/song.cpp:
2184         - fixed freeze after adding BB-tracks (closes #2089337)
2185         - replaced bad cast for calling projectNotes::save/restoreState by
2186           proper C++ construct
2188         * include/controller_rack_view.h:
2189         * include/fx_mixer_view.h:
2190         * include/main_window.h:
2191         * include/piano_roll.h:
2192         * include/project_notes.h:
2193         * include/track_container.h:
2194         * include/track_container_view.h:
2195         * src/core/song.cpp:
2196         * src/core/track_container.cpp:
2197         * src/gui/fx_mixer_view.cpp:
2198         * src/gui/main_window.cpp:
2199         * src/gui/track_container_view.cpp:
2200         * src/gui/widgets/controller_rack_view.cpp:
2201         * src/tracks/instrument_track.cpp:
2202         properly save and restore position, size, visibility and state of
2203         MDI-subwindows (closes #2072383)
2205         * src/core/serializing_object.cpp:
2206         fixed hook-mechanism
2208         * include/song_editor.h:
2209         * src/gui/song_editor.cpp:
2210         * src/gui/fx_mixer_view.cpp:
2211         * src/gui/widgets/visualization_widget.cpp:
2212         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
2213         moved peridic update-timer from songEditor to mainWindow
2215         * data/projects/cool_songs/Chris-HorizonRemix.mmp:
2216         added song
2218 2008-09-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2220         * data/themes/default/background_artwork.png:
2221         added more decent background artwork
2223         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
2224         * include/ladspa_base.h:
2225         save LADSPA effect filenames without extension and add correct
2226         one (depending on platform built for) when loading settings - fixes
2227         missing effects when loading songs in Windows which were made in Linux
2228         and vice versa
2230         * include/audio_pulseaudio.h:
2231         added information about bad latency when using PulseAudio output
2233         * plugins/vestige/vestige.cpp:
2234         * plugins/vestige/vestige.h:
2235         only use MIDI anymore for controlling VST instruments
2237         * plugins/lb302/lb302.cpp:
2238         * include/note.h:
2239         * include/instrument_track.h:
2240         * include/midi.h:
2241         * include/note_play_handle.h:
2242         * src/tracks/instrument_track.cpp:
2243         * src/core/preset_preview_play_handle.cpp:
2244         * src/core/note_play_handle.cpp:
2245         * src/core/instrument_functions.cpp:
2246         * src/core/piano.cpp:
2247         - improved the way, MIDI-events are internally sent and handled
2248         - fixed names of various member methods of notePlayHandle class
2249         - full MIDI velocity when pressing key on test piano
2250         - send volume changes of a notePlayHandle as MidiKeyPressure events
2251         - send pitch changes of instrument track as MidiPitchBend events
2252         - added detection for running MIDI notes
2253         - correct calculation of MIDI key - makes remotePlugins respect
2254           base note settings
2256         * src/core/midi/midi_port.cpp:
2257         * src/core/midi/midi_alsa_seq.cpp:
2258         fixed broken MIDI-output (when masking output events it didn't match
2259         against correct output MIDI channel)
2261 2008-09-06      Csaba Hruska <csaba.hruska/at/gmail.com>
2263         * plugins/sid/sid_instrument.cpp:
2264         Fixed overlapping notes distorsion SID bug.
2265         Some warnings are also had removed.
2267 2008-09-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2269         * include/lmms_style.h:
2270         * src/gui/lmms_style.cpp:
2271         * src/core/main.cpp:
2272         - moved palette initialization into lmmsStyle class
2273         - added a hack for making titlebar text colors in QMdiSubWindows
2274           common on all platforms
2276 2008-09-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2278         * plugins/vst_base/vst_plugin.cpp:
2279         hold lock while dumping parameters
2281         * include/remote_plugin.h:
2282         * lmmsconfig.h.in:
2283         * CMakeLists.txt:
2284         - set common numeric locale to make atof() work properly in Germany
2285         - increased SHM_FIFO_SIZE from 4000 to 64000 for not getting stuck
2286           when exchanging bigger messages (e.g. parameter dumps)
2288         * plugins/vst_base/vst_plugin.h:
2289         * plugins/vst_base/remote_vst_plugin.cpp:
2290         * plugins/vst_base/communication.h:
2291         * plugins/vst_base/vst_plugin.cpp:
2292         * plugins/vst_base/CMakeLists.txt:
2293         * include/text_float.h:
2294         * include/remote_plugin.h:
2295         * CMakeLists.txt:
2296         made VST support layer work on native win32
2298 2008-09-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2300         * plugins/vst_base/communication.h:
2301         * plugins/vst_base/vst_plugin.h:
2302         * plugins/vst_base/vst_plugin.cpp:
2303         * plugins/vst_base/remote_vst_plugin.cpp:
2304         * plugins/vst_base/CMakeLists.txt:
2305         * plugins/vst_effect/vst_effect.h:
2306         * plugins/vst_effect/vst_effect.cpp:
2307         * plugins/vestige/vestige.h:
2308         * plugins/vestige/vestige.cpp:
2309         * include/aeffectx.h:
2310         rewrote VST support layer to use the new remotePlugin-framework
2312         * include/remote_plugin.h:
2313         * src/core/remote_plugin.cpp:
2314         - added channel splitting mode
2315         - made initial wait optional
2316         - messages now can be constructed and set inline
2318         * CMakeLists.txt:
2319         added hint about removing CMakeCache.txt when libsndfile is missing
2321 2008-09-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2323         * cmake/modules/Win32Toolchain.cmake:
2324         added include and library-directory of cross compiling environment
2326         * include/remote_plugin.h:
2327         use QSystemSemaphore in win32-version as libpthread-w32 does not
2328         support process shared mutexes and semaphores
2330         * src/core/mixer.cpp:
2331         disabled WinMM MIDI for the time being
2333 2008-09-02      Paul Giblock <drfaygo/at/gmail/dot/com>
2335         * src/gui/widgets/graph.cpp:
2336         Display crosshair cursor as a hint to the user
2338         * src/gui/piano_roll.cpp:
2339         Change Piano-Roll paste behavior. Instead of pasting at 0, paste at the
2340         quantized location of the time-line's position-indicator
2342         * src/gui/main_window.cpp:
2343         Display waiting cursor when loading project.  Really only helps when
2344         loading a large song while another is loaded.  Provides feedback before
2345         the loading dialog appears (I guess this is during project close)
2347         * src/core/automation_pattern.cpp:
2348         Don't connect to the same model more than once
2350 2008-09-01      Paul Giblock <drfaygo/at/gmail/dot/com>
2352         * include/track_container.h:
2353         * src/core/song.cpp:
2354         * src/core/track_container.cpp:
2355         * src/core/track.cpp:
2356         Add locking to trackContainer::m_tracks and clean up some const-ness
2357         This should fix most crashes causes by moving/adding TCOs.  This also
2358         seems to fix the no-sound bug that I hate so much
2360         * plugins/bit_invader/logo.png:
2361         * plugins/bit_invader/artwork.png:
2362         Improve BitInvader logo
2364         * data/lmms.desktop:
2365         * lmms.1:
2366         A more consise description for English
2368 2008-09-02      Csaba Hruska <csaba.hruska/at/gmail.com>
2370         * include/song.h:
2371         * src/core/song.cpp:
2372         * src/gui/song_editor.cpp:
2373         * src/tracks/sample_track.cpp:
2374         added implementation for recordAndPlay button
2375         record button is disabled because it is not handled yet
2377 2008-08-31      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2379         * include/remote_plugin.h:
2380         * src/core/remote_plugin.cpp:
2381         * lmmsconfig.h.in:
2382         * CMakeLists.txt:
2383         added shmFifo class which replaces communication via pipes and is
2384         portable as well
2386 2008-08-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2388         * plugins/sid/sid_instrument.cpp:
2389         * plugins/ladspa_effect/ladspa_effect.cpp:
2390         * plugins/patman/patman.cpp:
2391         * plugins/lb302/lb302.cpp:
2392         * plugins/organic/organic.cpp:
2393         * plugins/stereo_matrix/stereo_matrix.cpp:
2394         * plugins/bass_booster/bass_booster.cpp:
2395         * plugins/bit_invader/bit_invader.cpp:
2396         * plugins/vst_effect/vst_effect.cpp:
2397         * plugins/vibed/vibed.cpp:
2398         * plugins/triple_oscillator/triple_oscillator.cpp:
2399         * plugins/live_tool/live_tool.cpp:
2400         * plugins/peak_controller_effect/peak_controller_effect.cpp:
2401         * plugins/audio_file_processor/audio_file_processor.cpp:
2402         * plugins/audio_file_processor/audio_file_processor.h:
2403         * plugins/stk/mallets/mallets.cpp:
2404         * plugins/stereo_enhancer/stereo_enhancer.cpp:
2405         * plugins/sf2_player/sf2_player.cpp:
2406         * plugins/sf2_player/sf2_player.h:
2407         * plugins/vestige/vestige.cpp:
2408         * plugins/ladspa_browser/ladspa_browser.cpp:
2409         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
2410         * plugins/kicker/kicker.cpp:
2411         * plugins/flp_import/flp_import.cpp:
2412         * plugins/midi_import/midi_import.cpp:
2413         * include/plugin.h:
2414         * include/instrument_track.h:
2415         * include/instrument.h:
2416         * include/file_browser.h:
2417         * include/preset_preview_play_handle.h:
2418         * src/core/engine.cpp:
2419         * src/core/preset_preview_play_handle.cpp:
2420         * src/gui/file_browser.cpp:
2421         - improved concept for file types supported by certain plugins
2422         - various small improvements for an even better ZynAddSubFX integration
2424         * src/tracks/instrument_track.cpp:
2425         pass all MIDI events to instrument
2427         * include/remote_plugin.h:
2428         * src/core/remote_plugin.cpp:
2429         added remotePlugin-framework allowing to easily write plugins which
2430         actually run as external process
2432 2008-08-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2434         * plugins/vst_base/lvsl_client.cpp:
2435         * plugins/vst_base/lvsl_server.cpp:
2436         * plugins/vst_base/CMakeLists.txt:
2437         fixed broken VST-support
2439         * CMakeLists.txt:
2440         completed information about packages needed for building VST support
2441         on 64 bit machines (thanks to Stephane Thomas!)
2443 2008-08-28      Csaba Hruska <csaba.hruska/at/gmail.com>
2445         * include/audio_portaudio.h:
2446         * src/core/audio/audio_portaudio.cpp:
2447         fixed segfault in PortAudio's setup widget
2448         fixed hangon on PortAudio exit
2450 2008-08-27      Csaba Hruska <csaba.hruska/at/gmail.com>
2452         * include/audio_portaudio.h:
2453         * src/core/audio/audio_portaudio.cpp:
2454         PortAudio V18 and V19 are supported now
2455         
2456         * cmake/modules/FindPortaudio.cmake:
2457         * include/audio_portaudio.h:
2458         * src/core/audio/audio_portaudio.cpp:
2459         * src/gui/setup_dialog.cpp:
2460         * lmmsconfig.h.in:
2461         * CMakeLists.txt:
2462         added support for PortAudio
2464         * include/mixer.h:
2465         * include/sample_record_handle.h:
2466         * include/song_editor.h:
2467         * include/sample_track.h:
2468         * include/audio_device.h:
2469         * src/gui/song_editor.cpp:
2470         * src/tracks/sample_track.cpp:
2471         * src/core/audio/audio_device.cpp:
2472         * src/core/mixer.cpp:
2473         * src/core/engine.cpp:
2474         * src/core/sample_record_handle.cpp:
2475         added basic support for recording sound into sample tracks
2477 2008-08-27      Paul Giblock <drfaygo/at/gmail/dot/com>
2479         * include/controller_view.h:
2480         * src/gui/widgets/controller_view.cpp:
2481         Add stub for controller help
2483         * src/gui/piano_roll.cpp:
2484         * data/themes/default/note_triplethalf.png:
2485         * data/themes/default/note_tripleteighth.png:
2486         * data/themes/default/note_tripletthirtysecond.png:
2487         * data/themes/default/note_tripletquarter.png:
2488         * data/themes/default/note_tripletsixteenth.png:
2489         - Add support for directly entering triplet notes
2490         - Add support for triplet Quantization
2491         - Switch grid layout for triplets
2492         - Add additional 32nd note grid resolution when zooming
2494 2008-08-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2496         * cmake/modules/DetectMachine.cmake:
2497         * plugins/vst_base/CMakeLists.txt:
2498         * lmmsconfig.h.in:
2499         * CMakeLists.txt:
2500         improved detection of machine type
2502 2008-08-26      Paul Giblock <drfaygo/at/gmail/dot/com>
2504         * include/controller_connection.h:
2505         * include/controller.h:
2506         * include/controller_rack_view.h:
2507         * include/automatable_model.h:
2508         * include/controller_view.h:
2509         * src/gui/widgets/controller_rack_view.cpp:
2510         * src/gui/widgets/controller_view.cpp:
2511         * src/core/automatable_model.cpp:
2512         * src/core/controller_connection.cpp:
2513         * src/core/controller.cpp:
2514         Add basic support for delete.  The controller dialogs probably leak, and
2515         peakController isn't handled yet
2517 2008-08-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2519         * CMakeLists.txt:
2520         made 0.4.0-beta2 release
2522 2008-08-24      Paul Giblock <drfaygo/at/gmail/dot/com>
2524         * plugins/sid/sid_instrument.cpp:
2525         Fix what's this text with extra arg value.
2527 2008-08-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2529         * cmake/modules/BuildPlugin.cmake:
2530         added missing dependency to bin2res-target in order to build properly
2531         when using "make -jX"
2533         * CMakeLists.txt:
2534         improved summary page (specific information on what to do if a certain
2535         feature isn't enabled because something was missing)
2537 2008-08-23      Paul Giblock <drfaygo/at/gmail/dot/com>
2539         * plugins/bit_invader/bit_invader.cpp:
2540         * plugins/vibed/vibed.cpp:
2541         * plugins/triple_oscillator/triple_oscillator.cpp:
2542         * plugins/audio_file_processor/audio_file_processor.cpp:
2543         * src/gui/piano_roll.cpp:
2544         * src/gui/lfo_controller_dialog.cpp:
2545         * src/gui/main_window.cpp:
2546         * src/gui/song_editor.cpp:
2547         * src/gui/widgets/instrument_sound_shaping_view.cpp:
2548         * src/gui/widgets/envelope_and_lfo_view.cpp:
2549         * src/gui/widgets/instrument_function_views.cpp:
2550         * src/gui/widgets/effect_view.cpp:
2551         * src/gui/automation_editor.cpp:
2552         * src/gui/bb_editor.cpp:
2553         * src/core/envelope_and_lfo_parameters.cpp:
2554         * src/core/mmp.cpp:
2555         Fix English grammer, punctuation, and hard to read strings
2557 2008-08-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2559         * src/gui/automatable_model_view.cpp:
2560         coding style fixes
2562         * src/gui/string_pair_drag.cpp:
2563         if no pixmap was given and parent-widget is valid, use a snapshot of
2564         the widget as drag-icon
2566         * src/tracks/instrument_track.cpp:
2567         added display-name for baseNoteModel
2569         * src/core/piano.cpp:
2570         made base-note automatable via drag'n'drop
2572 2008-08-22      Paul Giblock <drfaygo/at/gmail/dot/com>
2574         * include/automatable_model.h:
2575         * src/gui/automation_editor.cpp:
2576         * src/gui/lmms_style.cpp:
2577         * src/core/lfo_controller.cpp:
2578         Fix various casting warnings
2580         * src/core/audio/audio_alsa.cpp:
2581         Fix warning about obsolete snd_pcm_sw_params_set_xfer_align().  
2582         ALSA >= 1.0.16 defaults to 1 now.
2584 2008-08-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2586         * src/core/main.cpp:
2587         fixed splash-screen for win32
2589         * src/core/sample_buffer.cpp:
2590         fixed sampleBuffer::tryToMakeRelative() for win32 - paths to samples
2591         are now saved relative in win32-version too (if possible)
2593         * src/core/piano.cpp:
2594         fixed keycodes for win32 version
2596         * include/midi_winmm.h:
2597         fixed missing virtual method
2599         * include/bb_track_container.h:
2600         * include/track.h:
2601         * src/core/track.cpp:
2602         * src/tracks/bb_track.cpp:
2603         implemented correct behaviour when cloning BB-tracks (closes #2042409)
2605         * src/core/midi/midi_alsa_seq.cpp:
2606         fixed strange ALSA-sequencer behaviour when using MIDI-controllers and
2607         controlling intrument-tracks via MIDI (closes #2062907)
2609         * src/gui/piano_roll.cpp:
2610         fixed notes appearing multiple times in pattern when recording from
2611         MIDI-device (closes #2058971)
2613         * src/gui/automation_editor.cpp:
2614         fixed selection of all bars via Ctrl+A (closes #2048163)
2616         * plugins/audio_file_processor/audio_file_processor.cpp:
2617         * plugins/audio_file_processor/audio_file_processor.h:
2618         * include/sample_buffer.h:
2619         * src/core/sample_buffer.cpp:
2620         fixed crashes when automating start- and end-point in
2621         AudioFileProcessor (closes #2048125)
2623         * include/oscillator.h:
2624         made oscillator::userWaveSample() const
2626         * include/instrument_track.h:
2627         * src/gui/file_browser.cpp:
2628         * src/tracks/instrument_track.cpp:
2629         fixed loading presets when dragging them onto existing
2630         instrument-track-window (finally closes #2025902)
2632         * src/gui/piano_roll.cpp:
2633         fixed moving selected notes (closes #2039248, #2039254, #2043463)
2635 2008-08-20      dieEasy <dieeasy/at/cheapnet/dot/it>
2637         * data/locale/it.qm:
2638         * data/locale/it.ts:
2639         updated Italian localization-file
2641 2008-08-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2643         * include/automatable_model.h:
2644         restored old controller-behaviour for all models whose step-size is
2645         not 1, i.e. only round for integer models
2647         * plugins/sid/sid_instrument.h:
2648         * plugins/sid/test.png:
2649         * plugins/sid/sid_instrument.cpp:
2650         * plugins/sid/testred.png:
2651         integrated patch by Csaba Hruska
2653         * src/core/plugin.cpp:
2654         fixed messages
2656         * src/core/config_mgr.cpp:
2657         add trailing slashes to paths where necessary (closes #2056353)
2659         * data/locale/de.qm:
2660         * data/locale/de.ts:
2661         updated German localization file and fixed various messages
2663         * include/track.h:
2664         * include/track_label_button.h:
2665         * src/tracks/bb_track.cpp:
2666         update combobox in BB-editor when renaming BB-track (closes #2056354)
2668         * include/controller.h:
2669         * src/gui/widgets/knob.cpp:
2670         only skip GUI-updates when connected to frequently changing controllers
2672         * include/automatable_model.h:
2673         when connected to controller and returning current value, respect
2674         step-property of automatableModel
2676         * src/gui/widgets/instrument_midi_io_view.cpp:
2677         minor UI improvements
2679         * include/midi_winmm.h:
2680         * include/mixer.h:
2681         * src/core/midi/midi_controller.cpp:
2682         * src/core/midi/midi_port.cpp:
2683         * src/core/midi/midi_winmm.cpp:
2684         * src/core/mixer.cpp:
2685         * src/gui/controller_connection_dialog.cpp:
2686         * src/tracks/instrument_track.cpp:
2687         cleanups and coding-style fixes
2689         * src/core/midi/midi_alsa_seq.cpp:
2690         * src/core/midi/midi_port.cpp:
2691         - fixed crash when changing mode of midiPort
2692         - various small improvements
2694         * include/instrument_track.h:
2695         * src/core/note_play_handle.cpp:
2696         made midiPort of instrumentTrack accessible via getMidiPort()
2698 2008-08-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2700         * plugins/sf2_player/sf2_player.cpp:
2701         fixed reverb/chorus after change of samplerate
2703         * src/core/main.cpp:
2704         * lmms.1:
2705         improved documentation of commandline options
2707         * src/core/main.cpp:
2708         * src/core/project_renderer.cpp:
2709         improved progress information when rendering at console
2711 2008-08-18      Paul Giblock <drfaygo/at/gmail/dot/com>
2713         * include/controller.h:
2714         * src/core/controller.cpp:
2715         * src/gui/automatable_model_view.cpp:
2716         * src/gui/controller_connection_dialog.cpp:
2717         Detect loops before allowing controller-connection
2719         * src/core/peak_controller.cpp:
2720         Changes displayName from LFO to Peak
2722 2008-08-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2724         * CMakeLists.txt:
2725         made 0.4.0-beta1 release
2727         * plugins/sid/sid_instrument.h:
2728         removed unused slot-definitions
2730         * CMakeLists.txt:
2731         added missing lmmsconfig.h.in for dist target
2733 2008-08-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2735         * plugins/sid/wave8580__ST.cc:
2736         * plugins/sid/spline.h:
2737         * plugins/sid/3off.png:
2738         * plugins/sid/8580red.png:
2739         * plugins/sid/trianglered.png:
2740         * plugins/sid/logo.png:
2741         * plugins/sid/bp.png:
2742         * plugins/sid/6581.png:
2743         * plugins/sid/wave.cc:
2744         * plugins/sid/8580.png:
2745         * plugins/sid/pot.h:
2746         * plugins/sid/syncred.png:
2747         * plugins/sid/hp.png:
2748         * plugins/sid/sid_instrument.h:
2749         * plugins/sid/lp.png:
2750         * plugins/sid/sync.png:
2751         * plugins/sid/noise.png:
2752         * plugins/sid/wave8580_PST.cc:
2753         * plugins/sid/envelope.cc:
2754         * plugins/sid/extfilt.cc:
2755         * plugins/sid/envelope.h:
2756         * plugins/sid/extfilt.h:
2757         * plugins/sid/pulsered.png:
2758         * plugins/sid/siddefs.h:
2759         * plugins/sid/filter.png:
2760         * plugins/sid/sawred.png:
2761         * plugins/sid/wave6581_PS_.cc:
2762         * plugins/sid/3offred.png:
2763         * plugins/sid/pulse.png:
2764         * plugins/sid/artwork.png:
2765         * plugins/sid/saw.png:
2766         * plugins/sid/CMakeLists.txt:
2767         * plugins/sid/wave8580_P_T.cc:
2768         * plugins/sid/wave6581__ST.cc:
2769         * plugins/sid/bpred.png:
2770         * plugins/sid/6581red.png:
2771         * plugins/sid/ring.png:
2772         * plugins/sid/hpred.png:
2773         * plugins/sid/pot.cc:
2774         * plugins/sid/sid_instrument.cpp:
2775         * plugins/sid/triangle.png:
2776         * plugins/sid/wave.h:
2777         * plugins/sid/voice.cc:
2778         * plugins/sid/lpred.png:
2779         * plugins/sid/noisered.png:
2780         * plugins/sid/voice.h:
2781         * plugins/sid/wave6581_PST.cc:
2782         * plugins/sid/sid.cc:
2783         * plugins/sid/filterred.png:
2784         * plugins/sid/sid.h:
2785         * plugins/sid/version.cc:
2786         * plugins/sid/filter.cc:
2787         * plugins/sid/filter.h:
2788         * plugins/sid/wave6581_P_T.cc:
2789         * plugins/sid/wave8580_PS_.cc:
2790         * plugins/sid/ringred.png:
2791         * plugins/CMakeLists.txt:
2792         added SID instrument plugin by Attila Herman and Csaba Hruska
2794         * src/gui/widgets/automatable_button.cpp:
2795         show context-menu of button-group if a button is part of it
2797         * plugins/sf2_player/sf2_player.cpp:
2798         - query data from correct model when activating reverb (closes #2035134)
2799         - convert from note-play-handle's volume to MIDI-velocity when calling
2800           fluid_synth_noteon()
2801         - set fluidsynth's internal interpolation-method to high-quality when
2802           running LMMS in HQ-mode
2804 2008-08-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2806         * plugins/ladspa_effect/ladspa_effect.cpp:
2807         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
2808         * plugins/vst_effect/vst_subplugin_features.cpp:
2809         * plugins/vst_effect/vst_effect.cpp:
2810         * plugins/vst_effect/vst_effect_controls.cpp:
2811         * include/plugin.h:
2812         * include/base64.h:
2813         * include/ladspa_base.h:
2814         * src/core/plugin.cpp:
2815         * src/core/effect_chain.cpp:
2816         * src/core/mmp.cpp:
2817         * src/core/ladspa_manager.cpp:
2818         * CMakeLists.txt:
2819         use XML rather than binary blobs for saving plugin-/effect-key
2821         * src/core/project_journal.cpp:
2822         use random-number-generator correctly - fixes predictable random
2823         numbers and avoids used Journalling-Object-IDs upon loading
2824         project (closes #2036745) - anyways this still might happen under rare
2825         circumstances and needs a further fix
2827 2008-08-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2829         * include/lmms_math.h:
2830         * src/core/oscillator.cpp:
2831         made oscillator-phase always being positive which allows further
2832         optimizations of fraction()-method
2834 2008-08-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2836         * include/visualization_widget.h:
2837         * src/gui/widgets/visualization_widget.cpp:
2838         improved anti-aliased visualization
2840         * src/core/sample_buffer.cpp:
2841         heavily improved performance by using QPainter::drawPolylines and
2842         disabling anti-aliasing if more than 60000 samples have to be
2843         drawn (closes #1938413)
2845         * src/core/midi/midi_winmm.cpp:
2846         added debug-code
2848         * src/core/song.cpp:
2849         do not reset window title twice when creating new project
2851         * src/core/main.cpp:
2852         when creating a new project, show main-window afterwards - fixes
2853         behaviour when debugging win32-version via WINE
2855         * cmake/modules/BuildPlugin.cmake:
2856         * plugins/ladspa_effect/tap/CMakeLists.txt:
2857         * plugins/ladspa_effect/caps/CMakeLists.txt:
2858         * data/CMakeLists.txt:
2859         * data/nsis_branding.bmp:
2860         * CMakeLists.txt:
2861         * lmms.rc.in:
2862         - made cmake-files ready for NSIS-packaging
2863         - added win-resource-object to LMMS-binary
2865         * plugins/sf2_player/patches_dialog.cpp:
2866         * plugins/sf2_player/sf2_player.cpp:
2867         * plugins/sf2_player/patches_dialog.h:
2868         * plugins/sf2_player/sf2_player.h:
2869         * data/themes/default/style.css:
2870         - integrated patch by Csaba Hruska
2871         - fixed spinbox-ranges
2873         * plugins/vst_base/CMakeLists.txt:
2874         fixed include-directories for lvsl_server-target for allowing
2875         out-of-tree builds
2877 2008-07-31      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2879         * CMakeLists.txt:
2880         added win32-pkg target
2882         * include/fft_helpers.h:
2883         added missing EXPORT-declarations
2885         * src/core/midi/midi_winmm.cpp:
2886         removed some debugging code
2888 2008-07-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2890         * include/track.h:
2891         * src/core/track.cpp:
2892         * src/gui/file_browser.cpp:
2893         * src/tracks/instrument_track.cpp:
2894         added simple-serializing mode which makes tracks not save their TCOs -
2895         used for improved save and restore of presets (closes #2025902)
2897         * src/gui/widgets/effect_view.cpp:
2898         do not cast model to effect for only calling displayName()
2900         * src/gui/widgets/effect_rack_view.cpp:
2901         - initialize bool-map with correct size - fixes crashes under various
2902           circumstances
2903         - do not cast model of effectView as the effect might not exist
2904           anymore
2906         * data/presets/TripleOscillator/Steel.cs.xml:
2907         * data/presets/TripleOscillator/SawLead.cs.xml:
2908         * data/presets/TripleOscillator/Bass.cs.xml:
2909         * data/presets/TripleOscillator/E-Organ.cs.xml:
2910         * data/presets/TripleOscillator/FM-Wood-Arp.cs.xml:
2911         * data/presets/TripleOscillator/Harmonium.cs.xml:
2912         * data/presets/TripleOscillator/NostalgicFeelings.cs.xml:
2913         * data/presets/TripleOscillator/Moog.cs.xml:
2914         * data/presets/TripleOscillator/SawLead2.cs.xml:
2915         * data/presets/TripleOscillator/HardClipping.cs.xml:
2916         * data/presets/TripleOscillator/RaveBass.cs.xml:
2917         * data/presets/TripleOscillator/EvilHardcore.cs.xml:
2918         * data/presets/TripleOscillator/Distorted-FM-Bass_2.cs.xml:
2919         * data/presets/TripleOscillator/ShortBass.cs.xml:
2920         * data/presets/TripleOscillator/Crystallo.cs.xml:
2921         * data/presets/TripleOscillator/Fear.cs.xml:
2922         * data/presets/TripleOscillator/HorrorBass.cs.xml:
2923         * data/presets/TripleOscillator/Default.cs.xml:
2924         * data/presets/TripleOscillator/SoftStrings.cs.xml:
2925         * data/presets/TripleOscillator/RaveBass_2.cs.xml:
2926         * data/presets/TripleOscillator/Warmth.cs.xml:
2927         * data/presets/TripleOscillator/Beam.cs.xml:
2928         * data/presets/TripleOscillator/SquareLead2.cs.xml:
2929         * data/presets/TripleOscillator/Weird.cs.xml:
2930         * data/presets/TripleOscillator/LFO-party.cs.xml:
2931         * data/presets/TripleOscillator/Nice.cs.xml:
2932         * data/presets/TripleOscillator/ChurchOrgan_2.cs.xml:
2933         * data/presets/TripleOscillator/SoftBass.cs.xml:
2934         * data/presets/TripleOscillator/Stranger.cs.xml:
2935         * data/presets/TripleOscillator/TB303-Arpeggio.cs.xml:
2936         * data/presets/TripleOscillator/E-Piano.cs.xml:
2937         * data/presets/TripleOscillator/PluckArpeggio.cs.xml:
2938         * data/presets/TripleOscillator/WarmStack.cs.xml:
2939         * data/presets/TripleOscillator/Square.cs.xml:
2940         * data/presets/TripleOscillator/MyComputer.cs.xml:
2941         * data/presets/TripleOscillator/Simple-Acid-Bass.cs.xml:
2942         * data/presets/TripleOscillator/MoogArpeggio.cs.xml:
2943         * data/presets/TripleOscillator/Jupiter.cs.xml:
2944         * data/presets/TripleOscillator/AnalogTimes2.cs.xml:
2945         * data/presets/TripleOscillator/SquareLead.cs.xml:
2946         * data/presets/TripleOscillator/TB303.cs.xml:
2947         * data/presets/TripleOscillator/Detuned-Synced-FM-Bass.cs.xml:
2948         * data/presets/TripleOscillator/ChurchOrgan.cs.xml:
2949         * data/presets/TripleOscillator/SquareArp.cs.xml:
2950         * data/presets/TripleOscillator/OldComputerGames.cs.xml:
2951         removed old raw presets, tuned others and added a few new ones
2953         * plugins/stk/mallets/mallets.cpp:
2954         detect incomplete Stk-installation in model rather than view for not
2955         crashing when playing without opening the GUI before
2957         * src/core/main.cpp:
2958          - added --dump parameter for easily uncompressing mmpz-files
2959          - try to set realtime priority after command-line parsing as the
2960            resulting warning might be annoying at this place
2961         - moved initialization of RNG to top of main()
2963         * src/core/mmp.cpp:
2964         quirks for loading drumsynth-samples whose directory-names have
2965         changed from space to underscore
2967 2008-07-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2969         * plugins/ladspa_effect/tap/CMakeLists.txt:
2970         * plugins/ladspa_effect/caps/CMakeLists.txt:
2971         fixed linker-flags
2973         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
2974         * plugins/spectrum_analyzer/spectrum_analyzer.h:
2975         * include/fft_helpers.h:
2976         * src/core/fft_helpers.cpp:
2977         * lmmsconfig.h.in:
2978         moved FFT-helper functions from Spectrum Analyzer plugin to core to
2979         make it also usable by other plugins
2981 2008-07-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
2983         * plugins/ladspa_effect/ladspa_controls.cpp:
2984         * plugins/lb302/lb302.cpp:
2985         * plugins/lb303/lb303.cpp:
2986         * plugins/stereo_matrix/stereomatrix_controls.cpp:
2987         * plugins/bass_booster/bassbooster_controls.cpp:
2988         * plugins/vst_effect/vst_effect_controls.cpp:
2989         * plugins/vibed/vibed.cpp:
2990         * plugins/triple_oscillator/triple_oscillator.cpp:
2991         * plugins/peak_controller_effect/peak_controller_effect_controls.cpp:
2992         * plugins/audio_file_processor/audio_file_processor.cpp:
2993         * plugins/stereo_enhancer/stereoenhancer_controls.cpp:
2994         * plugins/sf2_player/sf2_player.cpp:
2995         * plugins/vst_base/lvsl_client.cpp:
2996         * plugins/vst_base/lvsl_client.h:
2997         * plugins/kicker/kicker.cpp:
2998         * plugins/flp_import/flp_import.cpp:
2999         * plugins/midi_import/midi_import.cpp:
3000         * include/mmp.h:
3001         * include/effect.h:
3002         * include/meter_model.h:
3003         * include/automatable_slider.h:
3004         * include/song.h:
3005         * include/pch.h:
3006         * src/gui/main_window.cpp:
3007         * src/gui/song_editor.cpp:
3008         * src/gui/widgets/tempo_sync_knob.cpp:
3009         * src/gui/widgets/meter_dialog.cpp:
3010         * src/tracks/sample_track.cpp:
3011         * src/tracks/bb_track.cpp:
3012         * src/tracks/instrument_track.cpp:
3013         * src/tracks/pattern.cpp:
3014         * src/core/effect_chain.cpp:
3015         * src/core/midi/midi_controller.cpp:
3016         * src/core/midi/midi_port.cpp:
3017         * src/core/track_container.cpp:
3018         * src/core/serializing_object.cpp:
3019         * src/core/journalling_object.cpp:
3020         * src/core/config_mgr.cpp:
3021         * src/core/automatable_model.cpp:
3022         * src/core/instrument_sound_shaping.cpp:
3023         * src/core/mmp.cpp:
3024         * src/core/effect.cpp:
3025         * src/core/instrument_functions.cpp:
3026         * src/core/controller_connection.cpp:
3027         * src/core/note.cpp:
3028         * src/core/timeline.cpp:
3029         * src/core/surround_area.cpp:
3030         * src/core/automation_pattern.cpp:
3031         * src/core/inline_automation.cpp:
3032         * src/core/fx_mixer.cpp:
3033         * src/core/controller.cpp:
3034         * src/core/lfo_controller.cpp:
3035         * src/core/peak_controller.cpp:
3036         reduced header-dependencies
3038         * src/core/plugin.cpp:
3039         - don't show messagebox if no GUI is running
3040         - if plugin failed to load also tell about the reason
3042         * plugins/ladspa_effect/tap/CMakeLists.txt:
3043         * plugins/ladspa_effect/caps/CMakeLists.txt:
3044         * src/core/main.cpp:
3045         * cmake/modules/BuildPlugin.cmake:
3046         * lmmsconfig.h.in:
3047         * CMakeLists.txt:
3048         added support for building LMMS on OS X and generating a DMG-package
3050         * src/core/main.cpp:
3051         win32-compatibility
3053         * data/projects/cool_songs/StrictProduction-DearJonDoe.mmp:
3054         * data/projects/cool_songs/OrtalDj-FirstProyect.mmp:
3055         * data/projects/cool_songs/TobyDox-Psycho.mmp:
3056         * data/projects/cool_songs/TobyDox-Confused.mmp:
3057         * data/projects/cool_songs/Djeezus-BeatRolls.mmp:
3058         * data/projects/cool_songs/Lokori-Systematic_Chaos.mmp:
3059         * data/projects/cool_songs/StrictProduction-Underline.mmp:
3060         * data/projects/cool_songs/Djeezus-Oscilisous.mmp:
3061         * data/projects/cool_songs/Chris-RaveRiff.mmpz:
3062         * data/projects/cool_songs/TobyDox-TheFourthDimension.mmp:
3063         * data/projects/cool_songs/Mart-Concave_flow.mmp:
3064         * data/projects/cool_songs/MysthR-Living.mmpz:
3065         * data/projects/cool_songs/Marfil-MarfilDrum01.mmp:
3066         * data/projects/cool_songs/j1m-DingDong.mmp:
3067         * data/projects/cool_songs/Malex-Horizon4.mmp:
3068         * data/projects/cool_songs/Siegel-DreamWave.mmp:
3069         * data/projects/cool_songs/BlueWolf-DreamTravel.mmp:
3070         * data/projects/cool_songs/StrictProduction-Lamentelnes.mmp:
3071         * data/projects/cool_songs/OrtalDj-FirstProyect.mmpz:
3072         * data/projects/cool_songs/Silva-ElvesCall.mmp:
3073         upgraded projects to match current file format
3074         diffstat:  17 files changed, 12811 insertions(+), 37791 deletions(-)
3076         * include/song_editor.h:
3077         * src/core/song.cpp:
3078         make sure all TCOs are shown after loading project (closes #2016741)
3080         * src/core/automatable_model.cpp:
3081         when loading legacy automation with only one value in, eliminate
3082         global automation pattern right after loading data
3084         * src/core/main.cpp:
3085         - initialize random-number generation - fixes problems with duplicate
3086           JO-IDs
3087         - show main-window before loading project given on command-line or
3088           creating a new project (closes #2016741)
3090         * src/core/automation_pattern.cpp:
3091         fixed some segfaults in case of invalid objects in object-vector
3093         * src/core/mmp.cpp:
3094         - use QTextStream to save uncompressed XML-files
3095         - when encountering problems while parsing XML-file, print line and
3096           column of problem
3098 2008-07-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3100         * src/gui/automation_editor.cpp:
3101         also allow drawing new dots when clicking inside already existing
3102         value (closes #2026120)
3104         * include/instrument_track.h:
3105         * src/tracks/instrument_track.cpp:
3106         reverted previous change of some models from floatModel to intModel as
3107         it caused crashes in knob-class
3109         * include/automation_pattern.h:
3110         * src/core/automation_pattern.cpp:
3111         when connecting object to automation-pattern which has no object
3112         connected yet, set default-value (closes #2026102)
3114         * plugins/vst_base/CMakeLists.txt:
3115         added missing support for out-of-tree builds
3117         * README:
3118         * INSTALL:
3119         updated documentation on how to build LMMS with cmake
3121 2008-07-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3123         * data/locale/en.ts:
3124         * data/locale/pt_br.ts:
3125         * data/locale/es.ts:
3126         * data/locale/fr.ts:
3127         * data/locale/nl.ts:
3128         * data/locale/ir.ts:
3129         * data/locale/it.ts:
3130         * data/locale/ca.ts:
3131         * data/locale/de.ts:
3132         * data/locale/sv.ts:
3133         refreshed localizations
3134         diffstat:  10 files changed, 34785 insertions(+), 6862 deletions(-)
3136         * data/locale/ru.ts:
3137         added updated Russian localization by Alexey Kouznetsov
3139         * CMakeLists.txt:
3140         - added locale targets
3141         - added "update-locales" target
3142         - added "distclean" target
3143         - added "tarball" target
3145         * plugins/organic/organic.cpp:
3146         * plugins/triple_oscillator/triple_oscillator.cpp:
3147         * include/mixer.h:
3148         * include/sample_buffer.h:
3149         * include/oscillator.h:
3150         * include/types.h:
3151         * src/core/sample_play_handle.cpp:
3152         * src/core/sample_buffer.cpp:
3153         * src/core/oscillator.cpp:
3154         * lmmsconfig.h.in:
3155         * CMakeLists.txt:
3156         less header-dependencies and moved some type-definitions
3158 2008-07-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3160         * data/locale/fr.qm:
3161         * data/locale/fr.ts:
3162         updated French localization-files by Stephane Thomas
3164         * cmake/modules/FindPkgConfig.cmake:
3165         * include/midi_winmm.h:
3166         * include/midi_alsa_seq.h:
3167         * CMakeLists.txt:
3168         * cmake/modules/BuildPlugin.cmake:
3169         support for cmake < 2.4.8
3171         * plugins/ladspa_effect/caps/CMakeLists.txt:
3172         do not compile with -O3 when using GCC 4.1.x as this version segfaults
3173         while optimizing
3175         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
3176         * include/effect_lib.h:
3177         fixed compiler-warnings
3179         * src/core/midi/midi_winmm.cpp:
3180         * src/core/midi/midi_alsa_seq.cpp:
3181         fixed subscribe/unsubscribe-warnings
3183         * CMakeLists.txt:
3184         fixes for cmake 2.4
3186 2008-07-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3188         * cmake/modules/BuildPlugin.cmake:
3189         * plugins/patman/CMakeLists.txt:
3190         * plugins/ladspa_effect/CMakeLists.txt:
3191         * plugins/organic/CMakeLists.txt:
3192         * plugins/lb302/CMakeLists.txt:
3193         * plugins/lb303/CMakeLists.txt:
3194         * plugins/bass_booster/CMakeLists.txt:
3195         * plugins/stereo_matrix/CMakeLists.txt:
3196         * plugins/bit_invader/CMakeLists.txt:
3197         * plugins/vst_effect/CMakeLists.txt:
3198         * plugins/vibed/CMakeLists.txt:
3199         * plugins/triple_oscillator/CMakeLists.txt:
3200         * plugins/live_tool/CMakeLists.txt:
3201         * plugins/peak_controller_effect/CMakeLists.txt:
3202         * plugins/audio_file_processor/CMakeLists.txt:
3203         * plugins/stk/mallets/CMakeLists.txt:
3204         * plugins/stereo_enhancer/CMakeLists.txt:
3205         * plugins/sf2_player/CMakeLists.txt:
3206         * plugins/vestige/CMakeLists.txt:
3207         * plugins/ladspa_browser/CMakeLists.txt:
3208         * plugins/spectrum_analyzer/CMakeLists.txt:
3209         * plugins/kicker/CMakeLists.txt:
3210         * plugins/flp_import/CMakeLists.txt:
3211         * CMakeLists.txt:
3212         various fixes for allowing out-of-tree builds
3214         * CMakeLists.txt:
3215         - initial support for CPack
3216         - remove old include/lmmsconfig.h from the autotools-era
3218         * cmake/modules/InstallHelpers.cmake:
3219         fixed INSTALL_DATA_SUBDIRS-macro (use normal string-replace
3220         instead of regex-replace)
3222         * include/project_renderer.h:
3223         * src/core/project_renderer.cpp:
3224         also compile without OGG/Vorbis-support
3226         * cmake/modules/Win32Toolchain.cmake:
3227         * cmake/modules/BuildPlugin.cmake:
3228         * src/3rdparty/samplerate/config.h:
3229         * CMakeLists.txt:
3230         fixes for successfully cross-compiling
3232         * cmake/modules/Win32Toolchain.cmake:
3233         * cmake/modules/BuildPlugin.cmake:
3234         * plugins/ladspa_effect/tap/CMakeLists.txt:
3235         * plugins/ladspa_effect/caps/CMakeLists.txt:
3236         * plugins/vst_effect/CMakeLists.txt:
3237         * include/audio_sdl.h:
3238         * src/core/midi/midi_winmm.cpp:
3239         * build_mingw32:
3240         * CMakeLists.txt:
3241         initial support for mingw-cross-compiling
3243         * include/midi_alsa_seq.h:
3244         * include/midi_client.h:
3245         * include/midi_port.h:
3246         * include/midi_winmm.h:
3247         * src/core/mixer.cpp:
3248         * src/core/midi/midi_alsa_raw.cpp:
3249         * src/core/midi/midi_alsa_seq.cpp:
3250         * src/core/midi/midi_client.cpp:
3251         * src/core/midi/midi_oss.cpp:
3252         * src/core/midi/midi_winmm.cpp:
3253         * src/gui/setup_dialog.cpp:
3254         added rudimentary WinMM MIDI support
3256         * src/core/mmp.cpp:
3257         * plugins/lb302/lb302.h
3258         * plugins/CMakeLists.txt:
3259         switched back to LB302 as Paul wants LB303 for 0.4.1
3261         * cmake/modules/FindAlsa.cmake:
3262         * cmake/modules/FindOggVorbis.cmake:
3263         * cmake/modules/FindSTK.cmake:
3264         * cmake/modules/FindPCHSupport.cmake:
3265         * cmake/modules/config-alsa.h.cmake:
3266         * cmake/modules/InstallHelpers.cmake:
3267         * cmake/modules/FindPulseAudio.cmake:
3268         * cmake/modules/ChecksForLibSamplerate.cmake:
3269         * cmake/modules/BuildPlugin.cmake:
3270         * plugins/patman/patman.cpp:
3271         * plugins/patman/CMakeLists.txt:
3272         * plugins/ladspa_effect/ladspa_effect.cpp:
3273         * plugins/ladspa_effect/tap/tap_deesser.c:
3274         * plugins/ladspa_effect/tap/tap_sigmoid.c:
3275         * plugins/ladspa_effect/tap/tap_doubler.c:
3276         * plugins/ladspa_effect/tap/ladspa-local.h:
3277         * plugins/ladspa_effect/tap/tap_eqbw.c:
3278         * plugins/ladspa_effect/tap/tap_pinknoise.c:
3279         * plugins/ladspa_effect/tap/tap_chorusflanger.c:
3280         * plugins/ladspa_effect/tap/tap_limiter.c:
3281         * plugins/ladspa_effect/tap/tap_eq.c:
3282         * plugins/ladspa_effect/tap/tap_vibrato.c:
3283         * plugins/ladspa_effect/tap/tap_autopan.c:
3284         * plugins/ladspa_effect/tap/tap_pitch.c:
3285         * plugins/ladspa_effect/tap/tap_dynamics_st.c:
3286         * plugins/ladspa_effect/tap/tap_echo.c:
3287         * plugins/ladspa_effect/tap/tap_tremolo.c:
3288         * plugins/ladspa_effect/tap/tap_tubewarmth.c:
3289         * plugins/ladspa_effect/tap/tap_dynamics_m.c:
3290         * plugins/ladspa_effect/tap/tap_reflector.c:
3291         * plugins/ladspa_effect/tap/tap_reverb.c:
3292         * plugins/ladspa_effect/tap/tap_rotspeak.c:
3293         * plugins/ladspa_effect/tap/CMakeLists.txt:
3294         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
3295         * plugins/ladspa_effect/caps/basics.h:
3296         * plugins/ladspa_effect/caps/CMakeLists.txt:
3297         * plugins/ladspa_effect/ladspa_controls.cpp:
3298         * plugins/ladspa_effect/CMakeLists.txt:
3299         * plugins/organic/organic.cpp:
3300         * plugins/organic/CMakeLists.txt:
3301         * plugins/lb302/lb302.cpp:
3302         * plugins/lb302/CMakeLists.txt:
3303         * plugins/lb303/lb303.cpp:
3304         * plugins/lb303/CMakeLists.txt:
3305         * plugins/bass_booster/bassbooster_controls.cpp:
3306         * plugins/bass_booster/CMakeLists.txt:
3307         * plugins/stereo_matrix/stereomatrix_controls.cpp:
3308         * plugins/stereo_matrix/CMakeLists.txt:
3309         * plugins/bit_invader/bit_invader.cpp:
3310         * plugins/bit_invader/CMakeLists.txt:
3311         * plugins/vst_effect/vst_effect_controls.cpp:
3312         * plugins/vst_effect/CMakeLists.txt:
3313         * plugins/vibed/CMakeLists.txt:
3314         * plugins/vibed/nine_button_selector.cpp:
3315         * plugins/vibed/vibed.cpp:
3316         * plugins/triple_oscillator/CMakeLists.txt:
3317         * plugins/triple_oscillator/triple_oscillator.cpp:
3318         * plugins/live_tool/live_tool.cpp:
3319         * plugins/live_tool/CMakeLists.txt:
3320         * plugins/peak_controller_effect/peak_controller_effect.cpp:
3321         * plugins/peak_controller_effect/peak_controller_effect_controls.cpp:
3322         * plugins/peak_controller_effect/CMakeLists.txt:
3323         * plugins/audio_file_processor/audio_file_processor.cpp:
3324         * plugins/audio_file_processor/CMakeLists.txt:
3325         * plugins/stk/mallets/mallets.cpp:
3326         * plugins/stk/mallets/CMakeLists.txt:
3327         * plugins/stk/CMakeLists.txt:
3328         * plugins/stereo_enhancer/stereoenhancer_controls.cpp:
3329         * plugins/stereo_enhancer/CMakeLists.txt:
3330         * plugins/sf2_player/patches_dialog.cpp:
3331         * plugins/sf2_player/sf2_player.cpp:
3332         * plugins/sf2_player/CMakeLists.txt:
3333         * plugins/vestige/vestige.cpp:
3334         * plugins/vestige/CMakeLists.txt:
3335         * plugins/vst_base/lvsl_client.cpp:
3336         * plugins/vst_base/CMakeLists.txt:
3337         * plugins/ladspa_browser/ladspa_browser.cpp:
3338         * plugins/ladspa_browser/ladspa_description.cpp:
3339         * plugins/ladspa_browser/ladspa_port_dialog.cpp:
3340         * plugins/ladspa_browser/CMakeLists.txt:
3341         * plugins/spectrum_analyzer/spectrumanalyzer_controls.cpp:
3342         * plugins/spectrum_analyzer/CMakeLists.txt:
3343         * plugins/kicker/kicker.cpp:
3344         * plugins/kicker/CMakeLists.txt:
3345         * plugins/flp_import/CMakeLists.txt:
3346         * plugins/flp_import/unrtf/output.c:
3347         * plugins/flp_import/unrtf/html.c:
3348         * plugins/flp_import/unrtf/malloc.c:
3349         * plugins/flp_import/unrtf/parse.c:
3350         * plugins/flp_import/unrtf/attr.c:
3351         * plugins/flp_import/unrtf/word.c:
3352         * plugins/flp_import/unrtf/util.c:
3353         * plugins/flp_import/unrtf/convert.c:
3354         * plugins/flp_import/unrtf/hash.c:
3355         * plugins/flp_import/unrtf/error.c:
3356         * plugins/midi_import/CMakeLists.txt:
3357         * plugins/CMakeLists.txt:
3358         * Makefile.svn:
3359         * include/midi_dummy.h:
3360         * include/midi_alsa_raw.h:
3361         * include/config_mgr.h:
3362         * include/audio_file_wave.h:
3363         * include/audio_file_ogg.h:
3364         * include/ladspa_manager.h:
3365         * include/ladspa_control.h:
3366         * include/ladspa.h:
3367         * include/midi_oss.h:
3368         * include/pch.h:
3369         * include/sample_buffer.h:
3370         * include/audio_dummy.h:
3371         * include/midi_mapper.h:
3372         * include/audio_pulseaudio.h:
3373         * include/audio_sdl.h:
3374         * include/micro_timer.h:
3375         * include/audio_jack.h:
3376         * include/project_renderer.h:
3377         * include/midi_alsa_seq.h:
3378         * include/ladspa-1.1.h:
3379         * include/setup_dialog.h:
3380         * include/export_project_dialog.h:
3381         * include/midi_client.h:
3382         * include/audio_device.h:
3383         * include/audio_oss.h:
3384         * include/audio_alsa.h:
3385         * src/gui/piano_roll.cpp:
3386         * src/gui/track_container_view.cpp:
3387         * src/gui/plugin_browser.cpp:
3388         * src/gui/controller_dialog.cpp:
3389         * src/gui/automatable_model_view.cpp:
3390         * src/gui/effect_select_dialog.cpp:
3391         * src/gui/effect_control_dialog.cpp:
3392         * src/gui/fx_mixer_view.cpp:
3393         * src/gui/main_window.cpp:
3394         * src/gui/song_editor.cpp:
3395         * src/gui/setup_dialog.cpp:
3396         * src/gui/controller_connection_dialog.cpp:
3397         * src/gui/file_browser.cpp:
3398         * src/gui/widgets/ladspa_control_view.cpp:
3399         * src/gui/widgets/track_label_button.cpp:
3400         * src/gui/widgets/graph.cpp:
3401         * src/gui/widgets/visualization_widget.cpp:
3402         * src/gui/widgets/combobox.cpp:
3403         * src/gui/widgets/tab_widget.cpp:
3404         * src/gui/widgets/midi_port_menu.cpp:
3405         * src/gui/widgets/led_checkbox.cpp:
3406         * src/gui/widgets/side_bar_widget.cpp:
3407         * src/gui/widgets/controller_rack_view.cpp:
3408         * src/gui/widgets/kmultitabbar.cpp:
3409         * src/gui/widgets/caption_menu.cpp:
3410         * src/gui/widgets/instrument_sound_shaping_view.cpp:
3411         * src/gui/widgets/rename_dialog.cpp:
3412         * src/gui/widgets/envelope_and_lfo_view.cpp:
3413         * src/gui/widgets/pixmap_button.cpp:
3414         * src/gui/widgets/knob.cpp:
3415         * src/gui/widgets/instrument_function_views.cpp:
3416         * src/gui/widgets/fade_button.cpp:
3417         * src/gui/widgets/cpuload_widget.cpp:
3418         * src/gui/widgets/tab_bar.cpp:
3419         * src/gui/widgets/automatable_slider.cpp:
3420         * src/gui/widgets/group_box.cpp:
3421         * src/gui/widgets/lcd_spinbox.cpp:
3422         * src/gui/widgets/rubberband.cpp:
3423         * src/gui/widgets/tool_button.cpp:
3424         * src/gui/widgets/controller_view.cpp:
3425         * src/gui/widgets/project_notes.cpp:
3426         * src/gui/widgets/fader.cpp:
3427         * src/gui/widgets/effect_rack_view.cpp:
3428         * src/gui/widgets/effect_view.cpp:
3429         * src/gui/widgets/nstate_button.cpp:
3430         * src/gui/widgets/automatable_button.cpp:
3431         * src/gui/widgets/tempo_sync_knob.cpp:
3432         * src/gui/export_project_dialog.cpp:
3433         * src/gui/automation_editor.cpp:
3434         * src/gui/bb_editor.cpp:
3435         * src/gui/about_dialog.cpp:
3436         * src/tracks/sample_track.cpp:
3437         * src/tracks/bb_track.cpp:
3438         * src/tracks/instrument_track.cpp:
3439         * src/tracks/pattern.cpp:
3440         * src/3rdparty/samplerate/src_sinc.c:
3441         * src/3rdparty/samplerate/config.h:
3442         * src/core/midi/midi_controller.cpp:
3443         * src/core/midi/midi_mapper.cpp:
3444         * src/core/midi/midi_oss.cpp:
3445         * src/core/midi/midi_port.cpp:
3446         * src/core/midi/midi_alsa_seq.cpp:
3447         * src/core/midi/midi_alsa_raw.cpp:
3448         * src/core/song.cpp:
3449         * src/core/track_container.cpp:
3450         * src/core/bb_track_container.cpp:
3451         * src/core/config_mgr.cpp:
3452         * src/core/automatable_model.cpp:
3453         * src/core/audio/audio_alsa.cpp:
3454         * src/core/audio/audio_file_wave.cpp:
3455         * src/core/audio/audio_sdl.cpp:
3456         * src/core/audio/audio_oss.cpp:
3457         * src/core/audio/audio_jack.cpp:
3458         * src/core/audio/audio_pulseaudio.cpp:
3459         * src/core/audio/audio_file_ogg.cpp:
3460         * src/core/envelope_and_lfo_parameters.cpp:
3461         * src/core/main.cpp:
3462         * src/core/mixer.cpp:
3463         * src/core/combobox_model.cpp:
3464         * src/core/instrument_sound_shaping.cpp:
3465         * src/core/project_renderer.cpp:
3466         * src/core/meter_model.cpp:
3467         * src/core/ladspa_manager.cpp:
3468         * src/core/instrument_functions.cpp:
3469         * src/core/controller_connection.cpp:
3470         * src/core/ladspa_control.cpp:
3471         * src/core/track.cpp:
3472         * src/core/piano.cpp:
3473         * src/core/timeline.cpp:
3474         * src/core/surround_area.cpp:
3475         * src/core/sample_buffer.cpp:
3476         * src/core/mv_base.cpp:
3477         * src/core/automation_pattern.cpp:
3478         * src/core/lfo_controller.cpp:
3479         * src/core/controller.cpp:
3480         * src/core/peak_controller.cpp:
3481         * data/locale/CMakeLists.txt:
3482         * data/track_icons/CMakeLists.txt:
3483         * data/samples/CMakeLists.txt:
3484         * data/presets/PluckedStringSynth/Default.cs.xml:
3485         * data/presets/VeSTige/Default.cs.xml:
3486         * data/presets/CMakeLists.txt:
3487         * data/themes/CMakeLists.txt:
3488         * data/projects/CMakeLists.txt:
3489         * data/CMakeLists.txt:
3490         * lmmsconfig.h.in:
3491         * CMakeLists.txt:
3492         migrated build-system to CMAKE
3494         * plugins/patman/Makefile.am:
3495         * plugins/ladspa_effect/tap/Makefile.am:
3496         * plugins/ladspa_effect/caps/Makefile.am:
3497         * plugins/ladspa_effect/Makefile.am:
3498         * plugins/organic/Makefile.am:
3499         * plugins/lb302/Makefile.am:
3500         * plugins/lb303/Makefile.am:
3501         * plugins/bass_booster/Makefile.am:
3502         * plugins/stereo_matrix/Makefile.am:
3503         * plugins/bit_invader/Makefile.am:
3504         * plugins/vst_effect/Makefile.am:
3505         * plugins/vibed/Makefile.am:
3506         * plugins/triple_oscillator/Makefile.am:
3507         * plugins/live_tool/Makefile.am:
3508         * plugins/peak_controller_effect/Makefile.am:
3509         * plugins/audio_file_processor/Makefile.am:
3510         * plugins/stk/mallets/Makefile.am:
3511         * plugins/stk/Makefile.am:
3512         * plugins/stereo_enhancer/Makefile.am:
3513         * plugins/sf2_player/Makefile.am:
3514         * plugins/vestige/Makefile.am:
3515         * plugins/vst_base/Makefile.am:
3516         * plugins/ladspa_browser/Makefile.am:
3517         * plugins/spectrum_analyzer/Makefile.am:
3518         * plugins/kicker/Makefile.am:
3519         * plugins/Makefile.am:
3520         * plugins/flp_import/Makefile.am:
3521         * plugins/midi_import/Makefile.am:
3522         * data/locale/Makefile.am:
3523         * data/track_icons/Makefile.am:
3524         * data/midi-maps/Makefile.am:
3525         * data/samples/effects/Makefile.am:
3526         * data/samples/stringsnpads/Makefile.am:
3527         * data/samples/basses/Makefile.am:
3528         * data/samples/shapes/Makefile.am:
3529         * data/samples/latin/Makefile.am:
3530         * data/samples/Makefile.am:
3531         * data/samples/bassloopes/Makefile.am:
3532         * data/samples/drums/Makefile.am:
3533         * data/samples/instruments/Makefile.am:
3534         * data/samples/misc/Makefile.am:
3535         * data/samples/drumsynth/effects/Makefile.am:
3536         * data/samples/drumsynth/misc_synth/Makefile.am:
3537         * data/samples/drumsynth/tr606/Makefile.am:
3538         * data/samples/drumsynth/cr78/Makefile.am:
3539         * data/samples/drumsynth/tr808/Makefile.am:
3540         * data/samples/drumsynth/magnetboy/Makefile.am:
3541         * data/samples/drumsynth/tr909/Makefile.am:
3542         * data/samples/drumsynth/misc_fx/Makefile.am:
3543         * data/samples/drumsynth/misc/Makefile.am:
3544         * data/samples/drumsynth/electro/Makefile.am:
3545         * data/samples/drumsynth/ferraro/Makefile.am:
3546         * data/samples/drumsynth/linn/Makefile.am:
3547         * data/samples/drumsynth/r_b/Makefile.am:
3548         * data/samples/drumsynth/tr77/Makefile.am:
3549         * data/samples/drumsynth/misc_bass/Makefile.am:
3550         * data/samples/drumsynth/misc_perc/Makefile.am:
3551         * data/samples/drumsynth/latin/Makefile.am:
3552         * data/samples/drumsynth/instrument/Makefile.am:
3553         * data/samples/drumsynth/misc_electro/Makefile.am:
3554         * data/samples/drumsynth/Makefile.am:
3555         * data/samples/drumsynth/acoustic/Makefile.am:
3556         * data/samples/drumsynth/misc_hats/Makefile.am:
3557         * data/samples/drumsynth/farfisa/Makefile.am:
3558         * data/samples/drumsynth/jorgensohn/Makefile.am:
3559         * data/samples/drumsynth/cr8000/Makefile.am:
3560         * data/samples/drumsynth/misc_claps/Makefile.am:
3561         * data/samples/beats/Makefile.am:
3562         * data/presets/AudioFileProcessor/Makefile.am:
3563         * data/presets/Organic/Makefile.am:
3564         * data/presets/PluckedStringSynth/Makefile.am:
3565         * data/presets/VeSTige/Makefile.am:
3566         * data/presets/BitInvader/Makefile.am:
3567         * data/presets/Makefile.am:
3568         * data/presets/TripleOscillator/Makefile.am:
3569         * data/themes/Makefile.am:
3570         * data/projects/covers/Makefile.am:
3571         * data/projects/recorded_loops/Makefile.am:
3572         * data/projects/cool_songs/Makefile.am:
3573         * data/projects/tutorials/Makefile.am:
3574         * data/projects/demos/Makefile.am:
3575         * data/projects/Makefile.am:
3576         * data/projects/misc/Makefile.am:
3577         * data/projects/templates/Makefile.am:
3578         * data/Makefile.am:
3579         * Makefile.am:
3580         * acinclude.m4:
3581         * configure.in:
3582         removed old autotools-files
3584 2008-07-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3586         * plugins/ladspa_effect/tap/tap_deesser.c:
3587         * plugins/ladspa_effect/tap/tap_sigmoid.c:
3588         * plugins/ladspa_effect/tap/tap_doubler.c:
3589         * plugins/ladspa_effect/tap/tap_eqbw.c:
3590         * plugins/ladspa_effect/tap/tap_pinknoise.c:
3591         * plugins/ladspa_effect/tap/tap_chorusflanger.c:
3592         * plugins/ladspa_effect/tap/tap_eq.c:
3593         * plugins/ladspa_effect/tap/tap_limiter.c:
3594         * plugins/ladspa_effect/tap/tap_vibrato.c:
3595         * plugins/ladspa_effect/tap/tap_pitch.c:
3596         * plugins/ladspa_effect/tap/tap_autopan.c:
3597         * plugins/ladspa_effect/tap/tap_dynamics_st.c:
3598         * plugins/ladspa_effect/tap/tap_echo.c:
3599         * plugins/ladspa_effect/tap/tap_tremolo.c:
3600         * plugins/ladspa_effect/tap/tap_tubewarmth.c:
3601         * plugins/ladspa_effect/tap/tap_dynamics_m.c:
3602         * plugins/ladspa_effect/tap/tap_reflector.c:
3603         * plugins/ladspa_effect/tap/tap_reverb.c:
3604         * plugins/ladspa_effect/tap/tap_rotspeak.c:
3605         * plugins/ladspa_effect/tap/Makefile.am:
3606         added constructor/destructor-attribute to _init() and _finit()-methods
3607         in order to make those LADSPA-plugins work properly in win32-version
3609         * src/core/config_mgr.cpp:
3610         * src/core/ladspa_manager.cpp:
3611         * src/gui/setup_dialog.cpp:
3612         separate LADSPA-paths with ',' instead of ':' as win32-paths usually
3613         contain ':'-characters...
3615         * src/core/ladspa_2_lmms.cpp:
3616         also allow LADSPA-plugins which are not realtime capable - not all of
3617         them work properly but most do and it's better to provide more of them
3619         * src/gui/widgets/effect_view.cpp:
3620         handled rename of up/down arrow graphics
3622         * include/ladspa_2_lmms.h:
3623         cleanups
3625         * src/core/ladspa_manager.cpp:
3626         fixed paths to LADSPA-plugins for win32
3628         * src/gui/string_pair_drag.cpp:
3629         at destruction check whether mainWindow is still alive
3631         * src/core/midi/midi_port.cpp:
3632         range-checking for keys of input-events
3634         * src/core/song.cpp:
3635         lock mixer while adding BB-track (finally closes #2014486)
3637         * src/core/bb_track_container.cpp:
3638         * src/core/mv_base.cpp:
3639         * src/gui/automation_editor.cpp:
3640         * src/gui/bb_editor.cpp:
3641         * src/gui/widgets/knob.cpp:
3642         * src/tracks/instrument_track.cpp:
3643         do not create queued signal-slot-connections
3645         * src/core/audio/audio_sdl.cpp:
3646         changed number of frames per callback which seems to fix distorted sound
3648         * plugins/lb303/lb303.h:
3649         removed declaration of unimplemented slot - fixes win32-build
3651         * plugins/ladspa_effect/ladspa_effect.cpp:
3652         * plugins/vibed/vibed.cpp:
3653         * include/controller.h:
3654         * include/lfo_controller.h:
3655         * include/midi_controller.h:
3656         * include/peak_controller.h:
3657         * include/plugin.h:
3658         * src/core/controller.cpp:
3659         * src/core/lfo_controller.cpp:
3660         * src/core/peak_controller.cpp:
3661         * src/core/tool.cpp:
3662         * src/core/midi/midi_controller.cpp:
3663         * src/gui/effect_control_dialog.cpp:
3664         * src/gui/effect_select_dialog.cpp:
3665         * src/gui/main_window.cpp:
3666         * src/gui/plugin_browser.cpp:
3667         * src/gui/widgets/controller_view.cpp:
3668         * src/gui/widgets/effect_view.cpp:
3669         * src/tracks/instrument_track.cpp:
3670         removed publicName-properties in various classes and plugin-descriptor
3671         and use model::displayName instead
3673         * src/gui/controller_connection_dialog.cpp:
3674         improved GUI-layout
3676         * include/automation_pattern.h:
3677         * src/core/automation_pattern.cpp:
3678         - removed obsolete variable
3679         - fixed wrong behaviour of automationPattern::valueAt()
3680         - in case there's only one initial value in time-map, set it for all
3681           objects when loading settings
3683         * src/tracks/instrument_track.cpp:
3684         save actual instrument-settings in separate sub-node for not mixing up
3685         unknown nodes with instruments
3687         * src/gui/widgets/group_box.cpp:
3688         only toggle LED on left click
3690         * include/detuning_helper.h:
3691         * include/inline_automation.h:
3692         fixed behaviour for inline-automations with only one value in time-map
3694         * src/core/mmp.cpp:
3695         - fixed and improved various tag-renaming-loops
3696         - added upgrade path from LB302 to LB303
3698         * plugins/bit_invader/bit_invader.cpp:
3699         * plugins/sf2_player/sf2_player.cpp:
3700         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
3701         fixed compiler warnings
3703         * plugins/Makefile.am:
3704         removed lb302 from list of plugins to build
3706         * plugins/midi_import/midi_import.cpp:
3707         improved tempo-automation import
3709         * include/automatable_model.h:
3710         * include/mv_base.h:
3711         * src/core/automatable_model.cpp:
3712         moved displayName-property from automatableModel to model base-class
3714         * src/tracks/pattern.cpp:
3715         fixed types
3717         * src/core/automation_pattern.cpp:
3718         improved behaviour in automationPattern::clear() and
3719         automationPattern::putValue()
3721         * include/instrument_sound_shaping.h:
3722         * src/core/effect_chain.cpp:
3723         * src/core/instrument_functions.cpp:
3724         * src/core/instrument_sound_shaping.cpp:
3725         * src/core/meter_model.cpp:
3726         * src/core/song.cpp:
3727         * src/core/track.cpp:
3728         * src/core/surround_area.cpp:
3729         * src/gui/widgets/graph.cpp:
3730         * src/tracks/instrument_track.cpp:
3731         added more values for displayName-property
3733         * include/track_label_button.h:
3734         * src/gui/widgets/track_label_button.cpp:
3735         * src/tracks/automation_track.cpp:
3736         * src/tracks/bb_track.cpp:
3737         * src/tracks/instrument_track.cpp:
3738         * src/tracks/sample_track.cpp:
3739         * Makefile.am:
3740         - moved name_label.* to track_label_button.*
3741         - bigger icons for trackLabelButtons
3743 2008-07-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3745         * src/tracks/automation_track.cpp:
3746         make sure, hidden automation-tracks are not muted when loading
3748         * src/core/automatable_model.cpp:
3749         cleanups
3751         * data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmpz:
3752         fixed tempo-automation
3754 2008-07-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3756         * src/gui/main_window.cpp:
3757         added minimal width and height when restoring subwindow-states
3759         * include/bb_track_container.h:
3760         * src/core/bb_track_container.cpp:
3761         * src/core/song.cpp:
3762         added quirk for fixing projects with broken positions of TCOs inside
3763         BB-tracks
3765         * src/core/automation_pattern.cpp:
3766         update views after resolving IDs for drawing bars with proper range
3768         * src/tracks/automation_track.cpp:
3769         fixed behaviour of automation-tracks in BB-editor (closes #2014486)
3771         * include/track.h:
3772         * src/core/track.cpp:
3773         fixed "Cut"-action on TCOs (closes #2016731)
3775 2008-07-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3777         * src/core/config_mgr.cpp:
3778         * src/core/main.cpp:
3779         do not terminate silently if parsing of configuration file failed
3781         * src/gui/automation_editor.cpp:
3782         fixed drawing of bars which do not fit within current viewport
3784         * data/themes/default/factory_files.png:
3785         better icon
3787         * data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmpz:
3788         upgraded + reverb in master-FX channel
3790         * Makefile.am:
3791         * include/effect_label.h:
3792         * src/gui/widgets/effect_label.cpp:
3793         removed obsolete files
3795         * include/automation_track.h:
3796         * include/bb_track.h:
3797         * include/effect_rack_view.h:
3798         * include/instrument_track.h:
3799         * include/name_label.h:
3800         * include/sample_track.h:
3801         * include/track.h:
3802         * src/core/track.cpp:
3803         * src/gui/widgets/group_box.cpp:
3804         * src/gui/widgets/name_label.cpp:
3805         * src/tracks/automation_track.cpp:
3806         * src/tracks/bb_track.cpp:
3807         * src/tracks/instrument_track.cpp:
3808         * src/tracks/sample_track.cpp:
3809         * data/themes/default/style.css:
3810         * data/themes/default/add_automation.png:
3811         * data/themes/default/add_sample_track.png:
3812         * data/themes/default/automation.png:
3813         * data/themes/default/automation_track.png:
3814         * data/themes/default/colorize.png:
3815         * data/themes/default/instrument_track.png:
3816         * data/themes/default/sample_track.png:
3817         * data/themes/default/surround_area.png:
3818         unified track-view appearence and behaviour
3820 2008-07-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3822         * plugins/sf2_player/Makefile.am:
3823         added missing SOURCES-entry for UI-file
3825         * src/gui/widgets/combobox.cpp:
3826         better position for text-drawing
3828         * include/instrument_functions.h:
3829         * include/instrument_function_views.h:
3830         * src/core/instrument_functions.cpp:
3831         * src/gui/widgets/instrument_function_views.cpp:
3832         * data/themes/default/arp_down.png:
3833         * data/themes/default/arp_down_off.png:
3834         * data/themes/default/arp_down_on.png:
3835         * data/themes/default/arp_random.png:
3836         * data/themes/default/arp_random_off.png:
3837         * data/themes/default/arp_random_on.png:
3838         * data/themes/default/arp_up.png:
3839         * data/themes/default/arp_up_off.png:
3840         * data/themes/default/arp_up_on.png:
3841         * data/themes/default/arp_up_and_down.png:
3842         * data/themes/default/arp_up_and_down_off.png:
3843         * data/themes/default/arp_up_and_down_on.png:
3844         use combobox instead of button-group for selecting arpeggio-direction
3846 2008-07-08      Paul Giblock <drfaygo/at/gmail/dot/com>
3848         * plugins/lb303:
3849         * plugins/lb303/lb303.cpp:
3850         * plugins/lb303/lb303.h:
3851         * plugins/lb303/artwork.png:
3852         * plugins/lb303/logo.png:
3853         * plugins/lb303/Makefile.am:
3854         * plugins/Makefile.am:
3855         * configure.in:
3856         First version of lb303, NO backward compatability YET
3858         * src/gui/controller_connection_dialog.cpp:
3859         Fix MIDI AutoDetect  
3861         * src/gui/widgets/knob.cpp:
3862         Fix occationally missing line after instantiation
3864 2008-07-07      Paul Giblock <drfaygo/at/gmail/dot/com>
3866         * src/gui/controller_connection_dialog.cpp:
3867         Show name instead of type in connection dialog
3869         * src/gui/widgets/controller_view.cpp:
3870         Remove bypass
3872         * plugins/lb302/lb302.cpp:
3873         * plugins/lb302/lb302.h:
3874         - Initial support for pitch-bend, doesn't work during slide.
3875         - Next version will probably be the first lb303
3876         - Cleanup, fixed dropped-notes
3877         - Fix pitch-bend while sliding
3879 2008-07-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3881         * configure.in:
3882         made 0.4.0-alpha2 release
3884         * src/core/mmp.cpp:
3885         added compat-code for loading old presets where content-node is named
3886         "channelsettings"
3888         * plugins/sf2_player/sf2_player.cpp:
3889         * plugins/sf2_player/sf2_player.h:
3890         added support for pitch-bending
3892         * include/instrument_track.h:
3893         * include/note_play_handle.h:
3894         * src/core/note_play_handle.cpp:
3895         * src/tracks/instrument_track.cpp:
3896         - additionally provide frequency without pitch-wheel
3897         - added instrumentTrack::midiPitch()
3899         * include/instrument.h:
3900         * include/instrument_track.h:
3901         * include/midi_controller.h:
3902         * include/midi_event_processor.h:
3903         * include/midi_port.h:
3904         * src/core/note_play_handle.cpp:
3905         * src/core/midi/midi_controller.cpp:
3906         * src/tracks/instrument_track.cpp:
3907         removed buggy and obsolete support for monophonic instruments
3909 2008-07-06      Paul Giblock <drfaygo/at/gmail/dot/com>
3911         * plugins/lb302/lb302.cpp:
3912         * plugins/lb302/lb302.h:
3913         New version (and probably last) of new IPH-based lb302
3915 2008-07-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3917         * src/gui/widgets/combobox.cpp:
3918         draw text at correct position in win32-version
3920         * src/core/drumsynth.cpp:
3921         when building for win32 define powf() as pow() due to symbol-conflicts
3922         in win32-libm
3924         * data/themes/default/style.css:
3925         fixed font-color for what's-this-popups so that they're readable
3927 2008-07-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3929         * plugins/stk/mallets/mallets.cpp:
3930         protect critical section when creating STK-synths as STK is not
3931         thread-safe (closes #2005888)
3933         * include/instrument_track.h:
3934         * src/tracks/instrument_track.cpp:
3935         - set hand-cursor for instrument-track-window button
3936         - in instrumentTrack::processInEvent() lock mixer in outer branch
3938         * include/instrument.h:
3939         added note for scheduled removal of monophonic-property
3941         * include/note_play_handle.h:
3942         made m_released volatile
3944         * src/core/note_play_handle.cpp:
3945         - instantly exit noteOff() if already released
3946         - manually unlink references to itself in instrumentTrack (fixes
3947           segfaults in various situations)
3949         * src/core/envelope_and_lfo_parameters.cpp:
3950         * src/core/instrument_functions.cpp:
3951         * src/core/ladspa_control.cpp:
3952         fixed tempo-sync-models (closes #2010776)
3954         * src/core/mixer.cpp:
3955         cleanups
3957         * src/tracks/automation_track.cpp:
3958         made muting automation-tracks work (closes #2010770)
3960         * src/tracks/bb_track.cpp:
3961         made muting BB-tracks work (closes #2010764)
3963         * src/gui/widgets/effect_rack_view.cpp:
3964         made removing effect-plugins thread-safe (closes #2010984)
3966         * src/core/automation_pattern.cpp:
3967         save and restore automationPattern's name (closes #2011011)
3969         * include/inline_automation.h:
3970         delete automation-pattern is in correct thread (closes #2008232)
3972 2008-07-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
3974         * include/track.h:
3975         made trackContentObject and track implement displayName() in order to
3976         return their name
3978         * include/effect_label.h:
3979         * src/gui/widgets/effect_label.cpp:
3980         * src/tracks/sample_track.cpp:
3981         do not take _initial_name as it can be retrieved from track
3983         * src/tracks/sample_track.cpp:
3984         added name to volumeModel
3986         * data/themes/default/hand.png:
3987         * src/gui/automatable_model_view.cpp:
3988         * src/gui/fx_mixer_view.cpp:
3989         * src/gui/widgets/fade_button.cpp:
3990         * src/gui/widgets/effect_label.cpp:
3991         * src/gui/widgets/name_label.cpp:
3992         * src/core/track.cpp:
3993         added hand-cursor for all controls
3995         * data/themes/default/style.css:
3996         common font-size for track-labels
3998 2008-07-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4000         * src/core/main.cpp:
4001         * src/core/song.cpp:
4002         added new commandline option "--upgrade" for upgrading project-files
4003         easily
4005         * src/core/config_mgr.cpp:
4006         fixed wrong macro-name - fixes unusable Mallets-plugin
4008 2008-07-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4010         * plugins/sf2_player/Makefile.am:
4011         removed ui_patches_dialog.h from SOURCES-list
4013         * src/core/mmp.cpp:
4014         don't mess up projects when loading files being created using
4015         0.4.0-alpha in a later version because "0.4.0-alpha" < "0.4.0-svn..."
4017         * include/mv_base.h:
4018         Qt 4.3 compatibility
4020 2008-06-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4022         * configure.in:
4023         made 0.4.0-alpha release
4025         * src/core/song.cpp:
4026         * src/core/mmp.cpp:
4027         * src/core/track.cpp:
4028         * src/core/automation_pattern.cpp:
4029         fixed broken load/save of song-global automation
4031         * Makefile.am:
4032         win32-pkg-fixes
4034         * data/locale/de.qm:
4035         * data/locale/de.ts:
4036         updated German localization file
4038         * include/song_editor.h:
4039         * src/gui/song_editor.cpp:
4040         made icon on play-button change according to current mode
4042         * include/main_window.h:
4043         * src/gui/bb_editor.cpp:
4044         * src/gui/fx_mixer_view.cpp:
4045         * src/gui/main_window.cpp:
4046         * src/gui/song_editor.cpp:
4047         * src/gui/widgets/controller_rack_view.cpp:
4048         added toggle-button for controller-rack-view and improved default
4049         positions of sub-windows in workspace
4051         * src/core/song.cpp:
4052         - send posted events after creating a new project - makes project not
4053           being marked as modified right after it's been created
4054         - create empty sample-track and automation-track in new projects
4056         * src/core/engine.cpp:
4057         clear whole project before deleting everything - fixes segfault when
4058         quitting with controllers added
4060         * src/core/effect_chain.cpp:
4061         fixed crash when an effect failed to load because its sub-plugin is
4062         missing (closes #2005910)
4064         * src/core/automation_pattern.cpp:
4065         - initialize first value in time-map
4066         - better default-model
4067         - change automation-pattern to NULL if opened in automation editor
4068           during destruction
4069         - improved default-label
4070         - when used in track-container with fixed TCOs, update length
4072         * src/core/track.cpp:
4073         * src/tracks/bb_track.cpp:
4074         * src/tracks/instrument_track.cpp:
4075         * src/tracks/sample_track.cpp:
4076         save/restore name-property inside track-class
4078         * src/tracks/automation_track.cpp:
4079         set a proper name per default
4081         * src/gui/automation_editor.cpp:
4082         queued connections for models for not getting signaled at
4083         destruction-time
4085         * include/bb_editor.h:
4086         * src/gui/bb_editor.cpp:
4087         made it possible to add automation-tracks to BB-editor
4089         * include/automation_pattern.h:
4090         * include/inline_automation.h:
4091         * include/note.h:
4092         * src/core/inline_automation.cpp:
4093         * src/core/note.cpp:
4094         fixed inlineAutomation::hasAutomation()
4096         * data/themes/default/style.css:
4097         common font-size for various push-buttons
4099         * src/core/config_mgr.cpp:
4100         ask whether to create working-directory if it does not exist
4102         * src/core/fx_mixer.cpp:
4103         reset mute-model in fxMixer::clear()
4105         * include/track.h:
4106         * src/core/track.cpp:
4107         - removed obsolete static members
4108         - more simple QPen-initialization for not making Qt leak
4110         * include/combobox_model.h:
4111         pass _default_constructed-parameter to base-class
4113         * src/gui/lfo_controller_dialog.cpp:
4114         renamed constants so one-unit-compiling is possible
4116         * src/gui/widgets/envelope_and_lfo_view.cpp:
4117         * src/core/envelope_and_lfo_parameters.cpp:
4118         do not duplicate constants
4120         * src/gui/widgets/group_box.cpp:
4121         make sure LED's default-model is being deleted when changing model
4123         * src/core/plugin.cpp:
4124         made initialization of dummy-plugin pixmap-loder static
4126         * src/core/mixer.cpp:
4127         properly terminate worker-threads at mixer-destruction
4129         * src/core/main.cpp:
4130         fixed various leaks
4132         * src/core/mmp.cpp:
4133         replaced compat-code by proper code in multimediaProject::upgrade()
4135         * src/core/effect.cpp:
4136         added missing initialization of m_processors member variable
4138         * src/core/instrument_functions.cpp:
4139         removed obsolete constants
4141         * src/core/sample_buffer.cpp:
4142         fixed broken logic when updating sample-data
4144         * src/core/automation_pattern.cpp:
4145         in automationPattern::valueAt() check whether the time-map is empty
4147         * src/core/fx_mixer.cpp:
4148         save/load mute-settings for FX-lines
4150         * src/core/peak_controller.cpp:
4151         return default-value if there's no peak-effect
4153         * configure.in:
4154         * Makefile.am:
4155         * include/sample_buffer.h:
4156         * src/core/sample_buffer.cpp:
4157         removed support for SDL_sound-library as libsndfile and libvorbis do
4158         everything we need
4160         * include/automatable_model.h:
4161         * include/combobox_model.h:
4162         * include/mv_base.h:
4163         * include/piano_roll.h:
4164         * src/core/base64.cpp:
4165         * src/core/effect.cpp:
4166         * src/core/engine.cpp:
4167         * src/core/fx_mixer.cpp:
4168         * src/core/instrument_functions.cpp:
4169         * src/core/ladspa_manager.cpp:
4170         * src/core/mv_base.cpp:
4171         * src/gui/automation_editor.cpp:
4172         * src/gui/main_window.cpp:
4173         * src/gui/piano_roll.cpp:
4174         * src/gui/widgets/combobox.cpp:
4175         * src/gui/widgets/group_box.cpp:
4176         * plugins/ladspa_effect/ladspa_effect.cpp:
4177         fixed various leaks I found using Valgrind
4179 2008-06-30      Paul Giblock <drfaygo/at/gmail/dot/com>
4181         * plugins/ladspa_browser/ladspa_browser.cpp:
4182         * include/automation_editor.h:
4183         * src/gui/piano_roll.cpp:
4184         * src/gui/fx_mixer_view.cpp:
4185         * src/gui/widgets/controller_rack_view.cpp:
4186         * src/gui/widgets/controller_view.cpp:
4187         * src/gui/automation_editor.cpp:
4188         * src/tracks/instrument_track.cpp:
4189         Remove maximize and resize capability from many windows and set proper
4190         minimum and intial sizes
4192 2008-06-29      Javier Serrano Polo <jasp00/at/terra/dot/es>
4194         * data/locale/ca.ts:
4195         updated translation
4197 2008-06-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4199         * include/track.h:
4200         * include/sample_track.h:
4201         * src/gui/widgets/effect_label.cpp:
4202         * src/tracks/sample_track.cpp:
4203         * src/core/sample_play_handle.cpp:
4204         * src/core/track.cpp:
4205         * Makefile.am:
4206         finally resurrected sample-tracks
4208         * src/gui/automation_editor.cpp:
4209         - improved drawing/erasing values
4210         - fixed moving selected values
4212         * src/core/automation_pattern.cpp:
4213         when drawing automation, do not overpaint border
4215         * data/themes/default/fx_mixer.png:
4216         new icon at 32x32 px to make it scale better to 16x16
4218 2008-06-29      Paul Giblock <drfaygo/at/gmail/dot/com>
4220         * plugins/sf2_player/sf2_player.cpp:
4221         Initialize gain at 1.0
4223         * src/core/automation_pattern.cpp:
4224         - Correctly draw automation TCO for negative minValues.
4225         - Add some shading
4227         * src/gui/controller_connection_dialog.cpp:
4228         - Connect cancel button
4229         - Make mapping function read-only for alpha release
4230         - Initialize MIDI Controller name when adding a MIDI Controller
4232         * src/gui/widgets/tempo_sync_knob.cpp:
4233         Make tempoSyncKnob really sync to tempo again
4235         * plugins/peak_controller_effect/peak_controller_effect.cpp:
4236         * plugins/peak_controller_effect/peak_controller_effect_controls.cpp:
4237         * plugins/peak_controller_effect/peak_controller_effect.h:
4238         * include/peak_controller.h:
4239         * src/core/peak_controller.cpp:
4240         Fix loading/saving for peak controller
4242         * src/core/effect.cpp:
4243         Correct comments
4245         * data/themes/default/style.css:
4246         Make toolbar colors a little more clear
4248         * src/core/automation_pattern.cpp:
4249         Save and load pattern position from project
4251         * include/automation_track.h:
4252         * src/tracks/automation_track.cpp:
4253         Allow dragging automatable views directly onto an automation-track
4255         * configure.in:
4256         Fix LIBDIR for when people do not use --prefix
4258         * include/automation_editor.h:
4259         * src/gui/automation_editor.cpp:
4260         - Don't miss points when scribbling quickly
4261         - Shift-Click to draw a line
4263         * include/lfo_controller.h:
4264         * src/gui/lfo_controller_dialog.cpp:
4265         * data/themes/default/lfo_controller_artwork.png:
4266         Add LFO artwork (except it doesn't work for some odd reason)
4268         * plugins/stereo_matrix/stereomatrix_control_dialog.cpp:
4269         * plugins/stereo_matrix/artwork.png:
4270         Add StereoMatrix artwork
4272         * plugins/bit_invader/artwork.png:
4273         Remove author name from artwork.  No other artwork has author names.  The
4274         name on the main GUI makes LMMS looks less professional.  AUTHORS.
4276         * plugins/patman/logo.png:
4277         * plugins/stereo_matrix/artwork.png:
4278         * plugins/audio_file_processor/logo.png:
4279         * plugins/vestige/logo.png:
4280         * plugins/spectrum_analyzer/log_x_axis.png:
4281         * plugins/spectrum_analyzer/log_y_axis.png:
4282         Update plugin artwork
4284         * plugins/live_tool/live_tool.cpp:
4285         * src/gui/plugin_browser.cpp:
4286         * src/gui/main_window.cpp:
4287         * src/gui/automation_editor.cpp:
4288         * src/gui/bb_editor.cpp:
4289         * src/tracks/bb_track.cpp:
4290         * src/core/mmp.cpp:
4291         * data/locale/nl.ts:
4292         * data/locale/it.ts:
4293         * data/locale/ca.ts:
4294         * data/locale/ru.ts:
4295         * data/locale/de.ts:
4296         * data/locale/sv.ts:
4297         Rename Baseline to Bassline
4299 2008-06-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4301         * plugins/Makefile.am:
4302         * configure.in:
4303         removed SingerBot-references
4305         * plugins/live_tool/live_tool.cpp:
4306         * src/core/tool.cpp:
4307         cleanups
4309         * src/gui/main_window.cpp:
4310         * src/tracks/bb_track.cpp:
4311         * src/tracks/pattern.cpp:
4312         * src/core/automation_pattern.cpp:
4313         * data/themes/default/project_new_from_template.png:
4314         * data/themes/default/project_new.png:
4315         * data/themes/default/project_import.png:
4316         * data/themes/default/project_open_recent.png:
4317         * data/themes/default/edit_rename.png:
4318         * data/themes/default/rename.png:
4319         splitted "new project"-button and added "recently opened
4320         project"-button
4322         * src/gui/main_window.cpp:
4323         * src/gui/song_editor.cpp:
4324         * src/tracks/instrument_track.cpp:
4325         * data/themes/default/edit_draw.png:
4326         * data/themes/default/add_bb_track.png:
4327         * data/themes/default/edit_arrow.png:
4328         * data/themes/default/stop.png:
4329         * data/themes/default/mute_off_disabled.png:
4330         * data/themes/default/mute_on_disabled.png:
4331         * data/themes/default/style.css:
4332         * data/themes/default/play.png:
4333         * data/themes/default/mute_on.png:
4334         * data/themes/default/record.png:
4335         * data/themes/default/automation.png:
4336         * data/themes/default/help.png:
4337         * data/themes/default/sample_track.png:
4338         * data/themes/default/track_op_menu_disabled.png:
4339         * data/themes/default/edit_select.png:
4340         * data/themes/default/effect_board.png:
4341         * data/themes/default/mute_off.png:
4342         * data/themes/default/pause.png:
4343         * data/themes/default/bb_track.png:
4344         * data/themes/default/add_automation.png:
4345         * data/themes/default/edit_erase.png:
4346         * data/themes/default/record_accompany.png:
4347         * data/themes/default/edit_move.png:
4348         * data/themes/default/add_sample_track.png:
4349         * data/themes/default/songeditor.png:
4350         * data/themes/default/fx_mixer.png:
4351         improved artwork and maintoolbar
4353 2008-06-28      Paul Giblock <drfaygo/at/gmail/dot/com>
4355         * configure.in:
4356         * src/core/config_mgr.cpp:
4357         * src/core/ladspa_manager.cpp:
4358         Search LIBDIR before any other directories
4360         * acinclude.m4:
4361         Search $QTDIR before any other directories
4363         * data/themes/default/style.css:
4364         Update CSS for new QToolBar support
4366 2008-06-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4368         * src/core/song.cpp:
4369         * src/core/project_renderer.cpp:
4370         - confirm overwrite when exporting file
4371         - set filter when selecting output-file for export
4373         * include/audio_file_device.h:
4374         * include/audio_file_ogg.h:
4375         * include/audio_file_wave.h:
4376         * include/project_renderer.h:
4377         * src/core/audio/audio_file_device.cpp:
4378         * src/core/audio/audio_file_ogg.cpp:
4379         * src/core/audio/audio_file_wave.cpp:
4380         * src/core/main.cpp:
4381         * src/core/project_renderer.cpp:
4382         * src/gui/export_project_dialog.cpp:
4383         added support for exporting WAVE-files with 32-bit-float format
4385         * include/automation_editor.h:
4386         fixed node-name
4388         * Makefile.am:
4389         * include/automation_pattern.h:
4390         * include/detuning_helper.h:
4391         * include/inline_automation.h:
4392         * include/note_play_handle.h:
4393         * src/core/automation_pattern.cpp:
4394         * src/core/inline_automation.cpp:
4395         * src/core/note.cpp:
4396         * src/core/note_play_handle.cpp:
4397         * src/core/track.cpp:
4398         * src/gui/piano_roll.cpp:
4399         made note-detuning-automation work by making automationPatterns also
4400         work without a parent-track and writing a generic inlineAutomation-class
4402         * src/gui/file_browser.cpp:
4403         fixed crash when encountering invalid samplePlayHandle while
4404         previewing (closes #2004875)
4406 2008-06-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4408         * include/instrument_track.h:
4409         * src/tracks/instrument_track.cpp:
4410         added panning-knob to track-settings-widget
4412         * include/fx_mixer.h:
4413         * include/fx_mixer_view.h:
4414         * src/core/fx_mixer.cpp:
4415         * src/gui/fx_mixer_view.cpp:
4416         added mute-button for each FX-line
4418         * include/led_checkbox.h:
4419         * src/gui/peak_controller_dialog.cpp:
4420         * src/gui/widgets/instrument_function_views.cpp:
4421         * src/gui/widgets/ladspa_control_view.cpp:
4422         * src/gui/widgets/led_checkbox.cpp:
4423         made enumeration match current coding style
4425         * src/core/track.cpp:
4426         * src/core/plugin.cpp:
4427         * Makefile.am:
4428         cleanups
4430 2008-06-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4432         * src/tracks/instrument_track.cpp:
4433         overwrite-confirm when saving instrument-settings
4435         * src/core/effect_chain.cpp:
4436         when clear()ing, also disable FX-chain (closes #1994482)
4438         * src/core/song.cpp:
4439         always load FX-mixer-settings even if there's no GUI
4441         * src/core/track_container.cpp:
4442         fixed broken clearAllTracks()
4444         * include/track.h:
4445         * include/pattern.h:
4446         * include/bb_track.h:
4447         * src/tracks/bb_track.cpp:
4448         * src/tracks/pattern.cpp:
4449         * src/core/track.cpp:
4450         name-property in trackContentObject-class
4452         * include/automation_pattern.h:
4453         * src/core/automation_pattern.cpp:
4454         - added submenu for removing connections
4455         - made automation-pattern rename working
4457         * src/core/automation_pattern.cpp:
4458         fixed loading song-global automation
4460 2008-06-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4462         * plugins/vibed/vibrating_string.h:
4463         * plugins/vibed/nine_button_selector.h:
4464         * plugins/vibed/vibed.h:
4465         * plugins/vibed/vibrating_string.cpp:
4466         * plugins/vibed/string_container.h:
4467         * plugins/vibed/nine_button_selector.cpp:
4468         * plugins/vibed/Makefile.am:
4469         * plugins/vibed/vibed.cpp:
4470         * plugins/singerbot/singerbot.h:
4471         * plugins/audio_file_processor/audio_file_processor.cpp:
4472         * plugins/flp_import/flp_import.cpp:
4473         * include/note_play_handle.h:
4474         * src/tracks/instrument_track.cpp:
4475         * src/core/note_play_handle.cpp:
4476         * src/core/audio/audio_device.cpp:
4477         * src/core/audio/audio_oss.cpp:
4478         - fixed wrong config.h-inclusion and deprecated macro-names from
4479           config.h - makes Vibed plugin work again (closes #2000590)
4480         - various coding-style fixes
4482         * plugins/bit_invader/bit_invader.cpp:
4483         * plugins/vibed/vibed.cpp:
4484         fixed plugin-instantiation
4486         * include/graph.h:
4487         * src/gui/widgets/graph.cpp:
4488         * plugins/vibed/vibed.cpp:
4489         * plugins/vibed/vibed.h:
4490         * plugins/bit_invader/bit_invader.cpp:
4491         * plugins/bit_invader/bit_invader.h:
4492         use int instead of Uint32
4494         * plugins/plucked_string_synth/logo.png:
4495         * plugins/plucked_string_synth/plucked_string_synth.cpp:
4496         * plugins/plucked_string_synth/plucked_string_synth.h:
4497         * plugins/plucked_string_synth/Makefile.am:
4498         * plugins/plucked_string_synth/artwork.png:
4499         * plugins/polyb302/polyb302.h:
4500         * plugins/polyb302/logo.png:
4501         * plugins/polyb302/Makefile.am:
4502         * plugins/polyb302/polyb302.cpp:
4503         * plugins/polyb302/artwork.png:
4504         removed obsolete plugins
4506         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
4507         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
4508         * plugins/spectrum_analyzer/Makefile.am:
4509         * plugins/spectrum_analyzer/spectrum_analyzer.h:
4510         * configure.in:
4511         use float-based FFTW-library
4513         * Makefile.am:
4514         * include/peak_controller.h:
4515         * include/tempo_sync_knob.h:
4516         fixes for win32-build
4518 2008-06-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4520         * plugins/ladspa_effect/ladspa_effect.cpp:
4521         * plugins/ladspa_effect/ladspa_controls.cpp:
4522         * plugins/ladspa_effect/ladspa_controls.h:
4523         * plugins/organic/organic.cpp:
4524         * plugins/organic/organic.h:
4525         * plugins/lb302/lb302.cpp:
4526         * plugins/vibed/nine_button_selector.cpp:
4527         * plugins/triple_oscillator/triple_oscillator.h:
4528         * plugins/triple_oscillator/triple_oscillator.cpp:
4529         * plugins/audio_file_processor/audio_file_processor.cpp:
4530         * plugins/stk/mallets/mallets.cpp:
4531         * plugins/kicker/kicker.cpp:
4532         * plugins/midi_import/midi_import.cpp:
4533         * include/effect.h:
4534         * include/meter_model.h:
4535         * include/track.h:
4536         * include/automatable_model.h:
4537         * include/instrument_functions.h:
4538         * include/ladspa_control.h:
4539         * include/audio_port.h:
4540         * include/automation_pattern.h:
4541         * include/effect_view.h:
4542         * include/graph.h:
4543         * include/song.h:
4544         * include/pattern.h:
4545         * include/envelope_and_lfo_parameters.h:
4546         * include/song_editor.h:
4547         * include/journalling_object.h:
4548         * include/automatable_model_view.h:
4549         * include/surround_area.h:
4550         * include/mv_base.h:
4551         * include/controller_view.h:
4552         * include/effect_controls.h:
4553         * include/midi_port.h:
4554         * include/automation_editor.h:
4555         * include/effect_chain.h:
4556         * include/automation_track.h:
4557         * include/track_container.h:
4558         * include/plugin_view.h:
4559         * src/gui/piano_roll.cpp:
4560         * src/gui/track_container_view.cpp:
4561         * src/gui/controller_dialog.cpp:
4562         * src/gui/automatable_model_view.cpp:
4563         * src/gui/effect_control_dialog.cpp:
4564         * src/gui/fx_mixer_view.cpp:
4565         * src/gui/song_editor.cpp:
4566         * src/gui/widgets/ladspa_control_view.cpp:
4567         * src/gui/widgets/graph.cpp:
4568         * src/gui/widgets/combobox.cpp:
4569         * src/gui/widgets/midi_port_menu.cpp:
4570         * src/gui/widgets/controller_rack_view.cpp:
4571         * src/gui/widgets/instrument_sound_shaping_view.cpp:
4572         * src/gui/widgets/envelope_and_lfo_view.cpp:
4573         * src/gui/widgets/knob.cpp:
4574         * src/gui/widgets/instrument_function_views.cpp:
4575         * src/gui/widgets/instrument_midi_io_view.cpp:
4576         * src/gui/widgets/automatable_slider.cpp:
4577         * src/gui/widgets/group_box.cpp:
4578         * src/gui/widgets/lcd_spinbox.cpp:
4579         * src/gui/widgets/controller_view.cpp:
4580         * src/gui/widgets/fader.cpp:
4581         * src/gui/widgets/effect_rack_view.cpp:
4582         * src/gui/widgets/tempo_sync_knob.cpp:
4583         * src/gui/widgets/automatable_button.cpp:
4584         * src/gui/widgets/meter_dialog.cpp:
4585         * src/gui/automation_editor.cpp:
4586         * src/tracks/automation_track.cpp:
4587         * src/tracks/sample_track.cpp:
4588         * src/tracks/bb_track.cpp:
4589         * src/tracks/instrument_track.cpp:
4590         * src/tracks/pattern.cpp:
4591         * src/core/effect_chain.cpp:
4592         * src/core/project_journal.cpp:
4593         * src/core/midi/midi_controller.cpp:
4594         * src/core/midi/midi_port.cpp:
4595         * src/core/note_play_handle.cpp:
4596         * src/core/song.cpp:
4597         * src/core/track_container.cpp:
4598         * src/core/bb_track_container.cpp:
4599         * src/core/journalling_object.cpp:
4600         * src/core/automatable_model.cpp:
4601         * src/core/audio/audio_port.cpp:
4602         * src/core/sample_play_handle.cpp:
4603         * src/core/envelope_and_lfo_parameters.cpp:
4604         * src/core/mmp.cpp:
4605         * src/core/instrument_sound_shaping.cpp:
4606         * src/core/meter_model.cpp:
4607         * src/core/instrument_functions.cpp:
4608         * src/core/track.cpp:
4609         * src/core/ladspa_control.cpp:
4610         * src/core/note.cpp:
4611         * src/core/piano.cpp:
4612         * src/core/surround_area.cpp:
4613         * src/core/mv_base.cpp:
4614         * src/core/automation_pattern.cpp:
4615         * src/core/fx_mixer.cpp:
4616         * data/themes/default/add_automation.png:
4617         - completely new automation-system with automation-tracks and
4618           automation-patterns as well as song-global automation
4619         - made modelView take a QWidget-pointer argument
4620         - trackContentObject-ctor now calls track::addTCO() directly
4621         - optimize various loops to use iterators/const_iterators instead of
4622           a running index variable
4623         - drag'n'drop doesn't fool around with pointers anymore - instead use
4624           unique journalling-IDs
4625         - moved drag'n'drop handling code from knob to automatableModelView so
4626           that all controls can benefit from that
4628 2008-06-23      Paul Giblock <drfaygo/at/gmail/dot/com>
4630         * include/lfo_controller.h:
4631         * src/gui/lfo_controller_dialog.cpp:
4632         * src/core/lfo_controller.cpp:
4633         * data/themes/default/lfo_d100_active.png:
4634         * data/themes/default/lfo_d100_inactive.png:
4635         * data/themes/default/lfo_x100_active.png:
4636         * data/themes/default/lfo_x100_inactive.png:
4637         * data/themes/default/lfo_x1_active.png:
4638         * data/themes/default/lfo_x1_inactive.png:
4639         Add multiplier to lfo-controller and fix tempo-sync knob.  Breaks old
4640         projects that use LFO, but shouldn't matter since 0.4 hasn't been
4641         released
4643         * src/gui/widgets/tempo_sync_knob.cpp:
4644         Allow tempo-sync knob to work with ranges other than [0..1]
4646         * src/core/envelope_and_lfo_parameters.cpp:
4647         Remove hardcoded literal, use already defined const int instead
4649         * data/projects/templates/CR8000.mpt:
4650         * data/projects/templates/TR808.mpt:
4651         Added two drumsynth templates
4653 2008-06-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4655         * include/automatable_model_view.h:
4656         * src/core/piano.cpp:
4657         full context-menu for piano-basenote so it can be automated as well as
4658         controlled via controller
4660         * src/gui/widgets/knob.cpp:
4661         - when linking knobs via Shift+Drag do not use pointer to model as
4662           drag-data rather than model-ID which can be resolved via
4663           project-journal
4664         - fixed displayValue()
4666         * Makefile.am:
4667         * include/knob.h:
4668         * include/volume_knob.h:
4669         * plugins/organic/organic.cpp:
4670         * plugins/organic/organic.h:
4671         * plugins/vibed/vibed.h:
4672         * plugins/vibed/vibed.cpp:
4673         * plugins/triple_oscillator/triple_oscillator.h:
4674         * plugins/triple_oscillator/triple_oscillator.cpp:
4675         * plugins/audio_file_processor/audio_file_processor.cpp:
4676         * plugins/audio_file_processor/audio_file_processor.h:
4677         * src/tracks/instrument_track.cpp:
4678         * src/gui/widgets/knob.cpp:
4679         * src/gui/widgets/volume_knob.cpp:
4680         removed volumeKnob-class and added volumeKnob-property to knob-class
4681         instead
4683         * plugins/flp_import/flp_import.cpp:
4684         * include/controller_connection.h:
4685         * include/lcd_spinbox.h:
4686         * include/controller.h:
4687         * include/automatable_model.h:
4688         * include/instrument_track.h:
4689         * include/instrument_functions.h:
4690         * include/note_play_handle.h:
4691         * include/instrument_sound_shaping.h:
4692         * include/basic_filters.h:
4693         * include/sample_track.h:
4694         * include/surround_area.h:
4695         * src/core/note_play_handle.cpp:
4696         * src/core/automatable_model.cpp:
4697         * src/core/main.cpp:
4698         * src/core/instrument_sound_shaping.cpp:
4699         * src/core/piano.cpp:
4700         * src/core/surround_area.cpp:
4701         reduced header-dependencies and various cleanups
4703         * include/tempo_sync_knob.h:
4704         * src/gui/widgets/tempo_sync_knob.cpp:
4705         - do not re-implement private event-handlers and use knob's signals
4706           instead
4707         - fixed crash when closing meterDialog and choosing custom-sync
4708           afterwards
4710         * src/gui/fx_mixer_view.cpp:
4711         better initial position of FX-mixer view
4713         * src/gui/song_editor.cpp:
4714         removed obsolete headers
4716         * include/setup_dialog.h:
4717         * src/gui/bb_editor.cpp:
4718         * src/gui/main_window.cpp:
4719         * src/gui/setup_dialog.cpp:
4720         * src/gui/song_editor.cpp:
4721         * src/gui/widgets/controller_rack_view.cpp:
4722         * src/gui/widgets/knob.cpp:
4723         - removed obsolete non-MDI-mode
4724         - removed classical knob-usability
4725         - removed show-wizard-after-upgrade setting
4726         - other cleanups
4728 2008-06-20      Paul Giblock <drfaygo/at/gmail/dot/com>
4730         * src/core/piano.cpp:
4731         make SVN compile again
4733 2008-06-20      Paul Wayper <paulway/at/mabula/dot/net>
4735         * src/core/piano.cpp:
4736         added Doxygen documentation.
4738 2008-06-19      Paul Wayper <paulway/at/mabula/dot/net>
4740         * src/core/track.cpp:
4741         added Doxygen documentation.
4743 2008-06-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4745         * plugins/Makefile.am:
4746         * configure.in:
4747         added libfftw3-detection
4749         * plugins/bass_booster/bassbooster_control_dialog.cpp:
4750         * plugins/bass_booster/artwork.png:
4751         * plugins/peak_controller_effect/peak_controller_effect_control_dialog.cpp:
4752         * plugins/peak_controller_effect/artwork.png:
4753         added metal-brushed background-artwork
4755         * src/tracks/instrument_track.cpp:
4756         added unit to pitch-knob
4758 2008-06-15      Paul Giblock <drfaygo/at/gmail/dot/com>
4760         * plugins/stereo_matrix/stereo_matrix.cpp:
4761         update author email address
4762         
4763         * src/gui/widgets/graph.cpp:
4764         * src/gui/lfo_controller_dialog.cpp:
4765         code cleanup
4767         * src/gui/widgets/fade_button.cpp:
4768         * src/tracks/instrument_track.cpp:
4769         improve appearance of fade buttons
4771         * include/tool_button.h:
4772         * src/gui/widgets/tool_button.cpp:
4773         * src/gui/lmms_style.cpp:
4774         * data/themes/default/style.css:
4775         remove styling, rely on QStyle and stylesheets now
4777         * include/song_editor.h:
4778         * include/main_window.h:
4779         * include/timeline.h:
4780         * src/gui/main_window.cpp:
4781         * src/gui/song_editor.cpp:
4782         * src/gui/widgets/nstate_button.cpp:
4783         * src/core/timeline.cpp:
4785         * data/themes/default/main_toolbar_bg.png:
4786         * data/themes/default/toolbar_bg.png:
4787         Enlarge images for resizable toolbars - quick fix. Could just clamp the
4788         texture at the bottom
4789         
4790 2008-06-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4792         * include/knob.h:
4793         * src/gui/widgets/knob.cpp:
4794         - cache pixmap
4795         - only redraw if angle has changed by more than 3 degrees
4796         - cleanups
4798         * src/core/midi/midi_alsa_seq.cpp:
4799         cleanups and small optimizations
4801         * include/instrument_midi_io_view.h:
4802         * include/instrument_track.h:
4803         * include/midi_port.h:
4804         * src/core/midi/midi_port.cpp:
4805         * src/tracks/instrument_track.cpp:
4806         * src/gui/widgets/instrument_midi_io_view.cpp:
4807         refactored midiPortMenu-creation and -management - fixes crash when
4808         removing track which had MIDI-in enabled and enabled MIDI-in for
4809         another track afterwards
4811         * src/gui/file_browser.cpp:
4812         do not load MIDI-settings when loading preset as this might break
4813         existing instrument tracks
4815         * include/automatable_model.h:
4816         * src/tracks/instrument_track.cpp:
4817         directly handle MIDI-pitch-bend events
4819         * include/instrument_track.h:
4820         * src/core/note_play_handle.cpp:
4821         * src/tracks/instrument_track.cpp:
4822         - added pitch-knob to instrument-track
4823         - fixed activity indicator
4825         * plugins/stk/voices/flute/flute_model.cpp:
4826         * plugins/stk/voices/flute/flute_model.h:
4827         * plugins/stk/voices/flute/flute_instrument.cpp:
4828         * plugins/stk/voices/resonate/resonate_model.cpp:
4829         * plugins/stk/voices/resonate/resonate_model.h:
4830         * plugins/stk/voices/resonate/resonate_instrument.cpp:
4831         * plugins/stk/voices/include/stk_instrument.h:
4832         * plugins/stk/voices/include/stk_processor.h:
4833         * plugins/stk/voices/include/stk_model.h:
4834         * plugins/stk/voices/include/stk_voice.h:
4835         * plugins/stk/voices/wurley/wurley_instrument.cpp:
4836         * plugins/stk/voices/wurley/wurley_model.cpp:
4837         * plugins/stk/voices/wurley/wurley_model.h:
4838         * plugins/stk/voices/src/stk_model.cpp:
4839         * plugins/stk/voices/percflute/percflute_model.h:
4840         * plugins/stk/voices/percflute/percflute_instrument.cpp:
4841         * plugins/stk/voices/percflute/percflute_model.cpp:
4842         * plugins/stk/voices/rhodey/rhodey_model.h:
4843         * plugins/stk/voices/rhodey/rhodey_instrument.cpp:
4844         * plugins/stk/voices/rhodey/rhodey_model.cpp:
4845         * plugins/stk/voices/tubebell/tubebell_model.cpp:
4846         * plugins/stk/voices/tubebell/tubebell_model.h:
4847         * plugins/stk/voices/tubebell/tubebell_instrument.cpp:
4848         * plugins/stk/voices/bowed/bowed_model.cpp:
4849         * plugins/stk/voices/bowed/bowed_model.h:
4850         * plugins/stk/voices/bowed/bowed_instrument.cpp:
4851         * plugins/stk/voices/clarinet/clarinet_model.cpp:
4852         * plugins/stk/voices/clarinet/clarinet_model.h:
4853         * plugins/stk/voices/clarinet/clarinet_instrument.cpp:
4854         * plugins/stk/voices/moog/moog_model.cpp:
4855         * plugins/stk/voices/moog/moog_model.h:
4856         * plugins/stk/voices/moog/moog_instrument.cpp:
4857         * plugins/stk/voices/metal/metal_model.cpp:
4858         * plugins/stk/voices/metal/metal_model.h:
4859         * plugins/stk/voices/metal/metal_instrument.cpp:
4860         * plugins/stk/voices/b3/b3_model.cpp:
4861         * plugins/stk/voices/b3/b3_model.h:
4862         * plugins/stk/voices/b3/b3_instrument.cpp:
4863         * plugins/stk/voices/blow_hole/blow_hole_model.h:
4864         * plugins/stk/voices/blow_hole/blow_hole_instrument.cpp:
4865         * plugins/stk/voices/blow_hole/blow_hole_model.cpp:
4866         * plugins/stk/voices/brass/brass_model.h:
4867         * plugins/stk/voices/brass/brass_instrument.cpp:
4868         * plugins/stk/voices/brass/brass_model.cpp:
4869         * plugins/stk/voices/fmvoices/fmvoices_model.h:
4870         * plugins/stk/voices/fmvoices/fmvoices_instrument.cpp:
4871         * plugins/stk/voices/fmvoices/fmvoices_model.cpp:
4872         * plugins/stk/voices/bandedwg/bandedwg_model.h:
4873         * plugins/stk/voices/bandedwg/bandedwg_instrument.cpp:
4874         * plugins/stk/voices/bandedwg/bandedwg_model.cpp:
4875         * plugins/stk/voices/blow_bottle/blow_bottle_model.h:
4876         * plugins/stk/voices/blow_bottle/blow_bottle_instrument.cpp:
4877         * plugins/stk/voices/blow_bottle/blow_bottle_model.cpp:
4878         made STK-voices-plugins compile after they've not been maintained for
4879         a while
4881         * include/pixmap_button.h:
4882         * src/gui/widgets/pixmap_button.cpp:
4883         removed removed obsolete ctrlClick() signal
4885         * include/track_container.h:
4886         * src/core/track_container.cpp:
4887         removed obsolete setMutedOfAllTracks() method
4889         * src/core/song.cpp:
4890         - lock mixer while loading project - fixes crashes when loading projects
4891           with FX-mixer settings
4892         - update BB-track-container after creating a new project - fixes
4893           non-existing TCOs (i.e. patterns) in BB-Editor in new projects
4895         * include/config_mgr.h:
4896         added missing include
4898         * src/tracks/bb_track.cpp:
4899         unregister BB-track-view from BB-editor at destruction - fixes crash
4900         when removing BB-tracks
4902         * src/core/bb_track_container.cpp:
4903         cleanups and more optimized loops
4905         * include/track.h:
4906         * src/core/track.cpp:
4907         - fixed issue when moving BB-tracks up/down where actual BB-TCOs were
4908           not moved (closes #1994468)
4909         - in trackContentObjectView and trackView, handle deletion of models
4910           more gracefully
4912 2008-06-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4914         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
4915         don't apply window-function to data as this seems to make things only
4916         even worse
4918         * plugins/spectrum_analyzer/log_x_axis.png:
4919         * plugins/spectrum_analyzer/log_y_axis.png:
4920         * plugins/spectrum_analyzer/background.png:
4921         * plugins/spectrum_analyzer/spectrum_background.png:
4922         * plugins/spectrum_analyzer/spectrum_background_plain.png:
4923         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
4924         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
4925         * plugins/spectrum_analyzer/spectrumanalyzer_controls.cpp:
4926         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.h:
4927         labeled axes and correct logarithmic view
4929         * plugins/spectrum_analyzer/background.png:
4930         * plugins/spectrum_analyzer/spectrum_background.png:
4931         * plugins/spectrum_analyzer/spectrum_background_plain.png:
4932         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
4933         * plugins/spectrum_analyzer/spectrum_analyzer.h:
4934         improved appearence of Spectrum Analzyer
4936         * configure.in:
4937         * plugins/Makefile.am:
4938         * plugins/spectrum_analyzer/Makefile.am:
4939         * plugins/spectrum_analyzer/logo.png:
4940         * plugins/spectrum_analyzer/spectrum_analyzer.h:
4941         * plugins/spectrum_analyzer/spectrum_analyzer.cpp:
4942         * plugins/spectrum_analyzer/spectrumanalyzer_controls.h:
4943         * plugins/spectrum_analyzer/spectrumanalyzer_controls.cpp:
4944         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.h:
4945         * plugins/spectrum_analyzer/spectrumanalyzer_control_dialog.cpp:
4946         added initial version of spectrum analyzer - very basic at the moment!
4948         * plugins/bass_booster/bass_booster.cpp:
4949         * plugins/bass_booster/bass_booster.h:
4950         * plugins/bass_booster/bassbooster_controls.h:
4951         * plugins/ladspa_effect/ladspa_controls.h:
4952         * plugins/peak_controller_effect/peak_controller_effect_controls.h:
4953         * plugins/stereo_enhancer/stereoenhancer_controls.h:
4954         * plugins/stereo_matrix/stereomatrix_controls.h:
4955         * plugins/vst_effect/vst_effect_controls.h:
4956         * include/dummy_effect.h:
4957         * include/effect_controls.h:
4958         changed return-type of effectControls::getControlCount()
4960 2008-06-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4962         * include/project_renderer.h:
4963         * src/gui/dialogs/export_project.ui:
4964         * src/gui/export_project_dialog.cpp:
4965         * src/core/audio/audio_file_ogg.cpp:
4966         * src/core/main.cpp:
4967         * src/core/project_renderer.cpp:
4968         improved support for different file-formats when exporting and fixed
4969         bug which made LMMS crash when exporting to OGG-file
4971 2008-06-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
4973         * src/core/song.cpp:
4974         fixed loading files in no-GUI mode
4976         * include/mixer.h:
4977         * src/core/audio/audio_device.cpp:
4978         * src/core/mixer.cpp:
4979         * src/core/project_renderer.cpp:
4980         don't use fifoWriter when rendering as we do not have realtime issues
4981         here - fixes lockups on various systems when exporting project
4983         * plugins/sf2_player/sf2_player.cpp:
4984         enabled LCD-Spinboxes for easily switching banks/patches - I know that
4985         this way you can select banks/patches that do not exist but opening
4986         patch-dialog each time is much more inconvenient - maybe we can
4987         subclass lcdSpinBox one day so that it automatically "skips" wholes
4988         when scrolling
4990         * include/instrument_track.h:
4991         * src/tracks/instrument_track.cpp:
4992         removed obsolete instrumentTrackView::updateName() and made
4993         track-button update on name-changes
4995 2008-06-10      Paul Giblock <drfaygo/at/gmail/dot/com>
4997         * plugins/sf2_player/artwork.png:
4998         * plugins/sf2_player/chorus_off.png:
4999         * plugins/sf2_player/chorus_on.png:
5000         * plugins/sf2_player/fileselect_off.png:
5001         * plugins/sf2_player/fileselect_on.png:
5002         * plugins/sf2_player/patches_on.png:
5003         * plugins/sf2_player/patches_off.png:
5004         * plugins/sf2_player/reverb_off.png:
5005         * plugins/sf2_player/reverb_on.png:
5006         * plugins/sf2_player/sf2_player.cpp:
5007         * plugins/sf2_player/sf2_player.h:
5008         * data/themes/default/style.css:
5009         * data/themes/default/lcd_21pink.png:
5010         integrate new sf2 artwork, for the most part at least
5012 2008-06-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5014         * src/gui/main_window.cpp:
5015         also show *.xiz files in preset-browser
5017         * src/gui/file_browser.cpp:
5018         classify .xml-files always as presets and do not examine them more
5019         detailed - also improves LMMS-startup-times
5021         * Makefile.am:
5022         added a few files to LMMS-headers
5024 2008-06-08      Paul Giblock <drfaygo/at/gmail/dot/com>
5026         * src/gui/widgets/graph.h:
5027         * src/gui/widgets/graph.cpp:
5028         - Fix graph widget "scrolling"
5029         - Add styles so it can be drawn un-interpolated
5031         * include/mv_base.h:
5032         * src/core/mv_base.cpp:
5033         Add recursive fullDisplayName function
5035         * include/combobox_model.h:
5036         * src/gui/widgets/automatable_button.cpp:
5037         * src/gui/widgets/combobox.cpp:
5038         * src/gui/widgets/tempo_sync_knob.cpp:
5039         * src/gui/widgets/effect_view.cpp:
5040         * src/gui/lfo_controller_dialog.cpp:
5041         * src/core/midi/midi_port.cpp:
5042         * src/core/fx_mixer.cpp:
5043         * src/core/lfo_controller.cpp:
5044         * src/core/effect.cpp:
5045         extend more models and views for displayName
5047         * include/instrument.h:
5048         * src/gui/widgets/instrument_sound_shaping_view.cpp:
5049         * src/gui/widgets/envelope_and_lfo_view.cpp:
5050         * src/gui/widgets/instrument_function_views.cpp:
5051         * src/gui/widgets/instrument_midi_io_view.cpp:
5052         * src/core/envelope_and_lfo_parameters.cpp:
5053         * src/core/instrument_sound_shaping.cpp:
5054         * src/core/instrument_functions.cpp:
5055         * src/core/instrument.cpp:
5056         extend instrument stuff for displayName
5058         * include/controller_connection_dialog.h:
5059         * src/gui/controller_connection_dialog.cpp:
5060         improve interface slightly
5062         * plugins/bit_invader/bit_invader.cpp:
5063         change graph style mode when toggling interpolation
5065         * plugins/peak_controller_effect:
5066         * plugins/peak_controller_effect/peak_controller_effect_control_dialog.cpp:
5067         * plugins/peak_controller_effect/peak_controller_effect.cpp:
5068         * plugins/peak_controller_effect/logo.png:
5069         * plugins/peak_controller_effect/peak_controller_effect_controls.cpp:
5070         * plugins/peak_controller_effect/peak_controller_effect_control_dialog.h:
5071         * plugins/peak_controller_effect/peak_controller_effect.h:
5072         * plugins/peak_controller_effect/peak_controller_effect_controls.h:
5073         * plugins/peak_controller_effect/Makefile.am:
5074         * plugins/Makefile.am:
5075         * include/peak_controller.h:
5076         * include/controller.h:
5077         * include/automatable_model.h:
5078         * src/gui/peak_controller_dialog.cpp:
5079         * src/core/peak_controller.cpp:
5080         * src/core/controller.cpp:
5081         * configure.in:
5082         * Makefile.am:
5083         - Very first implementation of peak-controller
5084         - Create one by adding it in the effect-chain, then connecting a widget to
5085         the controller
5086         - There is no sample-exactness, smoothing, or anything like that yet
5088 2008-06-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5090         * plugins/ladspa_effect/tap/tap_deesser.c:
5091         * plugins/ladspa_effect/tap/tap_sigmoid.c:
5092         * plugins/ladspa_effect/tap/tap_doubler.c:
5093         * plugins/ladspa_effect/tap/ladspa-local.h:
5094         * plugins/ladspa_effect/tap/tap_eqbw.c:
5095         * plugins/ladspa_effect/tap/tap_pinknoise.c:
5096         * plugins/ladspa_effect/tap/tap_chorusflanger.c:
5097         * plugins/ladspa_effect/tap/tap_eq.c:
5098         * plugins/ladspa_effect/tap/tap_limiter.c:
5099         * plugins/ladspa_effect/tap/ladspa.h:
5100         * plugins/ladspa_effect/tap/tap_vibrato.c:
5101         * plugins/ladspa_effect/tap/tap_autopan.c:
5102         * plugins/ladspa_effect/tap/tap_pitch.c:
5103         * plugins/ladspa_effect/tap/tap_dynamics_st.c:
5104         * plugins/ladspa_effect/tap/tap_echo.c:
5105         * plugins/ladspa_effect/tap/tap_tremolo.c:
5106         * plugins/ladspa_effect/tap/tap_tubewarmth.c:
5107         * plugins/ladspa_effect/tap/tap_dynamics_m.c:
5108         * plugins/ladspa_effect/tap/Makefile.am:
5109         * plugins/ladspa_effect/tap/tap_reflector.c:
5110         * plugins/ladspa_effect/tap/tap_reverb.c:
5111         * plugins/ladspa_effect/tap/tap_rotspeak.c:
5112         * plugins/ladspa_effect/caps/basics.h:
5113         * plugins/ladspa_effect/caps/Makefile.am:
5114         * plugins/vst_base/lvsl_client.cpp:
5115         * plugins/vst_base/lvsl_server.cpp:
5116         * plugins/vst_base/communication.h:
5117         * plugins/midi_import/midi_import.h:
5118         * include/effect.h:
5119         * include/midi_dummy.h:
5120         * include/endian_handling.h:
5121         * include/track.h:
5122         * include/note.h:
5123         * include/engine.h:
5124         * include/sweep_oscillator.h:
5125         * include/debug.h:
5126         * include/midi_alsa_raw.h:
5127         * include/config_mgr.h:
5128         * include/import_filter.h:
5129         * include/audio_file_wave.h:
5130         * include/mixer.h:
5131         * include/audio_file_ogg.h:
5132         * include/ladspa_manager.h:
5133         * include/ladspa_control.h:
5134         * include/sample_buffer.h:
5135         * include/fx_mixer.h:
5136         * include/nstate_button.h:
5137         * include/audio_pulseaudio.h:
5138         * include/clipboard.h:
5139         * include/audio_sdl.h:
5140         * include/micro_timer.h:
5141         * include/midi_event_processor.h:
5142         * include/audio_jack.h:
5143         * include/piano_roll.h:
5144         * include/volume.h:
5145         * include/oscillator.h:
5146         * include/export.h:
5147         * include/midi_alsa_seq.h:
5148         * include/tool.h:
5149         * include/setup_dialog.h:
5150         * include/tab_bar.h:
5151         * include/audio_device.h:
5152         * include/audio_oss.h:
5153         * include/audio_alsa.h:
5154         * src/gui/piano_roll.cpp:
5155         * src/gui/main_window.cpp:
5156         * src/gui/song_editor.cpp:
5157         * src/gui/setup_dialog.cpp:
5158         * src/gui/about_dialog.cpp:
5159         * src/tracks/instrument_track.cpp:
5160         * src/core/plugin.cpp:
5161         * src/core/song.cpp:
5162         * src/core/config_mgr.cpp:
5163         * src/core/audio/audio_oss.cpp:
5164         * src/core/envelope_and_lfo_parameters.cpp:
5165         * src/core/main.cpp:
5166         * src/core/mmp.cpp:
5167         * src/core/ladspa_manager.cpp:
5168         * src/core/ladspa_control.cpp:
5169         * src/core/sample_buffer.cpp:
5170         * Makefile.am:
5171         use lmmsconfig.h rather than config.h and use prefixed macro-names
5173         * acinclude.m4:
5174         * configure.in:
5175         create include/lmmsconfig.h which contains prefixed config.h defines
5177 2008-06-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5179         * src/core/song.cpp:
5180         reset m_modified after loading a project, creating a new one or saving
5182         * src/core/song.cpp:
5183         in song::setModified() only call mainWindow::resetWindowTitle() when
5184         being called with GUI-thread affinity
5186         * include/automatable_model.h:
5187         * src/core/automatable_model.cpp:
5188         * src/core/automation_pattern.cpp:
5189         added fast and more leight-weight setAutomatedValue() which omits
5190         things like journalling - makes things faster and doesn't introduce
5191         threading-problems
5193         * src/core/mmp.cpp:
5194         handle renamed midi-node ("midi" -> "midiport")
5196         * src/tracks/instrument_track.cpp:
5197         fixed MIDI-IO when using raw MIDI client
5199         * plugins/midi_import/midi_import.cpp:
5200         * include/song.h:
5201         added support for importing time-signature settings
5203         * Makefile.am:
5204         * plugins/midi_import/midi_import.cpp:
5205         * plugins/vestige/vestige.cpp:
5206         * plugins/vst_base/lvsl_client.cpp:
5207         * plugins/vst_base/lvsl_server.cpp:
5208         * include/meter_model.h:
5209         * include/midi.h:
5210         * src/core/note_play_handle.cpp:
5211         * src/core/piano.cpp:
5212         * src/core/midi/midi_alsa_seq.cpp:
5213         * src/core/midi/midi_client.cpp:
5214         * src/core/midi/midi_controller.cpp:
5215         * src/core/midi/midi_port.cpp:
5216         * src/tracks/instrument_track.cpp:
5217         * src/gui/controller_connection_dialog.cpp:
5218         * src/gui/piano_roll.cpp:
5219         made MidiEventTypes-enum conform coding-style, i.e. MidiNoteOn instead
5220         of NOTE_ON etc.
5222         * include/controller_connection_dialog.h:
5223         * include/instrument_midi_io_view.h:
5224         * include/instrument_track.h:
5225         * include/midi_alsa_raw.h:
5226         * include/midi_alsa_seq.h:
5227         * include/midi_client.h:
5228         * include/midi_controller.h:
5229         * include/midi_io_model.h:
5230         * include/midi_oss.h:
5231         * include/midi_port.h:
5232         * include/midi_port_menu.h:
5233         * src/core/note_play_handle.cpp:
5234         * src/core/preset_preview_play_handle.cpp:
5235         * src/core/song.cpp:
5236         * src/core/midi/midi_client.cpp:
5237         * src/core/midi/midi_controller.cpp:
5238         * src/core/midi/midi_port.cpp:
5239         * src/core/midi/midi_io_model.cpp:
5240         * src/core/midi/midi_alsa_seq.cpp:
5241         * src/gui/piano_roll.cpp:
5242         * src/gui/controller_connection_dialog.cpp:
5243         * src/gui/widgets/instrument_midi_io_view.cpp:
5244         * src/tracks/instrument_track.cpp:
5245         * Makefile.am:
5246         rewrote management of MIDI-ports and MIDI-port subscriptions - now
5247         it's central and easy to use
5249 2008-06-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5251         * include/note.h:
5252         * include/serializing_object.h:
5253         * include/instrument_track.h:
5254         * include/sample_buffer.h:
5255         * include/journalling_object.h:
5256         * src/gui/automation_editor.cpp:
5257         * src/core/serializing_object.cpp:
5258         * src/core/journalling_object.cpp:
5259         * src/core/note.cpp:
5260         * Makefile.am:
5261         splitted basic functionality of journallingObject into
5262         serializingObject so that creating note objects, notePlayHandles etc.
5263         does not have all the journalling-overhead (assigning/freeing ID etc.)
5265 2008-06-06      Paul Giblock <drfaygo/at/gmail/dot/com>
5267         * include/knob.h:
5268         * include/automatable_slider.h:
5269         * include/controller_connection.h:
5270         * include/midi_controller.h:
5271         * include/automatable_model.h:
5272         * include/automatable_button.h:
5273         * include/tempo_sync_knob.h:
5274         * include/controller_connection_dialog.h:
5275         * include/pixmap_button.h:
5276         * include/automatable_model_view.h:
5277         * include/mv_base.h:
5278         * include/volume_knob.h:
5279         * src/gui/automatable_model_view.cpp:
5280         * src/gui/controller_connection_dialog.cpp:
5281         * src/gui/widgets/knob.cpp:
5282         * src/gui/widgets/automatable_slider.cpp:
5283         * src/gui/widgets/group_box.cpp:
5284         * src/gui/widgets/lcd_spinbox.cpp:
5285         * src/gui/widgets/tempo_sync_knob.cpp:
5286         * src/gui/widgets/automatable_button.cpp:
5287         * src/core/midi/midi_controller.cpp:
5288         * src/core/automatable_model.cpp:
5289         * src/core/controller_connection.cpp:
5290         - add support for sequenced midi in midi-controllers
5291         - add displayName field to model / autoModel for descriptive model trees
5292         - use displayName for midiController and contextMenus
5294         * src/core/ladspa_control.cpp:
5295         * plugins/lb302/lb302.cpp:
5296         * plugins/organic/organic.cpp:
5297         * plugins/organic/organic.h:
5298         * plugins/bass_booster/bassbooster_control_dialog.cpp:
5299         * plugins/bass_booster/bassbooster_controls.cpp:
5300         * plugins/stereo_matrix/stereomatrix_control_dialog.cpp:
5301         * plugins/stereo_matrix/stereomatrix_controls.cpp:
5302         * plugins/bit_invader/bit_invader.cpp:
5303         * plugins/vibed/nine_button_selector.cpp:
5304         * plugins/vibed/vibed.cpp:
5305         * plugins/audio_file_processor/audio_file_processor.cpp:
5306         * plugins/stereo_enhancer/stereoenhancer_control_dialog.cpp:
5307         * plugins/stereo_enhancer/stereoenhancer_controls.cpp:
5308         * plugins/sf2_player/sf2_player.cpp:
5309         * plugins/kicker/kicker.cpp:
5310         * plugins/stk/mallets/mallets.cpp:
5311         * plugins/triple_oscillator/triple_oscillator.h:
5312         * plugins/triple_oscillator/triple_oscillator.cpp:
5313         - Update plugins to use displayName for child widgets
5314         - Still need to do this to all of LMMS core
5316         * include/effect_lib.h:
5317         * src/core/lfo_controller.cpp:
5318         Fix compile time warnings
5320         * include/automatable_model.h:
5321         * include/instrument_track.h:
5322         * include/controller_connection_dialog.h:
5323         * src/gui/controller_connection_dialog.cpp:
5324         * src/tracks/instrument_track.cpp:
5325         Test to see if we can now generate reasonable midi-port names. We can,
5326         the feature is very beta right now (no screenupdating, loading, etc..)
5327         
5328 2008-06-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5330         * include/track.h:
5331         * include/track_container_view.h:
5332         * src/core/track.cpp:
5333         * src/gui/track_container_view.cpp:
5334         remove track from within slot in trackContainerView for not deleting
5335         object inside its own method - fixes Qt-warning and closes #1981812
5337         * src/tracks/instrument_track.cpp:
5338         when freeing instrument-window, also free view immediately - fixes
5339         crash when removing instrument-track while instrument-track window was
5340         open
5342         * include/automatable_model.h:
5343         * include/automation_editor.h:
5344         * src/gui/piano_roll.cpp:
5345         * src/gui/widgets/graph.cpp:
5346         * src/gui/widgets/knob.cpp:
5347         * src/gui/widgets/fader.cpp:
5348         * src/gui/automation_editor.cpp:
5349         fixed various GCC-warnings
5351 2008-06-05      Paul Giblock <drfaygo/at/gmail/dot/com>
5353         * include/automatable_model.h:
5354         * include/mv_base.h:
5355         * src/gui/automatable_model_view.cpp:
5356         * src/gui/widgets/knob.cpp:
5357         add setDisplayName to model, but doesn't work right for some reason
5359 2008-06-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5361         * include/note.h:
5362         * include/note_play_handle.h:
5363         removed obsolete FASTCALL-attributes
5365         * include/project_journal.h:
5366         * src/core/project_journal.cpp:
5367         * src/core/song.cpp:
5368         heavily optimized journal-cleanup - project unloading is now
5369         unbelievable fast!
5371 2008-06-05      Paul Giblock <drfaygo/at/gmail/dot/com>
5373         * data/themes/default/style.css:
5374         fix check-marks on menus.  They used to all appear checked no matter what
5376 2008-06-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5378         * include/track.h:
5379         * src/core/track.cpp:
5380         re-arranged mute- and solo-buttons
5382         * plugins/ladspa_effect/tap/tap_deesser.c:
5383         * plugins/ladspa_effect/tap/tap_reverb.h:
5384         * plugins/ladspa_effect/tap/tap_sigmoid.c:
5385         * plugins/ladspa_effect/tap/tap_doubler.c:
5386         * plugins/ladspa_effect/tap/tap_eqbw.c:
5387         * plugins/ladspa_effect/tap/tap_pinknoise.c:
5388         * plugins/ladspa_effect/tap/tap_reverb_presets.h:
5389         * plugins/ladspa_effect/tap/tap_chorusflanger.c:
5390         * plugins/ladspa_effect/tap/ladspa.h:
5391         * plugins/ladspa_effect/tap/tap_limiter.c:
5392         * plugins/ladspa_effect/tap/tap_utils.h:
5393         * plugins/ladspa_effect/tap/tap_eq.c:
5394         * plugins/ladspa_effect/tap/tap_vibrato.c:
5395         * plugins/ladspa_effect/tap/tap_autopan.c:
5396         * plugins/ladspa_effect/tap/tap_pitch.c:
5397         * plugins/ladspa_effect/tap/CREDITS:
5398         * plugins/ladspa_effect/tap/README:
5399         * plugins/ladspa_effect/tap/tap_dynamics_st.c:
5400         * plugins/ladspa_effect/tap/tap_echo.c:
5401         * plugins/ladspa_effect/tap/tap_tremolo.c:
5402         * plugins/ladspa_effect/tap/tap_dynamics_presets.h:
5403         * plugins/ladspa_effect/tap/tap_tubewarmth.c:
5404         * plugins/ladspa_effect/tap/COPYING:
5405         * plugins/ladspa_effect/tap/tap_dynamics_m.c:
5406         * plugins/ladspa_effect/tap/Makefile.am:
5407         * plugins/ladspa_effect/tap/tap_reflector.c:
5408         * plugins/ladspa_effect/tap/tap_reverb.c:
5409         * plugins/ladspa_effect/tap/tap_rotspeak.c:
5410         * plugins/ladspa_effect/Makefile.am:
5411         * configure.in:
5412         * Makefile.am:
5413         integrated TAP-plugins to be shipped with LMMS
5415 2008-06-04      Paul Giblock <drfaygo/at/gmail/dot/com>
5417         * src/gui/lmms_style.cpp:
5418         Shrink the titlebars
5420 2008-06-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5422         * plugins/vibed/nine_button_selector.cpp:
5423         * plugins/live_tool/live_tool.cpp:
5424         * include/note_play_handle.h:
5425         * include/track_container.h:
5426         * include/track.h:
5427         * src/tracks/bb_track.cpp:
5428         * src/tracks/instrument_track.cpp:
5429         * src/tracks/pattern.cpp:
5430         * src/core/sample_play_handle.cpp:
5431         * src/core/track.cpp:
5432         renamed muted() to isMuted() and other coding-style fixes
5434         * src/gui/widgets/automatable_slider.cpp:
5435         * src/gui/widgets/lcd_spinbox.cpp:
5436         * src/gui/widgets/automatable_button.cpp:
5437         use automatableModelView::addDefaultActions()
5439         * src/gui/widgets/tooltip.cpp:
5440         re-enabled tooltips
5442         * include/track.h:
5443         * include/track_container.h:
5444         * src/core/track.cpp:
5445         * data/themes/default/led_red.png:
5446         added fully-functional solo-button
5448         * include/automation_editor.h:
5449         * src/gui/automation_editor.cpp:
5450         fixed broken automation-drawing for floatModels
5452         * configure.in:
5453         * Makefile.am:
5454         support for building win32-version with OGG/vorbis-support
5456         * src/gui/main_window.cpp:
5457         added separator in edit-menu
5459         * src/core/config_mgr.cpp:
5460         fixed paths for win32-build
5462         * src/core/sample_buffer.cpp:
5463         fixed platform-dependent sampleBuffer::tryToMakeAbsolute(...)
5465         * lmms.rc.in:
5466         * Makefile.am:
5467         * data/lmms.ico:
5468         added icon and resource-file
5470         * Makefile.am:
5471         added win32-pkg target
5473 2008-06-02      Paul Giblock <drfaygo/at/gmail/dot/com>
5475         * plugins/sf2_player/sf2_player.cpp:
5476         * plugins/sf2_player/sf2_player.h:
5477         * src/gui/main_window.cpp:
5478         Support loading of sf2 files from the sidebar sample browser
5480         * include/knob.h:
5481         * include/automatable_model_view.h:
5482         * src/gui/automatable_model_view.cpp:
5483         * src/gui/widgets/knob.cpp:
5484         * Makefile.am:
5485         - move context menu stuff to automatableModelView
5486         - add automatableModelViewSlots for slots we may wish to call from AMV
5488         * include/midi_controller.h:
5489         code style
5491         * src/core/midi/midi_controller.cpp:
5492         name midiControllers after their channel/controller
5494         * src/gui/widgets/fader.cpp:
5495         Use default context menu
5497         * src/gui/controller_connection_dialog.cpp:
5498         don't choose the controller if the user didn't actually choose anything
5500 2008-06-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5502         * src/core/mixer.cpp:
5503         try all audio-drivers at startup even if dummy-driver is selected
5505         * configure.in:
5506         * Makefile.am:
5507         properly link against win32-libsndfile
5509         * plugins/patman/patman.cpp:
5510         * plugins/patman/Makefile.am:
5511         * plugins/ladspa_effect/ladspa_effect.cpp:
5512         * plugins/ladspa_effect/caps/Makefile.am:
5513         * plugins/ladspa_effect/Makefile.am:
5514         * plugins/organic/organic.cpp:
5515         * plugins/organic/Makefile.am:
5516         * plugins/lb302/lb302.cpp:
5517         * plugins/lb302/Makefile.am:
5518         * plugins/bass_booster/bass_booster.cpp:
5519         * plugins/bass_booster/Makefile.am:
5520         * plugins/stereo_matrix/stereo_matrix.cpp:
5521         * plugins/stereo_matrix/Makefile.am:
5522         * plugins/bit_invader/bit_invader.cpp:
5523         * plugins/bit_invader/Makefile.am:
5524         * plugins/vibed/Makefile.am:
5525         * plugins/vibed/vibed.cpp:
5526         * plugins/live_tool/Makefile.am:
5527         * plugins/live_tool/live_tool.cpp:
5528         * plugins/stereo_enhancer/stereo_enhancer.cpp:
5529         * plugins/stereo_enhancer/Makefile.am:
5530         * plugins/sf2_player/patches_dialog.cpp:
5531         * plugins/sf2_player/sf2_player.cpp:
5532         * plugins/sf2_player/Makefile.am:
5533         * plugins/sf2_player/patches_dialog.h:
5534         * plugins/ladspa_browser/ladspa_browser.cpp:
5535         * plugins/ladspa_browser/Makefile.am:
5536         * plugins/ladspa_browser/ladspa_browser.h:
5537         * plugins/kicker/Makefile.am:
5538         * plugins/kicker/kicker.cpp:
5539         * plugins/flp_import/Makefile.am:
5540         * plugins/flp_import/flp_import.cpp:
5541         * plugins/midi_import/Makefile.am:
5542         * plugins/midi_import/midi_import.cpp:
5543         build win32-DLLs properly
5545         * include/mmp.h:
5546         * include/effect.h:
5547         * include/lcd_spinbox.h:
5548         * include/engine.h:
5549         * include/embed.h:
5550         * include/bb_track_container.h:
5551         * include/config_mgr.h:
5552         * include/import_filter.h:
5553         * include/ladspa_manager.h:
5554         * include/ladspa_control.h:
5555         * include/automation_pattern.h:
5556         * include/graph.h:
5557         * include/effect_control_dialog.h:
5558         * include/pattern.h:
5559         * include/string_pair_drag.h:
5560         * include/caption_menu.h:
5561         * include/envelope_and_lfo_parameters.h:
5562         * include/bb_track.h:
5563         * include/project_notes.h:
5564         * include/export.h:
5565         * include/tooltip.h:
5566         * include/ladspa_control_view.h:
5567         * include/journalling_object.h:
5568         * include/tool.h:
5569         * include/tab_bar.h:
5570         * include/types.h:
5571         * include/mv_base.h:
5572         * include/track_container.h:
5573         * include/led_checkbox.h:
5574         * include/ladspa_2_lmms.h:
5575         * src/3rdparty/samplerate/samplerate.h:
5576         export more symbols in order to build all plugins
5578         * configure.in:
5579         added code for detecting fluidsynth-DLL
5581         * src/core/config_mgr.cpp:
5582         customized path to LADSPA-plugins under win32
5584         * src/core/midi/midi_alsa_seq.cpp:
5585         do not free port_info-structure before actually (un)subscribing -
5586         fixes non-working automatic port-subscription
5588         * src/core/ladspa_manager.cpp:
5589         win32-compat
5591         * src/core/instrument_midi_io.cpp:
5592         coding style
5594 2008-06-02      Paul Giblock <drfaygo/at/gmail/dot/com>
5596         * include/automatable_model.h:
5597         * include/controller_connection.h:
5598         * src/core/automatable_model.cpp:
5599         * src/core/controller_connection.cpp:
5600         Support for automatic deletion of controller if owned by connection
5602         * include/controller.h:
5603         * include/midi_controller.h:
5604         * include/controller_connection_dialog.h:
5605         * src/gui/widgets/knob.cpp:
5606         * src/gui/controller_connection_dialog.cpp:
5607         * src/core/midi/midi_controller.cpp:
5608         * src/core/controller.cpp:
5609         * Makefile.am:
5610         - Add midi-controller support
5611         - Allow editing of connection through context menu
5612         - Code clean-up
5614         * include/midi.h:
5615         add const for max controller ID and add bytes array to the midiEvent
5616         m_data union
5618         * src/core/midi/midi_client.cpp:
5619         Don't subtract octave from control change events
5621         * src/tracks/instrument_track.cpp:
5622         Ignore unhandled control change events
5624         * src/tracks/pattern.cpp:
5625         Minor pixel adjustment to TCO drawing
5627         * src/core/track.cpp:
5628         Correct misleading textFloat
5630         * src/core/song.cpp:
5631         Code style
5633 2008-06-01      Paul Giblock <drfaygo/at/gmail/dot/com>
5634         
5635         * src/tracks/pattern.cpp:
5636         Improve drawing of tact lines, so it is more obvious where a pattern
5637         ends
5639         * src/core/track.cpp:
5640         Display floating text underneith the current track so you can actually
5641         see what you are doing
5643         * src/core/config_mgr.cpp:
5644         Gracefully handle default lmmsrc.xml creation instead of aborting
5645         
5646 2008-06-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5648         * plugins/ladspa_effect/caps/basics.h:
5649         * plugins/ladspa_effect/caps/interface.cc:
5650         win32-build fixes
5652         * plugins/triple_oscillator/Makefile.am:
5653         * plugins/triple_oscillator/triple_oscillator.cpp:
5654         * plugins/audio_file_processor/audio_file_processor.cpp:
5655         * plugins/audio_file_processor/Makefile.am:
5656         made ready for building plugins as DLLs
5658         * plugins/kicker/kicker.h:
5659         include QtCore/QObject rather than QObject
5661         * include/mmp.h:
5662         * include/knob.h:
5663         * include/track.h:
5664         * include/engine.h:
5665         * include/note.h:
5666         * include/embed.h:
5667         * include/instrument_view.h:
5668         * include/config_mgr.h:
5669         * include/automatable_model.h:
5670         * include/mixer.h:
5671         * include/instrument_track.h:
5672         * include/instrument.h:
5673         * include/sample_buffer.h:
5674         * include/plugin.h:
5675         * include/note_play_handle.h:
5676         * include/song.h:
5677         * include/string_pair_drag.h:
5678         * include/oscillator.h:
5679         * include/automatable_button.h:
5680         * include/tooltip.h:
5681         * include/journalling_object.h:
5682         * include/pixmap_button.h:
5683         * include/automatable_model_view.h:
5684         * include/mv_base.h:
5685         * include/volume_knob.h:
5686         * include/plugin_view.h:
5687         export according classes for making them accessibly by plugins
5689         * src/core/main.cpp:
5690         dont set opacity for splashscreen
5692         * src/core/config_mgr.cpp:
5693         customized paths for win32 (plugins in same directory as executable)
5695         * src/core/song.cpp:
5696         initialize m_length member to 0
5698         * src/core/plugin.cpp:
5699         under win32 filter for DLL-files
5701         * include/types.h:
5702         added macros for export-declaration
5704         * src/gui/plugin_browser.cpp:
5705         * src/gui/effect_select_dialog.cpp:
5706         * src/gui/main_window.cpp:
5707         * src/core/track.cpp:
5708         minor coding style issues
5710         * build_mingw32:
5711         * acinclude.m4:
5712         * Makefile.am:
5713         better support for win32-builds
5715         * buildtools/bin2res.cpp:
5716         open files in binary mode - fixes win32-build
5718         * configure.in:
5719         * Makefile.am:
5720         * include/audio_pulseaudio.h:
5721         * src/core/audio/audio_pulseaudio.cpp:
5722         * src/core/mixer.cpp:
5723         * src/gui/setup_dialog.cpp:
5724         added PulseAudio-support
5726 2008-05-30      Paul Giblock <drfaygo/at/gmail/dot/com>
5728         * src/gui/piano_roll.cpp:
5729         - Improve selection of volume-bars on a chord.  Select closest note
5730         instead of whichever one was created first. 
5731         - Display volume-change handles on top of the bars instead of possibly
5732         underneith other bars when dealing with chords
5733         
5734         * AUTHORS:
5735         Add Juan (Fabi) to authors, organize names more alphabetically
5737 2008-05-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5739         * plugins/ladspa_effect/ladspa_effect.cpp:
5740         fixed wrong item in effect blacklist
5742         * include/mixer.h:
5743         * src/core/mixer.cpp:
5744         use less complex worker-thread-synchronization
5746 2008-05-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5748         * src/core/mixer.cpp:
5749         use QAtomicInt instead of volatile bool + queue-global mutex for
5750         worker-thread jobqueues
5752 2008-05-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5754         * plugins/organic/organic.cpp:
5755         * plugins/lb302/lb302.cpp:
5756         * plugins/bass_booster/bass_booster.cpp:
5757         * plugins/bass_booster/bassbooster_controls.cpp:
5758         * plugins/stereo_matrix/stereomatrix_controls.cpp:
5759         * plugins/vibed/nine_button_selector.h:
5760         * plugins/vibed/nine_button_selector.cpp:
5761         * plugins/vibed/vibed.cpp:
5762         * plugins/triple_oscillator/triple_oscillator.cpp:
5763         * plugins/audio_file_processor/audio_file_processor.cpp:
5764         * plugins/stereo_enhancer/stereoenhancer_controls.cpp:
5765         * plugins/sf2_player/sf2_player.cpp:
5766         * plugins/kicker/kicker.cpp:
5767         * plugins/midi_import/midi_import.cpp:
5768         * include/knob.h:
5769         * include/automatable_slider.h:
5770         * include/lcd_spinbox.h:
5771         * include/automatable_model.h:
5772         * include/combobox_model.h:
5773         * include/automation_pattern.h:
5774         * include/note_play_handle.h:
5775         * include/detuning_helper.h:
5776         * include/group_box.h:
5777         * include/automatable_button.h:
5778         * include/automatable_model_templates.h:
5779         * include/level_object.h:
5780         * include/automatable_model_view.h:
5781         * include/fader.h:
5782         * include/combobox.h:
5783         * src/gui/piano_roll.cpp:
5784         * src/gui/automatable_model_view.cpp:
5785         * src/gui/widgets/combobox.cpp:
5786         * src/gui/widgets/knob.cpp:
5787         * src/gui/widgets/envelope_and_lfo_view.cpp:
5788         * src/gui/widgets/automatable_slider.cpp:
5789         * src/gui/widgets/group_box.cpp:
5790         * src/gui/widgets/lcd_spinbox.cpp:
5791         * src/gui/widgets/volume_knob.cpp:
5792         * src/gui/widgets/fader.cpp:
5793         * src/gui/widgets/tempo_sync_knob.cpp:
5794         * src/gui/widgets/automatable_button.cpp:
5795         * src/gui/automation_editor.cpp:
5796         * src/tracks/instrument_track.cpp:
5797         * src/core/effect_chain.cpp:
5798         * src/core/note_play_handle.cpp:
5799         * src/core/song.cpp:
5800         * src/core/automatable_model.cpp:
5801         * src/core/audio/audio_alsa.cpp:
5802         * src/core/audio/audio_oss.cpp:
5803         * src/core/audio/audio_jack.cpp:
5804         * src/core/envelope_and_lfo_parameters.cpp:
5805         * src/core/combobox_model.cpp:
5806         * src/core/meter_model.cpp:
5807         * src/core/instrument_functions.cpp:
5808         * src/core/instrument_midi_io.cpp:
5809         * src/core/track.cpp:
5810         * src/core/ladspa_control.cpp:
5811         * src/core/note.cpp:
5812         * src/core/piano.cpp:
5813         * src/core/surround_area.cpp:
5814         * src/core/automation_pattern.cpp:
5815         * src/core/lfo_controller.cpp:
5816         * Makefile.am:
5817         reworked automatableModel (not template-based anymore), removed
5818         levelObject, splitted comboBox/comboBoxModel-source-files, began to
5819         unify context-menu-creation for controls
5821         diffstat:  63 files changed, 1145 insertions(+), 1170 deletions(-)
5823 2008-05-27      Paul Giblock <drfaygo/at/gmail/dot/com>
5825         * plugins/sf2_player/sf2_player.cpp:
5826         restore gain setting when loading a project and keep gain setting when
5827         changing sample rate
5829         * include/controller_view.h:
5830         * src/gui/widgets/controller_view.cpp:
5831         reverted toby's controllerView changes.
5833         * src/core/mmp.cpp:
5834         add compat-code for time-signature support
5836 2008-05-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5838         * include/controller_view.h:
5839         * src/gui/widgets/controller_view.cpp:
5840         made LMMS compile + cleanups
5842 2008-05-26      Paul Giblock <drfaygo/at/gmail/dot/com>
5844         * include/automatable_model.h:
5845         * include/automatable_model_templates.h:
5846         * include/controller.h:
5847         * include/controller_connection.h:
5848         * src/gui/widgets/knob.cpp:
5849         * src/core/song.cpp:
5850         * src/core/controller.cpp:
5851         * src/core/controller_connection.cpp:
5852         * Makefile.am:
5853         - add controller connection class for storing controller links.  Used to
5854         specify linkage for loading/saving as well as a model for all the options
5855         in the dialog (mapping function, smoothing, etc..)
5856         - add dummyController for unfinalized or missing controllers.  Faster than
5857         adding a branch to value() or currentValue()
5858         - save controller links to project
5859         - incomplete, experimental!
5861         * include/controller_view.h:
5862         * src/gui/lfo_controller_dialog.cpp:
5863         * src/gui/widgets/controller_rack_view.cpp:
5864         * data/themes/default/controller_bg.png:
5865         Show name in controller view and make it renamable
5867         * data/themes/default/style.css:
5868         A hint of blue in menu highlight
5870         * src/core/song.cpp:
5871         Add data-changed event so lfo-rack can update
5873 2008-05-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
5875         * plugins/singerbot/singerbot.cpp:
5876         * include/meter_model.h:
5877         * include/song.h:
5878         * include/pattern.h:
5879         * include/piano_roll.h:
5880         * include/song_editor.h:
5881         * include/midi_time.h:
5882         * include/types.h:
5883         * include/timeline.h:
5884         * src/core/bb_track_container.cpp:
5885         * src/core/meter_model.cpp:
5886         * src/core/song.cpp:
5887         * src/core/timeline.cpp:
5888         * src/core/track.cpp:
5889         * src/gui/automation_editor.cpp:
5890         * src/gui/piano_roll.cpp:
5891         * src/gui/song_editor.cpp:
5892         * src/gui/track_container_view.cpp:
5893         * src/gui/widgets/tempo_sync_knob.cpp:
5894         * src/tracks/bb_track.cpp:
5895         * src/tracks/pattern.cpp:
5896         implemented support for time-signatures other than 4/4 - still
5897         incomplete and experimental!
5899         * include/controller_dialog.h:
5900         * src/core/lfo_controller.cpp:
5901         * src/gui/controller_dialog.cpp:
5902         * src/gui/widgets/controller_view.cpp:
5903         fixed order of member-initialization and miscellanous coding-style
5904         corrections
5906         * plugins/patman/select_file.png:
5907         * plugins/patman/logo.png:
5908         * plugins/patman/artwork.png:
5909         * plugins/ladspa_effect/logo.png:
5910         * plugins/organic/logo.png:
5911         * plugins/organic/randomise.png:
5912         * plugins/organic/randomise_pressed.png:
5913         * plugins/organic/artwork.png:
5914         * plugins/lb302/artwork.png:
5915         * plugins/bass_booster/logo.png:
5916         * plugins/stereo_matrix/logo.png:
5917         * plugins/bit_invader/logo.png:
5918         * plugins/bit_invader/wavegraph.png:
5919         * plugins/bit_invader/wavegraph3.png:
5920         * plugins/bit_invader/artwork.png:
5921         * plugins/bit_invader/smooth.png:
5922         * plugins/vst_effect/logo.png:
5923         * plugins/vibed/button_7_on.png:
5924         * plugins/vibed/button_9_on.png:
5925         * plugins/vibed/logo.png:
5926         * plugins/vibed/button_-1_off.png:
5927         * plugins/vibed/button_-2_off.png:
5928         * plugins/vibed/button_-1_on.png:
5929         * plugins/vibed/smooth_active.png:
5930         * plugins/vibed/wavegraph4.png:
5931         * plugins/vibed/button_f_off.png:
5932         * plugins/vibed/button_f_on.png:
5933         * plugins/vibed/button_up.png:
5934         * plugins/vibed/normalize_inactive.png:
5935         * plugins/vibed/button_1_off.png:
5936         * plugins/vibed/button_2_off.png:
5937         * plugins/vibed/button_3_off.png:
5938         * plugins/vibed/button_2_on.png:
5939         * plugins/vibed/button_4_off.png:
5940         * plugins/vibed/artwork.png:
5941         * plugins/vibed/button_5_off.png:
5942         * plugins/vibed/button_6_off.png:
5943         * plugins/vibed/button_4_on.png:
5944         * plugins/vibed/normalize_active.png:
5945         * plugins/vibed/button_7_off.png:
5946         * plugins/vibed/button_8_off.png:
5947         * plugins/vibed/button_6_on.png:
5948         * plugins/vibed/button_9_off.png:
5949         * plugins/vibed/button_8_on.png:
5950         * plugins/vibed/button_down.png:
5951         * plugins/vibed/button_-2_on.png:
5952         * plugins/vibed/button_1_on.png:
5953         * plugins/vibed/button_3_on.png:
5954         * plugins/vibed/button_5_on.png:
5955         * plugins/vibed/smooth_inactive.png:
5956         * plugins/triple_oscillator/logo.png:
5957         * plugins/triple_oscillator/am_active.png:
5958         * plugins/triple_oscillator/artwork.png:
5959         * plugins/triple_oscillator/sync_inactive.png:
5960         * plugins/triple_oscillator/sync_active.png:
5961         * plugins/live_tool/logo.png:
5962         * plugins/live_tool/artwork.png:
5963         * plugins/singerbot/logo.png:
5964         * plugins/singerbot/artwork.png:
5965         * plugins/audio_file_processor/select_file.png:
5966         * plugins/audio_file_processor/logo.png:
5967         * plugins/audio_file_processor/artwork.png:
5968         * plugins/stk/mallets/logo.png:
5969         * plugins/stk/mallets/artwork.png:
5970         * plugins/stk/voices/flute/logo.png:
5971         * plugins/stk/voices/flute/artwork.png:
5972         * plugins/stk/voices/resonate/logo.png:
5973         * plugins/stk/voices/resonate/artwork.png:
5974         * plugins/stk/voices/wurley/logo.png:
5975         * plugins/stk/voices/wurley/artwork.png:
5976         * plugins/stk/voices/percflute/logo.png:
5977         * plugins/stk/voices/percflute/artwork.png:
5978         * plugins/stk/voices/rhodey/logo.png:
5979         * plugins/stk/voices/rhodey/artwork.png:
5980         * plugins/stk/voices/tubebell/logo.png:
5981         * plugins/stk/voices/tubebell/artwork.png:
5982         * plugins/stk/voices/bowed/logo.png:
5983         * plugins/stk/voices/bowed/artwork.png:
5984         * plugins/stk/voices/clarinet/logo.png:
5985         * plugins/stk/voices/clarinet/artwork.png:
5986         * plugins/stk/voices/moog/logo.png:
5987         * plugins/stk/voices/moog/artwork.png:
5988         * plugins/stk/voices/metal/logo.png:
5989         * plugins/stk/voices/metal/artwork.png:
5990         * plugins/stk/voices/b3/logo.png:
5991         * plugins/stk/voices/b3/artwork.png:
5992         * plugins/stk/voices/blow_hole/logo.png:
5993         * plugins/stk/voices/blow_hole/artwork.png:
5994         * plugins/stk/voices/brass/logo.png:
5995         * plugins/stk/voices/brass/artwork.png:
5996         * plugins/stk/voices/fmvoices/logo.png:
5997         * plugins/stk/voices/fmvoices/artwork.png:
5998         * plugins/stk/voices/bandedwg/logo.png:
5999         * plugins/stk/voices/bandedwg/artwork.png:
6000         * plugins/stk/voices/blow_bottle/logo.png:
6001         * plugins/stk/voices/blow_bottle/artwork.png:
6002         * plugins/plucked_string_synth/logo.png:
6003         * plugins/plucked_string_synth/artwork.png:
6004         * plugins/stereo_enhancer/logo.png:
6005         * plugins/sf2_player/logo.png:
6006         * plugins/sf2_player/artwork.png:
6007         * plugins/vestige/select_file.png:
6008         * plugins/vestige/logo.png:
6009         * plugins/vestige/artwork.png:
6010         * plugins/ladspa_browser/logo.png:
6011         * plugins/kicker/logo.png:
6012         * plugins/kicker/artwork.png:
6013         * plugins/polyb302/artwork.png:
6014         * data/themes/blue_scene/led_off.png:
6015         * data/themes/blue_scene/back_to_zero.png:
6016         * data/themes/blue_scene/project_export.png:
6017         * data/themes/blue_scene/hourglass.png:
6018         * data/themes/blue_scene/triangle_wave_inactive.png:
6019         * data/themes/blue_scene/hq_mode.png:
6020         * data/themes/blue_scene/usr_wave_inactive.png:
6021         * data/themes/blue_scene/main_toolbar_bg.png:
6022         * data/themes/blue_scene/add_bb_track.png:
6023         * data/themes/blue_scene/tempo_sync.png:
6024         * data/themes/blue_scene/edit_paste.png:
6025         * data/themes/blue_scene/midi_file.png:
6026         * data/themes/blue_scene/analysis.png:
6027         * data/themes/blue_scene/zoom.png:
6028         * data/themes/blue_scene/playpos_marker.png:
6029         * data/themes/blue_scene/wizard_workingdir.png:
6030         * data/themes/blue_scene/step_btn_off_light.png:
6031         * data/themes/blue_scene/square_wave_inactive.png:
6032         * data/themes/blue_scene/auto_limit.png:
6033         * data/themes/blue_scene/exp_wave_active.png:
6034         * data/themes/blue_scene/exit.png:
6035         * data/themes/blue_scene/step_btn_on.png:
6036         * data/themes/blue_scene/toolbar_bg.png:
6037         * data/themes/blue_scene/keep_stop_position.png:
6038         * data/themes/blue_scene/whatsthis.png:
6039         * data/themes/blue_scene/output_graph.png:
6040         * data/themes/blue_scene/wizard_files.png:
6041         * data/themes/blue_scene/note_none.png:
6042         * data/themes/blue_scene/black_key.png:
6043         * data/themes/blue_scene/text_center.png:
6044         * data/themes/blue_scene/stop.png:
6045         * data/themes/blue_scene/error.png:
6046         * data/themes/blue_scene/sin_wave_inactive.png:
6047         * data/themes/blue_scene/loop_points_on.png:
6048         * data/themes/blue_scene/play.png:
6049         * data/themes/blue_scene/folder_opened.png:
6050         * data/themes/blue_scene/mute_on.png:
6051         * data/themes/blue_scene/ports.png:
6052         * data/themes/blue_scene/project_saveas.png:
6053         * data/themes/blue_scene/loop_point_disabled.png:
6054         * data/themes/blue_scene/folder.png:
6055         * data/themes/blue_scene/arp_random_on.png:
6056         * data/themes/blue_scene/arp_sync.png:
6057         * data/themes/blue_scene/edit_copy.png:
6058         * data/themes/blue_scene/white_noise_wave_inactive.png:
6059         * data/themes/blue_scene/track_op_grip.png:
6060         * data/themes/blue_scene/background_artwork.png:
6061         * data/themes/blue_scene/help.png:
6062         * data/themes/blue_scene/unknown_file.png:
6063         * data/themes/blue_scene/edit_redo.png:
6064         * data/themes/blue_scene/exp_wave_inactive.png:
6065         * data/themes/blue_scene/arp_down_on.png:
6066         * data/themes/blue_scene/project_file.png:
6067         * data/themes/blue_scene/sample_track.png:
6068         * data/themes/blue_scene/note_quarter.png:
6069         * data/themes/blue_scene/surround_area.png:
6070         * data/themes/blue_scene/black_key_pressed.png:
6071         * data/themes/blue_scene/project_notes.png:
6072         * data/themes/blue_scene/project_new.png:
6073         * data/themes/blue_scene/master_pitch.png:
6074         * data/themes/blue_scene/edit_select.png:
6075         * data/themes/blue_scene/track_op_menu.png:
6076         * data/themes/blue_scene/colorize.png:
6077         * data/themes/blue_scene/white_key.png:
6078         * data/themes/blue_scene/splash.png:
6079         * data/themes/blue_scene/note_double_whole.png:
6080         * data/themes/blue_scene/envelope_graph.png:
6081         * data/themes/blue_scene/saw_wave_inactive.png:
6082         * data/themes/blue_scene/note_sixteenth.png:
6083         * data/themes/blue_scene/lfo_graph.png:
6084         * data/themes/blue_scene/frozen.png:
6085         * data/themes/blue_scene/effect_board.png:
6086         * data/themes/blue_scene/arp_down_off.png:
6087         * data/themes/blue_scene/mute_off.png:
6088         * data/themes/blue_scene/reload.png:
6089         * data/themes/blue_scene/text_italic.png:
6090         * data/themes/blue_scene/arp_random_off.png:
6091         * data/themes/blue_scene/pause.png:
6092         * data/themes/blue_scene/freeze.png:
6093         * data/themes/blue_scene/triangle_wave_active.png:
6094         * data/themes/blue_scene/combobox_arrow.png:
6095         * data/themes/blue_scene/root.png:
6096         * data/themes/blue_scene/apply.png:
6097         * data/themes/blue_scene/usr_wave_active.png:
6098         * data/themes/blue_scene/icon.png:
6099         * data/themes/blue_scene/clock.png:
6100         * data/themes/blue_scene/setup_directories.png:
6101         * data/themes/blue_scene/text_left.png:
6102         * data/themes/blue_scene/text_block.png:
6103         * data/themes/blue_scene/plugins/tripleoscillator_fm_inactive.png:
6104         * data/themes/blue_scene/plugins/bitinvader_artwork.png:
6105         * data/themes/blue_scene/plugins/tripleoscillator_mix_active.png:
6106         * data/themes/blue_scene/plugins/tripleoscillator_am_active.png:
6107         * data/themes/blue_scene/plugins/tripleoscillator_artwork.png:
6108         * data/themes/blue_scene/plugins/bitinvader_logo.png:
6109         * data/themes/blue_scene/plugins/tripleoscillator_fm_active.png:
6110         * data/themes/blue_scene/plugins/tripleoscillator_sync_inactive.png:
6111         * data/themes/blue_scene/plugins/audiofileprocessor_artwork.png:
6112         * data/themes/blue_scene/plugins/bitinvader_wavegraph3.png:
6113         * data/themes/blue_scene/plugins/vestige_artwork.png:
6114         * data/themes/blue_scene/plugins/bitinvader_smooth.png:
6115         * data/themes/blue_scene/plugins/audiofileprocessor_logo.png:
6116         * data/themes/blue_scene/plugins/tripleoscillator_sync_active.png:
6117         * data/themes/blue_scene/plugins/pluckedstringsynth_logo.png:
6118         * data/themes/blue_scene/plugins/audiofileprocessor_loop_off.png:
6119         * data/themes/blue_scene/plugins/audiofileprocessor_reverse_off.png:
6120         * data/themes/blue_scene/plugins/audiofileprocessor_loop_on.png:
6121         * data/themes/blue_scene/plugins/vestige_logo.png:
6122         * data/themes/blue_scene/plugins/tripleoscillator_am_inactive.png:
6123         * data/themes/blue_scene/plugins/tripleoscillator_mix_inactive.png:
6124         * data/themes/blue_scene/plugins/bitinvader_wavegraph.png:
6125         * data/themes/blue_scene/cpuload_bg.png:
6126         * data/themes/blue_scene/note_half.png:
6127         * data/themes/blue_scene/wizard.png:
6128         * data/themes/blue_scene/preset_file.png:
6129         * data/themes/blue_scene/hint.png:
6130         * data/themes/blue_scene/note.png:
6131         * data/themes/blue_scene/timeline.png:
6132         * data/themes/blue_scene/bb_track.png:
6133         * data/themes/blue_scene/white_key_pressed.png:
6134         * data/themes/blue_scene/arp_up_off.png:
6135         * data/themes/blue_scene/autoscroll_off.png:
6136         * data/themes/blue_scene/setup_audio.png:
6137         * data/themes/blue_scene/text_right.png:
6138         * data/themes/blue_scene/project_open.png:
6139         * data/themes/blue_scene/arp_up_and_down_off.png:
6140         * data/themes/blue_scene/note_eighth.png:
6141         * data/themes/blue_scene/note_whole.png:
6142         * data/themes/blue_scene/note_thirtysecond.png:
6143         * data/themes/blue_scene/edit_erase.png:
6144         * data/themes/blue_scene/sin_wave_active.png:
6145         * data/themes/blue_scene/saw_wave_active.png:
6146         * data/themes/blue_scene/rename.png:
6147         * data/themes/blue_scene/drum.png:
6148         * data/themes/blue_scene/edit_undo.png:
6149         * data/themes/blue_scene/edit_move.png:
6150         * data/themes/blue_scene/wizard_intro.png:
6151         * data/themes/blue_scene/add_sample_track.png:
6152         * data/themes/blue_scene/combobox_bg.png:
6153         * data/themes/blue_scene/setup_performance.png:
6154         * data/themes/blue_scene/loop_point.png:
6155         * data/themes/blue_scene/autoscroll_on.png:
6156         * data/themes/blue_scene/unfreeze.png:
6157         * data/themes/blue_scene/cancel.png:
6158         * data/themes/blue_scene/sound_file.png:
6159         * data/themes/blue_scene/arp_sort.png:
6160         * data/themes/blue_scene/white_noise_wave_active.png:
6161         * data/themes/blue_scene/arp_up_and_down_on.png:
6162         * data/themes/blue_scene/folder_locked.png:
6163         * data/themes/blue_scene/setup_general.png:
6164         * data/themes/blue_scene/loop_points_off.png:
6165         * data/themes/blue_scene/setup_midi.png:
6166         * data/themes/blue_scene/uhoh.png:
6167         * data/themes/blue_scene/step_btn_off.png:
6168         * data/themes/blue_scene/songeditor.png:
6169         * data/themes/blue_scene/square_wave_active.png:
6170         * data/themes/blue_scene/project_open_down.png:
6171         * data/themes/blue_scene/moog_saw_wave_inactive.png:
6172         * data/themes/blue_scene/back_to_start.png:
6173         * data/themes/blue_scene/text_under.png:
6174         * data/themes/blue_scene/arp_up_on.png:
6175         * data/themes/blue_scene/arp_free.png:
6176         * data/themes/blue_scene/moog_saw_wave_active.png:
6177         * data/themes/blue_scene/home.png:
6178         * data/themes/blue_scene/knob01.png:
6179         * data/themes/default/lcd_19green.png:
6180         * data/themes/default/knob03.png:
6181         * data/themes/default/back_to_zero.png:
6182         * data/themes/default/edit_draw.png:
6183         * data/themes/default/triangle_wave_inactive.png:
6184         * data/themes/default/filter_hp.png:
6185         * data/themes/default/zoom_y.png:
6186         * data/themes/default/usr_wave_inactive.png:
6187         * data/themes/default/muted.png:
6188         * data/themes/default/add_bb_track.png:
6189         * data/themes/default/fader_background.png:
6190         * data/themes/default/tempo_sync.png:
6191         * data/themes/default/plugins.png:
6192         * data/themes/default/midi_file.png:
6193         * data/themes/default/analysis.png:
6194         * data/themes/default/zoom.png:
6195         * data/themes/default/edit_arrow.png:
6196         * data/themes/default/wizard_workingdir.png:
6197         * data/themes/default/lcd_19red.png:
6198         * data/themes/default/toolbar_bg.png:
6199         * data/themes/default/whatsthis.png:
6200         * data/themes/default/filter_notch.png:
6201         * data/themes/default/output_graph.png:
6202         * data/themes/default/wizard_files.png:
6203         * data/themes/default/controller.png:
6204         * data/themes/default/note_none.png:
6205         * data/themes/default/black_key.png:
6206         * data/themes/default/stop.png:
6207         * data/themes/default/fader_knob.png:
6208         * data/themes/default/mute_off_disabled.png:
6209         * data/themes/default/mute_on_disabled.png:
6210         * data/themes/default/sin_wave_inactive.png:
6211         * data/themes/default/play.png:
6212         * data/themes/default/folder_opened.png:
6213         * data/themes/default/filter_bp.png:
6214         * data/themes/default/ports.png:
6215         * data/themes/default/loop_point_disabled.png:
6216         * data/themes/default/folder.png:
6217         * data/themes/default/arp_random_on.png:
6218         * data/themes/default/arp_sync.png:
6219         * data/themes/default/automation.png:
6220         * data/themes/default/white_noise_wave_inactive.png:
6221         * data/themes/default/track_op_grip.png:
6222         * data/themes/default/pr_black_key.png:
6223         * data/themes/default/help.png:
6224         * data/themes/default/background_artwork.png:
6225         * data/themes/default/factory_files.png:
6226         * data/themes/default/unknown_file.png:
6227         * data/themes/default/exp_wave_inactive.png:
6228         * data/themes/default/project_file.png:
6229         * data/themes/default/arp_down_on.png:
6230         * data/themes/default/piano.png:
6231         * data/themes/default/midi_in.png:
6232         * data/themes/default/black_key_pressed.png:
6233         * data/themes/default/surround_area.png:
6234         * data/themes/default/track_op_menu_disabled.png:
6235         * data/themes/default/project_new.png:
6236         * data/themes/default/master_pitch.png:
6237         * data/themes/default/led_green.png:
6238         * data/themes/default/edit_select.png:
6239         * data/themes/default/colorize.png:
6240         * data/themes/default/white_key.png:
6241         * data/themes/default/knob02.png:
6242         * data/themes/default/note_double_whole.png:
6243         * data/themes/default/envelope_graph.png:
6244         * data/themes/default/saw_wave_inactive.png:
6245         * data/themes/default/lfo_graph.png:
6246         * data/themes/default/groupbox_led_bg.png:
6247         * data/themes/default/frozen.png:
6248         * data/themes/default/arp_down_off.png:
6249         * data/themes/default/effect_board.png:
6250         * data/themes/default/reload.png:
6251         * data/themes/default/zoom_x.png:
6252         * data/themes/default/pause.png:
6253         * data/themes/default/freeze.png:
6254         * data/themes/default/filter_lp.png:
6255         * data/themes/default/combobox_arrow.png:
6256         * data/themes/default/triangle_wave_active.png:
6257         * data/themes/default/root.png:
6258         * data/themes/default/apply.png:
6259         * data/themes/default/usr_wave_active.png:
6260         * data/themes/default/icon.png:
6261         * data/themes/default/clock.png:
6262         * data/themes/default/add_controller.png:
6263         * data/themes/default/setup_directories.png:
6264         * data/themes/default/cpuload_bg.png:
6265         * data/themes/default/quantize.png:
6266         * data/themes/default/wizard.png:
6267         * data/themes/default/preset_file.png:
6268         * data/themes/default/hint.png:
6269         * data/themes/default/filter_ap.png:
6270         * data/themes/default/timeline.png:
6271         * data/themes/default/bb_track.png:
6272         * data/themes/default/effect_plugin.png:
6273         * data/themes/default/white_key_pressed.png:
6274         * data/themes/default/arp_up_off.png:
6275         * data/themes/default/autoscroll_off.png:
6276         * data/themes/default/setup_audio.png:
6277         * data/themes/default/arp_up_and_down_off.png:
6278         * data/themes/default/combobox_arrow_selected.png:
6279         * data/themes/default/cpuload_leds.png:
6280         * data/themes/default/note_whole.png:
6281         * data/themes/default/edit_erase.png:
6282         * data/themes/default/wizard_intro.png:
6283         * data/themes/default/add_sample_track.png:
6284         * data/themes/default/combobox_bg.png:
6285         * data/themes/default/setup_performance.png:
6286         * data/themes/default/sound_file.png:
6287         * data/themes/default/arp_sort.png:
6288         * data/themes/default/white_noise_wave_active.png:
6289         * data/themes/default/arp_up_and_down_on.png:
6290         * data/themes/default/controller_bg.png:
6291         * data/themes/default/folder_locked.png:
6292         * data/themes/default/setup_general.png:
6293         * data/themes/default/loop_points_off.png:
6294         * data/themes/default/filter_2lp.png:
6295         * data/themes/default/setup_midi.png:
6296         * data/themes/default/uhoh.png:
6297         * data/themes/default/midi_out.png:
6298         * data/themes/default/songeditor.png:
6299         * data/themes/default/moog_saw_wave_inactive.png:
6300         * data/themes/default/arp_free.png:
6301         * data/themes/default/home.png:
6302         * data/themes/default/fader_leds.png:
6303         * data/themes/default/knob01.png:
6304         * data/themes/llama/background_artwork.png:
6305         shrinked file-sizes via optipng
6307         * include/main_window.h:
6308         * src/gui/main_window.cpp:
6309         * src/core/main.cpp:
6310         * data/themes/default/splash.png:
6311         new transparent splash-screen without obsolete text-messages
6313 2008-05-25      Paul Giblock <drfaygo/at/gmail/dot/com>
6315         * include/embed.h:
6316         Fix missing distructor warning
6318         * include/controller.h:
6319         * include/song.h:
6320         * include/lfo_controller.h:
6321         * src/core/controller.cpp:
6322         * src/core/lfo_controller.cpp:
6323         Save and load controllers to project files.
6325         * src/core/song.cpp:
6326         - Save and load controllers to project files.
6327         - emit dataChanged() on clearProject() do we need this anywhere else?
6329 2008-05-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6331         * include/song.h:
6332         * include/song_editor.h:
6333         * src/core/song.cpp:
6334         * src/gui/song_editor.cpp:
6335         added meterModel and meterDialog (which actually is just a widget) as
6336         preparation for time-signature-support - it doesn't actually work yet!
6338         * data/themes/default/style.css:
6339         improved appearence of menu in general
6341         * Makefile.am:
6342         * include/tempo_sync_knob.h:
6343         * include/meter_model.h:
6344         * include/meter_dialog.h:
6345         * src/core/meter_model.cpp:
6346         * src/gui/widgets/meter_dialog.cpp:
6347         splitted source-files for meterModel and meterDialog and added
6348         "simple"-mode for meterDialog
6350 2008-05-22      Paul Giblock <drfaygo/at/gmail/dot/com>
6352         * include/lfo_controller.h:
6353         * src/gui/lfo_controller_dialog.cpp:
6354         * src/core/lfo_controller.cpp:
6355         Add more wave shapes to LFO controller
6357         * src/gui/widgets/controller_view.cpp:
6358         Set sub-window's icon to the icon of the controllerDialog
6360         * src/gui/widgets/controller_rack_view.cpp:
6361         Add icon to window
6363 2008-05-21      Paul Giblock <drfaygo/at/gmail/dot/com>
6365         * plugins/sf2_player/Makefile.am:
6366         * plugins/Makefile.am:
6367         * configure.in:
6368         Add fluidsynth detection to configure
6370 2008-05-21      Paul Giblock <drfaygo/at/gmail/dot/com>
6372         * plugins/vestige/select_file.png:
6373         * plugins/vestige/logo.png:
6374         * plugins/vestige/vestige.cpp:
6375         * plugins/vestige/artwork.png:
6376         Integrate new vestige artwork
6378         * src/core/track.cpp:
6379         Improve background drawing/scaling
6381         * plugins/audio_file_processor/audio_file_processor.cpp:
6382         * plugins/audio_file_processor/select_file.png:
6383         * plugins/audio_file_processor/logo.png:
6384         * plugins/audio_file_processor/loop_off.png:
6385         * plugins/audio_file_processor/loop_on.png:
6386         * plugins/audio_file_processor/reverse_off.png:
6387         * plugins/audio_file_processor/reverse_on.png:
6388         * plugins/audio_file_processor/artwork.png:
6389         Integrate new audio file processor artwork
6391         * src/gui/widgets/volume_knob.cpp:
6392         Fix placement of tooltop in styled knobs
6394         * src/gui/widgets/knob.cpp:
6395         Minor graphical enhancement for styled knobs
6397         * src/gui/piano_roll.cpp:
6398         * include/piano_roll.h:
6399         * data/themes/default/record_accompany.png:
6400         - Fix annoying bug where changing patterns would scroll to bar 2 instead
6401         of bar 1
6402         - Add record-with-accompaniment feature because it was easier to just add
6403         a toolbutton then to strip out the code.  At least now there is some
6404         starting point for this feature should we ever decide to release it.
6406         * plugins/organic/organic.cpp:
6407         * plugins/organic/organic.h:
6408         Complete organic gui
6410         * data/themes/default/style.css:
6411         AFP and organic knob styles
6413         * plugins/sf2_player/artwork.png:
6414         New sf2-player artwork
6416 2008-05-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6418         * src/core/main.cpp:
6419         only create core-application for --help and -h
6421         * plugins/ladspa_effect/ladspa_effect.cpp:
6422         * plugins/patman/patman.cpp:
6423         * plugins/lb302/lb302.cpp:
6424         * plugins/organic/organic.cpp:
6425         * plugins/stereo_matrix/stereo_matrix.cpp:
6426         * plugins/bass_booster/bass_booster.cpp:
6427         * plugins/bit_invader/bit_invader.cpp:
6428         * plugins/vst_effect/vst_effect.cpp:
6429         * plugins/vibed/vibed.cpp:
6430         * plugins/triple_oscillator/triple_oscillator.cpp:
6431         * plugins/singerbot/singerbot.cpp:
6432         * plugins/live_tool/live_tool.cpp:
6433         * plugins/audio_file_processor/audio_file_processor.cpp:
6434         * plugins/stk/mallets/mallets.cpp:
6435         * plugins/stereo_enhancer/stereo_enhancer.cpp:
6436         * plugins/sf2_player/sf2_player.cpp:
6437         * plugins/vestige/vestige.cpp:
6438         * plugins/vst_base/vst_base.cpp:
6439         * plugins/ladspa_browser/ladspa_browser.cpp:
6440         * plugins/kicker/kicker.cpp:
6441         * plugins/Makefile.am:
6442         * plugins/flp_import/flp_import.cpp:
6443         * plugins/midi_import/midi_import.cpp:
6444         * include/track.h:
6445         * src/gui/piano_roll.cpp:
6446         * src/gui/plugin_browser.cpp:
6447         * src/gui/main_window.cpp:
6448         * src/core/plugin.cpp:
6449         * src/core/bb_track_container.cpp:
6450         * src/core/tool.cpp:
6451         * src/core/instrument_sound_shaping.cpp:
6452         * src/core/instrument_functions.cpp:
6453         * src/core/track.cpp:
6454         * src/core/instrument.cpp:
6455         use new pluginPixmapLoader
6457         * include/lmms_style.h:
6458         * src/gui/lmms_style.cpp:
6459         load stylesheet here
6461         * include/combobox.h:
6462         * src/gui/widgets/combobox.cpp:
6463         use pixmapLoader-pointers rather than QPixmap-pointers in comboBoxModel
6465         * include/plugin.h:
6466         in plugin-descriptor, hold a pointer to pixmapLoader instead of
6467         QPixmap itself
6469         * include/embed.h:
6470         * src/gui/embed.cpp:
6471         introduced pixmapLoader and pluginPixmapLoader-classes for abstracting
6472         QPixmap-instantiation - models can hold pixmapLoaders without actually
6473         instantiating a QPixmap-object and views can access the pixmap
6475         * src/gui/main_window.cpp:
6476         removed settings-menu and moved setup-dialog to edit-menu
6478         * Makefile.am:
6479         * include/config_mgr.h:
6480         * src/core/config_mgr.cpp:
6481         removed all the obsolete first-startup-wizard-code
6483 2008-05-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6485         * configure.in:
6486         * plugins/vst_base/lvsl_client.cpp:
6487         call waitpid(...) when closing plugin - fixes zombie processes
6489         * plugins/vst_effect/vst_effect_controls.h:
6490         * plugins/vst_effect/vst_subplugin_features.cpp:
6491         * plugins/vst_effect/vst_subplugin_features.h:
6492         * plugins/vst_effect/vst_effect_control_dialog.cpp:
6493         * plugins/vst_effect/Makefile.am:
6494         * plugins/vst_effect/vst_effect.cpp:
6495         * plugins/vst_effect/vst_effect_controls.cpp:
6496         * plugins/vst_effect/vst_effect_control_dialog.h:
6497         * plugins/vst_effect/vst_effect.h:
6498         * plugins/vst_base/lvsl_client.h:
6499         * plugins/vst_base/lvsl_client.cpp:
6500         finally made VST-effect plugin work
6502         * src/core/track_container.cpp:
6503         * src/core/main.cpp:
6504         when rendering from command-line, only create a QCoreApplication - needs
6505         further work
6507         * include/config_mgr.h:
6508         * src/gui/widgets/effect_rack_view.cpp:
6509         minor coding-style stuff
6511         * plugins/singerbot/singerbot.h:
6512         * plugins/singerbot/singerbot.cpp:
6513         integrated patches from William Steidtmann <billstei/at/hbci/dot/com>
6514         which makes Singerbot at least compile - doesn't seem to work yet though
6516 2008-05-19      Paul Giblock <drfaygo/at/gmail/dot/com>
6518         * triple_oscillator.cpp:
6519         * am_active.png:
6520         * am_inactive.png:
6521         * artwork.png:
6522         * btn_mask.png:
6523         * exp_shape_active.png:
6524         * exp_shape_inactive.png:
6525         * fm_active.png:
6526         * fm_inactive.png:
6527         * logo.png:
6528         * mix_active.png:
6529         * mix_inactive.png:
6530         * moog_saw_shape_active.png:
6531         * moog_saw_shape_inactive.png:
6532         * pm_active.png:
6533         * pm_inactive.png:
6534         * saw_shape_active.png:
6535         * saw_shape_inactive.png:
6536         * sin_shape_active.png:
6537         * sin_shape_inactive.png:
6538         * square_shape_active.png:
6539         * square_shape_inactive.png:
6540         * sync_active.png:
6541         * sync_inactive.png:
6542         * triangle_shape_active.png:
6543         * triangle_shape_inactive.png:
6544         * usr_shape_active.png:
6545         * usr_shape_inactive.png:
6546         * white_noise_shape_active.png:
6547         * white_noise_shape_inactive.png:
6548         Updated Triple-oscillator artwork
6550         * src/core/track.cpp:
6551         Darkened the tracks so it doesn't hurt to look at
6553         * src/gui/lfo_controller_dialog.cpp:
6554         * src/gui/widgets/controller_view.cpp:
6555         Remove stray line
6557         * plugins/kicker/kicker.cpp:
6558         * plugins/kicker/kicker.h:
6559         * data/themes/default/style.css:
6560         Including stylesheet changes I forgot to commit, fixes knobs in 3xOsc
6562 2008-05-18      Paul Giblock <drfaygo/at/gmail/dot/com>
6564         * src/gui/widgets/knob.cpp:
6565         * include/knob.h:
6566         First version of stylable knobs. Perhaps can be overlayed with current
6567         knobs to add line coloring/width in other places around the GUI.
6569         * src/core/track.cpp:
6570         - Re-enabled alternating background, better appearance AND performance
6571         - Fixed more of the flickering by disabling updates when moving
6572         - Toby will probably want to change background colors, I just used
6573         something simple since it will end up changing probably.  It do like the
6574         gradient dark on top, looks like a "channel" or "groove".
6576         * plugins/patman/artwork.png:
6577         Fixed artwork again
6579         * plugins/singerbot/artwork.png:
6580         * plugins/singerbot/logo.png:
6581         Updated SingerBot artwork
6583 2008-05-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6585         * plugins/stk/mallets/mallets.cpp:
6586         added missing initialization of member-variables which made Mallets
6587         play nothing until GUI has been opened
6589         * include/bb_track.h:
6590         * src/gui/widgets/combobox.cpp:
6591         * src/gui/widgets/name_label.cpp:
6592         * src/tracks/bb_track.cpp:
6593         * src/tracks/pattern.cpp:
6594         * data/themes/default/track_op_grip.png:
6595         improved overall appearence
6597         * src/core/track.cpp:
6598         - disabled flipped painting of track-view-BG
6599         - optimized changePosition()-method for much faster drawing
6601         * src/gui/fx_mixer_view.cpp:
6602         do not destroy FX-mixer-view when closing
6604         * plugins/ladspa_effect/ladspa_effect.cpp:
6605         added "Notch Filter" to blacklist
6607         * plugins/ladspa_effect/ladspa_effect.h:
6608         * plugins/ladspa_effect/ladspa_effect.cpp:
6609         * plugins/bass_booster/bass_booster.cpp:
6610         * plugins/stereo_matrix/stereo_matrix.cpp:
6611         * plugins/stereo_enhancer/stereo_enhancer.cpp:
6612         - replaced old code with effect::checkGate() call
6613         - various cleanups and minor optimizations
6615         * src/core/effect_chain.cpp:
6616         added debugging-code for determining buggy effect-plugins at higher
6617         samplerates
6619         * include/plugin.h:
6620         introduced changable publicName-property
6622         * include/effect.h:
6623         * src/core/effect.cpp:
6624         added checkGate()-function for reducing redundant code in effect-plugins
6626 2008-05-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6628         * plugins/ladspa_effect/ladspa_effect.cpp:
6629         * plugins/ladspa_effect/ladspa_effect.h:
6630         improved handling of effects which only work at limited samplerates
6632         * include/audio_port.h:
6633         * src/core/audio/audio_port.cpp:
6634         small optimizations
6636         * src/core/mixer.cpp:
6637         removed obsolete idle-property of worker-threads
6639         * src/core/fx_mixer.cpp:
6640         protect individual buffers of FX-channels from being processed by more
6641         than one thread
6643 2008-05-17      Paul Giblock <drfaygo/at/gmail/dot/com>
6645         * plugins/stereo_matrix/stereomatrix_controls.cpp:
6646         Allow knobs to invert phase as well
6648         * plugins/patman/patman.cpp:
6649         * plugins/patman/patman.h:
6650         * plugins/patman/artwork.png:
6651         * plugins/patman/loop_off.png:
6652         * plugins/patman/loop_on.png:
6653         * plugins/patman/tune_off.png:
6654         * plugins/patman/tune_on.png:
6655         * plugins/patman/select_file_on.png:
6656         * plugins/patman/select_file.png:
6657         - Integrate new patman artwork.
6658         - Make file selection button highlight when clicked.
6660         * include/pixmap_button.h:
6661         * src/gui/widgets/pixmap_button.cpp:
6662         Make button pixmap "activate" on click
6664         * src/gui/widgets/automatable_button.cpp:
6665         Noted bug in automatable button
6667         * src/gui/piano_roll.cpp:
6668         Fix bug when trying to select note on first beat. However, still breaks
6669         if the cursor moves quickly from right to left (i.e: if it skips the
6670         pixel position)
6672 2008-05-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6674         * include/project_renderer.h:
6675         * src/core/main.cpp:
6676         * src/core/project_renderer.cpp:
6677         added a lot of options for rendering via command-line and finally made
6678         it working with new projectRenderer-class
6680         * include/mixer.h:
6681         removed 16x oversampling
6683 2008-05-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6685         * include/track.h:
6686         * include/pixmap_button.h:
6687         * src/core/track.cpp:
6688         * src/gui/widgets/pixmap_button.cpp:
6689         toggle solo via Ctrl+left mouse button
6691         * src/gui/fx_mixer_view.cpp:
6692         set window-icon
6694         * src/gui/widgets/tab_widget.cpp:
6695         use colors from active palette
6697         * src/gui/widgets/project_notes.cpp:
6698         hide per default
6700         * src/gui/main_window.cpp:
6701         * src/core/timeline.cpp:
6702         * data/themes/default/project_export.png:
6703         * data/themes/default/hourglass.png:
6704         * data/themes/default/hq_mode.png:
6705         * data/themes/default/edit_paste.png:
6706         * data/themes/default/text_bold.png:
6707         * data/themes/default/project_save.png:
6708         * data/themes/default/playpos_marker.png:
6709         * data/themes/default/exit.png:
6710         * data/themes/default/text_center.png:
6711         * data/themes/default/error.png:
6712         * data/themes/default/edit_cut.png:
6713         * data/themes/default/mute_on.png:
6714         * data/themes/default/project_saveas.png:
6715         * data/themes/default/loop_point_disabled.png:
6716         * data/themes/default/arp_random_on.png:
6717         * data/themes/default/edit_copy.png:
6718         * data/themes/default/edit_redo.png:
6719         * data/themes/default/arp_down_on.png:
6720         * data/themes/default/track_op_menu_disabled.png:
6721         * data/themes/default/project_notes.png:
6722         * data/themes/default/track_op_menu.png:
6723         * data/themes/default/groupbox_led_bg.png:
6724         * data/themes/default/arp_down_off.png:
6725         * data/themes/default/mute_off.png:
6726         * data/themes/default/text_italic.png:
6727         * data/themes/default/arp_random_off.png:
6728         * data/themes/default/root.png:
6729         * data/themes/default/apply.png:
6730         * data/themes/default/text_block.png:
6731         * data/themes/default/text_left.png:
6732         * data/themes/default/arp_up_off.png:
6733         * data/themes/default/text_right.png:
6734         * data/themes/default/project_open.png:
6735         * data/themes/default/arp_up_and_down_off.png:
6736         * data/themes/default/edit_undo.png:
6737         * data/themes/default/loop_point.png:
6738         * data/themes/default/cancel.png:
6739         * data/themes/default/add.png:
6740         * data/themes/default/arp_up_and_down_on.png:
6741         * data/themes/default/project_open_down.png:
6742         * data/themes/default/text_under.png:
6743         * data/themes/default/fx_mixer.png:
6744         * data/themes/default/arp_up_on.png:
6745         * data/themes/default/home.png:
6746         integrated improved artwork (more to come)
6748         * src/core/track.cpp:
6749         do not crash when removing TCOs
6751         * plugins/ladspa_effect/ladspa_effect.cpp:
6752         use new resampling-methods in case we're processing plugins which are
6753         known not to work at higher samplerates
6755         * include/main_window.h:
6756         made resetWindowTitle() a slot
6758         * src/gui/widgets/effect_view.cpp:
6759         coding-style stuff
6761         * include/effect.h:
6762         * src/core/effect.cpp:
6763         added simple way for plugins to process at lower sample-rates
6765         * src/core/ladspa_manager.cpp:
6766         added hard-coded path in case LMMS is installed into /usr/local
6768         * include/export_project_dialog.h:
6769         * src/gui/export_project_dialog.cpp:
6770         update main-window title-bar while rendering
6772         * src/gui/widgets/visualization_widget.cpp:
6773         do not update while song-export
6775         * src/gui/dialogs/export_project.ui:
6776         improved usability
6778         * include/audio_device.h:
6779         * src/core/audio/audio_device.cpp:
6780         * src/core/audio/audio_alsa.cpp:
6781         * src/core/audio/audio_sdl.cpp:
6782         * src/core/audio/audio_oss.cpp:
6783         * src/core/audio/audio_jack.cpp:
6784         after changed quality-settings also update interpolation for
6785         samplerate-conversion
6787 2008-05-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6789         * plugins/bass_booster/bassbooster_controls.cpp:
6790         * plugins/sf2_player/sf2_player.cpp:
6791         * src/core/audio/audio_device.cpp:
6792         cleanups and the like
6794         * include/mixer.h:
6795         in draft-mode use zero-order-hold interpolation instead of linear
6796         interpolation - fixes some issues with resampling
6798         * plugins/bass_booster/bassbooster_controls.cpp:
6799         made bass-booster HQ-mode-capable
6801         * include/effect_lib.h:
6802         changed float's in bassbooster to SAMPLE
6804 2008-05-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6806         * plugins/sf2_player/sf2_player.cpp:
6807         retrieve resampling-interpolation from current mixer quality settings
6809         * include/mixer.h:
6810         made m_writing-variable in fifoWriter volatile
6812         * include/project_renderer.h:
6813         * src/core/project_renderer.cpp:
6814         change audio-device to file-device from within GUI-thread in order to
6815         make slots being connected to sampleRateChanged()-signal being called
6816         immediately
6818         * src/tracks/instrument_track.cpp:
6819         cleanups
6821         * src/core/mixer.cpp:
6822         initialize quality with draft-preset
6824         * include/setup_dialog.h:
6825         * include/audio_device.h:
6826         * src/gui/main_window.cpp:
6827         * src/gui/setup_dialog.cpp:
6828         * src/core/audio/audio_device.cpp:
6829         * src/core/audio/audio_alsa.cpp:
6830         * src/core/audio/audio_sdl.cpp:
6831         * src/core/audio/audio_oss.cpp:
6832         * src/core/audio/audio_jack.cpp:
6833         made HQ-mode for audio-devices optional
6835         * include/controller.h:
6836         * include/song.h:
6837         * include/audio_file_device.h:
6838         * include/song_editor.h:
6839         * include/export.h:
6840         * include/export_project_dialog.h:
6841         * src/gui/dialogs/export_project.ui:
6842         * src/gui/song_editor.cpp:
6843         * src/gui/export_project_dialog.cpp:
6844         * src/core/song.cpp:
6845         * src/core/main.cpp:
6846         * Makefile.am:
6847         introduced new project-export dialog
6849         * include/project_renderer.h:
6850         * src/core/project_renderer.cpp:
6851         new class for easily rendering a project into a file
6853         * include/mixer.h:
6854         * include/audio_sdl.h:
6855         * include/audio_jack.h:
6856         * include/audio_device.h:
6857         * include/audio_oss.h:
6858         * include/audio_alsa.h:
6859         * src/core/audio/audio_alsa.cpp:
6860         * src/core/audio/audio_device.cpp:
6861         * src/core/audio/audio_file_wave.cpp:
6862         * src/core/audio/audio_jack.cpp:
6863         * src/core/audio/audio_oss.cpp:
6864         * src/core/audio/audio_sdl.cpp:
6865         * src/core/mixer.cpp:
6866         when changing quality-settings tell audio-devices about it so that
6867         they can adjust their output-samplerate
6869 2008-05-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6871         * plugins/ladspa_effect/ladspa_effect.cpp:
6872         * plugins/organic/organic.cpp:
6873         * plugins/lb302/lb302.cpp:
6874         * plugins/bit_invader/bit_invader.cpp:
6875         * plugins/vibed/vibrating_string.cpp:
6876         * plugins/vibed/vibed.cpp:
6877         * plugins/triple_oscillator/triple_oscillator.cpp:
6878         * plugins/live_tool/live_tool.cpp:
6879         * plugins/audio_file_processor/audio_file_processor.cpp:
6880         * plugins/stk/mallets/mallets.cpp:
6881         * plugins/sf2_player/sf2_player.cpp:
6882         * plugins/vst_base/lvsl_client.cpp:
6883         * plugins/ladspa_browser/ladspa_port_dialog.cpp:
6884         * plugins/kicker/kicker.cpp:
6885         * include/effect.h:
6886         * include/controller.h:
6887         * include/mixer.h:
6888         * include/sample_buffer.h:
6889         * include/audio_dummy.h:
6890         * include/audio_sdl.h:
6891         * include/song.h:
6892         * include/audio_file_device.h:
6893         * include/audio_jack.h:
6894         * include/audio_device.h:
6895         * include/audio_oss.h:
6896         * include/audio_sample_recorder.h:
6897         * include/audio_alsa.h:
6898         * src/gui/piano_roll.cpp:
6899         * src/gui/song_editor.cpp:
6900         * src/gui/setup_dialog.cpp:
6901         * src/gui/file_browser.cpp:
6902         * src/gui/widgets/envelope_and_lfo_view.cpp:
6903         * src/gui/automation_editor.cpp:
6904         * src/gui/export_project_dialog.cpp:
6905         * src/gui/bb_editor.cpp:
6906         * src/tracks/instrument_track.cpp:
6907         * src/tracks/pattern.cpp:
6908         * src/core/song.cpp:
6909         * src/core/bb_track_container.cpp:
6910         * src/core/audio/audio_file_device.cpp:
6911         * src/core/audio/audio_device.cpp:
6912         * src/core/audio/audio_alsa.cpp:
6913         * src/core/audio/audio_sdl.cpp:
6914         * src/core/audio/audio_oss.cpp:
6915         * src/core/audio/audio_sample_recorder.cpp:
6916         * src/core/audio/audio_jack.cpp:
6917         * src/core/sample_play_handle.cpp:
6918         * src/core/envelope_and_lfo_parameters.cpp:
6919         * src/core/mixer.cpp:
6920         * src/core/instrument_sound_shaping.cpp:
6921         * src/core/instrument_functions.cpp:
6922         * src/core/engine.cpp:
6923         * src/core/sample_buffer.cpp:
6924         * src/core/oscillator.cpp:
6925         * src/core/controller.cpp:
6926         * src/core/lfo_controller.cpp:
6927         made quality-settings (internal processing samplerate, interpolation
6928         and so on) independent of audio-devices (final output) and added new
6929         qualitySettings-structure to mixer - might be still buggy and HQ-mode
6930         is currently not working, this is going to be fixed tomorrow, anyways
6931         important preparation for new project-export-dialog
6933 2008-05-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6935         * src/gui/fx_mixer_view.cpp:
6936         added spacing below FX-bank-selector
6938         * include/effect_select_dialog.h:
6939         * include/plugin.h:
6940         * src/gui/effect_select_dialog.cpp:
6941         fixed crash when adding an effect although none is selected and
6942         improved overall usability
6944         * plugins/organic/organic.cpp:
6945         fixed knob-inheritance problems
6947 2008-05-04      Paul Giblock <drfaygo/at/gmail/dot/com>
6949         * plugins/kicker/kicker.cpp:
6950         * plugins/kicker/artwork.png:
6951         Add new kicker artwork
6953         * plugins/organic/organic.cpp:
6954         * plugins/organic/randomise.png:
6955         * plugins/organic/randomise_pressed.png:
6956         * plugins/organic/artwork.png:
6957         * plugins/organic/logo.png:
6958         Add new organic artwork
6960         * include/knob.h:
6961         * src/gui/widgets/knob.cpp:
6962         Seperate some drawing functionality to simplify subclasses
6964         * src/tracks/instrument_track.cpp:
6965         Change plugin size from 246px back to 250px
6967 2008-05-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
6969         * src/core/track.cpp:
6970         fixed move of TCO-selections
6972 2008-04-30      Paul Giblock <drfaygo/at/gmail/dot/com>
6974         * src/gui/piano_roll.cpp:
6975         - Fixed moving of selected notes.
6976         - TODO: Quantanize the movement to selected "Q"
6978 2008-04-29      Paul Giblock <drfaygo/at/gmail/dot/com>
6980         * include/main_window.h:
6981         * src/gui/main_window.cpp:
6982         Add button for toggling FX Window.  Can use a better icon.
6984 2008-04-28      Paul Giblock <drfaygo/at/gmail/dot/com>
6986         * plugins/sf2_player/sf2_player.cpp:
6987         * plugins/sf2_player/sf2_player.h:
6988         Add gain, chorus, and reverb controls
6990         * include/instrument_functions.h:
6991         * src/core/instrument_functions.cpp:
6992         Fixed arpeggio direction loading
6994         * src/gui/widgets/effect_rack_view.cpp:
6995         Display effect window and enable fx-chain when adding an effect
6997         * src/gui/widgets/effect_view.cpp:
6998         Make effect controls window non-resizeable and remove maximize button
7000 2008-04-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7002         * plugins/stereo_enhancer/stereo_enhancer.cpp:
7003         * plugins/stereo_enhancer/stereo_enhancer.h:
7004         - made delay-buffer a simple stereo-buffer instead of
7005           surround-frame-buffer
7006         - added missing call in constructor to clear newly created
7007           delay-buffer - fixes bad distorted sound in various scenarios
7009 2008-04-25      Paul Giblock <drfaygo/at/gmail/dot/com>
7011         * plugins/bit_invader/bit_invader.cpp:
7012         Fixed samplelength loading
7014 2008-04-24      Paul Giblock <drfaygo/at/gmail/dot/com>
7016         * src/core/song.cpp:
7017         Reset LFO counter on song play
7019         * src/core/controller.cpp:
7020         * include/controller.h:
7021         Change counter from signed int to unsigned
7023         * src/gui/piano_roll.cpp:
7024         - Allow volume bars to be modified by clicking one bar, then 
7025           sweeping the mouse
7026         - shade volume bars according to volume
7027         - fixed drawing of background while scrolling
7029         * plugins/stereo_matrix/stereo_matrix.cpp:
7030         Made wet/dry knob do something. Acts as a nice panning knob when the
7031         matrix has the channels swapped.
7033         * src/tracks/instrument_track.cpp:
7034         * src/gui/fx_mixer_view.cpp:
7035         * include/fx_mixer_view.h:
7036         - Made bank-buttons easier to hit
7037         - Double click on fx-channel LCD in ITW to warp to the proper FX-line
7039 2008-04-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7041         * src/gui/widgets/group_box.cpp:
7042         * plugins/sf2_player/sf2_player.cpp:
7043         small cleanups
7045         * data/themes/default/style.css:
7046         * include/fx_mixer_view.h:
7047         * src/gui/fx_mixer_view.cpp:
7048         improved layouting and made FX-lines being organized in 4 banks
7049         instead of one big scrollarea
7051         * src/core/engine.cpp:
7052         create FX-mixer after song
7054         * Makefile.am:
7055         * include/fx_mixer.h:
7056         * include/fx_mixer_view.h:
7057         * src/core/fx_mixer.cpp:
7058         * src/core/song.cpp:
7059         * src/gui/fx_mixer_view.cpp:
7060         splitted source-files for FX-mixer and its view
7062         * include/fader.h:
7063         * src/gui/widgets/fader.cpp:
7064         made faders automatable
7066         * include/song.h:
7067         made automation-track public accessible
7069         * include/visualization_widget.h:
7070         * src/gui/widgets/visualization_widget.cpp:
7071         use new timer-framework
7073         * include/song_editor.h:
7074         * src/gui/song_editor.cpp:
7075         added fast and leightweight timer-framework - widgets requiring
7076         periodic updates can simply connect their update-slots to
7077         songEditor::periodicUpdate()
7079 2008-04-20      Paul Giblock <drfaygo/at/gmail/dot/com>
7081         * plugins/stereo_matrix/stereomatrix_controls.cpp:
7082         Fixed saveSettings
7084 2008-04-16      Paul Giblock <drfaygo/at/gmail/dot/com>
7086         * plugins/sf2_player/sf2_player.cpp:
7087         * plugins/sf2_player/sf2_player.h:
7088         rewrote reference-sharing. Should return near-100% memory on unload, and
7089         should properly handle samplerate changes.  Now we can render large
7090         sf2-based projects without consuming a gig of ram :)
7092 2008-04-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7094         * src/gui/file_browser.cpp:
7095         check type of preview-play-handle via type() instead of blindly using
7096         dynamic_cast - probably fixes random crashes when previewing a lot of
7097         samples and presets
7099         * src/tracks/instrument_track.cpp:
7100         delete instrument-instance *after* removing all play-handles from
7101         mixer as several play-handle-methods rely on instrument - fixes crash
7102         when removing track while playing
7104         * src/core/track.cpp:
7105         directly delete view before removing model - fixes crash when
7106         removing instrument-track with instrument-track-window open
7108 2008-04-15      Paul Giblock <drfaygo/at/gmail/dot/com>
7110         * plugins/stereo_matrix/stereomatrix_control_dialog.cpp:
7111         Fix layout
7112         
7113 2008-04-14      Paul Giblock <drfaygo/at/gmail/dot/com>
7115         * plugins/stereo_matrix:
7116         * plugins/stereo_matrix/stereo_matrix.cpp:
7117         * plugins/stereo_matrix/stereo_matrix.h:
7118         * plugins/stereo_matrix/stereomatrix_controls.cpp:
7119         * plugins/stereo_matrix/stereomatrix_controls.h:
7120         * plugins/stereo_matrix/stereomatrix_control_dialog.cpp:
7121         * plugins/stereo_matrix/stereomatrix_control_dialog.h:
7122         * plugins/stereo_matrix/logo.png:
7123         * plugins/stereo_matrix/Makefile.am:
7124         * configure.in:
7125         * plugins/Makefile.am:
7126         Add stereo matrix plugin for real panning and stereo-swapping
7128 2008-04-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7130         * plugins/sf2_player/sf2_player.cpp:
7131         * plugins/sf2_player/sf2_player.h:
7132         added resampling with Sinc-interpolation in case LMMS processes with
7133         higher sample-rate than 96 KHz
7135 2008-04-14      Paul Giblock <drfaygo/at/gmail/dot/com>
7137         * plugins/sf2_player/sf2_player.cpp:
7138         * plugins/sf2_player/sf2_player.h:
7139         support HQ-mode except for interpolation for sampleRates > 96k
7141         * include/controller_dialog.h:
7142         * include/controller_view.h:
7143         * src/gui/controller_dialog.cpp:
7144         * src/gui/widgets/controller_view.cpp:
7145         * Makefile.am:
7146         fix segfault when trying to show a controller dialog the second time
7148 2008-04-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7150         * plugins/lb302/lb302.cpp:
7151         replaced LB_HZ with engine::getMixer()->sampleRate()-calls in order to
7152         have a correct pitch in HQ-mode
7154         * plugins/ladspa_effect/ladspa_effect.cpp:
7155         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
7156         * plugins/ladspa_effect/ladspa_effect.h:
7157         * plugins/ladspa_effect/ladspa_controls.cpp:
7158         * plugins/ladspa_effect/Makefile.am:
7159         * plugins/ladspa_effect/ladspa_control_dialog.h:
7160         * plugins/ladspa_effect/ladspa_controls.h:
7161         * include/effect_control_dialog.h:
7162         made LADSPA-effect-hoster handle samplerate-changes so that we've
7163         proper effect-processing in HQ-mode
7165         * include/lmms_constants.h:
7166         more accurate constants
7168         * src/gui/export_project_dialog.cpp:
7169         fixed progress-bar after change of tick-resolution from 64 to 192
7171         * include/mixer.h:
7172         * src/core/mixer.cpp:
7173         made clearAudioBuffer() static
7175         * include/song.h:
7176         * src/core/ladspa_manager.cpp:
7177         coding-style-stuff
7179         * src/core/oscillator.cpp:
7180         do not synthesize anything if frequency is above half of samplerate
7182 2008-04-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7184         * plugins/flp_import/flp_import.cpp:
7185         * plugins/midi_import/midi_import.cpp:
7186         * include/engine.h:
7187         * include/song.h:
7188         * include/pattern.h:
7189         * include/piano_roll.h:
7190         * include/midi_time.h:
7191         * include/types.h:
7192         * include/timeline.h:
7193         * include/automation_editor.h:
7194         * configure.in:
7195         * src/gui/piano_roll.cpp:
7196         * src/gui/song_editor.cpp:
7197         * src/gui/automation_editor.cpp:
7198         * src/tracks/bb_track.cpp:
7199         * src/tracks/instrument_track.cpp:
7200         * src/tracks/pattern.cpp:
7201         * src/core/note_play_handle.cpp:
7202         * src/core/song.cpp:
7203         * src/core/bb_track_container.cpp:
7204         * src/core/mixer.cpp:
7205         * src/core/mmp.cpp:
7206         * src/core/track.cpp:
7207         * src/core/engine.cpp:
7208         * src/core/timeline.cpp:
7209         * src/core/automation_pattern.cpp:
7210         changed internal MIDI-time-resolution from 64th to 192th resulting for
7211         example in better MIDI-import and allowing to use triplet-notes in LMMS
7213 2008-04-09      Paul Giblock <drfaygo/at/gmail/dot/com>
7215         * include/controller.h:
7216         * src/core/controller.cpp:
7217         fit values between 0.0 and 1.0
7219         * include/lfo_controller.h:
7220         * src/gui/lfo_controller_dialog.cpp:
7221         * src/core/lfo_controller.cpp:
7222         add more parameters to LFO controller
7224 2008-04-08      Paul Giblock <drfaygo/at/gmail/dot/com>
7226         * include/engine.h:
7227         * src/core/engine.cpp:
7228         add static accessor to the controller rack.  I'm sure this won't be it's
7229         own MDISubWindow very long..
7231         * include/controller.h:
7232         * include/controller_dialog.h:
7233         * src/gui/widgets/knob.cpp:
7234         * src/core/controller.cpp:
7235         add gui accesssor and split off LFO
7237         * include/song.h:
7238         * src/core/song.cpp:
7239         make song the model for user-created controllers
7241         * src/gui/song_editor.cpp:
7242         added icon.  Was going to add controller rack as a QSplitter but found
7243         this would take too much time right now
7245         * src/gui/widgets/visualization_widget.cpp:
7246         drop back from 40 to an arbitrary 24fps
7248         * include/lfo_controller.h:
7249         * src/gui/lfo_controller.cpp:
7250         * src/gui/lfo_controller_dialog.cpp:
7251         - add beginnings of an LFO controller and dialog
7252         - don't mind the unoptimized code, it will be fixed
7254         * include/controller_view.h:
7255         * include/controller_rack_view.h:
7256         * src/gui/widgets/controller_view.cpp:
7257         * src/gui/widgets/controller_rack_view.cpp:
7258         * data/themes/default/controller_bg.png:
7259         The beginning of the controller rack and controller items.  This is an
7260         absolute bare minimum interface at the moment.  Also ulta-buggy.
7262         * include/controller_connection_dialog.h:
7263         * src/gui/controller_connection_dialog.cpp:
7264         This is the connection dialog. Will allow users to create and modify
7265         connections between a controller and model.  The lineEdit will be for
7266         editing a mapping function to scale, offset, trig-ify, etc.
7268         * Makefile.am:
7269         add controller related files
7271 2008-04-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7273         * src/gui/effect_select_dialog.cpp:
7274         fixed wrong model-index (=>wrong description-widget) when filtering
7276         * src/gui/lmms_style.cpp:
7277         decreased button-icon-size to 20px
7279         * src/core/fx_mixer.cpp:
7280         process FX-channels until effects signal that there's nothing more to
7281         process - closes #1935872
7283         * configure.in:
7284         integrated changes from libsamplerate-0.1.3/configure.ac
7286         * include/effect_select_dialog.h:
7287         * src/gui/effect_select_dialog.cpp:
7288         - cleanups
7289         - fixed broken connection for "Add"-button
7291         * src/3rdparty/samplerate/common.h:
7292         * src/3rdparty/samplerate/fastest_coeffs.h:
7293         * src/3rdparty/samplerate/float_cast.h:
7294         * src/3rdparty/samplerate/high_qual_coeffs.h:
7295         * src/3rdparty/samplerate/mid_qual_coeffs.h:
7296         * src/3rdparty/samplerate/samplerate.c:
7297         * src/3rdparty/samplerate/samplerate.h:
7298         * src/3rdparty/samplerate/src_linear.c:
7299         * src/3rdparty/samplerate/src_sinc.c:
7300         * src/3rdparty/samplerate/src_zoh.c:
7301         integrated libsamplerate 0.1.3 source which has various improvements
7302         over 4-year-old version 0.1.2
7304         * src/gui/widgets/combobox.cpp:
7305         set correct value for model when selecting an item whose strings
7306         occurs multiple times in the combobox
7308 2008-04-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7310         * include/effect_select_dialog.h:
7311         * src/gui/effect_select_dialog.cpp:
7312         changed list-widget to be a list-view and added a line-edit for
7313         filtering the list
7315 2008-04-06  Paul Giblock <drfaygo/at/gmail/dot/com>
7317         * include/lmms_style.h:
7318         * src/gui/lmms_style.cpp:
7319         Fix icon size for buttons etc...
7321 2008-04-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7323         * plugins/patman/patman.cpp:
7324         * plugins/patman/patman.h:
7325         * plugins/lb302/lb302.cpp:
7326         * plugins/lb302/lb302.h:
7327         * plugins/organic/organic.cpp:
7328         * plugins/organic/organic.h:
7329         * plugins/bit_invader/bit_invader.cpp:
7330         * plugins/bit_invader/bit_invader.h:
7331         * plugins/vibed/vibed.h:
7332         * plugins/vibed/vibed.cpp:
7333         * plugins/triple_oscillator/triple_oscillator.h:
7334         * plugins/triple_oscillator/triple_oscillator.cpp:
7335         * plugins/audio_file_processor/audio_file_processor.cpp:
7336         * plugins/audio_file_processor/audio_file_processor.h:
7337         * plugins/stk/mallets/mallets.cpp:
7338         * plugins/stk/mallets/mallets.h:
7339         * plugins/sf2_player/sf2_player.cpp:
7340         * plugins/sf2_player/sf2_player.h:
7341         * plugins/vestige/vestige.cpp:
7342         * plugins/vestige/vestige.h:
7343         * plugins/kicker/kicker.cpp:
7344         * plugins/kicker/kicker.h:
7345         * include/instrument_play_handle.h:
7346         * include/mixer.h:
7347         * include/instrument_track.h:
7348         * include/instrument.h:
7349         * include/note_play_handle.h:
7350         * include/sample_play_handle.h:
7351         * include/dummy_instrument.h:
7352         * include/preset_preview_play_handle.h:
7353         * include/play_handle.h:
7354         * src/tracks/instrument_track.cpp:
7355         * src/core/preset_preview_play_handle.cpp:
7356         * src/core/note_play_handle.cpp:
7357         * src/core/sample_play_handle.cpp:
7358         * src/core/mixer.cpp:
7359         * src/core/instrument.cpp:
7360         made rendering happen with one global working-buffer per thread -
7361         hopefully improves L1/L2-cache-efficiency
7363         * include/file_browser.h:
7364         * src/gui/file_browser.cpp:
7365         do not examine directories for being empty when adding them - speeds
7366         up LMMS-startup a lot!
7368 2008-04-04      Paul Giblock <drfaygo/at/gmail/dot/com>
7370         * include/knob.h:
7371         * src/gui/widgets/knob.cpp:
7372         Add friendlyUpdates slot and override doConnections
7374         * include/song_editor.h:
7375         Add button for managing controller to songEditor
7377         * include/mv_base.h:
7378         * include/core/mv_base.cpp:
7379         Make doConnections virtual
7381         * include/combobox.h:
7382         Fixed tabs
7384         * src/core/mixer.cpp:
7385         Couldn't easily convert from void* to int on a 64bit machine.  Instead,
7386         we now use a union.  We should change any enqueueing code to use the
7387         union as well
7388         
7389         * data/themes/add_controller.png:
7390         * data/themes/controller.png:
7391         Some new images for controllers
7393 2008-04-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7395         * src/core/mixer.cpp:
7396         implemented parallelization of FX-channel-processing
7398         * include/automatable_model.h:
7399         * include/automatable_model_templates.h:
7400         cleanups and optimizations in value( int )
7402 2008-04-04      Paul Giblock <drfaygo/at/gmail/dot/com>
7403         
7404         * include/controller.h:
7405         * src/core/controller.cpp:
7406         * Makefile.am:
7407         Add controller class to LMMS
7409         * include/knob.h:
7410         * src/gui/widgets/knob.cpp:
7411         Add Connect to Controller item to context menu for future dialog
7413         * include/automatable_model.h:
7414         * include/automatable_model_templates.h:
7415         - add controller pointer to class
7416         - add value(int offset) function for sample-exact value fetching
7417         - use controller in value() if set
7419         * src/tracks/pattern.cpp:
7420         Fixed length of notes according to PaulWay
7421         
7422         * src/core/mixer.cpp:
7423         trigger controller's frame counter
7425         * data/themes/llama:
7426         * data/themes/llama/background_artwork.png:
7427         * data/themes/Makefile.am:
7428         start a theme with my preferences
7430 2008-04-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7432         * include/song.h:
7433         * src/core/song.cpp:
7434         * src/gui/export_project_dialog.cpp:
7435         * src/gui/song_editor.cpp:
7436         made song-length being cached and only updated upon changed length or
7437         position of TCOs
7439         * src/core/track.cpp:
7440         optimized track::length()-method
7442         * src/core/mixer.cpp:
7443         great improvements on multithreading - one global job-queue protected by
7444         a simple mutex where threads pull their jobs from
7446         * src/core/engine.cpp:
7447         delete LADSPA-manager after mixer and FX-mixer as LADSPA-effects in
7448         FX-mixer access LADSPA-manger at destruction
7450         * plugins/ladspa_effect/ladspa_effect.cpp:
7451         * plugins/ladspa_effect/ladspa_effect.h:
7452         * plugins/bass_booster/bass_booster.cpp:
7453         * plugins/bass_booster/bass_booster.h:
7454         * plugins/stereo_enhancer/stereo_enhancer.cpp:
7455         * plugins/stereo_enhancer/stereo_enhancer.h:
7456         * include/effect.h:
7457         - made effect::processAudioBuffer(...) process a sampleFrame- instead of
7458           surroundSampleFrame-array
7459         - divide out_sum by number of frames processed to have a
7460           period-size-independent value
7462         * src/core/note_play_handle.cpp:
7463         * include/automatable_model.h:
7464         renamed value( int ) to levelToValue( int ) as preparation for
7465         controller-framework
7467         * include/mixer.h:
7468         * src/core/mixer.cpp:
7469         - made mixer::buffertToPort accept a stereoVolumeVector as audio-buffers
7470           have stereo-audio-buffers now
7471         - made peakValueLeft() and peakValueRight() take a sampleFrame-pointer
7472         - process in stereo internally
7474         * include/instrument_track.h:
7475         * src/tracks/instrument_track.cpp:
7476         replaced surroundArea with panning-knob
7478         * include/audio_port.h:
7479         * src/core/audio/audio_port.cpp:
7480         use sampleFrame-array instead of surroundSampleFrame-array for
7481         processing
7483         * src/core/fx_mixer.cpp:
7484         * include/fx_mixer.h:
7485         made mixToChannel() take a sampleFrame-pointer
7487         * include/volume.h:
7488         * src/core/sample_play_handle.cpp:
7489         * src/core/surround_area.cpp:
7490         added stereoVolumeVector and surroundVolumeVector-declarations
7492         * include/dummy_effect.h:
7493         implement pure-virtual processAudioBuffer()-method
7495         * include/panning.h:
7496         new panningToVolumeVector()-inline-method
7498         * include/effect_chain.h:
7499         * src/core/effect_chain.cpp:
7500         made processAudioBuffer() take a sampleFrame-pointer
7502         * include/visualization_widget.h:
7503         * src/gui/widgets/visualization_widget.cpp:
7504         use sampleFrame-array instead of surroundSampleFrame-array internally
7506 2008-04-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7508         * include/automatable_model.h:
7509         added castValue()-method
7511 2008-04-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7513         * plugins/ladspa_effect/Makefile.am:
7514         * plugins/patman/Makefile.am:
7515         * plugins/lb302/Makefile.am:
7516         * plugins/organic/Makefile.am:
7517         * plugins/bass_booster/Makefile.am:
7518         * plugins/bit_invader/Makefile.am:
7519         * plugins/vst_effect/Makefile.am:
7520         * plugins/vibed/Makefile.am:
7521         * plugins/triple_oscillator/Makefile.am:
7522         * plugins/live_tool/Makefile.am:
7523         * plugins/live_tool/live_tool.cpp:
7524         * plugins/singerbot/Makefile.am:
7525         * plugins/audio_file_processor/Makefile.am:
7526         * plugins/stk/mallets/Makefile.am:
7527         * plugins/stereo_enhancer/Makefile.am:
7528         * plugins/vestige/Makefile.am:
7529         * plugins/sf2_player/Makefile.am:
7530         * plugins/ladspa_browser/Makefile.am:
7531         * plugins/kicker/Makefile.am:
7532         * plugins/polyb302/Makefile.am:
7533         * plugins/flp_import/flp_import.cpp:
7534         corrected paths / includes
7536         * include/engine.h:
7537         * include/instrument_track.h:
7538         * include/preset_preview_play_handle.h:
7539         * src/tracks/instrument_track.cpp:
7540         * src/core/preset_preview_play_handle.cpp:
7541         * src/core/track_container.cpp:
7542         * src/core/engine.cpp:
7543         added dummyTrackContainer with dummyInstrumentTrack in order to have a
7544         default-model for cached inactive instrument-track-windows - fixes
7545         regular crashes
7547         * include/engine.h:
7548         * include/bb_track_container.h:
7549         * include/track_container_view.h:
7550         * include/song_editor.h:
7551         * include/bb_editor.h:
7552         * include/track_container.h:
7553         * src/gui/track_container_view.cpp:
7554         * src/gui/bb_editor.cpp:
7555         * src/tracks/bb_track.cpp:
7556         * src/tracks/pattern.cpp:
7557         * src/core/preset_preview_play_handle.cpp:
7558         * src/core/track_container.cpp:
7559         * src/core/song.cpp:
7560         * src/core/bb_track_container.cpp:
7561         * src/core/file_browser.cpp:
7562         * src/core/track.cpp:
7563         * src/core/engine.cpp:
7564         * src/core/automation_editor.cpp:
7565         * Makefile.am:
7566         - splitted track_container.h into track_container.h and
7567           track_container_view.h
7568         - splitted bb_editor.h into bb_track_container.h and bb_editor.h
7569         - moved view-component-implementations of trackContainer and
7570           bbTrackContainer to src/gui/
7571         - added dummyInstrumentTrack-implementation
7573         * plugins/ladspa_effect/caps/README.ardour:
7574         * plugins/ladspa_effect/caps/README.dist:
7575         * plugins/ladspa_effect/caps/Makefile.am:
7576         added README-files
7578         * plugins/ladspa_effect/ladspa_effect.cpp:
7579         * plugins/bass_booster/bass_booster.cpp:
7580         decreased minimal gate from 0.0001f to 0.00001f as it turned out that
7581         some effects were cut off with previous value
7583         * include/endian_handling.h:
7584         * include/note.h:
7585         * include/effect_select_dialog.h:
7586         * include/midi.h:
7587         * include/effect_view.h:
7588         * include/side_bar.h:
7589         * include/micro_timer.h:
7590         * include/midi_event_processor.h:
7591         * include/instrument_function_views.h:
7592         * include/instrument_midi_io.h:
7593         * include/export.h:
7594         * include/dummy_instrument.h:
7595         * include/level_object.h:
7596         added missing includes when compiling headers itself
7598         * Makefile.am:
7599         added single-binary-target for testing-purposes
7601 2008-03-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7603         * src/core/song_editor.cpp:
7604         removed obsolete SIGNAL/SLOT-connection
7606         * plugins/bass_booster/bass_booster.cpp:
7607         * plugins/ladspa_effect/ladspa_effect.cpp:
7608         compare out_sum against getGate()+0.0001f as getGate() might be 0
7609         while out_sum in many cases never will reach 0,0...0 again - fixes
7610         high CPU-usage even after stop playing
7612         * include/effect_chain.h:
7613         * plugins/ladspa_effect/ladspa_effect.cpp:
7614         made controls have a track to allow automation of LADSPA-controls
7616         * include/automatable_button.h:
7617         * src/widgets/automatable_button.cpp:
7618         on model-change, ensure QPushButton's state is correct
7620         * src/widgets/effect_rack_view.cpp:
7621         properly handle changed models
7623         * src/tracks/instrument_track.cpp:
7624         when model has changed, also set new model for effect-view
7626         * src/core/effect_chain.cpp:
7627         - use track as parent
7628         - correct initialization of m_enabledModel which fixes crashes on
7629           model-updates
7631 2008-03-30      Paul Giblock <drfaygo/at/gmail/dot/com>
7633         * plugins/sf2_player/sf2_player.cpp:
7634         * plugins/sf2_player/sf2_player.h:
7635         Fix patch dialog error when viewing dialog before file has loaded -
7636         all we had to do is diable the button while a file is loading
7638 2008-03-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7640         * plugins/sf2_player/sf2_player.cpp:
7641         duplicate char-pointer returned by qPrintable - fixes bugs when
7642         loading sound-fonts
7644 2008-03-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7646         * src/core/fx_mixer.cpp:
7647         completed recent changes to saveSettings() / loadSettings()
7649 2008-03-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7651         * data/themes/default/main_toolbar_bg.png:
7652         * data/themes/default/toolbar_bg.png:
7653         made toolbar-backgrounds a bit more blue-ish
7655         * src/core/main.cpp:
7656         tuned colors a bit
7658         * src/core/fx_mixer.cpp:
7659         moved effect-chain to right side of window
7661         * src/core/ladspa_control.cpp:
7662         added missing break in switch which made a lot of messages appear in
7663         console when time-based knobs were used by LADSPA-plugins
7665         * plugins/organic/organic.cpp:
7666         * plugins/organic/organic.h:
7667         * plugins/vibed/vibed.h:
7668         * plugins/vibed/vibed.cpp:
7669         * plugins/triple_oscillator/triple_oscillator.cpp:
7670         * plugins/audio_file_processor/audio_file_processor.cpp:
7671         * plugins/vestige/vestige.cpp:
7672         * plugins/vestige/vestige.h:
7673         * plugins/sf2_player/artwork.png:
7674         * plugins/midi_import/midi_import.cpp:
7675         * include/note.h:
7676         * include/mixer.h:
7677         * include/instrument_track.h:
7678         * include/sample_buffer.h:
7679         * include/fx_mixer.h:
7680         * include/piano.h:
7681         * include/volume.h:
7682         * include/midi_port.h:
7683         * include/panning.h:
7684         * src/midi/midi_client.cpp:
7685         * src/midi/midi_port.cpp:
7686         * src/midi/midi_alsa_seq.cpp:
7687         * src/lib/sample_buffer.cpp:
7688         * src/widgets/instrument_midi_io_view.cpp:
7689         * src/tracks/instrument_track.cpp:
7690         * src/core/preset_preview_play_handle.cpp:
7691         * src/core/note_play_handle.cpp:
7692         * src/core/mixer.cpp:
7693         * src/core/piano_roll.cpp:
7694         * src/core/instrument_functions.cpp:
7695         * src/core/instrument_midi_io.cpp:
7696         * src/core/note.cpp:
7697         * src/core/piano.cpp:
7698         * src/core/fx_mixer.cpp:
7699         - merged note's tone and octave-property into one key-property which
7700           makes us save calculations in a lot of places and also shrinks
7701           sizes of XML-files
7702         - renamed various note-related constants and enums to match current
7703           coding-style
7705         * data/themes/default/effect_plugin.png:
7706         improved effect-plugin-artwork made with Inkscape
7708 2008-03-22  Paul Giblock <drfaygo/at/gmail/dot/com>
7709         
7710         * plugins/organic/organic.cpp:
7711         Removed debug printf
7713         * include/instrument_track.h:
7714         * src/tracks/instrument_track.cpp:
7715         - First version of cache for hidden instrumentTrackWindows
7716         - Need to delete the cache and any remaining ITW's upon application close
7718         * src/core/lmms_style.cpp:
7719         Applied border to more primatives. Still some known issues..
7721         * src/core/main.cpp:
7722         Just playing around with palette colors.
7724 2008-03-16  Paul Giblock <drfaygo/at/gmail/dot/com>
7726         * Makefile.am:
7727         Added lmmsStyle to the Makefile again.
7729         * src/widgets/lcd_spinbox.cpp:
7730         * include/lcd_spinbox.h:
7731         - Added separate function for deriving control size
7732         - Added property for side-margins
7733         - Fixed memory leak with the pixmap
7734         - Added yours truly to the copyright
7736         * src/core/lmms_style.cpp:
7737         * include/lmms_style.h:
7738         - Re-added lmmsStyle. I don't know why these files disappeared
7739         - Improve appearance of sunken borders
7741         * plugins/sf2_player/sf2_player.cpp:
7742         * plugins/sf2_player/sf2_player.h:
7743         - Hopefully plugged some leaks caused by the leaky fluidSynth.  It seems
7744         to run fine, but only time will tell
7745         - Added sfont file sharing between instances of sf2Player
7746         - Added synthMutex to keep play() from freezing while we are recreating
7747         the synth due to a file load.
7749         * src/widgets/combobox.cpp:
7750         Draw styled border.
7752         * src/core/fx_mixer.cpp:
7753         Improved drawing of LCD Channel numbers.
7755         * .:
7756         * m4:
7757         * buildtools:
7758         * plugins:
7759         * plugins/ladspa_effect:
7760         * plugins/ladspa_effect/caps:
7761         * plugins/ladspa_effect/caps/waves:
7762         * plugins/ladspa_effect/caps/dsp:
7763         * plugins/ladspa_effect/caps/dsp/tonestack:
7764         * plugins/patman:
7765         * plugins/lb302:
7766         * plugins/organic:
7767         * plugins/bass_booster:
7768         * plugins/bit_invader:
7769         * plugins/vst_effect:
7770         * plugins/vibed:
7771         * plugins/triple_oscillator:
7772         * plugins/singerbot:
7773         * plugins/live_tool:
7774         * plugins/audio_file_processor:
7775         * plugins/stk:
7776         * plugins/stk/mallets:
7777         * plugins/stk/voices:
7778         * plugins/stk/voices/flute:
7779         * plugins/stk/voices/resonate:
7780         * plugins/stk/voices/include:
7781         * plugins/stk/voices/wurley:
7782         * plugins/stk/voices/src:
7783         * plugins/stk/voices/percflute:
7784         * plugins/stk/voices/rhodey:
7785         * plugins/stk/voices/tubebell:
7786         * plugins/stk/voices/bowed:
7787         * plugins/stk/voices/clarinet:
7788         * plugins/stk/voices/moog:
7789         * plugins/stk/voices/metal:
7790         * plugins/stk/voices/b3:
7791         * plugins/stk/voices/blow_hole:
7792         * plugins/stk/voices/brass:
7793         * plugins/stk/voices/fmvoices:
7794         * plugins/stk/voices/bandedwg:
7795         * plugins/stk/voices/blow_bottle:
7796         * plugins/plucked_string_synth:
7797         * plugins/stereo_enhancer:
7798         * plugins/sf2_player:
7799         * plugins/vestige:
7800         * plugins/vst_base:
7801         * plugins/ladspa_browser:
7802         * plugins/kicker:
7803         * plugins/polyb302:
7804         * plugins/flp_import:
7805         * plugins/flp_import/unrtf:
7806         * plugins/midi_import:
7807         * include:
7808         * src:
7809         * src/audio:
7810         * src/midi:
7811         * src/lib:
7812         * src/widgets:
7813         * src/tracks:
7814         * src/3rdparty:
7815         * src/3rdparty/samplerate:
7816         * src/core:
7817         * data:
7818         * data/locale:
7819         * data/track_icons:
7820         * data/midi-maps:
7821         * data/samples:
7822         * data/samples/effects:
7823         * data/samples/stringsnpads:
7824         * data/samples/basses:
7825         * data/samples/shapes:
7826         * data/samples/latin:
7827         * data/samples/bassloopes:
7828         * data/samples/drums:
7829         * data/samples/instruments:
7830         * data/samples/misc:
7831         * data/samples/drumsynth:
7832         * data/samples/drumsynth/effects:
7833         * data/samples/drumsynth/misc_synth:
7834         * data/samples/drumsynth/tr606:
7835         * data/samples/drumsynth/cr78:
7836         * data/samples/drumsynth/magnetboy:
7837         * data/samples/drumsynth/tr808:
7838         * data/samples/drumsynth/tr909:
7839         * data/samples/drumsynth/misc_fx:
7840         * data/samples/drumsynth/misc:
7841         * data/samples/drumsynth/electro:
7842         * data/samples/drumsynth/linn:
7843         * data/samples/drumsynth/ferraro:
7844         * data/samples/drumsynth/r_b:
7845         * data/samples/drumsynth/misc_bass:
7846         * data/samples/drumsynth/tr77:
7847         * data/samples/drumsynth/misc_perc:
7848         * data/samples/drumsynth/latin:
7849         * data/samples/drumsynth/instrument:
7850         * data/samples/drumsynth/misc_electro:
7851         * data/samples/drumsynth/acoustic:
7852         * data/samples/drumsynth/misc_hats:
7853         * data/samples/drumsynth/farfisa:
7854         * data/samples/drumsynth/jorgensohn:
7855         * data/samples/drumsynth/cr8000:
7856         * data/samples/drumsynth/misc_claps:
7857         * data/samples/beats:
7858         * data/presets:
7859         * data/presets/AudioFileProcessor:
7860         * data/presets/LB302:
7861         * data/presets/Organic:
7862         * data/presets/PluckedStringSynth:
7863         * data/presets/VeSTige:
7864         * data/presets/BitInvader:
7865         * data/presets/Vibed:
7866         * data/presets/TripleOscillator:
7867         * data/themes:
7868         * data/themes/blue_scene:
7869         * data/themes/blue_scene/plugins:
7870         * data/themes/default:
7871         * data/projects:
7872         * data/projects/covers:
7873         * data/projects/recorded_loops:
7874         * data/projects/cool_songs:
7875         * data/projects/tutorials:
7876         * data/projects/demos:
7877         * data/projects/misc:
7878         * data/projects/templates:
7879         Added svn:ignore property for temporary buildtime files.  Prevents
7880         dozens of items showing in diff and status.  The file
7881         .svnignore describes which files are ignored.
7883         * .svnignore:
7884         Can change this file to ignore more stuff.  Reapply by running: 
7885         svn -R propset svn:ignore -F .svnignore .
7886                 
7887 2008-03-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7889         * src/widgets/visualization_widget.cpp:
7890         improved signal-visualization and increased update-ratio from 20 to 40
7891         fps
7893         * include/mixer.h:
7894         * src/core/mixer.cpp:
7895         * src/core/song_editor.cpp:
7896         * data/themes/default/auto_limit.png:
7897         removed obsolete and broken auto-limit-feature
7899         * src/core/engine.cpp:
7900         * src/core/fx_mixer.cpp:
7901         proper cleanup of fxMixer and its view at exit
7903         * src/widgets/effect_view.cpp:
7904         * data/themes/default/effect_plugin.png:
7905         improved effect-view-artwork
7907 2008-03-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7909         * src/core/mixer.cpp:
7910         fixed peak-calculation for negative signal-values
7912         * include/effect_view.h:
7913         * src/widgets/effect_view.cpp:
7914         - fixed random crashes when removing effect-views
7915         - improved painting of effect-view
7917         * plugins/ladspa_effect/ladspa_controls.cpp:
7918         fixed LADSPA-controls which internally were not linked per default
7919         although they should be
7921         * include/fx_mixer.h:
7922         * include/effect_rack_view.h:
7923         * include/effect_chain.h:
7924         * src/widgets/effect_rack_view.cpp:
7925         * src/tracks/instrument_track.cpp:
7926         * src/core/effect_chain.cpp:
7927         * src/core/song.cpp:
7928         * src/core/fx_mixer.cpp:
7929         implemented save- and load-functionality for FX-mixer
7931 2008-03-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7933         * include/engine.h:
7934         * include/mixer.h:
7935         * include/fx_mixer.h:
7936         * include/fader.h:
7937         * include/effect_chain.h:
7938         * src/audio/audio_port.cpp:
7939         * src/widgets/fader.cpp:
7940         * src/tracks/instrument_track.cpp:
7941         * src/core/effect_chain.cpp:
7942         * src/core/mixer.cpp:
7943         * src/core/engine.cpp:
7944         * src/core/fx_mixer.cpp:
7945         * data/themes/default/fader_background.png:
7946         * data/themes/default/fader_knob.png:
7947         * data/themes/default/fader_leds.png:
7948         * Makefile.am:
7949         added initial FX-mixer implementation - not perfect and very usable
7950         yet but the basics work so far :)
7952         * src/widgets/instrument_midi_io_view.cpp:
7953         fixed segfault when using raw MIDI-client
7955 2008-03-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
7957         * data/locale/de.ts:
7958         * data/locale/de.qm:
7959         updated German localization
7960         
7961         * include/effect_board.h:
7962         removed
7964         * include/fx_mixer.h:
7965         * src/tracks/instrument_track.cpp:
7966         added definition for upcoming FX-mixer
7968         * plugins/triple_oscillator/triple_oscillator.h:
7969         * include/meter_dialog.h:
7970         * include/instrument_functions.h:
7971         * include/instrument_sound_shaping.h:
7972         * include/instrument_function_views.h:
7973         * include/bb_track.h:
7974         * include/ladspa_control_view.h:
7975         * include/instrument_sound_shaping_view.h:
7976         * src/midi/midi_client.cpp:
7977         * src/widgets/ladspa_control_view.cpp:
7978         * src/widgets/instrument_sound_shaping_view.cpp:
7979         * src/widgets/instrument_function_views.cpp:
7980         * src/core/instrument_sound_shaping.cpp:
7981         * src/core/instrument_functions.cpp:
7982         * Makefile.am:
7983         added missing Q_OBJECT-macros for views which made localizations not
7984         work
7986         * plugins/sf2_player/logo.png:
7987         replaced Kicker-logo with actual logo
7989         * src/core/track.cpp:
7990         * include/track.h:
7991         fixed crash when removing TCO via context-menu
7993         * include/instrument_track.h:
7994         * src/core/file_browser.cpp:
7995         made "Send to active instrument-track" work again
7997         * include/instrument_midi_io_view.h:
7998         * include/instrument_midi_io.h:
7999         * src/widgets/instrument_midi_io_view.cpp:
8000         * src/core/instrument_midi_io.cpp:
8001         made MIDI-port-menu work again
8003         * plugins/kicker/kicker.cpp:
8004         set track for knobs in order to make them automatable
8006         * include/automatable_model_templates.h:
8007         fixed missing automationPattern-initialization (i.e.
8008         setFirstValue()-call) which made automation-editor not work properly
8009         if no events were drawn so far
8011         * include/piano_roll.h:
8012         * include/automation_editor.h:
8013         * src/core/piano_roll.cpp:
8014         * src/core/automation_editor.cpp:
8015         made micro-draw-operations use 32-bit-ints instead of 16-bit-integers
8016         for performing better on 32-bit-platforms
8018         * data/locale/de.qm:
8019         * data/locale/de.ts:
8020         * include/mv_base.h:
8021         * src/widgets/combobox.cpp:
8022         * src/widgets/knob.cpp:
8023         * src/widgets/automatable_button.cpp:
8024         * src/core/mv_base.cpp:
8025         also connect model-signals with view when using default-constructed
8026         model - fixes missing updates on things like button-groups when using
8027         automation
8029 2008-03-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8031         * plugins/vst_base/lvsl_server.cpp:
8032         show window before determining X-Window-ID as newer WINE-versions do
8033         not create X-windows before actually showing window
8035         * plugins/vst_base/lvsl_client.cpp:
8036         * plugins/vst_base/lvsl_client.h:
8037         properly insert VST-editor-window into QMdiArea
8039         * plugins/vestige/vestige.cpp:
8040         * plugins/vestige/vestige.h:
8041         M/V-split
8043         * plugins/kicker/kicker.h:
8044         * include/sample_buffer.h:
8045         * configure.in:
8046         * src/lib/sample_buffer.cpp:
8047         misc coding-style-fixes
8049         * include/sample_buffer.h:
8050         * src/lib/sample_buffer.cpp:
8051         made sampleBuffer reentrant so that several threads can use
8052         sampleBuffer::play() simultanously - fixes crashes when using
8053         AudioFileProcessor or Patman in multithreaded mode
8055 2008-03-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8057         * plugins/sf2_player/sf2_player.h:
8058         * plugins/sf2_player/sf2_player.cpp:
8059         added m_runningNotes-array to track overlapping or edge-to-edge notes
8060         and act accordingly
8062 2008-03-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8064         * src/widgets/graph.cpp:
8065         fixed compiler-warnings
8067         * include/automatable_model.h:
8068         * include/graph.h:
8069         * include/surround_area.h:
8070         * src/audio/audio_file_device.cpp:
8071         * src/audio/audio_alsa.cpp:
8072         * src/audio/audio_oss.cpp:
8073         * src/audio/audio_port.cpp:
8074         * src/audio/audio_jack.cpp:
8075         * src/midi/midi_alsa_seq.cpp:
8076         * src/lib/project_journal.cpp:
8077         * src/lib/mmp.cpp:
8078         * src/lib/oscillator.cpp:
8079         * src/widgets/ladspa_control_view.cpp:
8080         * src/widgets/envelope_and_lfo_view.cpp:
8081         * src/widgets/instrument_midi_io_view.cpp:
8082         * src/widgets/lcd_spinbox.cpp:
8083         * src/widgets/group_box.cpp:
8084         * src/widgets/volume_knob.cpp:
8085         * src/tracks/automation_track.cpp:
8086         * src/tracks/bb_track.cpp:
8087         * src/tracks/instrument_track.cpp:
8088         * src/core/preset_preview_play_handle.cpp:
8089         * src/core/track_container.cpp:
8090         * src/core/effect_control_dialog.cpp:
8091         * src/core/import_filter.cpp:
8092         * src/core/setup_dialog.cpp:
8093         * src/core/sample_play_handle.cpp:
8094         * src/core/envelope_and_lfo_parameters.cpp:
8095         * src/core/main.cpp:
8096         * src/core/mixer.cpp:
8097         * src/core/effect.cpp:
8098         * src/core/instrument_midi_io.cpp:
8099         * src/core/track.cpp:
8100         * src/core/timeline.cpp:
8101         * src/core/instrument.cpp:
8102         * src/core/surround_area.cpp:
8103         * src/core/effect_select_dialog.cpp:
8104         * src/core/automation_editor.cpp:
8105         * src/core/meter_dialog.cpp:
8106         reduced dependencies from automatable_model_templates.h and fixed
8107         according compiler-warnings
8109         * include/shared_object.h:
8110         added mutex to protect reference-counter
8112 2008-03-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8114         * src/core/piano_roll.cpp:
8115         - fixed and improved painting of volume-lines
8116         - fixed painting of note-detuning-dots
8117         - fixed KEY_PRESSURE-events when changing volume of a note
8118         - pass keyboard-events to piano-class if appropriate
8120         * include/piano.h:
8121         * src/core/piano.cpp:
8122         moved MIDI-event-code to piano-class
8124         * src/core/piano_roll.cpp:
8125         * src/core/automation_editor.cpp:
8126         set focus-policy in order to receive key-events
8128         * plugins/sf2_player/sf2_player.cpp:
8129         - fixed open-file-dialog
8130         - fixed order of member-variable-initialization
8132         * src/lib/sample_buffer.cpp:
8133         added MP3-files to file-dialog-filter as they theoretically should be
8134         supported through SDL_sound-library
8136         * src/core/mixer.cpp:
8137         always process all note-play-handles of monophonic instruments by the
8138         same thread serially - fixes problems with monophonic instruments
8139         which rely on notes being processed in correct order
8141         * src/core/instrument_sound_shaping.cpp:
8142         fixed out-of-range initial value of filter-frequency-model
8144         * src/core/main_window.cpp:
8145         set directory before selecting file in QFileDialog
8147         * src/widgets/knob.cpp:
8148         removed relative painting - fixes badly draw knobs in several cases
8150         * src/core/song_editor.cpp:
8151         * src/core/track.cpp:
8152         * src/widgets/knob.cpp:
8153         * src/widgets/volume_knob.cpp:
8154         made textFloat's work properly and displayed at correct position
8156         * src/widgets/text_float.cpp:
8157         * include/text_float.h:
8158         always use main-window as parent and make sure to be moved relative to
8159         it, i.e. do not show outside of moved main-window
8161         * include/mmp.h:
8162         * src/lib/mmp.cpp:
8163         * src/core/song.cpp:
8164         removed overwrite-check as in Qt4 QFileDialog does this on its own
8166         * include/midi_event_processor.h:
8167         * include/instrument_track.h:
8168         * src/tracks/instrument_track.cpp:
8169         do not lock mixer and call notePlayHandle::noteOff() in
8170         instrumentTrack::processInEvent() when processing monophonic
8171         instruments in playNote() - fixes lockups in LB302 in multithreaded
8172         mode
8174 2008-03-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8176         * include/ladspa_control.h:
8177         * src/widgets/ladspa_control_view.cpp:
8178         * src/widgets/tempo_sync_knob.cpp:
8179         fixed wrong integration of tempoSyncKnobModel
8181         * src/core/mv_base.cpp:
8182         made dataChanged()->update() connection queued
8184 2008-03-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8186         * plugins/patman/patman.cpp:
8187         do not crash in patmanInstrument::playNote() when no file is set
8189         * include/ladspa_control.h:
8190         * src/core/ladspa_control.cpp:
8191         fixed missing tempoSyncKnobModel for not crashing when instantiating
8192         LADSPA-plugins with time-knobs inside
8194         * src/lib/sample_buffer.cpp:
8195         do not set global mixer lock in update() if no data has been set yet
8197         * plugins/patman/patman.cpp:
8198         do not crash when loading settings where no file is set
8200         * plugins/triple_oscillator/triple_oscillator.cpp:
8201         in saveSettings() fixed wrong integer-to-string-conversion which made
8202         LMMS save broken files
8204 2008-02-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8206         * src/widgets/text_float.cpp:
8207         set Qt::ToolTip-window-flag in order to display correctly - some other
8208         positioning code still needs to be fixed
8210         * include/import_filter.h:
8211         fixed importFilter::readByte() to return proper integer instead of
8212         signed char - makes import-filters finally work
8214         * plugins/midi_import/midi_import.cpp:
8215         * plugins/flp_import/flp_import.cpp:
8216         fixed parameter-list of lmms_plugin_main to work properly
8218 2008-02-29      Paul Giblock <drfaygo/at/gmail/dot/com>
8219         
8220         * include/lcd_spinbox.h:
8221         * src/widgets/lcd_spinbox.cpp:
8222         * data/themes/default/lcd_19red.png:
8223         * data/themes/default/lcd_19green.png:
8224         new non-QLcdSpinBox pixmap-based LCD spinbox 
8226         * include/lmms_style.h:
8227         * src/core/main.cpp:
8228         * Makefile.am:
8229         added lmmsStyle to aim for a consistant interface.  Some Qt themes
8230         make LMMS look really bad.  Hopefully, over time, we can make a style
8231         the unifies all our gui elements
8233         * src/core/track.cpp:
8234         playing with alternating colors per tact
8236         * include/combobox.h:
8237         * src/widgets/combobox.cpp:
8238         * data/themes/default/combobox_bg.png:
8239         * data/themes/default/combobox_arrow_selected.png:
8240         - combobox now updates when incremented or decrementing.
8241         - draw combo box with styled border, change arrow when pressed
8243 2008-02-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8245         * src/core/plugin.cpp:
8246         warn if LMMS-plugin does not have required <libname>_plugin_descriptor
8247         field
8249 2008-02-28      Paul Giblock <drfaygo/at/gmail/dot/com>
8251         * plugins/sf2_player:
8252         * plugins/sf2_player/patches_dialog.ui:
8253         * plugins/sf2_player/logo.png:
8254         * plugins/sf2_player/patches_dialog.cpp:
8255         * plugins/sf2_player/sf2_player.cpp:
8256         * plugins/sf2_player/Makefile.am:
8257         * plugins/sf2_player/artwork.png:
8258         * plugins/sf2_player/patches_dialog.h:
8259         * plugins/sf2_player/sf2_player.h:
8260         * plugins/Makefile.am:
8261         * configure.in:
8262         added beta of SoundFont player
8264 2008-02-28      Danny McRae <khjklujn/at/yahoo/dot/com>
8266         * plugins/stk/Makefile.am:
8267         removed voices from the default build
8269 2008-02-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8271         * configure.in:
8272         back in trunk - LMMS-MV is now default, so removed "mv"-suffix
8274 2008-02-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8276         * plugins/ladspa_effect/caps/Compress.cc:
8277         * plugins/ladspa_effect/caps/ToneStack.cc:
8278         * plugins/ladspa_effect/caps/Compress.h:
8279         * plugins/ladspa_effect/caps/ToneStack.h:
8280         * plugins/ladspa_effect/caps/Roessler.h:
8281         * plugins/ladspa_effect/caps/HRTF.cc:
8282         * plugins/ladspa_effect/caps/HRTF.h:
8283         * plugins/ladspa_effect/caps/basics.h:
8284         * plugins/ladspa_effect/caps/Lorenz.cc:
8285         * plugins/ladspa_effect/caps/Lorenz.h:
8286         * plugins/ladspa_effect/caps/Amp.cc:
8287         * plugins/ladspa_effect/caps/Amp.h:
8288         * plugins/ladspa_effect/caps/Pan.h:
8289         * plugins/ladspa_effect/caps/Phaser.cc:
8290         * plugins/ladspa_effect/caps/White.h:
8291         * plugins/ladspa_effect/caps/Preamp.cc:
8292         * plugins/ladspa_effect/caps/Click.cc:
8293         * plugins/ladspa_effect/caps/VCO.cc:
8294         * plugins/ladspa_effect/caps/Clip.cc:
8295         * plugins/ladspa_effect/caps/Click.h:
8296         * plugins/ladspa_effect/caps/VCO.h:
8297         * plugins/ladspa_effect/caps/ToneControls.cc:
8298         * plugins/ladspa_effect/caps/Sin.cc:
8299         * plugins/ladspa_effect/caps/Clip.h:
8300         * plugins/ladspa_effect/caps/Sin.h:
8301         * plugins/ladspa_effect/caps/Scape.cc:
8302         * plugins/ladspa_effect/caps/Scape.h:
8303         * plugins/ladspa_effect/caps/Roessler.cc:
8304         * plugins/ladspa_effect/caps/interface.cc:
8305         * plugins/ladspa_effect/caps/waves/click.h:
8306         * plugins/ladspa_effect/caps/waves/money.h:
8307         * plugins/ladspa_effect/caps/dsp/ToneStack.h:
8308         * plugins/ladspa_effect/caps/dsp/LatFilt.h:
8309         * plugins/ladspa_effect/caps/dsp/TDFII.h:
8310         * plugins/ladspa_effect/caps/dsp/RMS.h:
8311         * plugins/ladspa_effect/caps/dsp/OnePole.h:
8312         * plugins/ladspa_effect/caps/dsp/tonestack/tables.h:
8313         * plugins/ladspa_effect/caps/dsp/tonestack/vs_tab.h:
8314         * plugins/ladspa_effect/caps/dsp/tonestack/ks_tab.h:
8315         * plugins/ladspa_effect/caps/dsp/Eq.h:
8316         * plugins/ladspa_effect/caps/dsp/BiQuad.h:
8317         * plugins/ladspa_effect/caps/dsp/util.h:
8318         * plugins/ladspa_effect/caps/dsp/FPTruncateMode.h:
8319         * plugins/ladspa_effect/caps/dsp/TwelveAX7.h:
8320         * plugins/ladspa_effect/caps/Chorus.cc:
8321         * plugins/ladspa_effect/caps/Cabinet.cc:
8322         * plugins/ladspa_effect/caps/Chorus.h:
8323         * plugins/ladspa_effect/caps/Eq.cc:
8324         * plugins/ladspa_effect/caps/Cabinet.h:
8325         * plugins/ladspa_effect/caps/Eq.h:
8326         * plugins/ladspa_effect/caps/README:
8327         * plugins/ladspa_effect/caps/Pan.cc:
8328         * plugins/ladspa_effect/caps/SweepVF.cc:
8329         * plugins/ladspa_effect/caps/Descriptor.h:
8330         * plugins/ladspa_effect/caps/White.cc:
8331         * plugins/ladspa_effect/caps/SweepVF.h:
8332         * plugins/ladspa_effect/caps/Phaser.h:
8333         * plugins/ladspa_effect/caps/Reverb.cc:
8334         * plugins/ladspa_effect/caps/Makefile.am:
8335         * plugins/ladspa_effect/caps/Reverb.h:
8336         integrated new version of CAPS and fixed miscompilation with GCC 4.3
8338         * include/audio_port.h:
8339         * src/audio/audio_port.cpp:
8340         * src/core/mixer.cpp:
8341         lock audioPort-buffers before writing them
8343         * include/export_project_dialog.h:
8344         * src/core/song.cpp:
8345         * src/core/main.cpp:
8346         * src/core/export_project_dialog.cpp:
8347         * src/core/engine.cpp:
8348         * src/core/automation_pattern.cpp:
8349         rendering from commandline is now done without creating main-window
8350         and all the other UI-stuff
8352         * include/mixer.h:
8353         * src/core/mixer.cpp:
8354         distribute whole job-queue instead of single jobs and re-assign
8355         unprocessed jobs to idle worker-threads - improves multi-threading
8356         behaviour a lot
8358 2008-02-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8360         * include/mixer.h:
8361         * src/core/mixer.cpp:
8362         initial support for parallel rendering via worker-threads - far from
8363         being perfect (especially with small mixer-period-sizes) but seems to
8364         help even on a DualCore machine
8366 2008-02-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8368         * plugins/ladspa_browser/ladspa_browser.cpp:
8369         * plugins/ladspa_browser/ladspa_browser.h:
8370         incorporated recent API-changes
8372         * include/effect.h:
8373         * include/instrument_functions.h:
8374         * include/envelope_and_lfo_parameters.h:
8375         * include/tempo_sync_knob.h:
8376         * src/widgets/envelope_and_lfo_view.cpp:
8377         * src/widgets/tempo_sync_knob.cpp:
8378         * src/core/envelope_and_lfo_parameters.cpp:
8379         * src/core/effect.cpp:
8380         * src/core/instrument_functions.cpp:
8381         splitted tempoSyncKnob into tempoSyncKnobModel and tempoSyncKnob
8383         * include/meter_dialog.h:
8384         * src/core/meter_dialog.cpp:
8385         splitted into meterModel and meterDialog
8387         * plugins/flp_import/flp_import.cpp:
8388         * include/instrument_track.h:
8389         * include/piano.h:
8390         * src/tracks/instrument_track.cpp:
8391         * src/core/piano_roll.cpp:
8392         * src/core/piano.cpp:
8393         * Makefile.am:
8394         renamed piano_widget.{h,cpp} to piano.{h,cpp}
8396         * include/instrument_view.h:
8397         * include/instrument_track.h:
8398         * src/widgets/instrument_function_views.cpp:
8399         * src/widgets/group_box.cpp:
8400         * src/widgets/automatable_button.cpp:
8401         * src/tracks/instrument_track.cpp:
8402         fixed various crashes when removing instrument-track with visible
8403         instrument-track-window or loading another instrument/preset
8405         * src/core/instrument.cpp:
8406         * include/oscillator.h:
8407         cleanups
8409         * src/lib/mmp.cpp:
8410         fixed tag-renaming-loops
8412         * include/automatable_model_templates.h:
8413         instantiate automation-pattern before loading settings of it - fixes
8414         crashes when loading projects with automation inside
8416         * include/instrument_track.h:
8417         * src/tracks/instrument_track.cpp:
8418         track-window-creation on-demand - makes loading/unloading projects
8419         ultra-fast!!
8421         * plugins/triple_oscillator/triple_oscillator.cpp:
8422         fixed wrong index for saving/restoring modulation-algo-settings -
8423         now projects sound like they did in pre-MV
8425         * include/automation_editor.h:
8426         * include/combobox.h:
8427         * src/core/song.cpp:
8428         * src/core/piano_roll.cpp:
8429         * src/core/track.cpp:
8430         * src/core/automation_editor.cpp:
8431         fixed zooming-comboboxes in automation-editor and header-dependencies
8433         * src/widgets/combobox.cpp:
8434         update() after wheelEvent
8436         * include/tool.h:
8437         * src/core/tool.cpp:
8438         * plugins/live_tool/live_tool.h:
8439         * plugins/live_tool/live_tool.cpp:
8440         made live-tool work after M/V-split
8442         * include/track.h:
8443         * src/core/track.cpp:
8444         - connect track's m_mutedModel to m_muteBtn of trackOperationsWidget
8445         - set track for m_mutedModel
8447 2008-02-24      Paul Giblock <pgllama/at/gmail/dot/com>
8449         * plugins/bit_invader/bit_invader.cpp:
8450         * plugins/bit_invader/bit_invader.h:
8451         * plugins/bit_invader/Makefile.am:
8452         M/V-split of Bit Invader instrument.
8454         * plugins/vibed/nine_button_selector.cpp:
8455         Removed debug output
8457         * src/widgets/graph.cpp:
8458         * include/graph.h:
8459         Fixed some graph issues.  Still more left to do
8461 2008-02-22      Paul Giblock <pgllama/at/gmail/dot/com>
8463         * plugins/vibed/vibed.cpp:
8464         * plugins/vibed/vibed.h:
8465         * plugins/vibed/string_container.cpp:
8466         * plugins/vibed/string_container.h:
8467         * plugins/vibed/nine_button_selector.cpp:
8468         * plugins/vibed/nine_button_selector.h:
8469         * plugins/vibed/Makefile.am:
8470         M/V-split of Vibed-instrument.  Lacks user-specified wave, to be added on
8471         my next commit. Also has an audio output bug, certain notes make weird
8472         noises
8474         * plugins/stereo_enhancer/stereoenhancer_controls.cpp:
8475         * plugins/stereo_enhancer/stereoenhancer_controls.h:
8476         * plugins/stereo_enhancer/stereo_enhancer.cpp:
8477         * plugins/stereo_enhancer/stereo_enhancer.h:
8478         * plugins/stereo_enhancer/stereoenhancer_control_dialog.cpp:
8479         * plugins/stereo_enhancer/stereoenhancer_control_dialog.h:
8480         * plugins/stereo_enhancer/Makefile.am:
8481         M/V-split of Stereo-enhancer effect.  
8483         * src/core/piano_roll.cpp:
8484         Changed quantization to change on the gridlines, instead of nearest-point
8485         in the middle.  Made this change here, because MIDI events should still be
8486         quantized to nearest-point (I think)
8488         * src/widgets/graph.cpp:
8489         * include/graph.h:
8490         * Makefile.am:
8491         Split graph and moved it to the shared widgets.  Supports variable ranges,
8492         sample-lengths, smoothing, normalizing, and is antialiased
8494 2008-02-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8496         * plugins/ladspa_effect/ladspa_subplugin_features.h:
8497         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
8498         * plugins/vst_effect/vst_control_dialog.h:
8499         * plugins/audio_file_processor/audio_file_processor.cpp:
8500         * plugins/audio_file_processor/audio_file_processor.h:
8501         * include/plugin.h:
8502         * include/audio_file_device.h:
8503         * include/export.h:
8504         * include/export_project_dialog.h:
8505         * src/core/song.cpp:
8506         * src/core/export_project_dialog.cpp:
8507         coding-style improvements
8509         * src/core/main_window.cpp:
8510         made song-export work again
8512         * plugins/patman/patman.cpp:
8513         * plugins/patman/patman.h:
8514         M/V-split of Patman-instrument
8516 2008-02-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8518         * plugins/flp_import/flp_import.h:
8519         * plugins/flp_import/flp_import.cpp:
8520         * plugins/midi_import/midi_import.h:
8521         * plugins/midi_import/midi_import.cpp:
8522         * include/instrument_functions.h:
8523         * include/song.h:
8524         * include/envelope_and_lfo_parameters.h:
8525         * include/instrument_sound_shaping.h:
8526         made MIDI- and FLP-import-filter work
8528 2008-02-15      Paul Giblock <drfaygo/at/gmail/dot/net>
8529         * plugins/plucked_string_synth/plucked_string_synth.cpp:
8530         * plugins/plucked_string_synth/plucked_string_synth.h:
8531         * plugins/organic/organic.cpp:
8532         * plugins/organic/organic.h:
8534         Updated some instruments for M/V. Unfortunately one is an old version
8535         and the other is obsoleted
8537 2008-02-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8539         * plugins/ladspa_effect/ladspa_controls.cpp:
8540         * plugins/audio_file_processor/audio_file_processor.cpp:
8541         * plugins/stk/Makefile.am:
8542         * include/mmp.h:
8543         * include/instrument_midi_io_view.h:
8544         * include/track.h:
8545         * include/engine.h:
8546         * include/name_label.h:
8547         * include/instrument_track.h:
8548         * include/instrument_functions.h:
8549         * include/piano_widget.h:
8550         * include/song.h:
8551         * include/pattern.h:
8552         * include/file_browser.h:
8553         * include/envelope_and_lfo_parameters.h:
8554         * include/envelope_and_lfo_view.h:
8555         * include/instrument_sound_shaping.h:
8556         * include/instrument_function_views.h:
8557         * include/instrument_midi_io.h:
8558         * include/bb_track.h:
8559         * include/song_editor.h:
8560         * include/dummy_instrument.h:
8561         * include/journalling_object.h:
8562         * include/sample_track.h:
8563         * include/timeline.h:
8564         * include/main_window.h:
8565         * include/mv_base.h:
8566         * include/bb_editor.h:
8567         * include/arp_and_chords_tab_widget.h:
8568         * include/automation_track.h:
8569         * include/track_container.h:
8570         * include/instrument_sound_shaping_view.h:
8571         * configure.in:
8572         * src/midi/midi_alsa_seq.cpp:
8573         * src/lib/project_journal.cpp:
8574         * src/lib/mmp.cpp:
8575         * src/lib/journalling_object.cpp:
8576         * src/widgets/instrument_sound_shaping_view.cpp:
8577         * src/widgets/envelope_and_lfo_view.cpp:
8578         * src/widgets/instrument_function_views.cpp:
8579         * src/widgets/instrument_midi_io_view.cpp:
8580         * src/widgets/project_notes.cpp:
8581         * src/widgets/effect_rack_view.cpp:
8582         * src/widgets/automatable_button.cpp:
8583         * src/widgets/tempo_sync_knob.cpp:
8584         * src/tracks/automation_track.cpp:
8585         * src/tracks/sample_track.cpp:
8586         * src/tracks/bb_track.cpp:
8587         * src/tracks/instrument_track.cpp:
8588         * src/tracks/pattern.cpp:
8589         * src/core/arp_and_chords_tab_widget.cpp:
8590         * src/core/preset_preview_play_handle.cpp:
8591         * src/core/note_play_handle.cpp:
8592         * src/core/track_container.cpp:
8593         * src/core/song.cpp:
8594         * src/core/import_filter.cpp:
8595         * src/core/file_browser.cpp:
8596         * src/core/envelope_and_lfo_parameters.cpp:
8597         * src/core/mixer.cpp:
8598         * src/core/main.cpp:
8599         * src/core/export_project_dialog.cpp:
8600         * src/core/instrument_sound_shaping.cpp:
8601         * src/core/piano_roll.cpp:
8602         * src/core/instrument_functions.cpp:
8603         * src/core/instrument_midi_io.cpp:
8604         * src/core/track.cpp:
8605         * src/core/engine.cpp:
8606         * src/core/timeline.cpp:
8607         * src/core/instrument.cpp:
8608         * src/core/piano_widget.cpp:
8609         * src/core/main_window.cpp:
8610         * src/core/song_editor.cpp:
8611         * src/core/mv_base.cpp:
8612         * src/core/automation_pattern.cpp:
8613         * src/core/name_label.cpp:
8614         * src/core/automation_editor.cpp:
8615         * src/core/bb_editor.cpp:
8616         * Makefile.am:
8617         finally splitted rest of LMMS, i.e. tracks, track-containers,
8618         track-content-objects, whole instrument-track/instrument-track-window
8619         and so on - still a bit unstable but I'm sure we'll manage to get this
8620         one very stable!
8622         diffstat says:
8623             79 files changed, 8019 insertions(+), 6226 deletions(-)
8625 2008-02-01      Danny McRae <khjklujn/at/yahoo/dot/com>
8627         * Makefile.am:
8628         * src/tracks/instrument_track.cpp:
8629         * src/core/note_play_handle.cpp:
8630         * src/core/envelope_and_lfo_parameters.cpp:
8631         * src/core/mixer.cpp:
8632         * src/core/instrument_sound_shaping.cpp:
8633         * src/core/instrument_midi_io.cpp:
8634         * src/core/song_editor.cpp:
8635         Some of the files have been renamed, so I updated the
8636         include references to get the build to work again.
8638         * include/basic_filters.h:
8639         Added the ability to clear the filter taps to support
8640         a LPF where the threshold is set by the velocity of
8641         the note.
8643         * configure.in:
8644         * plugins/stk/voices/resonate/resonate_processor.h:
8645         * plugins/stk/voices/voices/resonate/resonate_instrument.h:
8646         * plugins/stk/voices/voices/resonate/resonate_model.cpp:
8647         * plugins/stk/voices/voices/resonate/resonate_instrument_view.cpp:
8648         * plugins/stk/voices/voices/resonate/artwork.png:
8649         * plugins/stk/voices/voices/resonate/resonate_processor.cpp:
8650         * plugins/stk/voices/voices/resonate/resonate_instrument_view.h:
8651         * plugins/stk/voices/voices/resonate/resonate_instrument.cpp:
8652         * plugins/stk/voices/voices/resonate/logo.png:
8653         * plugins/stk/voices/voices/resonate/resonate_model.h:
8654         * plugins/stk/voices/voices/resonate/Makefile.am:
8655         * plugins/stk/voices/voices/flute/artwork.png:
8656         * plugins/stk/voices/voices/flute/flute_processor.cpp:
8657         * plugins/stk/voices/voices/flute/flute_instrument_view.h:
8658         * plugins/stk/voices/voices/flute/flute_model.h:
8659         * plugins/stk/voices/voices/flute/flute_processor.h:
8660         * plugins/stk/voices/voices/flute/flute_model.cpp:
8661         * plugins/stk/voices/voices/flute/logo.png:
8662         * plugins/stk/voices/voices/flute/flute_instrument.h:
8663         * plugins/stk/voices/voices/flute/Makefile.am:
8664         * plugins/stk/voices/voices/flute/flute_instrument_view.cpp:
8665         * plugins/stk/voices/voices/flute/flute_instrument.cpp:
8666         * plugins/stk/voices/voices/metal/metal_processor.h:
8667         * plugins/stk/voices/voices/metal/metal_instrument.cpp:
8668         * plugins/stk/voices/voices/metal/metal_processor.cpp:
8669         * plugins/stk/voices/voices/metal/artwork.png:
8670         * plugins/stk/voices/voices/metal/metal_instrument_view.cpp:
8671         * plugins/stk/voices/voices/metal/metal_instrument.h:
8672         * plugins/stk/voices/voices/metal/logo.png:
8673         * plugins/stk/voices/voices/metal/metal_instrument_view.h:
8674         * plugins/stk/voices/voices/metal/metal_model.cpp:
8675         * plugins/stk/voices/voices/metal/Makefile.am:
8676         * plugins/stk/voices/voices/metal/metal_model.h:
8677         * plugins/stk/voices/voices/fmvoices/fmvoices_instrument.cpp:
8678         * plugins/stk/voices/voices/fmvoices/fmvoices_processor.h:
8679         * plugins/stk/voices/voices/fmvoices/fmvoices_instrument.h:
8680         * plugins/stk/voices/voices/fmvoices/artwork.png:
8681         * plugins/stk/voices/voices/fmvoices/fmvoices_instrument_view.h:
8682         * plugins/stk/voices/voices/fmvoices/fmvoices_instrument_view.cpp:
8683         * plugins/stk/voices/voices/fmvoices/logo.png:
8684         * plugins/stk/voices/voices/fmvoices/fmvoices_processor.cpp:
8685         * plugins/stk/voices/voices/fmvoices/fmvoices_model.cpp:
8686         * plugins/stk/voices/voices/fmvoices/fmvoices_model.h:
8687         * plugins/stk/voices/voices/fmvoices/Makefile.am:
8688         * plugins/stk/voices/voices/moog/moog_instrument_view.h:
8689         * plugins/stk/voices/voices/moog/moog_instrument_view.cpp:
8690         * plugins/stk/voices/voices/moog/moog_model.cpp:
8691         * plugins/stk/voices/voices/moog/moog_processor.h:
8692         * plugins/stk/voices/voices/moog/artwork.png:
8693         * plugins/stk/voices/voices/moog/logo.png:
8694         * plugins/stk/voices/voices/moog/moog_model.h:
8695         * plugins/stk/voices/voices/moog/moog_instrument.h:
8696         * plugins/stk/voices/voices/moog/moog_instrument.cpp:
8697         * plugins/stk/voices/voices/moog/moog_processor.cpp:
8698         * plugins/stk/voices/voices/moog/Makefile.am:
8699         * plugins/stk/voices/voices/include/stk_instrument_view.h:
8700         * plugins/stk/voices/voices/include/stk_voice.h:
8701         * plugins/stk/voices/voices/include/stk_instrument.h:
8702         * plugins/stk/voices/voices/include/stk_model.h:
8703         * plugins/stk/voices/voices/include/stk_processor.h:
8704         * plugins/stk/voices/voices/wurley/wurley_instrument.h:
8705         * plugins/stk/voices/voices/wurley/wurley_instrument_view.cpp:
8706         * plugins/stk/voices/voices/wurley/wurley_model.cpp:
8707         * plugins/stk/voices/voices/wurley/wurley_instrument_view.h:
8708         * plugins/stk/voices/voices/wurley/wurley_model.h:
8709         * plugins/stk/voices/voices/wurley/artwork.png:
8710         * plugins/stk/voices/voices/wurley/wurley_processor.h:
8711         * plugins/stk/voices/voices/wurley/logo.png:
8712         * plugins/stk/voices/voices/wurley/Makefile.am:
8713         * plugins/stk/voices/voices/wurley/wurley_processor.cpp:
8714         * plugins/stk/voices/voices/wurley/wurley_instrument.cpp:
8715         * plugins/stk/voices/voices/bowed/bowed_instrument.cpp:
8716         * plugins/stk/voices/voices/bowed/bowed_model.cpp:
8717         * plugins/stk/voices/voices/bowed/bowed_instrument_view.cpp:
8718         * plugins/stk/voices/voices/bowed/bowed_model.h:
8719         * plugins/stk/voices/voices/bowed/bowed_processor.h:
8720         * plugins/stk/voices/voices/bowed/artwork.png:
8721         * plugins/stk/voices/voices/bowed/bowed_processor.cpp:
8722         * plugins/stk/voices/voices/bowed/logo.png:
8723         * plugins/stk/voices/voices/bowed/bowed_instrument_view.h:
8724         * plugins/stk/voices/voices/bowed/Makefile.am:
8725         * plugins/stk/voices/voices/bowed/bowed_instrument.h:
8726         * plugins/stk/voices/voices/blow_hole/blow_hole_instrument.cpp:
8727         * plugins/stk/voices/voices/blow_hole/blow_hole_instrument_view.cpp:
8728         * plugins/stk/voices/voices/blow_hole/artwork.png:
8729         * plugins/stk/voices/voices/blow_hole/blow_hole_model.h:
8730         * plugins/stk/voices/voices/blow_hole/blow_hole_processor.h:
8731         * plugins/stk/voices/voices/blow_hole/logo.png:
8732         * plugins/stk/voices/voices/blow_hole/blow_hole_processor.cpp:
8733         * plugins/stk/voices/voices/blow_hole/blow_hole_instrument_view.h:
8734         * plugins/stk/voices/voices/blow_hole/blow_hole_model.cpp:
8735         * plugins/stk/voices/voices/blow_hole/Makefile.am:
8736         * plugins/stk/voices/voices/blow_hole/blow_hole_instrument.h:
8737         * plugins/stk/voices/voices/rhodey/rhodey_instrument_view.h:
8738         * plugins/stk/voices/voices/rhodey/rhodey_processor.h:
8739         * plugins/stk/voices/voices/rhodey/rhodey_processor.cpp:
8740         * plugins/stk/voices/voices/rhodey/rhodey_instrument_view.cpp:
8741         * plugins/stk/voices/voices/rhodey/artwork.png:
8742         * plugins/stk/voices/voices/rhodey/rhodey_model.cpp:
8743         * plugins/stk/voices/voices/rhodey/rhodey_model.h:
8744         * plugins/stk/voices/voices/rhodey/rhodey_instrument.h:
8745         * plugins/stk/voices/voices/rhodey/logo.png:
8746         * plugins/stk/voices/voices/rhodey/rhodey_instrument.cpp:
8747         * plugins/stk/voices/voices/rhodey/Makefile.am:
8748         * plugins/stk/voices/voices/tubebell/tubebell_processor.cpp:
8749         * plugins/stk/voices/voices/tubebell/tubebell_instrument_view.h:
8750         * plugins/stk/voices/voices/tubebell/artwork.png:
8751         * plugins/stk/voices/voices/tubebell/tubebell_instrument.h:
8752         * plugins/stk/voices/voices/tubebell/tubebell_instrument.cpp:
8753         * plugins/stk/voices/voices/tubebell/tubebell_model.h:
8754         * plugins/stk/voices/voices/tubebell/logo.png:
8755         * plugins/stk/voices/voices/tubebell/tubebell_model.cpp:
8756         * plugins/stk/voices/voices/tubebell/tubebell_instrument_view.cpp:
8757         * plugins/stk/voices/voices/tubebell/Makefile.am:
8758         * plugins/stk/voices/voices/tubebell/tubebell_processor.h:
8759         * plugins/stk/voices/voices/clarinet/clarinet_instrument.cpp:
8760         * plugins/stk/voices/voices/clarinet/artwork.png:
8761         * plugins/stk/voices/voices/clarinet/clarinet_processor.h:
8762         * plugins/stk/voices/voices/clarinet/clarinet_processor.cpp:
8763         * plugins/stk/voices/voices/clarinet/clarinet_instrument.h:
8764         * plugins/stk/voices/voices/clarinet/clarinet_model.cpp:
8765         * plugins/stk/voices/voices/clarinet/logo.png:
8766         * plugins/stk/voices/voices/clarinet/clarinet_instrument_view.cpp:
8767         * plugins/stk/voices/voices/clarinet/clarinet_model.h:
8768         * plugins/stk/voices/voices/clarinet/Makefile.am:
8769         * plugins/stk/voices/voices/clarinet/clarinet_instrument_view.h:
8770         * plugins/stk/voices/voices/b3/b3_instrument.cpp:
8771         * plugins/stk/voices/voices/b3/b3_model.h:
8772         * plugins/stk/voices/voices/b3/b3_model.cpp:
8773         * plugins/stk/voices/voices/b3/artwork.png:
8774         * plugins/stk/voices/voices/b3/b3_instrument_view.h:
8775         * plugins/stk/voices/voices/b3/logo.png:
8776         * plugins/stk/voices/voices/b3/b3_processor.h:
8777         * plugins/stk/voices/voices/b3/b3_instrument_view.cpp:
8778         * plugins/stk/voices/voices/b3/b3_instrument.h:
8779         * plugins/stk/voices/voices/b3/b3_processor.cpp:
8780         * plugins/stk/voices/voices/b3/Makefile.am:
8781         * plugins/stk/voices/voices/src/stk_model.cpp:
8782         * plugins/stk/voices/voices/percflute/percflute_instrument.h:
8783         * plugins/stk/voices/voices/percflute/percflute_model.h:
8784         * plugins/stk/voices/voices/percflute/percflute_instrument_view.h:
8785         * plugins/stk/voices/voices/percflute/percflute_processor.cpp:
8786         * plugins/stk/voices/voices/percflute/percflute_processor.h:
8787         * plugins/stk/voices/voices/percflute/artwork.png:
8788         * plugins/stk/voices/voices/percflute/percflute_instrument_view.cpp:
8789         * plugins/stk/voices/voices/percflute/percflute_instrument.cpp:
8790         * plugins/stk/voices/voices/percflute/logo.png:
8791         * plugins/stk/voices/voices/percflute/percflute_model.cpp:
8792         * plugins/stk/voices/voices/percflute/Makefile.am:
8793         * plugins/stk/voices/voices/blow_bottle/blow_bottle_processor.cpp:
8794         * plugins/stk/voices/voices/blow_bottle/blow_bottle_model.h:
8795         * plugins/stk/voices/voices/blow_bottle/blow_bottle_model.cpp:
8796         * plugins/stk/voices/voices/blow_bottle/artwork.png:
8797         * plugins/stk/voices/voices/blow_bottle/blow_bottle_processor.h:
8798         * plugins/stk/voices/voices/blow_bottle/blow_bottle_instrument.h:
8799         * plugins/stk/voices/voices/blow_bottle/blow_bottle_instrument_view.cpp:
8800         * plugins/stk/voices/voices/blow_bottle/logo.png:
8801         * plugins/stk/voices/voices/blow_bottle/blow_bottle_instrument_view.h:
8802         * plugins/stk/voices/voices/blow_bottle/blow_bottle_instrument.cpp:
8803         * plugins/stk/voices/voices/blow_bottle/Makefile.am:
8804         * plugins/stk/voices/voices/Makefile.am:
8805         * plugins/stk/voices/voices/brass/brass_instrument_view.h:
8806         * plugins/stk/voices/voices/brass/brass_instrument.cpp:
8807         * plugins/stk/voices/voices/brass/brass_processor.h:
8808         * plugins/stk/voices/voices/brass/brass_processor.cpp:
8809         * plugins/stk/voices/voices/brass/brass_instrument_view.cpp:
8810         * plugins/stk/voices/voices/brass/artwork.png:
8811         * plugins/stk/voices/voices/brass/brass_instrument.h:
8812         * plugins/stk/voices/voices/brass/logo.png:
8813         * plugins/stk/voices/voices/brass/brass_model.cpp:
8814         * plugins/stk/voices/voices/brass/brass_model.h:
8815         * plugins/stk/voices/voices/brass/Makefile.am:
8816         * plugins/stk/voices/voices/bandedwg/bandedwg_processor.h:
8817         * plugins/stk/voices/voices/bandedwg/bandedwg_instrument_view.h:
8818         * plugins/stk/voices/voices/bandedwg/bandedwg_processor.cpp:
8819         * plugins/stk/voices/voices/bandedwg/artwork.png:
8820         * plugins/stk/voices/voices/bandedwg/bandedwg_model.h:
8821         * plugins/stk/voices/voices/bandedwg/bandedwg_instrument.h:
8822         * plugins/stk/voices/voices/bandedwg/bandedwg_instrument.cpp:
8823         * plugins/stk/voices/voices/bandedwg/bandedwg_instrument_view.cpp:
8824         * plugins/stk/voices/voices/bandedwg/logo.png:
8825         * plugins/stk/voices/voices/bandedwg/bandedwg_model.cpp:
8826         * plugins/stk/voices/voices/bandedwg/Makefile.am:
8827         Started working on a multitimbral instrument that uses all of the
8828         voices available in STK.  Need to work out the differences in
8829         level among the voices and figure out what the controls actually
8830         do.  Simplist way to do that was to build them as individual
8831         instruments first.  The models, views, and processors should be
8832         reusable for the larger instrument.  Except for bandedwg and
8833         flute they all work, so if you're curious, add "voices" to the 
8834         Makefile.am in plugins/stk to get them to build.
8835         
8836 2007-01-30      Paul Giblock <pgllama/at/gmail/dot/com>
8838         * plugins/organic/organic.cpp:
8839         * plugins/organic/organic.h:
8840         Began split on Organic. But doesn't show in instrument list
8842         * plugins/lb302/lb302.cpp:
8843         Fixed comments
8845 2008-01-28      Paul Giblock <pgllama/at/gmail/dot/com>
8847         * plugins/lb302/lb302.cpp:
8848         * plugins/lb302/lb302.h:
8849         finished LB302 M/V-split. however, more changes can be made to meet
8850         the coding guidelines.  Let's save this job for LB303
8852         * include/automatable_model.h:
8853         cleaned up code for boolModel
8855 2008-01-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8857         * src/widgets/automatable_button.cpp:
8858         - call updateButtons() after model-change
8859         - use model()->value() rather than value()
8861         * plugins/triple_oscillator/triple_oscillator.cpp:
8862         fixed upper boundaries for wave-shape- and modulation-algo-models
8864 2008-01-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8866         * plugins/triple_oscillator/triple_oscillator.h:
8867         * plugins/triple_oscillator/triple_oscillator.cpp:
8868         initial M/V-split - lots of debugging and cleanups pending, however
8869         basically works :)
8871         * include/transformable_auto_model.h:
8872         added transformableAutoModel-class which is not used yet but might be
8873         helpful in some cases in the future
8875         * include/oscillator.h:
8876         * src/lib/oscillator.cpp:
8877         - changed coding-style for enum-constants
8878         - use model for external wave-shape- and modulation-algo-parameter
8880         * src/widgets/ladspa_control_view.cpp:
8881         added missing header
8883         * src/widgets/automatable_button.cpp:
8884         update buttons after changing button-group's value
8886 2008-01-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8888         * include/types.h:
8889         replaced own buggy valueRanges-calculations by numeric_limits-class
8891         * plugins/lb302/lb302.cpp:
8892         fixed broken plugin-entry-point
8894         * configure.in:
8895         * plugins/bass_booster/bass_booster.cpp:
8896         * plugins/bass_booster/bassbooster_controls.cpp:
8897         * plugins/stk/mallets/mallets.cpp:
8898         * include/automatable_model.h:
8899         * include/journalling_object.h:
8900         * src/audio/audio_file_device.cpp:
8901         * src/audio/audio_alsa.cpp:
8902         * src/audio/audio_oss.cpp:
8903         * src/audio/audio_port.cpp:
8904         * src/audio/audio_jack.cpp:
8905         * src/midi/midi_alsa_seq.cpp:
8906         * src/lib/project_journal.cpp:
8907         * src/lib/mmp.cpp:
8908         * src/lib/drumsynth.cpp:
8909         * src/widgets/group_box.cpp:
8910         * src/tracks/instrument_track.cpp:
8911         * src/core/effect_chain.cpp:
8912         * src/core/preset_preview_play_handle.cpp:
8913         * src/core/effect_control_dialog.cpp:
8914         * src/core/setup_dialog.cpp:
8915         * src/core/main.cpp:
8916         * src/core/mixer.cpp:
8917         * src/core/effect.cpp:
8918         * src/core/timeline.cpp:
8919         * src/core/effect_select_dialog.cpp:
8920         * src/core/automation_editor.cpp:
8921         * src/core/meter_dialog.cpp:
8922         various fixes for GCC 4.3
8924         * README:
8925         cleanups / fixes
8927         * include/automatable_model.h:
8928         cleanups / coding-style fixes
8930 2008-01-24      Paul Giblock <pgllama/at/gmail/dot/dotcom>
8932         * include/automatable_model.h:
8933         * src/widgets/knob.cpp:
8934         * src/core/arp_and_chords_tab_widget.cpp:
8935         * src/core/effect.cpp:
8936         * src/core/ladspa_control.cpp:
8937         * src/core/envelope_tab_widget.cpp:
8938         * plugins/audio_file_processor/audio_file_processor.cpp:
8939         add boolModel subclass in order to simplify the constructor
8941         * plugins/lb302/lb302.cpp:
8942         * plugins/lb302/lb302.h:
8943         split lb302 for M/V.  However, lmms_plugin_main() receives null data,
8944         which means the instrumentTrack cannot be set..
8946 2008-01-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8948         * src/core/effect_chain.cpp:
8949         * src/lib/mmp.cpp:
8950         added upgrade-path in order to properly load projects not using the
8951         new effect-data-structure
8953         * plugins/bass_booster/bass_booster.h:
8954         * plugins/ladspa_effect/ladspa_effect.h:
8955         * plugins/vst_effect/vst_effect.h:
8956         removed nodeName()-function as effects must not overload it (they have
8957         descriptors with they unique name in it)
8959         * include/effect_rack_view.h:
8960         * src/widgets/effect_rack_view.cpp:
8961         renamed updateView() to update() in order to also track
8962         dataChanged()-signals of model without an additional connection
8964         * src/widgets/combobox.cpp:
8965         fixed painting
8967         * src/widgets/ladspa_control_view.cpp:
8968         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
8969         made control-layouting work again (did not work at all after Qt4-port)
8971         * src/core/ladspa_control.cpp:
8972         added initialization for m_link-member-variable, optimized
8973         linkEnabledModel-initialization
8975         * src/widgets/knob.cpp:
8976         * plugins/ladspa_effect/ladspa_controls.cpp:
8977         coding style fixes
8979         * Makefile.am:
8980         moved ladspa_control_view.cpp to src/widgets/
8982 2008-01-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
8984         * plugins/ladspa_effect/Makefile.am:
8985         * plugins/ladspa_effect/ladspa_effect.h:
8986         * plugins/ladspa_effect/ladspa_effect.cpp:
8987         * plugins/ladspa_effect/ladspa_controls.h:
8988         * plugins/ladspa_effect/ladspa_controls.cpp:
8989         * plugins/ladspa_effect/ladspa_control_dialog.h:
8990         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
8991         made work again after all the changes in the last days...
8993         * Makefile.am:
8994         * include/ladspa_control.h:
8995         * include/ladspa_control_view.h:
8996         * src/core/ladspa_control.cpp:
8997         * src/core/ladspa_control_view.cpp:
8998         splitted ladspaControl-class into ladspaControl and ladspaControlView
9000 2008-01-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9002         * plugins/bass_booster/bassbooster_controls.h:
9003         * plugins/bass_booster/bass_booster.cpp:
9004         * plugins/bass_booster/bassbooster_control_dialog.cpp:
9005         * plugins/bass_booster/Makefile.am:
9006         * plugins/bass_booster/bassbooster_controls.cpp:
9007         * plugins/bass_booster/bass_booster.h:
9008         * plugins/bass_booster/bassbooster_control_dialog.h:
9009         made work with M/V as well as rewritten effect-framework
9011         * include/effect.h:
9012         * include/effect_control_dialog.h:
9013         * include/dummy_effect.h:
9014         * include/effect_controls.h:
9015         * src/widgets/effect_view.cpp:
9016         * src/core/effect_control_dialog.cpp:
9017         * src/core/effect.cpp:
9018         * Makefile.am:
9019         split off effectControlDialog into effectControlDialog and
9020         effectControls
9022         * src/core/song_editor.cpp:
9023         also connect to dataUnchanged()-signal of tempo-model in order to
9024         setup everything correct by connected slot
9026         * configure.in:
9027         - removed single-source-compile-feature
9028         - made FASTCALL-usage optional for the time being
9030         * data/locale/de.ts:
9031         * data/locale/de.qm:
9032         updated German localization
9034 2008-01-09      Paul Giblock <pgllama/at/gmail/dot/com>
9036         * acinclude.m4:
9037         use pkg-config for more accurate Qt directory detection
9039 2008-01-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9041         * plugins/ladspa_effect/ladspa_effect.cpp:
9042         * plugins/ladspa_effect/ladspa_effect.h:
9043         * plugins/bass_booster/bass_booster.cpp:
9044         * plugins/bass_booster/bass_booster.h:
9045         * plugins/vst_effect/vst_effect.cpp:
9046         changes for making effects work again with new effect-framework
9048         * plugins/audio_file_processor/audio_file_processor.cpp:
9049         * plugins/audio_file_processor/audio_file_processor.h:
9050         * plugins/stk/mallets/mallets.cpp:
9051         * plugins/stk/mallets/mallets.h:
9052         * plugins/ladspa_browser/ladspa_browser.cpp:
9053         * plugins/ladspa_browser/ladspa_browser.h:
9054         * plugins/kicker/kicker.cpp:
9055         * plugins/kicker/kicker.h:
9056         * include/dummy_plugin.h:
9057         * include/instrument.h:
9058         * include/plugin.h:
9059         * include/tool.h:
9060         * include/main_window.h:
9061         * include/mv_base.h:
9062         * include/dummy_instrument.h:
9063         * src/core/plugin.cpp:
9064         * src/core/tool.cpp:
9065         * src/core/import_filter.cpp:
9066         * src/core/instrument.cpp:
9067         * src/core/surround_area.cpp:
9068         * src/core/main_window.cpp:
9069         moved createView()-functionality from instrument- to plugin-class
9071         * include/tab_widget.h:
9072         code-formatting stuff
9074         * include/audio_port.h:
9075         * include/instrument_track.h:
9076         * include/sample_track.h:
9077         * src/audio/audio_port.cpp:
9078         * src/core/sample_play_handle.cpp:
9079         * src/tracks/instrument_track.cpp:
9080         * src/tracks/sample_track.cpp:
9081         integrated new effect-framework
9083         * Makefile.am:
9084         * include/dummy_effect.h:
9085         * include/effect.h:
9086         * include/effect_chain.h:
9087         * include/effect_control_dialog.h:
9088         * include/effect_label.h:
9089         * include/effect_rack_view.h:
9090         * include/effect_select_dialog.h:
9091         * include/effect_tab_widget.h:
9092         * include/effect_view.h:
9093         * src/core/effect.cpp:
9094         * src/core/effect_chain.cpp:
9095         * src/core/effect_control_dialog.cpp:
9096         * src/core/effect_select_dialog.cpp:
9097         * src/core/effect_tab_widget.cpp:
9098         * src/widgets/effect_label.cpp:
9099         * src/widgets/effect_view.cpp:
9100         * src/widgets/effect_rack_view.cpp:
9101         rewrote view-component of effect-framework and removed effectTabWidget
9103         * include/automatable_model.h:
9104         * src/widgets/automatable_slider.cpp:
9105         * src/widgets/group_box.cpp:
9106         * src/widgets/lcd_spinbox.cpp:
9107         * src/widgets/combobox.cpp:
9108         * src/widgets/knob.cpp:
9109         * src/widgets/automatable_button.cpp:
9110         pass model-pointer to modelView-constructor
9112 2008-01-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9114         * plugins/organic/organic.cpp:
9115         * plugins/bit_invader/bit_invader.cpp:
9116         * plugins/vibed/vibed.cpp:
9117         * plugins/triple_oscillator/triple_oscillator.cpp:
9118         * plugins/stk/mallets/mallets.cpp:
9119         make sure, pluginData-pointer is always initialized in playNote()
9121         * src/core/envelope_and_lfo_widget.cpp:
9122         simple range-checking
9124 2008-01-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9126         * plugins/ladspa_effect/ladspa_effect.cpp:
9127         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
9128         * plugins/ladspa_effect/ladspa_control_dialog.h:
9129         minor fixes in order to compile again with lately changed effect-API
9131         * src/core/effect_tab_widget.cpp:
9132         * src/lib/mmp.cpp:
9133         renabled XML-attribute "fxdisabled" to "fxenabled"
9135         * src/core/effect_tab_widget.cpp:
9136         * include/effect_tab_widget.h:
9137         made effects working again by using effect-chain's m_enabledModel as
9138         model for effect-groupbox
9140         * include/effect_chain.h:
9141         * src/core/effect_chain.cpp:
9142         * src/core/effect_tab_widget.cpp:
9143         removed bypassed-property and introduced m_enabledModel
9145         * include/effect.h:
9146         - made lot of methods const
9147         - renamed enabled() to isEnabled()
9149 2008-01-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9151         * src/core/bb_editor.cpp:
9152         fix missing pattern in new projects by also tracking
9153         dataUnchanged()-signals of bbComboBoxModel
9155         * include/automatable_model_templates.h:
9156         * include/mv_base.h:
9157         added dataUnchanged()-signal which should be emitted in case new data
9158         was not set for the model because it's been equal to old data
9160 2008-01-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9162         * plugins/stk/mallets/mallets.h:
9163         * plugins/stk/mallets/mallets.cpp:
9164         fixed outstanding issues with LED-checkbox and its model
9166 2008-01-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9168         * include/group_box.h:
9169         * src/widgets/group_box.cpp:
9170         removed animation-functionality as it's useless
9172         * src/core/arp_and_chords_tab_widget.cpp:
9173         * src/core/envelope_tab_widget.cpp:
9174         fixed boolModel-initializations - makes filter, arpeggio and chords
9175         work again
9177 2008-01-03      Danny McRae <khjklujn/at/yahoo/dot/com>
9179         * plugins/stk/mallets/mallets.h:
9180         * plugins/stk/mallets/mallets.cpp:
9181         made plugin work with M/V-architecture
9183 2008-01-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9185         * plugins/audio_file_processor/audio_file_processor.cpp:
9186         * plugins/audio_file_processor/audio_file_processor.h:
9187         made plugin work with M/V-architecture
9189         * include/engine.h:
9190         * include/plugin.h:
9191         * src/core/engine.cpp:
9192         fixes regarding coding style guidelines
9194 2008-01-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9196         * plugins/kicker/kicker.cpp:
9197         * plugins/kicker/kicker.h:
9198         made plugin work with M/V-architecture
9200         * include/instrument.h:
9201         * include/dummy_instrument.h:
9202         * include/mv_base.h:
9203         * src/tracks/instrument_track.cpp:
9204         * src/core/instrument.cpp:
9205         M/V-split for instrument-tracks
9207 2008-01-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9209         * include/dummy_effect.h:
9210         * src/core/effect.cpp:
9211         make dummyEffect really work in case we need it
9213 2008-01-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9215         * include/knob.h:
9216         * include/effect.h:
9217         * include/automatable_slider.h:
9218         * include/lcd_spinbox.h:
9219         * include/meter_dialog.h:
9220         * include/midi_tab_widget.h:
9221         * include/instrument_track.h:
9222         * include/ladspa_control.h:
9223         * include/piano_widget.h:
9224         * include/detuning_helper.h:
9225         * include/sample_play_handle.h:
9226         * include/piano_roll.h:
9227         * include/group_box.h:
9228         * include/envelope_tab_widget.h:
9229         * include/song_editor.h:
9230         * include/automatable_button.h:
9231         * include/tempo_sync_knob.h:
9232         * include/journalling_object.h:
9233         * include/setup_dialog.h:
9234         * include/export_project_dialog.h:
9235         * include/pixmap_button.h:
9236         * include/sample_track.h:
9237         * include/surround_area.h:
9238         * include/volume_knob.h:
9239         * include/bb_editor.h:
9240         * include/rack_plugin.h:
9241         * include/arp_and_chords_tab_widget.h:
9242         * include/envelope_and_lfo_widget.h:
9243         * include/combobox.h:
9244         * include/led_checkbox.h:
9245         * configure.in:
9246         * src/audio/audio_alsa.cpp:
9247         * src/audio/audio_oss.cpp:
9248         * src/audio/audio_jack.cpp:
9249         * src/widgets/rack_plugin.cpp:
9250         * src/widgets/automatable_slider.cpp:
9251         * src/widgets/lcd_spinbox.cpp:
9252         * src/widgets/group_box.cpp:
9253         * src/widgets/combobox.cpp:
9254         * src/widgets/led_checkbox.cpp:
9255         * src/widgets/volume_knob.cpp:
9256         * src/widgets/pixmap_button.cpp:
9257         * src/widgets/knob.cpp:
9258         * src/widgets/automatable_button.cpp:
9259         * src/widgets/tempo_sync_knob.cpp:
9260         * src/tracks/sample_track.cpp:
9261         * src/tracks/instrument_track.cpp:
9262         * src/core/arp_and_chords_tab_widget.cpp:
9263         * src/core/envelope_and_lfo_widget.cpp:
9264         * src/core/preset_preview_play_handle.cpp:
9265         * src/core/note_play_handle.cpp:
9266         * src/core/midi_tab_widget.cpp:
9267         * src/core/setup_dialog.cpp:
9268         * src/core/sample_play_handle.cpp:
9269         * src/core/export_project_dialog.cpp:
9270         * src/core/effect.cpp:
9271         * src/core/piano_roll.cpp:
9272         * src/core/track.cpp:
9273         * src/core/ladspa_control.cpp:
9274         * src/core/note.cpp:
9275         * src/core/envelope_tab_widget.cpp:
9276         * src/core/instrument.cpp:
9277         * src/core/piano_widget.cpp:
9278         * src/core/surround_area.cpp:
9279         * src/core/song_editor.cpp:
9280         * src/core/automation_pattern.cpp:
9281         * src/core/effect_tab_widget.cpp:
9282         * src/core/automation_editor.cpp:
9283         * src/core/bb_editor.cpp:
9284         * src/core/meter_dialog.cpp:
9285         * Makefile.am:
9286         adaption of M/V-architecture
9288         * include/automatable_object_templates.h:
9289         * include/automatable_object.h:
9290         removed as replaced by automatable_model.h and
9291         automatable_model_templates.h
9293         * include/mv_base.h:
9294         * src/core/mv_base.cpp:
9295         * include/automatable_model.h:
9296         * include/automatable_model_templates.h:
9297         added base-files for new M/V-architecture
9299         * src/widgets/rack_plugin.cpp:
9300         fixed wrong signal-slot-connection which made gate-parameter of
9301         effects not working
9303         * src/core/track_container.cpp:
9304         when removing tracks start removing at the end of track-vector (i.e.
9305         use m_trackWidgets.last() instead of m_trackWidgets.first()) - speeds
9306         up things *a lot*
9308         * README:
9309         * src/core/about_dialog.cpp:
9310         fixed version and extended copyright from 2007 to 2008
9312 2007-12-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9314         * plugins/midi_import/midi_import.cpp:
9315         load Patman-plugin instead of TripleOsc and try to load patch
9316         according to program-change-events
9318 2007-12-14      Paul Wayper <paulway/at/mabula/dot/net>
9320         * include/volume_knob.h:
9321         * src/widgets/volume_knob.cpp:
9322         * src/core/setup_dialog.cpp:
9323         * data/locale/nl.ts:
9324         * data/locale/it.ts:
9325         * data/locale/ca.ts:
9326         * data/locale/ru.ts:
9327         * data/locale/de.ts:
9328         * data/locale/sv.ts:
9329         Changed dbV to dBV throughout
9331 2007-12-12      Javier Serrano Polo <jasp00/at/terra/dot/es>
9333         * include/setup_dialog.h:
9334         * src/core/setup_dialog.cpp:
9335         - removed negative wording in general settings
9336         - removed GIMP references
9338         * data/locale/ca.ts:
9339         updated translation
9341 2007-12-11      Javier Serrano Polo <jasp00/at/terra/dot/es>
9343         * include/automation_editor.h:
9344         * include/piano_roll.h:
9345         * src/core/automation_editor.cpp:
9346         * src/core/piano_roll.cpp:
9347         optimized paint events
9349         * data/themes/default/style.css:
9350         * src/core/automation_editor.cpp:
9351         * src/core/piano_roll.cpp:
9352         use styled background
9354         * src/core/track_container.cpp:
9355         update display after loading settings
9357 2007-12-07      Javier Serrano Polo <jasp00/at/terra/dot/es>
9359         * include/main_window.h:
9360         * include/song_editor.h:
9361         * src/core/file_browser.cpp:
9362         * src/core/main_window.cpp:
9363         * src/core/song_editor.cpp:
9364         use custom modified project indicator, fixed
9366         * include/bb_editor.h:
9367         * include/song_editor.h:
9368         * include/track.h:
9369         * include/track_container.h:
9370         * src/core/bb_editor.cpp:
9371         * src/core/song_editor.cpp:
9372         * src/core/track.cpp:
9373         * src/core/track_container.cpp:
9374         * src/tracks/pattern.cpp:
9375         * src/tracks/sample_track.cpp:
9376         added layouts, fixes scrolling
9378         * include/track.h:
9379         * include/track_container.h:
9380         * src/core/bb_editor.cpp:
9381         * src/core/song_editor.cpp:
9382         * src/core/track.cpp:
9383         * src/core/track_container.cpp:
9384         * src/tracks/bb_track.cpp:
9385         associate track containers with tracks directly
9387         * src/core/track.cpp:
9388         * src/core/track_container.cpp:
9389         * src/tracks/bb_track.cpp:
9390         * src/tracks/instrument_track.cpp:
9391         * src/tracks/sample_track.cpp:
9392         simplified updateAfterTrackAdd() calls
9394         * data/themes/default/style.css:
9395         * src/core/track.cpp:
9396         use style sheet painting
9398         * include/track.h:
9399         * src/core/track.cpp:
9400         removed discouraged repaint()
9402         * include/bb_editor.h:
9403         * include/song_editor.h:
9404         * src/core/bb_editor.cpp:
9405         * src/core/song_editor.cpp:
9406         * src/widgets/project_notes.cpp:
9407         use default close event handler
9409         * src/core/bb_editor.cpp:
9410         * src/core/track.cpp:
9411         removed trivial asserts
9413         * data/locale/ca.ts:
9414         updated translation
9416 2007-11-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9418         * include/plugin.h:
9419         * include/base64.h:
9420         * src/lib/base64.cpp:
9421         fixed loading of base64-encoded data being generated via Qt3-version
9422         of QDataStream-class
9424 2007-11-27      Javier Serrano Polo <jasp00/at/terra/dot/es>
9426         * include/main_window.h:
9427         * include/song_editor.h:
9428         * src/core/engine.cpp:
9429         * src/core/main_window.cpp:
9430         * src/core/song_editor.cpp:
9431         * src/lib/project_journal.cpp:
9432         added modified project indicator
9434         * include/ladspa_base.h:
9435         * include/plugin.h:
9436         * plugins/ladspa_effect/ladspa_effect.cpp:
9437         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
9438         * plugins/ladspa_effect/ladspa_subplugin_features.h:
9439         fixed invalid key segfault
9441         * src/core/main_window.cpp:
9442         fixed instrument track visual glitches when loading
9444         * include/instrument_track.h:
9445         * src/tracks/instrument_track.cpp:
9446         removed QMdiSubWindow inheritance, fixes MDI focus segfault
9448         * src/core/track_container.cpp:
9449         fixed interrupted loading segfault
9451         * plugins/ladspa_effect/ladspa_effect.cpp:
9452         * plugins/ladspa_effect/ladspa_effect.h:
9453         removed singleton reference
9455         * src/core/config_mgr.cpp:
9456         integrated mkPath() calls
9458         * plugins/ladspa_browser/ladspa_browser.cpp:
9459         centralized title change
9461         * include/song_editor.h:
9462         * src/core/song_editor.cpp:
9463         reduced dependencies
9465         * data/locale/ca.ts:
9466         updated translation
9468 2007-11-26  Paul Giblock <drfaygo/at/gmail/dot/com>
9470         * plugins/lb302/lb302.cpp:
9471         * plugins/lb302/lb302.h:
9472         reverted to old lb302. There is a bug in sound output, will look
9473         into it, but I'd rather have a working repository
9475         * data/presets/LB302/Oh Synth.cs.xml:
9476         new preset
9478 2007-11-24  Paul Giblock <drfaygo/at/gmail/dot/com>
9480         * plugins/lb302/lb302.cpp:
9481         re-enabled lb302 background
9483         * plugins/lb302/artwork.png:
9484         updated skin I had sitting around
9486 2007-11-23  Paul Giblock <drfaygo/at/gmail/dot/com>
9488         * plugins/lb302/lb302.cpp:
9489         * plugins/lb302/lb302.h:
9490         reformated code to match code style rules
9492         * src/widgets/tool_button.cpp:
9493         improved appearance of toolbar buttons
9495 2007-11-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9497         * plugins/ladspa_browser/ladspa_browser.cpp:
9498         improved layout
9500         * src/widgets/tab_bar.cpp:
9501         - improved layout
9502         - change icon-size-property for tabButtons in order to make them look
9503           as in 0.3.x
9505 2007-11-23      Javier Serrano Polo <jasp00/at/terra/dot/es>
9507         * Makefile.am:
9508         * plugins/ladspa_browser/ladspa_browser.cpp:
9509         * plugins/ladspa_browser/ladspa_browser.h:
9510         * plugins/ladspa_browser/ladspa_description.cpp:
9511         * plugins/ladspa_browser/ladspa_description.h:
9512         * plugins/ladspa_browser/ladspa_port_dialog.cpp:
9513         * plugins/ladspa_browser/ladspa_port_dialog.h:
9514         * plugins/ladspa_browser/logo.png:
9515         * plugins/ladspa_browser/Makefile.am:
9516         * plugins/Makefile.am:
9517         resurrected LADSPA browser
9519         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
9520         minor simplification
9522         * src/core/song_editor.cpp:
9523         * src/widgets/automatable_slider.cpp:
9524         upgraded automatable sliders to Qt4
9526         * configure.in:
9527         * include/engine.h:
9528         * plugins/Makefile.am:
9529         * src/core/config_mgr.cpp:
9530         * src/core/engine.cpp:
9531         removed references to optional LADSPA support
9533         * data/themes/default/style.css:
9534         * src/core/main_window.cpp:
9535         moved workspace background to style sheet
9537         * src/core/main_window.cpp:
9538         added workspace scroll bars
9540         * include/track_container.h:
9541         * src/core/song_editor.cpp:
9542         removed obsolete centralWiget()
9544         * plugins/live_tool/live_tool.cpp:
9545         * plugins/live_tool/live_tool.h:
9546         fixed i18n
9548         * plugins/live_tool/live_tool.cpp:
9549         cosmetic changes
9551         * data/locale/ca.ts:
9552         updated translation
9554         * resources/*:
9555         removed unused images
9557 2007-11-22  Paul Giblock <drfaygo/at/gmail/dot/com>
9559         * src/widgets/text_float.cpp:
9560         * src/core/track.cpp:
9561         - fixed segfaults from clicking on track content objects after loading a
9562           project.  
9563         - I don't have a copy of 3.1 to reference, so I don't know where the
9564           textFloat is normally displayed.  Feel free to adjust.
9566 2007-11-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9568         * src/lib/sample_buffer.cpp:
9569         - duplicate ASCII-string from file.toAscii().constData() in order to not
9570           get corrupted - fixes random problems with loading OGG-files
9571         - sample-visualization now floating-point-based
9572         
9573         * src/widgets/combobox.cpp:
9574         fixed text-drawing
9576         * src/widgets/led_checkbox.cpp:
9577         * src/widgets/tab_widget.cpp:
9578         added workarounds for obviously non-working font-property
9580         * src/widgets/knob.cpp:
9581         - knob::drawKnob( ... ) now completely works with floats
9582         - use anti-aliasing when drawing tick
9584         * src/tracks/sample_track.cpp:
9585         fixed painting of sample-TCO's
9587         * src/core/arp_and_chords_tab_widget.cpp:
9588         removed obviously non-working comboBox::setFont( ... )-calls
9590         * src/core/envelope_and_lfo_widget.cpp:
9591         use line-width of 1.5 instead of 2 for drawing LFO
9593         * src/core/main.cpp:
9594         do not set default font-size
9596         * data/locale/de.ts:
9597         * data/locale/de.qm:
9598         fixed German localization
9600 2007-11-20      Javier Serrano Polo <jasp00/at/terra/dot/es>
9602         * include/drumsynth.h:
9603         * licenses/drumsynth.LICENSE:
9604         * src/lib/drumsynth.cpp:
9605         relicensed under GPL, thanks to Paul Kellett.
9607         * src/lib/sample_buffer.cpp:
9608         fixed Vorbis loading
9610         * include/effect_label.h:
9611         * plugins/live_tool/live_tool.cpp:
9612         * src/core/automation_editor.cpp:
9613         * src/core/bb_editor.cpp:
9614         * src/core/effect_tab_widget.cpp:
9615         * src/core/main_window.cpp:
9616         * src/core/song_editor.cpp:
9617         * src/core/tool.cpp:
9618         * src/widgets/effect_label.cpp:
9619         * src/widgets/project_notes.cpp:
9620         fixed MDI windows
9622         * include/main_window.h:
9623         * src/core/automation_editor.cpp:
9624         * src/core/main_window.cpp:
9625         * src/core/piano_roll.cpp:
9626         * src/core/song_editor.cpp:
9627         fixed non-MDI mode
9629         * include/automatable_button.h:
9630         * src/widgets/automatable_button.cpp:
9631         inherit from QPushButton
9633         * include/tool.h:
9634         * plugins/live_tool/live_tool.cpp:
9635         * plugins/live_tool/live_tool.h:
9636         * src/core/main_window.cpp:
9637         * src/core/tool.cpp:
9638         simplified tool interface
9640         * plugins/live_tool/live_tool.cpp:
9641         fixed instrument toggling
9643         * plugins/live_tool/live_tool.cpp:
9644         * plugins/live_tool/live_tool.h:
9645         fixed focus bug
9647         * include/effect_label.h:
9648         * src/widgets/effect_label.cpp:
9649         simplified window management
9651         * include/effect_label.h:
9652         * include/main_window.h:
9653         * plugins/vst_base/lvsl_client.cpp:
9654         * plugins/vst_effect/vst_effect.h:
9655         * src/core/track_container.cpp:
9656         reduced dependencies
9658         * data/samples/drumsynth/misc_bass/Makefile.am:
9659         * data/samples/drumsynth/misc_claps/Makefile.am:
9660         * data/samples/drumsynth/misc_electro/Makefile.am:
9661         * data/samples/drumsynth/misc_fx/Makefile.am:
9662         * data/samples/drumsynth/misc_hats/Makefile.am:
9663         * data/samples/drumsynth/misc_perc/Makefile.am:
9664         * data/samples/drumsynth/misc_synth/Makefile.am:
9665         * data/samples/drumsynth/r_b/Makefile.am:
9666         replaced more filenames with underscores, thanks to Vik.
9668 2007-11-20  Paul Giblock <drfaygo/at/gmail/dot/com>
9670         * src/core/main_window:
9671         fixed flashing/moving windows on project load 
9673         * src/core/song_editor.cpp:
9674         inverted direction of master-volume and master-pitch sliders
9676 2007-11-19  Paul Giblock <drfaygo/at/gmail/dot/com>
9678         * plugins/midi_import/midi_import.cpp:
9679         fixed debugging code so file would compile
9681 2007-11-18      Paul Giblock <drfaygo/at/gmail/dot/com>
9683         * include/track_container.h:
9684         removed some obsolete functions
9686 2007-11-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9688         * plugins/vst_base/lvsl_client.cpp:
9689         fixed usage of QMdiArea instead of QWorkspace
9691         * include/main_window.h:
9692         added inclusion of QMdiArea-header
9694         * include/track_container.h:
9695         fixed some code to match coding-style-guidelines
9697         * acinclude.m4:
9698         reverted Paul's private changes
9700 2007-11-18      Paul Giblock <drfaygo/at/gmail/dot/com>
9702         * plugins/ladspa_effect/ladspa_effect.h:
9703         * plugins/bass_booster/bass_booster.h:
9704         * plugins/stereo_enhancer/stereoenhancer_control_dialog.cpp
9705         * plugins/stereo_enhancer/stereoenhancer_control_dialog.h
9706         * include/main_window.h:
9707         * include/instrument_track.h:
9708         * include/track_container.h:
9709         * src/widgets/rack_plugin.cpp:
9710         * src/widgets/project_notes.cpp:
9711         * src/widgets/tempo_sync_knob.cpp:
9712         * src/tracks/instrument_track.cpp:
9713         * src/tracks/pattern.cpp:
9714         * src/core/track_container.cpp:
9715         * src/core/tool.cpp:
9716         * src/core/file_browser.cpp:
9717         * src/core/main.cpp:
9718         * src/core/piano_roll.cpp:
9719         * src/core/main_window.cpp:
9720         * src/core/song_editor.cpp:
9721         * src/core/automation_pattern.cpp:
9722         * src/core/automation_editor.cpp:
9723         * src/core/bb_editor.cpp:
9724         Replaced references to QWorkspace, made everything work with QMdiArea
9726         * include/main_window.h:
9727         mainWindow::workspace() now returns a QMdiArea
9729         * include/rack_plugin.h:
9730         Add m_subWindow to track QMdiSubWindow independently of the 
9731         control dialog
9733         * include/track_container.h:
9734         Emulate centralWidget by returning this pointer
9736         * AUTHORS:
9737         Added Paul Giblock as an author
9739         * src/core/track_container.cpp:
9740         Adding a subwindow before the widget is fully constructed causes
9741         problems: no icon, no geometry, and sometime multiple windows.
9742         Force each subclass to do their own workspace()->addWindow()
9744         * src/core/main_window.cpp:
9745         toggling of subWindows is performed on the parentWidgets. However,
9746         things like instrumentTrack are actually QMdiSubWindows themselves
9748 2007-11-14      Javier Serrano Polo <jasp00/at/terra/dot/es>
9750         * configure.in:
9751         * data/samples/drumsynth/*:
9752         * data/samples/Makefile.am:
9753         * include/drumsynth.h:
9754         * include/sample_buffer.h:
9755         * licenses/drumsynth.LICENSE:
9756         * Makefile.am:
9757         * plugins/audio_file_processor/audio_file_processor.cpp:
9758         * src/lib/drumsynth.cpp:
9759         * src/lib/sample_buffer.cpp:
9760         imported DrumSynth from 0.3 branch
9762         * include/sample_buffer.h:
9763         * plugins/audio_file_processor/artwork.png:
9764         * plugins/audio_file_processor/audio_file_processor.cpp:
9765         * plugins/audio_file_processor/audio_file_processor.h:
9766         * src/lib/sample_buffer.cpp:
9767         dropped dot drawing method
9769         * src/lib/sample_buffer.cpp:
9770         - fixed DrumSynth support when missing Vorbis
9771         - use working line drawing method from 0.3 branch
9773         * plugins/audio_file_processor/audio_file_processor.cpp:
9774         fixed sample display
9776         * src/core/track.cpp:
9777         * src/core/track_container.cpp:
9778         fixed track removal segfault
9780         * data/locale/ca.ts:
9781         updated translation
9783 2007-11-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9785         * plugins/stereo_enhancer/stereo_enhancer.h:
9786         * plugins/stereo_enhancer/stereo_enhancer.cpp:
9787         * plugins/stereo_enhancer/stereoenhancer_control_dialog.h:
9788         * plugins/stereo_enhancer/stereoenhancer_control_dialog.cpp:
9789         * plugins/stereo_enhancer/Makefile.am:
9790         added StereoEnhancer-plugin from
9791         Lou Herard <lherard /at/ gmail /dot/ com>
9793 2007-11-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
9795         * plugins/ladspa_effect/caps/basics.h:
9796         * plugins/ladspa_effect/caps/interface.cc:
9797         * configure.in:
9798         small fixes for cross-compilation
9800         * Makefile.am:
9801         * src/core/ladspa_base.cpp:
9802         removed as obsolete
9804 2007-11-10      Javier Serrano Polo <jasp00/at/terra/dot/es>
9806         * Makefile.am:
9807         * include/envelope_and_lfo_widget.h:
9808         * include/pixmap_button.h:
9809         * include/spc_bg_hndl_widget.h:
9810         * include/tab_widget.h:
9811         * plugins/audio_file_processor/audio_file_processor.cpp:
9812         * plugins/audio_file_processor/audio_file_processor.h:
9813         * plugins/bit_invader/bit_invader.cpp:
9814         * plugins/bit_invader/bit_invader.h:
9815         * plugins/organic/organic.cpp:
9816         * plugins/organic/organic.h:
9817         * plugins/patman/patman.cpp:
9818         * plugins/patman/patman.h:
9819         * plugins/vestige/vestige.cpp:
9820         * plugins/vestige/vestige.h:
9821         * src/core/envelope_and_lfo_widget.cpp:
9822         * src/widgets/group_box.cpp:
9823         * src/widgets/knob.cpp:
9824         * src/widgets/led_checkbox.cpp:
9825         * src/widgets/pixmap_button.cpp:
9826         * src/widgets/tab_widget.cpp:
9827         removed obsolete specialBgHandlingWidget
9829         * src/core/main_window.cpp:
9830         fixed label in save project dialog
9832         * data/themes/default/style.css:
9833         * include/track.h:
9834         * src/core/track.cpp:
9835         turned more code into style sheet
9837         * data/themes/default/style.css:
9838         * src/core/track.cpp:
9839         reverted positioning in style sheet
9841         * data/themes/default/style.css:
9842         restricted style inheritance
9844         * plugins/bass_booster/bassbooster_control_dialog.cpp:
9845         * plugins/flp_import/unrtf/parse.c:
9846         * plugins/vestige/vestige.h:
9847         * plugins/vst_effect/vst_control_dialog.cpp:
9848         * plugins/vst_effect/vst_effect.cpp:
9849         * plugins/vst_effect/vst_subplugin_features.cpp:
9850         removed Qt3 code
9852         * plugins/bit_invader/bit_invader.cpp:
9853         * plugins/bit_invader/bit_invader.h:
9854         * plugins/organic/organic.cpp:
9855         * plugins/organic/organic.h:
9856         * plugins/vestige/vestige.cpp:
9857         reduced dependencies
9859         * plugins/bit_invader/bit_invader.cpp:
9860         removed deprecated code
9862 2007-11-06      Javier Serrano Polo <jasp00/at/terra/dot/es>
9864         * include/track.h:
9865         * src/core/track.cpp:
9866         optimized trackOperationsWidget paint event
9868         * data/themes/default/style.css:
9869         * src/core/track.cpp:
9870         turned some code into style sheet
9872 2007-11-03      Javier Serrano Polo <jasp00/at/terra/dot/es>
9874         * plugins/singerbot/singerbot_proxy.cpp:
9875         initial release, separate process to deal with Festival
9877         * plugins/singerbot/file.h:
9878         initial release, file descriptor wrapper
9880         * plugins/singerbot/Makefile.am:
9881         * plugins/singerbot/singerbot.cpp:
9882         * plugins/singerbot/singerbot.h:
9883         use external proxy
9885         * include/main_window.h:
9886         * src/core/main_window.cpp:
9887         upgraded recently opened files feature
9889         * include/main_window.h:
9890         * src/core/main_window.cpp:
9891         * src/core/song_editor.cpp:
9892         fixed recently opened files segfault
9894         * include/mmp.h:
9895         * src/lib/mmp.cpp:
9896         simplified save extension handling
9898         * src/core/song_editor.cpp:
9899         * src/lib/mmp.cpp:
9900         fixed recently opened files bug (#1800364)
9902         * data/themes/default/style.css:
9903         * data/themes/Makefile.am:
9904         * include/config_mgr.h:
9905         * src/core/config_mgr.cpp:
9906         * src/core/main_window.cpp:
9907         added style sheet support
9909         * include/caption_menu.h:
9910         * src/widgets/caption_menu.cpp:
9911         initial release, context menu with a caption
9913         * plugins/vibed/impulse_editor.cpp:
9914         * plugins/vibed/nine_button_selector.cpp:
9915         * plugins/vibed/vibed.cpp:
9916         * src/core/piano_widget.cpp:
9917         * src/core/surround_area.cpp:
9918         * src/widgets/automatable_button.cpp:
9919         * src/widgets/automatable_slider.cpp:
9920         * src/widgets/combobox.cpp:
9921         * src/widgets/knob.cpp:
9922         * src/widgets/lcd_spinbox.cpp:
9923         * src/widgets/rack_plugin.cpp:
9924         * src/widgets/tempo_sync_knob.cpp:
9925         use caption menu
9927         * src/core/main_window.cpp:
9928         set workspace's background with its own method
9930         * acinclude.m4:
9931         * include/file_browser.h:
9932         * src/core/file_browser.cpp:
9933         * src/core/main_window.cpp:
9934         replaced Qt3-based file browser implementation
9936         * src/core/file_browser.cpp:
9937         enabled match in directory content filter
9939         * src/widgets/automatable_slider.cpp:
9940         fixed mouse release segfault
9942         * acinclude.m4:
9943         * src/core/main.cpp:
9944         assume Qt translations are properly configured
9946         * src/core/main.cpp:
9947         use standard return values
9949         * src/core/config_mgr.cpp:
9950         removed line breaks inside paragraphs, wrapping should work
9952         * src/audio/audio_alsa.cpp:
9953         * src/midi/midi_alsa_seq.cpp:
9954         removed discouraged alloca calls
9956         * include/main_window.h:
9957         * include/rack_plugin.h:
9958         * plugins/bass_booster/bass_booster.h:
9959         * plugins/ladspa_effect/ladspa_effect.h:
9960         * plugins/vst_base/lvsl_client.cpp:
9961         * plugins/vst_effect/vst_effect.h:
9962         * src/core/automation_editor.cpp:
9963         * src/core/file_browser.cpp:
9964         * src/core/main_window.cpp:
9965         * src/core/piano_roll.cpp:
9966         * src/core/surround_area.cpp:
9967         * src/core/tool.cpp:
9968         * src/core/track_container.cpp:
9969         * src/tracks/instrument_track.cpp:
9970         * src/widgets/combobox.cpp:
9971         * src/widgets/effect_label.cpp:
9972         * src/widgets/knob.cpp:
9973         * src/widgets/project_notes.cpp:
9974         * src/widgets/rack_plugin.cpp:
9975         * src/widgets/tempo_sync_knob.cpp:
9976         reduced include dependencies
9978         * plugins/flp_import/unrtf/attr.c:
9979         * plugins/flp_import/unrtf/attr.h:
9980         * plugins/flp_import/unrtf/convert.c:
9981         * plugins/flp_import/unrtf/error.c:
9982         * plugins/flp_import/unrtf/error.h:
9983         * plugins/flp_import/unrtf/html.c:
9984         * plugins/flp_import/unrtf/malloc.c:
9985         * plugins/flp_import/unrtf/malloc.h:
9986         * plugins/flp_import/unrtf/output.c:
9987         * plugins/flp_import/unrtf/output.h:
9988         * src/audio/audio_file_ogg.cpp:
9989         replaced deprecated string conversions
9991         * plugins/lb302/lb302.cpp:
9992         * src/widgets/kmultitabbar.cpp:
9993         fixed different signedness comparison
9995         * plugins/lb302/lb302.cpp:
9996         * plugins/midi_import/midi_import.cpp:
9997         commented out unused variables
9999         * plugins/flp_import/unrtf/convert.c:
10000         replaced empty conditional
10002         * src/widgets/kmultitabbar.cpp:
10003         added copyright notice
10005         * src/core/automation_pattern.cpp:
10006         * src/core/config_mgr.cpp:
10007         * src/core/import_filter.cpp:
10008         * src/core/ladspa_manager.cpp:
10009         * src/core/setup_dialog.cpp:
10010         * src/core/track.cpp:
10011         * src/core/track_container.cpp:
10012         * src/lib/sample_buffer.cpp:
10013         * src/midi/midi_mapper.cpp:
10014         * src/widgets/tab_bar.cpp:
10015         * src/widgets/text_float.cpp:
10016         removed old undefs
10018         * configure.in:
10019         readded unsafe-loop-optimizations warning
10021         * data/locale/ca.ts:
10022         updated translation
10024         * data/locale/qt_*.qm:
10025         removed old Qt3 translations
10027 2007-10-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10029         * src/core/note_play_handle.cpp:
10030         fixed crash in case of framesLeft() being less or equal zero while
10031         instrument::playNote is being called (e.g. when decreasing release
10032         while a note is active)
10034 2007-10-04      Javier Serrano Polo <jasp00/at/terra/dot/es>
10036         * configure.in:
10037         * plugins/vst_base/lvsl_client.cpp:
10038         * plugins/vst_base/lvsl_server.cpp:
10039         * plugins/vst_base/Makefile.am:
10040         * src/lib/journalling_object.cpp:
10041         amd64 fixes
10043         * plugins/vestige/vestige.cpp:
10044         fixed loading deadlock
10046         * plugins/vst_base/Makefile.am:
10047         renamed lvsl_server.c to lvsl_server.cpp
10049         * plugins/vst_base/lvsl_server.cpp:
10050         restricted shared memory permissions
10052         * plugins/vst_base/communication.h:
10053         improved string communication
10055         * configure.in:
10056         look for wine header in system folder too
10058         * configure.in:
10059         * Makefile.am:
10060         * plugins/Makefile.am:
10061         added extra plugins support
10063         * include/main_window.h:
10064         * src/core/main_window.cpp:
10065         use desktop services for online help
10067         * src/core/main_window.cpp:
10068         - use background artwork
10069         - updated wiki URL
10071         * src/core/automation_editor.cpp:
10072         * src/core/piano_roll.cpp:
10073         * src/tracks/instrument_track.cpp:
10074         * src/widgets/effect_label.cpp:
10075         fixed null workspace segfaults
10077         * plugins/stk/mallets/mallets.cpp:
10078         enabled missing files message
10080         * src/core/main.cpp:
10081         use processed argc/argv rather than deprecated functions
10083         * plugins/singerbot/singerbot.cpp:
10084         detected heap corruption
10086         * data/locale/ca.ts:
10087         updated translation
10089         * plugins/polyb302/polyb302.cpp:
10090         * plugins/polyb302/polyb302.h:
10091         dropped Qt3-support
10093         * plugins/polyb302/polyb302.cpp:
10094         applied relevant LB302 changes
10096 2007-09-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10098         * include/mixer.h:
10099         * include/visualization_widget.h:
10100         * src/core/mixer.cpp:
10101         * src/widget/visualization_widget.cpp:
10102         reworked code for retrieving current mixer-buffer for visualizing it -
10103         do not use signal/slot-mechanism for passing pointer and use
10104         currentReadBuffer() + mixer-mutex instead which probably fixes some
10105         mixer-related crashes
10107         * src/widget/effect_label.cpp:
10108         set window-title for effect-chain-windows of a sample-track etc.
10110 2007-09-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10112         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
10113         * include/effect_select_dialog.h:
10114         * src/core/effect_select_dialog.cpp:
10115         replaced Q3ListBox with QListWidget and made layouting-stuff of
10116         plugin-description-widget working properly
10118         * data/locale/de.ts:
10119         fixed some strings in German localization
10121 2007-09-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10123         * plugins/patman/patman.cpp:
10124         * plugins/audio_file_processor/audio_file_processor.cpp:
10125         cleanups
10127         * plugins/ladspa_base:
10128         * plugins/ladspa_base/Makefile.am:
10129         removed
10131         * configure.in:
10132         * Makefile.am:
10133         * plugins/ladspa_effect/Makefile.am:
10134         * src/core/engine.cpp:
10135         * src/core/ladspa_base.cpp:
10136         * src/core/ladspa_port_dialog.cpp:
10137         * src/core/ladspa_2_lmms.cpp:
10138         * src/core/ladspa_manager.cpp:
10139         * src/core/ladspa_control.cpp:
10140         * include/ladspa_manager.h:
10141         * include/ladspa_2_lmms.h:
10142         * include/ladspa_control.h:
10143         * include/ladspa_port_dialog.h:
10144         * include/ladspa_base.h:
10145         moved all code from LADSPA-base-library into LMMS-core
10147 2007-09-02      Javier Serrano Polo <jasp00/at/terra/dot/es>
10149         * include/project_notes.h:
10150         * src/widgets/project_notes.cpp:
10151         made usable with Qt4
10153 2007-08-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10155         * plugins/patman/patman.cpp:
10156         * plugins/patman/patman.h:
10157         * plugins/ladspa_effect/ladspa_effect.cpp:
10158         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
10159         * plugins/ladspa_effect/ladspa_effect.h:
10160         * plugins/ladspa_effect/ladspa_control_dialog.h:
10161         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
10162         * plugins/organic/organic.cpp:
10163         * plugins/lb302/lb302.cpp:
10164         * plugins/bit_invader/graph.cpp:
10165         * plugins/bit_invader/bit_invader.cpp:
10166         * plugins/bit_invader/graph.h:
10167         * plugins/vst_effect/vst_effect.h:
10168         * plugins/vibed/graph.cpp:
10169         * plugins/vibed/impulse_editor.h:
10170         * plugins/vibed/nine_button_selector.h:
10171         * plugins/vibed/vibed.h:
10172         * plugins/vibed/graph.h:
10173         * plugins/vibed/string_container.h:
10174         * plugins/vibed/impulse_editor.cpp:
10175         * plugins/vibed/nine_button_selector.cpp:
10176         * plugins/vibed/vibed.cpp:
10177         * plugins/triple_oscillator/triple_oscillator.cpp:
10178         * plugins/singerbot/singerbot.h:
10179         * plugins/singerbot/singerbot.cpp:
10180         * plugins/live_tool/live_tool.cpp:
10181         * plugins/ladspa_base/ladspa_manager.cpp:
10182         * plugins/ladspa_base/ladspa_2_lmms.h:
10183         * plugins/ladspa_base/ladspa_manager.h:
10184         * plugins/ladspa_base/ladspa_control.cpp:
10185         * plugins/ladspa_base/ladspa_port_dialog.cpp:
10186         * plugins/ladspa_base/ladspa_control.h:
10187         * plugins/ladspa_base/ladspa_port_dialog.h:
10188         * plugins/ladspa_base/ladspa_2_lmms.cpp:
10189         * plugins/audio_file_processor/audio_file_processor.cpp:
10190         * plugins/audio_file_processor/audio_file_processor.h:
10191         * plugins/stk/mallets/mallets.cpp:
10192         * plugins/stk/mallets/mallets.h:
10193         * plugins/vestige/vestige.cpp:
10194         * plugins/vst_base/lvsl_client.cpp:
10195         * plugins/vst_base/lvsl_client.h:
10196         * plugins/kicker/kicker.cpp:
10197         * plugins/Makefile.am:
10198         * plugins/flp_import/flp_import.h:
10199         * plugins/flp_import/flp_import.cpp:
10200         * plugins/midi_import/midi_import.h:
10201         * plugins/midi_import/midi_import.cpp:
10202         * include/mmp.h:
10203         * include/knob.h:
10204         * include/cpuload_widget.h:
10205         * include/fade_button.h:
10206         * include/templates.h:
10207         * include/automatable_slider.h:
10208         * include/lcd_spinbox.h:
10209         * include/track.h:
10210         * include/spc_bg_hndl_widget.h:
10211         * include/note.h:
10212         * include/tool_button.h:
10213         * include/embed.h:
10214         * include/name_label.h:
10215         * include/midi_alsa_raw.h:
10216         * include/gui_templates.h:
10217         * include/visualization_widget.h:
10218         * include/tab_widget.h:
10219         * include/config_mgr.h:
10220         * include/midi_tab_widget.h:
10221         * include/import_filter.h:
10222         * include/mixer.h:
10223         * include/instrument_track.h:
10224         * include/audio_port.h:
10225         * include/instrument.h:
10226         * include/text_float.h:
10227         * include/piano_widget.h:
10228         * include/sample_buffer.h:
10229         * include/effect_select_dialog.h:
10230         * include/automation_pattern.h:
10231         * include/midi_mapper.h:
10232         * include/nstate_button.h:
10233         * include/plugin.h:
10234         * include/clipboard.h:
10235         * include/note_play_handle.h:
10236         * include/side_bar.h:
10237         * include/rack_view.h:
10238         * include/pattern.h:
10239         * include/string_pair_drag.h:
10240         * include/audio_file_device.h:
10241         * include/kmultitabbar.h:
10242         * include/file_browser.h:
10243         * include/base64.h:
10244         * include/audio_jack.h:
10245         * include/about_dialog.h:
10246         * include/piano_roll.h:
10247         * include/group_box.h:
10248         * include/envelope_tab_widget.h:
10249         * include/rubberband.h:
10250         * include/bb_track.h:
10251         * include/song_editor.h:
10252         * include/project_notes.h:
10253         * include/effect_tab_widget.h:
10254         * include/kmultitabbar-qt3.h:
10255         * include/automatable_button.h:
10256         * include/midi_alsa_seq.h:
10257         * include/tab_button.h:
10258         * include/journalling_object.h:
10259         * include/setup_dialog.h:
10260         * include/export_project_dialog.h:
10261         * include/rename_dialog.h:
10262         * include/pixmap_button.h:
10263         * include/tab_bar.h:
10264         * include/effect_label.h:
10265         * include/automatable_object_templates.h:
10266         * include/sample_track.h:
10267         * include/timeline.h:
10268         * include/surround_area.h:
10269         * include/main_window.h:
10270         * include/audio_device.h:
10271         * include/midi_client.h:
10272         * include/automatable_object.h:
10273         * include/automation_editor.h:
10274         * include/midi_port.h:
10275         * include/audio_sample_recorder.h:
10276         * include/bb_editor.h:
10277         * include/effect_chain.h:
10278         * include/arp_and_chords_tab_widget.h:
10279         * include/project_journal.h:
10280         * include/plugin_browser.h:
10281         * include/envelope_and_lfo_widget.h:
10282         * include/preset_preview_play_handle.h:
10283         * include/qt3support.h:
10284         * include/track_container.h:
10285         * include/combobox.h:
10286         * include/side_bar_widget.h:
10287         * include/play_handle.h:
10288         * include/qxembed.h:
10289         * include/xqmap.h:
10290         * configure.in:
10291         * src/audio/audio_file_device.cpp:
10292         * src/audio/audio_alsa.cpp:
10293         * src/audio/audio_oss.cpp:
10294         * src/audio/audio_jack.cpp:
10295         * src/midi/midi_client.cpp:
10296         * src/midi/midi_mapper.cpp:
10297         * src/midi/midi_oss.cpp:
10298         * src/midi/midi_alsa_seq.cpp:
10299         * src/midi/midi_alsa_raw.cpp:
10300         * src/lib/string_pair_drag.cpp:
10301         * src/lib/base64.cpp:
10302         * src/lib/mmp.cpp:
10303         * src/lib/journalling_object.cpp:
10304         * src/lib/sample_buffer.cpp:
10305         * src/lib/embed.cpp:
10306         * src/widgets/rack_plugin.cpp:
10307         * src/widgets/automatable_slider.cpp:
10308         * src/widgets/visualization_widget.cpp:
10309         * src/widgets/group_box.cpp:
10310         * src/widgets/lcd_spinbox.cpp:
10311         * src/widgets/rubberband.cpp:
10312         * src/widgets/tool_button.cpp:
10313         * src/widgets/combobox.cpp:
10314         * src/widgets/text_float.cpp:
10315         * src/widgets/tab_widget.cpp:
10316         * src/widgets/rack_view.cpp:
10317         * src/widgets/led_checkbox.cpp:
10318         * src/widgets/side_bar_widget.cpp:
10319         * src/widgets/project_notes.cpp:
10320         * src/widgets/volume_knob.cpp:
10321         * src/widgets/kmultitabbar.cpp:
10322         * src/widgets/qxembed.cpp:
10323         * src/widgets/rename_dialog.cpp:
10324         * src/widgets/pixmap_button.cpp:
10325         * src/widgets/nstate_button.cpp:
10326         * src/widgets/knob.cpp:
10327         * src/widgets/automatable_button.cpp:
10328         * src/widgets/tempo_sync_knob.cpp:
10329         * src/widgets/fade_button.cpp:
10330         * src/widgets/cpuload_widget.cpp:
10331         * src/widgets/tab_bar.cpp:
10332         * src/widgets/tooltip.cpp:
10333         * src/tracks/sample_track.cpp:
10334         * src/tracks/bb_track.cpp:
10335         * src/tracks/instrument_track.cpp:
10336         * src/tracks/pattern.cpp:
10337         * src/core/plugin.cpp:
10338         * src/core/arp_and_chords_tab_widget.cpp:
10339         * src/core/plugin_browser.cpp:
10340         * src/core/envelope_and_lfo_widget.cpp:
10341         * src/core/preset_preview_play_handle.cpp:
10342         * src/core/track_container.cpp:
10343         * src/core/config_mgr.cpp:
10344         * src/core/midi_tab_widget.cpp:
10345         * src/core/effect_control_dialog.cpp:
10346         * src/core/import_filter.cpp:
10347         * src/core/setup_dialog.cpp:
10348         * src/core/file_browser.cpp:
10349         * src/core/main.cpp:
10350         * src/core/mixer.cpp:
10351         * src/core/export_project_dialog.cpp:
10352         * src/core/about_dialog.cpp:
10353         * src/core/piano_roll.cpp:
10354         * src/core/track.cpp:
10355         * src/core/engine.cpp:
10356         * src/core/note.cpp:
10357         * src/core/timeline.cpp:
10358         * src/core/envelope_tab_widget.cpp:
10359         * src/core/surround_area.cpp:
10360         * src/core/piano_widget.cpp:
10361         * src/core/effect_select_dialog.cpp:
10362         * src/core/main_window.cpp:
10363         * src/core/song_editor.cpp:
10364         * src/core/automation_pattern.cpp:
10365         * src/core/name_label.cpp:
10366         * src/core/effect_tab_widget.cpp:
10367         * src/core/automation_editor.cpp:
10368         * src/core/bb_editor.cpp:
10369         * acinclude.m4:
10370         * Makefile.am:
10371         dropped Qt3-support and improved Qt4-support
10373 2007-08-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10375         * configure.in:
10376         bumped to 0.4.x development series
10378 2007-08-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10380         * configure.in:
10381         * README:
10382         * lmms.spec.in:
10383         finally made 0.3.0 release :)
10385         * Makefile.am:
10386         added missing entry for 3rd-party samplerate.h
10388         * data/projects/cool_songs/Makefile.am:
10389         * data/projects/covers/Makefile.am:
10390         * data/projects/demos/Makefile.am:
10391         * data/projects/misc/Makefile.am:
10392         * data/projects/tutorials/Makefile.am:
10393         added missing mmpz-wildcard
10395         * data/projects/covers/MonkeyIsland1-Intro.mmpz:
10396         another cool cover
10398         * data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmp:
10399         removed
10401         * data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmpz:
10402         reworked
10404         * data/projects/demos/demo1.mmp:
10405         * data/projects/demos/demo2.mmp:
10406         * data/projects/demos/demo3.mmp:
10407         * data/projects/cool_songs/Siegel-DreamWave.mmp:
10408         updated
10410         * data/projects/misc/lb302quick.mmp:
10411         * data/projects/demos/basses-demo.mmp:
10412         removed because of really low-quality and/or duplicate
10414         * data/projects/demos/lb302quick.mmpz:
10415         added another demo
10417         * data/projects/cool_songs/StrictProduction-Lamentelnes.mmp:
10418         * data/projects/cool_songs/StrictProduction-DearJonDoe.mmp:
10419         * data/projects/cool_songs/OrtalDj-FirstProyect.mmp:
10420         * data/projects/cool_songs/Siegel-SpeedTrack.mmp:
10421         * data/projects/cool_songs/Chris-RaveRiff.mmpz:
10422         * data/projects/cool_songs/MysthR-Living.mmpz:
10423         * data/projects/cool_songs/j1m-DingDong.mmp:
10424         * data/projects/cool_songs/BlueWolf-DreamTravel.mmp:
10425         * data/projects/cool_songs/Silva-ElvesCall.mmp:
10426         added some more really cool projects
10428         * data/samples/drums/bassdrum04.ogg:
10429         resampled to end at zero-level - fixes clicks in some projects
10431         * data/samples/drums/nasty_bass01.ogg:
10432         * data/samples/drums/nasty_snare01.ogg:
10433         * data/samples/drums/rim01.ogg:
10434         * data/samples/drums/ride02.ogg:
10435         * data/samples/drums/nasty_rim01.ogg:
10436         * data/samples/drums/hihat_opened03.ogg
10437         * data/samples/misc/applause01.ogg:
10438         added samples
10440         * data/presets/TripleOscillator/SawLead.cs.xml:
10441         * data/presets/TripleOscillator/SawLead2.cs.xml:
10442         * data/presets/TripleOscillator/HardClipping.cs.xml:
10443         * data/presets/TripleOscillator/PowerStrings.cs.xml:
10444         * data/presets/TripleOscillator/SquareLead.cs.xml:
10445         * data/presets/TripleOscillator/SquareLead2.cs.xml:
10446         added some presets
10448         * plugins/lb302/lb302.cpp:
10449         removed debug-out
10451         * plugins/audio_file_processor/audio_file_processor.h:
10452         * plugins/audio_file_processor/audio_file_processor.cpp:
10453         * plugins/bit_invader/bit_invader.h:
10454         * plugins/bit_invader/bit_invader.cpp:
10455         added applyRelease(...)-call in playNote(...) and
10456         re-implemented desiredReleaseFrames()-method
10458         * include/mmp.h:
10459         * src/lib/mmp.cpp:
10460         * src/tracks/instrument_track.cpp:
10461         * src/core/main_window.cpp:
10462         * src/core/song_editor.cpp:
10463         fixed some bugs concerning recent-files-list
10465 2007-08-20      dieEasy <dieeasy/at/cheapnet/dot/it>
10467         * data/locale/it.ts:
10468         updated Italian localization-file
10470 2007-08-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10472         * data/locale/de.ts:
10473         * data/locale/de.qm:
10474         updated German localization-file
10476         * Makefile.am:
10477         fixed command for updating TS-files
10479         * include/config_mgr.h:
10480         * include/main_window.h:
10481         * src/core/config_mgr.cpp:
10482         * src/core/main_window.cpp:
10483         added support for "Recently opened files"-menu
10485         * src/core/main_window.cpp:
10486         - cleanups
10487         - limit x-coordinate of a widget to be >= 0 in
10488           mainWindow::restoreWidgetState( ... ) - fixes bug with appearently
10489           inacccessible title-bars of piano-roll, song-editor etc. after
10490           loading project
10492         * include/config_mgr.h:
10493         * src/core/engine.cpp:
10494         also destroy config-manager at engine::destroy()
10496         * src/audio/audio_jack.cpp:
10497         added define for support for per-track audio-ports - almost works
10498         except that the buffers of the audio-port are already cleared again at
10499         the time the callback fills the buffers - will need an additional
10500         buffer in audio-ports or something like that
10502         * src/core/mixer.cpp:
10503         * src/lib/journalling_object.cpp:
10504         * src/lib/project_journal.cpp:
10505         * src/widgets/knob.cpp:
10506         removed debug-out
10508         * plugins/patman/patman.cpp:
10509         set directory of sample-selection-dialog to /usr/share/midi/freepats
10510         if it exists
10512         * configure.in:
10513         * plugins/Makefile.am:
10514         * plugins/vibed/vibed.cpp:
10515         * lib/src/mmp.cpp:
10516         replaced obsolete PluckedStringSynth with Vibed
10518         * configure.in:
10519         * plugins/Makefile.am:
10520         removed Polyb302 from build as the same results can be achieved either
10521         via (improved and maintained) LB302 or TripleOsc+filter - Polyb302
10522         just increases redundancy and adds extra maintainance-work
10524         * plugins/stk/mallets/mallets.cpp:
10525         do not crash if Stk-files are missing
10527 2007-08-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10529         * plugins/lb302/lb302.cpp:
10530         * plugins/lb302/lb302.h:
10531         - rewrote code for monophonic behaviour (calculation of position at
10532           which to resume states etc.)
10533         - added some debugging-stuff
10534         
10535         * src/core/mixer.cpp:
10536         remove play-handles *after* we played all play-handles
10538         * src/tracks/instrument_track.cpp:
10539         fixed a bug in monophonic behaviour
10541 2007-08-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10543         * include/instrument.h:
10544         * src/tracks/instrument_track.cpp:
10545         reverted previous changes (behaviour with monophonic instruments)
10547 2007-08-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10549         * plugins/triple_oscillator/triple_oscillator.h:
10550         * plugins/triple_oscillator/triple_oscillator.cpp:
10551         use new applyRelease()-method
10553         * include/instrument.h:
10554         * src/core/instrument.cpp:
10555         added method instrument::applyRelease( ... ) which applies a release
10556         on given buffer according to the value returned by
10557         desiredReleaseFrames() - instruments can use this easily by simply
10558         calling this method before calling
10559         getInstrumentTrack()->processAudioBuffer()
10561         * src/core/preset_preview_play_handle.cpp:
10562         * src/tracks/instrument_track.cpp:
10563         use only half of valueRange<f_cnt_t>::max because otherwise we have
10564         overflows at several places
10566         * src/core/note_play_handle.cpp:
10567         fixed framesLeft()-method to return correct values if plugin has
10568         desiredReleaseFrames() > 0
10570         * include/note_play_handle.h:
10571         cleanups
10573         * configure.in:
10574         bumped to 0.3.0-rc2
10576         * src/lib/mmp.cpp:
10577         added more compat-code to upgrade() for being able to properly open
10578         files created by 0.0.9 and the whole 0.1.x-series
10580         * plugins/flp_import/flp_import.cpp:
10581         * include/arp_and_chords_tab_widget.h:
10582         * src/core/arp_and_chords_tab_widget.cpp:
10583         * src/lib/mmp.cpp:
10584         cleaned up all the arpeggio-direction-hacks - now the values are UP
10585         (0) to RANDOM (3) at *all* places - required some compat-hacks in
10586         mmp-upgrade()-method
10588         * include/file_browser.h:
10589         * src/core/file_browser.cpp:
10590         protect m_previewPlayHandle with mutex - fixes crash when releasing
10591         mouse button on preset-file with VST-plugin/-effect while VST-plugin
10592         is still loading
10594 2007-08-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10596         * src/widget/visualization_widget.cpp:
10597         proper visualization even with period-sizes < 128
10599         * plugins/audio_file_processor/audio_file_processor.cpp:
10600         * plugins/bit_invader/bit_invader.cpp:
10601         * plugins/kicker/kicker.cpp:
10602         * plugins/lb302/lb302.cpp:
10603         * plugins/patman/patman.cpp:
10604         * plugins/plucked_string_synth/plucked_string_synth.cpp:
10605         * plugins/polyb302/polyb302.cpp:
10606         * plugins/singerbot/singerbot.cpp:
10607         * plugins/stk/mallets/mallets.cpp:
10608         * plugins/vibed/vibed.cpp:
10609         removed check for framesLeftForCurrentPeriod() being zero - fixed by
10610         patch below
10612         * src/tracks/instrument_track.cpp:
10613         - acquire mixer-lock while calling noteOff() in
10614           instrumentTrack::processInEvent( ... ) - fixes asynchronously
10615           modifications of variables in notePlayHandle which led to segfaults in
10616           some cases
10617         - when encountering old running notes on monophonic instruments only
10618           clear the part of the audio-port-buffer where the new note will be
10619           mixed in
10621 2007-08-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10623         * plugins/audio_file_processor/audio_file_processor.cpp:
10624         * plugins/bit_invader/bit_invader.cpp:
10625         * plugins/kicker/kicker.cpp:
10626         * plugins/lb302/lb302.cpp:
10627         * plugins/patman/patman.cpp:
10628         * plugins/plucked_string_synth/plucked_string_synth.cpp:
10629         * plugins/polyb302/polyb302.cpp:
10630         * plugins/singerbot/singerbot.cpp:
10631         * plugins/stk/mallets/mallets.cpp:
10632         * plugins/vibed/vibed.cpp:
10633         added check for framesLeftForCurrentPeriod() being zero - fixes
10634         segfault in some cases
10636         * src/tracks/instrument_track.cpp:
10637         - do not simply pass-through _frames-parameter, use
10638           notePlayHandle::framesLeftForCurrentPeriod() if possible
10639         - disabled basic envelopes for the time being
10640         - better handling of monophonic instruments
10641         - do not play new notePlayHandles directly, set offset instead and let
10642           mixer manage the rest
10644         * src/tracks/sample_track.cpp:
10645         do not play new samplePlayHandles directly, set offset instead and let
10646         mixer manage the rest
10648         * include/note_play_handle.h:
10649         - removed framesAhead-property - now replaced by offset-property of
10650           base-class
10651         - introduced methods framesLeft() and framesLeftForCurrentPeriod() -
10652           proper usage of them in plugins etc. fixes more clicks/pops especially
10653           in monophonic instruments (LB302!)
10655         * src/core/mixer.cpp:
10656         call songEditor::processNextBuffer() *before* playing all play-handles
10658         * src/core/mixer.cpp:
10659         * include/mixer.h:
10660         extended clearAudioBuffer()-methods by offset
10662         * include/play_handle.h:
10663         added offset-property
10665         * include/mixer.h:
10666         * most other files:
10667         renamed "framesPerAudioBuffer()" to "framesPerPeriod()"
10669         * include/types.h:
10670         * most other files:
10671         renamed type "fpab_t" to "fpp_t"
10673 2007-07-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10675         * plugins/singerbot/singerbot.h:
10676         * include/sample_buffer.h:
10677         * include/audio_device.h:
10678         * configure.in:
10679         * acinclude.m4:
10680         * Makefile.am:
10681         use 3rd-party code if libsamplerate is not available on system
10683         * src/3rdparty/samplerate/src_linear.c:
10684         * src/3rdparty/samplerate/samplerate.h:
10685         * src/3rdparty/samplerate/fastest_coeffs.h:
10686         * src/3rdparty/samplerate/src_sinc.c:
10687         * src/3rdparty/samplerate/float_cast.h:
10688         * src/3rdparty/samplerate/mid_qual_coeffs.h:
10689         * src/3rdparty/samplerate/src_zoh.c:
10690         * src/3rdparty/samplerate/high_qual_coeffs.h:
10691         * src/3rdparty/samplerate/samplerate.c:
10692         * src/3rdparty/samplerate/common.h:
10693         added libsamplerate-source-code
10695 2007-07-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10697         * configure.in:
10698         - made 0.3.0-rc1 release
10699         - replaced "+=" operator by according X="$X ..." constructs as older
10700           bashes have problems with it
10702         * configure.in:
10703         * Makefile.am:
10704         * include/audio_device.h:
10705         * include/sample_buffer.h:
10706         * src/audio/audio_device.cpp:
10707         * src/lib/sample_buffer.cpp:
10708         removed already broken support for building LMMS without libsamplerate
10710         * acinclude.m4:
10711         disabled Qt4-support - re-enable it / rewrite Qt4-detection code in
10712         0.4.x-devel-branch
10714 2007-07-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10716         * plugins/midi_import/midi_import.h:
10717         * plugins/midi_import/midi_import.cpp:
10718         - when adding notes to pattern *never* let them be quantized - fixes
10719           bug where notes of imported MIDI-files were not where they should have
10720           been
10721         - added support for tempo-change-events by modifying
10722           automation-pattern of tempo-knob of track-container (if such exists)
10723         - import track-names
10724         - proper handling of time-base, -division etc.
10726         * include/midi.h:
10727         added midiMetaEvents-enum
10729         * include/song_editor.h:
10730         * include/track_container.h:
10731         * src/core/song_editor.cpp:
10732         added virtual tempoAutomationPattern()-method which returns
10733         automation-pattern of tempo-object (i.e. bpmSpinBox) if such exists
10734         for a certain track-container
10736         * include/automation_pattern.h:
10737         - added non-const version of object()-method
10738         - made lot of other methods const
10740 2007-07-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10742         * include/mixer.h:
10743         * src/core/mixer.cpp:
10744         added more mutexes to protect all important data-structures more
10745         granularly and safely - fixes some potential segfaults
10747         * src/tracks/instrument_track.cpp:
10748         - lock mixer while loading instrument / track-specific settings - fixes
10749           segfault when dragging preset/instrument plugin to existing track
10750           while playing
10751         - remove effects in loadTrackSpecificSettings() if none were in preset
10752           (e.g. old preset-file)
10754         * include/rack_view.h:
10755         * include/effect_tab_widget.h:
10756         * src/widgets/rack_view.cpp:
10757         - delete all existing plugins before adding new ones in
10758           rackView::loadSettings()
10759         - cleanups
10761         * configure.in:
10762         cleanups
10764 2007-07-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10766         * lmms.spec.in:
10767         merged changes found in
10768         https://sourceforge.net/tracker/download.php?group_id=105168&atid=640436&file_id=225331&aid=1702303
10770         * configure.in:
10771         - cleaned up and improved detection of WINE-development-files and/or
10772           single components of it and removed aeffectx.h-detection-stuff as
10773           not needed anymore
10774         - changed warning on missing STK-files
10775         - several improvements of output-texts
10777 2007-07-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10779         * configure.in:
10780         - removed unsafe flags
10781         - disabled single-source-compiling per default
10783         * src/audio/audio_port.cpp:
10784         initialize all member-variables in initialization-list of
10785         audioPort-constructor - this way the audio-port isn't being added to
10786         the mixer before it's completely initialized - fixes some segfaults
10788         * include/midi.h:
10789         * plugins/midi_import/midi_import.h:
10790         * plugins/midi_import/midi_import.cpp:
10791         - initial incomplete handling for tempo-events
10792         - properly aligned imported notes
10794 2007-07-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
10796         * src/core/mixer.cpp:
10797         fixed logical error in mixer::renderNextBuffer() which led to lot of
10798         clicks and pops when using parallelization-level > 1
10800         * include/note_play_handle.h:
10801         * src/tracks/instrument_track-cpp:
10802         fixed broken detection of last period of a note which resulted in
10803         clicks and pops as the soft fade-out at the end sometimes was done twice
10805 2007-05-12      Javier Serrano Polo <jasp00/at/terra/dot/es>
10807         * include/clipboard.h:
10808         * include/mmp.h:
10809         * include/note.h:
10810         * include/piano_roll.h:
10811         * src/core/note.cpp:
10812         * src/core/piano_roll.cpp:
10813         * src/lib/clipboard.cpp:
10814         * src/lib/mmp.cpp:
10815         use the global clipboard to copy notes
10817         * include/group_box.h:
10818         * src/core/arp_and_chords_tab_widget.cpp:
10819         * src/core/envelope_tab_widget.cpp:
10820         * src/lib/mmp.cpp:
10821         * src/widgets/group_box.cpp:
10822         save groupbox automation
10824         * include/surround_area.h:
10825         * src/core/surround_area.cpp:
10826         * src/core/track.cpp:
10827         * src/lib/mmp.cpp:
10828         calculate volume vector in a more consistent way
10830         * src/core/track.cpp:
10831         fixed drag track onto another segfault
10833         * include/piano_widget.h:
10834         * src/core/piano_widget.cpp:
10835         fixed release invalid key segfault
10837         * src/tracks/instrument_track.cpp:
10838         fixed freeze pattern segfault
10840         * include/preset_preview_play_handle.h:
10841         * src/core/engine.cpp:
10842         * src/core/preset_preview_play_handle.cpp:
10843         fixed uninitialized preset preview container segfault
10845         * include/main_window.h:
10846         * src/core/main_window.cpp:
10847         added Qt4 menu implementations
10849         * include/file_browser.h:
10850         * include/qt3support.h:
10851         * src/core/file_browser.cpp:
10852         fixed Qt4 context menu
10854         * data/locale/ca.ts:
10855         * src/tracks/pattern.cpp:
10856         hide irrelevant freeze options from context menu
10858 2007-05-07      Javier Serrano Polo <jasp00/at/terra/dot/es>
10860         * include/audio_jack.h:
10861         * include/effect.h:
10862         * include/effect_chain.h:
10863         * include/envelope_and_lfo_widget.h:
10864         * include/instrument_track.h:
10865         * include/mixer.h:
10866         * include/pattern.h:
10867         * include/sample_buffer.h:
10868         * include/shared_object.h:
10869         * plugins/ladspa_base/ladspa_control.cpp:
10870         * plugins/ladspa_base/ladspa_control.h:
10871         * plugins/ladspa_effect/ladspa_effect.cpp:
10872         * src/audio/audio_jack.cpp:
10873         * src/core/effect.cpp:
10874         * src/core/effect_chain.cpp:
10875         * src/core/envelope_and_lfo_widget.cpp:
10876         * src/core/envelope_tab_widget.cpp:
10877         * src/core/file_browser.cpp:
10878         * src/core/mixer.cpp:
10879         * src/core/piano_roll.cpp:
10880         * src/core/song_editor.cpp:
10881         * src/core/track.cpp:
10882         * src/core/track_container.cpp:
10883         * src/lib/oscillator.cpp:
10884         * src/lib/sample_buffer.cpp:
10885         * src/tracks/instrument_track.cpp:
10886         * src/tracks/pattern.cpp:
10887         - removed process locks
10888         - use mixer lock if necessary
10890         * include/detuning_helper.h:
10891         initial release, light replacement for the note detuning knob
10893         * Makefile.am:
10894         * include/automatable_object.h:
10895         * include/automatable_object_templates.h:
10896         * include/note.h:
10897         * include/note_play_handle.h:
10898         * src/core/note.cpp:
10899         * src/core/note_play_handle.cpp:
10900         use detuning helpers
10902         * Makefile.am:
10903         * include/note_play_handle.h:
10904         * src/core/note_play_handle.cpp:
10905         dropped QObject inheritance
10907         * include/note_play_handle.h:
10908         * src/core/arp_and_chords_tab_widget.cpp:
10909         * src/core/note_play_handle.cpp:
10910         simplified subnote creation
10912         * include/pattern.h:
10913         * include/piano_roll.h:
10914         * src/core/piano_roll.cpp:
10915         * src/tracks/instrument_track.cpp:
10916         note list became read-only
10918         * include/oscillator.h:
10919         * plugins/organic/organic.cpp:
10920         * plugins/triple_oscillator/triple_oscillator.cpp:
10921         * src/lib/oscillator.cpp:
10922         use references instead of pointers
10924         * include/oscillator.h:
10925         * include/sample_buffer.h:
10926         use read-only user waveform
10928         * include/custom_events.h:
10929         initial release, custom events list
10931         * include/update_event.h:
10932         initial release, allow thread-safe GUI updates
10934         * Makefile.am:
10935         * include/fade_button.h:
10936         * include/piano_widget.h:
10937         * src/core/piano_widget.cpp:
10938         * src/widgets/fade_button.cpp:
10939         use thread-safe GUI updates
10941         * include/automation_editor.h:
10942         * include/piano_roll.h:
10943         * src/core/automation_editor.cpp:
10944         * src/core/piano_roll.cpp:
10945         simplified paint event
10947         * include/instrument.h:
10948         * include/instrument_play_handle.h:
10949         * include/mixer.h:
10950         * include/note_play_handle.h:
10951         * include/play_handle.h:
10952         * include/preset_preview_play_handle.h:
10953         * include/sample_play_handle.h:
10954         * include/track.h:
10955         * plugins/vestige/vestige.cpp:
10956         * src/core/instrument.cpp:
10957         * src/core/mixer.cpp:
10958         * src/core/note_play_handle.cpp:
10959         * src/core/preset_preview_play_handle.cpp:
10960         * src/core/sample_play_handle.cpp:
10961         * src/tracks/bb_track.cpp:
10962         * src/tracks/instrument_track.cpp:
10963         * src/tracks/sample_track.cpp:
10964         simplified handle removal
10966         * include/mixer.h:
10967         - removed duplicate playHandles()
10968         - removed unnecessary private copy constructor
10970         * include/track.h:
10971         * include/track_container.h:
10972         * src/core/track.cpp:
10973         * src/core/track_container.cpp:
10974         simplified track clonation
10976         * include/track.h:
10977         * src/core/track.cpp:
10978         simplified track removal
10980         * include/instrument_track.h:
10981         * include/note_play_handle.h:
10982         * src/core/note_play_handle.cpp:
10983         * src/tracks/instrument_track.cpp:
10984         - moved piano widget control to instrument track
10985         - calculate frequencies in note play handle
10987         * include/note_play_handle.h:
10988         * plugins/organic/organic.cpp:
10989         * plugins/triple_oscillator/triple_oscillator.cpp:
10990         public note frequency became read-only
10992         * plugins/audio_file_processor/audio_file_processor.cpp:
10993         * plugins/bit_invader/bit_invader.cpp:
10994         * plugins/lb302/lb302.cpp:
10995         * plugins/patman/patman.cpp:
10996         * plugins/plucked_string_synth/plucked_string_synth.cpp:
10997         * plugins/polyb302/polyb302.cpp:
10998         * plugins/singerbot/singerbot.cpp:
10999         * plugins/stk/mallets/mallets.cpp:
11000         * plugins/vibed/vibed.cpp:
11001         use precalculated note frequency
11003         * include/automatable_object_templates.h:
11004         reduced XML size for single-valued patterns
11006         * src/core/automation_pattern.cpp:
11007         * src/tracks/automation_pattern.cpp:
11008         - moved to core
11009         - initialize copy constructor
11011         * include/automation_pattern.h:
11012         * src/core/automation_pattern.cpp:
11013         - show read-only data
11014         - disconnect single-valued patterns from track
11016         * include/level_object.h:
11017         * src/core/automation_pattern.cpp:
11018         added display name
11020         * include/project_version.h:
11021         * src/lib/project_version.cpp:
11022         initial release, compare application versions
11024         * include/mmp.h:
11025         * src/core/arp_and_chords_tab_widget.cpp:
11026         * src/core/song_editor.cpp:
11027         * src/lib/mmp.cpp:
11028         * src/tracks/sample_track.cpp:
11029         added upgrade feature
11031         * Makefile.am:
11032         * src/lmms_single_source.cpp:
11033         - moved automation pattern to core
11034         - added project version
11036         * include/arp_and_chords_tab_widget.h:
11037         * include/audio_jack.h:
11038         * include/audio_oss.h:
11039         * include/audio_port.h:
11040         * include/audio_sdl.h:
11041         * include/automatable_slider.h:
11042         * include/automation_editor.h:
11043         * include/automation_pattern.h:
11044         * include/config_mgr.h:
11045         * include/effect.h:
11046         * include/effect_control_dialog.h:
11047         * include/effect_label.h:
11048         * include/effect_tab_widget.h:
11049         * include/engine.h:
11050         * include/envelope_tab_widget.h:
11051         * include/fifo_buffer.h:
11052         * include/instrument.h:
11053         * include/instrument_track.h:
11054         * include/level_object.h:
11055         * include/main_window.h:
11056         * include/meter_dialog.h:
11057         * include/midi_dummy.h:
11058         * include/midi_event_processor.h:
11059         * include/midi_port.h:
11060         * include/mixer.h:
11061         * include/note_play_handle.h:
11062         * include/pattern.h:
11063         * include/piano_roll.h:
11064         * include/piano_widget.h:
11065         * include/plugin.h:
11066         * include/preset_preview_play_handle.h:
11067         * include/rack_plugin.h:
11068         * include/rack_view.h:
11069         * include/sample_play_handle.h:
11070         * include/sample_track.h:
11071         * include/side_bar.h:
11072         * include/surround_area.h:
11073         * include/tempo_sync_knob.h:
11074         * include/tool.h:
11075         * include/track_container.h:
11076         * include/volume_knob.h:
11077         * plugins/audio_file_processor/audio_file_processor.cpp:
11078         * plugins/bass_booster/bassbooster_control_dialog.cpp:
11079         * plugins/bit_invader/bit_invader.cpp:
11080         * plugins/flp_import/flp_import.cpp:
11081         * plugins/kicker/kicker.cpp:
11082         * plugins/ladspa_base/ladspa_control.cpp:
11083         * plugins/ladspa_base/ladspa_control.h:
11084         * plugins/ladspa_base/ladspa_manager.h:
11085         * plugins/ladspa_effect/ladspa_control_dialog.h:
11086         * plugins/lb302/lb302.cpp:
11087         * plugins/lb302/lb302.h:
11088         * plugins/organic/organic.cpp:
11089         * plugins/patman/patman.cpp:
11090         * plugins/plucked_string_synth/plucked_string_synth.cpp:
11091         * plugins/polyb302/polyb302.cpp:
11092         * plugins/polyb302/polyb302.h:
11093         * plugins/singerbot/singerbot.cpp:
11094         * plugins/singerbot/singerbot.h:
11095         * plugins/stk/mallets/mallets.cpp:
11096         * plugins/stk/mallets/mallets.h:
11097         * plugins/triple_oscillator/triple_oscillator.cpp:
11098         * plugins/vestige/vestige.cpp:
11099         * plugins/vestige/vestige.h:
11100         * plugins/vibed/impulse_editor.cpp:
11101         * plugins/vibed/vibed.cpp:
11102         * plugins/vst_effect/vst_control_dialog.cpp:
11103         * plugins/vst_effect/vst_effect.cpp:
11104         * plugins/vst_effect/vst_subplugin_features.cpp:
11105         * src/core/automation_pattern.cpp:
11106         * src/core/effect_control_dialog.cpp:
11107         * src/core/effect_tab_widget.cpp:
11108         * src/core/envelope_tab_widget.cpp:
11109         * src/core/midi_tab_widget.cpp:
11110         * src/core/piano_widget.cpp:
11111         * src/core/plugin.cpp:
11112         * src/core/surround_area.cpp:
11113         * src/core/track.cpp:
11114         * src/tracks/instrument_track.cpp:
11115         * src/tracks/sample_track.cpp:
11116         * src/widgets/automatable_slider.cpp:
11117         * src/widgets/effect_label.cpp:
11118         * src/widgets/rack_plugin.cpp:
11119         * src/widgets/tempo_sync_knob.cpp:
11120         reduced dependencies
11122         * plugins/ladspa_base/ladspa_manager.cpp:
11123         * plugins/lb302/lb302.cpp:
11124         * plugins/lb302/lb302.h:
11125         * src/audio/audio_port.cpp:
11126         * src/core/engine.cpp:
11127         * src/midi/midi_client.cpp:
11128         * src/tracks/instrument_track.cpp:
11129         * src/widgets/knob.cpp:
11130         * src/widgets/rack_view.cpp:
11131         fixed memory leaks
11133         * include/automatable_object_templates.h:
11134         * plugins/plucked_string_synth/plucked_string_synth.cpp:
11135         * plugins/singerbot/singerbot.cpp:
11136         * plugins/vibed/vibrating_string.cpp:
11137         * src/core/envelope_and_lfo_widget.cpp:
11138         * src/lib/sample_buffer.cpp:
11139         simplified deletions
11141         * include/song_editor.h:
11142         * src/core/song_editor.cpp:
11143         improved destructor workaround (still a workaround)
11145         * src/core/timeline.cpp:
11146         avoid invalid reference
11148         * src/core/config_mgr.cpp:
11149         removed invariant condition
11151         * src/core/automation_editor.cpp:
11152         * src/core/envelope_and_lfo_widget.cpp:
11153         * src/core/piano_roll.cpp:
11154         reordered inline functions
11156         * src/core/plugin.cpp:
11157         initialize dummy plugin subfeatures
11159         * include/effect_chain.h:
11160         * src/core/effect_chain.cpp:
11161         - normalized destructor
11162         - renamed deleteEffect() to removeEffect(), the effect isn't deleted
11163           actually
11164         - simplified removeEffect()
11166         * src/widgets/rack_view.cpp:
11167         simplified deletePlugin()
11169         * include/rack_plugin.h:
11170         * src/widgets/rack_plugin.cpp:
11171         - fixed hot insertion/removal
11172         - simplified context menu
11174         * src/lib/project_journal.cpp:
11175         initialize journalling state
11177         * include/arp_and_chords_tab_widget.h:
11178         arpeggio directions are public
11180         * src/core/midi_tab_widget.cpp:
11181         spin boxes are initially disabled
11183         * plugins/ladspa_base/ladspa_control.cpp:
11184         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
11185         disabled link automation
11187         * plugins/audio_file_processor/audio_file_processor.cpp:
11188         * plugins/audio_file_processor/audio_file_processor.h:
11189         - save/load start/end knobs automation
11190         - don't reset start/end knob values when changing the sample file
11191         - removed unused setStartAndEndKnob()
11193         * plugins/polyb302/polyb302.cpp:
11194         * plugins/polyb302/polyb302.h:
11195         removed slide toggle
11197         * include/effect_label.h:
11198         * src/widgets/effect_label.cpp:
11199         - delete related effect window
11200         - display label text
11202         * include/audio_device.h:
11203         * include/audio_dummy.h
11204         * include/midi_client.h:
11205         * include/midi_dummy.h:
11206         hide empty settings box
11208         * include/pattern.h:
11209         * plugins/flp_import/flp_import.cpp:
11210         * src/tracks/pattern.cpp:
11211         - simplified beat insertion/display
11212         - removed unused functions
11214         * include/mixer.h:
11215         * src/tracks/pattern.cpp:
11216         render note tails in frozen patterns
11218         * plugins/organic/organic.cpp:
11219         * plugins/organic/organic.h:
11220         * plugins/triple_oscillator/triple_oscillator.cpp:
11221         * plugins/triple_oscillator/triple_oscillator.h:
11222         added oscillator objects
11224         * plugins/organic/organic.cpp:
11225         * plugins/organic/organic.h:
11226         - normalized member names
11227         - simplified waveshape selection
11229         * include/automatable_object.h:
11230         * include/knob.h:
11231         * src/widgets/knob.cpp:
11232         * src/widgets/volume_knob.cpp:
11233         removed automatable object custom data
11235         * plugins/singerbot/singerbot.cpp:
11236         * plugins/singerbot/singerbot.h:
11237         - reworked play process without sample buffers
11238         - retry wave generation on damaged environment
11240         * configure.in:
11241         * plugins/ladspa_effect/Makefile.am:
11242         added --without-caps configure option
11244         * configure.in:
11245         added extra compilation warnings
11247         * include/qt3support.h:
11248         removed (non-)bug comment
11250         * data/locale/ca.ts:
11251         updated translation
11253 2007-04-25      Javier Serrano Polo <jasp00/at/terra/dot/es>
11255         * include/basic_filters.h:
11256         * plugins/flp_import/flp_import.cpp:
11257         * src/core/envelope_tab_widget.cpp:
11258         simplified filtering
11260         * plugins/vst_base/lvsl_server.c:
11261         clear output buffers before processing
11263         * plugins/vestige/vestige.cpp:
11264         * plugins/vst_base/lvsl_client.cpp:
11265         * plugins/vst_base/lvsl_client.h:
11266         fixed sample rate change
11268         * data/locale/ca.ts:
11269         updated translation
11271 2007-04-24      Javier Serrano Polo <jasp00/at/terra/dot/es>
11273         * include/buffer_allocator.h:
11274         * src/lib/buffer_allocator.cpp:
11275         removed, obsoleted by small audio buffers
11277         * Makefile.am:
11278         * include/audio_device.h:
11279         * plugins/audio_file_processor/audio_file_processor.cpp:
11280         * plugins/bit_invader/bit_invader.cpp:
11281         * plugins/kicker/kicker.cpp:
11282         * plugins/ladspa_effect/ladspa_effect.cpp:
11283         * plugins/lb302/lb302.cpp:
11284         * plugins/organic/organic.cpp:
11285         * plugins/patman/patman.cpp:
11286         * plugins/plucked_string_synth/plucked_string_synth.cpp:
11287         * plugins/polyb302/polyb302.cpp:
11288         * plugins/singerbot/singerbot.cpp:
11289         * plugins/stk/mallets/mallets.cpp:
11290         * plugins/stk/mallets/mallets.h:
11291         * plugins/triple_oscillator/triple_oscillator.cpp:
11292         * plugins/vestige/vestige.cpp:
11293         * plugins/vibed/vibed.cpp:
11294         * plugins/vibed/vibed.h:
11295         * plugins/vibed/vibrating_string.cpp:
11296         * plugins/vibed/vibrating_string.h:
11297         * plugins/vst_effect/vst_effect.cpp:
11298         * src/lmms_single_source.cpp:
11299         * src/audio/audio_alsa.cpp:
11300         * src/audio/audio_device.cpp:
11301         * src/audio/audio_file_device.cpp:
11302         * src/audio/audio_file_wave.cpp:
11303         * src/audio/audio_jack.cpp:
11304         * src/audio/audio_oss.cpp:
11305         * src/audio/audio_port.cpp:
11306         * src/audio/audio_sample_recorder.cpp:
11307         * src/audio/audio_sdl.cpp:
11308         * src/core/main_window.cpp:
11309         * src/core/mixer.cpp:
11310         * src/core/sample_play_handle.cpp:
11311         * src/tracks/pattern.cpp:
11312         * src/widgets/visualization_widget.cpp:
11313         removed buffer allocator
11315         * include/automatable_object_templates.h:
11316         initial release, templates extracted from automatable_object.h
11318         * Makefile.am:
11319         * include/automatable_object.h:
11320         * plugins/ladspa_base/ladspa_control.cpp:
11321         * plugins/ladspa_effect/ladspa_effect.h:
11322         * plugins/patman/patman.cpp:
11323         * plugins/singerbot/singerbot.cpp:
11324         * src/core/automation_editor.cpp:
11325         * src/core/bb_editor.cpp:
11326         * src/core/envelope_and_lfo_widget.cpp:
11327         * src/core/export_project_dialog.cpp:
11328         * src/core/note.cpp:
11329         * src/core/note_play_handle.cpp:
11330         * src/core/piano_roll.cpp:
11331         * src/core/piano_widget.cpp:
11332         * src/core/setup_dialog.cpp:
11333         * src/core/song_editor.cpp:
11334         * src/core/surround_area.cpp:
11335         * src/core/track.cpp:
11336         * src/tracks/instrument_track.cpp:
11337         * src/tracks/sample_track.cpp:
11338         * src/widgets/automatable_button.cpp:
11339         * src/widgets/automatable_slider.cpp:
11340         * src/widgets/combobox.cpp:
11341         * src/widgets/effect_label.cpp:
11342         * src/widgets/knob.cpp:
11343         * src/widgets/lcd_spinbox.cpp:
11344         * src/widgets/led_checkbox.cpp:
11345         * src/widgets/pixmap_button.cpp:
11346         * src/widgets/rack_plugin.cpp:
11347         * src/widgets/tempo_sync_knob.cpp:
11348         * src/widgets/volume_knob.cpp:
11349         reduced dependencies on automatable object
11351         * src/audio/audio_device.cpp:
11352         * src/core/export_project_dialog.cpp:
11353         * src/core/mixer.cpp:
11354         fixed deadlocks
11356         * include/audio_dummy.h:
11357         don't process buffers
11359         * src/audio/audio_sample_recorder.cpp:
11360         fixed high quality
11362         * include/basic_filters.h:
11363         * include/envelope_and_lfo_widget.h:
11364         * src/core/envelope_tab_widget.cpp:
11365         simplified envelope processing
11367         * include/basic_filters.h:
11368         - use samplerate member as sample rate
11369         - reformatted
11371         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
11372         reverted layout changes in QT3, fixes descriptions
11374         * plugins/triple_oscillator/artwork.png:
11375         * plugins/triple_oscillator/triple_oscillator.cpp:
11376         updated GUI
11378         * include/tempo_sync_knob.h:
11379         * src/widgets/tempo_sync_knob.cpp:
11380         graceful shutdown
11382         * src/widgets/automatable_button.cpp:
11383         fixed undef
11385         * plugins/ladspa_effect/caps/Makefile.am:
11386         use DESTDIR
11388 2007-04-21      Javier Serrano Polo <jasp00/at/terra/dot/es>
11390         * plugins/singerbot/singerbot.cpp:
11391         * src/audio/audio_jack.cpp:
11392         * src/audio/audio_sdl.cpp:
11393         assume 1-case semaphores, fixes single source compilation
11395         * configure.in:
11396         fixed --enable options
11398 2007-04-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
11400         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
11401         * plugins/patman/patman.cpp:
11402         * plugins/singerbot/singerbot.h:
11403         * plugins/singerbot/singerbot.cpp:
11404         * plugins/live_tool/live_tool.cpp:
11405         * plugins/polyb302/polyb302.cpp:
11406         * include/fifo_buffer.h:
11407         * include/bb_track.h:
11408         * include/audio_device.h:
11409         * include/midi_client.h:
11410         * include/qt3support.h:
11411         * src/audio/audio_sdl.cpp:
11412         * src/audio/audio_jack.cpp:
11413         * src/core/note_play_handle.cpp:
11414         * src/core/track_container.cpp:
11415         * src/core/tool.cpp:
11416         * src/core/setup_dialog.cpp:
11417         * src/core/track.cpp:
11418         * src/core/effect_select_dialog.cpp:
11419         * src/core/main_window.cpp:
11420         * src/widgets/rack_plugin.cpp:
11421         * src/widgets/tool_button.cpp:
11422         * src/widgets/rack_view.cpp:
11423         * src/widgets/effect_label.cpp:
11424         fixes for Qt4-version
11426         * plugins/midi_import/midi_import.cpp:
11427         * src/core/automation_editor.cpp:
11428         * src/core/piano_roll.cpp:
11429         added inclusion of debug.h which includes assert.h for not failing to
11430         compile on several platforms
11432 2007-04-20      Javier Serrano Polo <jasp00/at/terra/dot/es>
11434         * executable files:
11435         removed executable property
11437 2007-04-19      Javier Serrano Polo <jasp00/at/terra/dot/es>
11439         * include/audio_port.h:
11440         * include/automatable_button.h:
11441         * include/automatable_object.h:
11442         * include/automatable_slider.h:
11443         * include/automation_editor.h:
11444         * include/automation_pattern.h:
11445         * include/bb_editor.h:
11446         * include/bb_track.h:
11447         * include/combobox.h:
11448         * include/cpuload_widget.h:
11449         * include/dummy_plugin.h:
11450         * include/effect.h:
11451         * include/effect_chain.h:
11452         * include/effect_label.h:
11453         * include/effect_select_dialog.h:
11454         * include/engine.h:
11455         * include/envelope_and_lfo_widget.h:
11456         * include/export_project_dialog.h:
11457         * include/file_browser.h:
11458         * include/group_box.h:
11459         * include/import_filter.h:
11460         * include/instrument.h:
11461         * include/journalling_object.h:
11462         * include/knob.h:
11463         * include/lcd_spinbox.h:
11464         * include/led_checkbox.h:
11465         * include/main_window.h:
11466         * include/midi_alsa_raw.h:
11467         * include/midi_alsa_seq.h:
11468         * include/midi_client.h:
11469         * include/midi_dummy.h:
11470         * include/midi_oss.h:
11471         * include/mixer.h:
11472         * include/name_label.h:
11473         * include/note.h:
11474         * include/pattern.h:
11475         * include/piano_roll.h:
11476         * include/pixmap_button.h:
11477         * include/plugin.h:
11478         * include/plugin_browser.h:
11479         * include/preset_preview_play_handle.h:
11480         * include/project_journal.h:
11481         * include/project_notes.h:
11482         * include/rack_view.h:
11483         * include/sample_buffer.h:
11484         * include/sample_play_handle.h:
11485         * include/setup_dialog.h:
11486         * include/song_editor.h:
11487         * include/string_pair_drag.h:
11488         * include/surround_area.h:
11489         * include/tempo_sync_knob.h:
11490         * include/timeline.h:
11491         * include/track_container.h:
11492         * include/visualization_widget.h:
11493         * include/volume_knob.h:
11494         * plugins/audio_file_processor/audio_file_processor.cpp:
11495         * plugins/bass_booster/bass_booster.cpp:
11496         * plugins/bass_booster/bass_booster.h:
11497         * plugins/bass_booster/bassbooster_control_dialog.cpp
11498         * plugins/bit_invader/bit_invader.cpp:
11499         * plugins/bit_invader/graph.cpp:
11500         * plugins/bit_invader/graph.h:
11501         * plugins/flp_import/flp_import.cpp:
11502         * plugins/kicker/kicker.cpp:
11503         * plugins/ladspa_base/ladspa_2_lmms.cpp:
11504         * plugins/ladspa_base/ladspa_2_lmms.h:
11505         * plugins/ladspa_base/ladspa_base.h:
11506         * plugins/ladspa_base/ladspa_control.cpp:
11507         * plugins/ladspa_base/ladspa_control.h:
11508         * plugins/ladspa_base/ladspa_manager.cpp:
11509         * plugins/ladspa_base/ladspa_manager.h:
11510         * plugins/ladspa_base/ladspa_port_dialog.cpp:
11511         * plugins/ladspa_base/ladspa_port_dialog.h:
11512         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
11513         * plugins/ladspa_effect/ladspa_effect.cpp:
11514         * plugins/ladspa_effect/ladspa_effect.h:
11515         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
11516         * plugins/ladspa_effect/ladspa_subplugin_features.h:
11517         * plugins/lb302/lb302.cpp:
11518         * plugins/live_tool/live_tool.cpp:
11519         * plugins/midi_import/midi_import.cpp:
11520         * plugins/organic/organic.cpp:
11521         * plugins/patman/patman.cpp:
11522         * plugins/plucked_string_synth/plucked_string_synth.cpp:
11523         * plugins/polyb302/polyb302.cpp:
11524         * plugins/polyb302/polyb302.h:
11525         * plugins/singerbot/singerbot.cpp:
11526         * plugins/stk/mallets/mallets.cpp:
11527         * plugins/triple_oscillator/triple_oscillator.cpp:
11528         * plugins/vestige/vestige.cpp:
11529         * plugins/vibed/graph.cpp:
11530         * plugins/vibed/graph.h:
11531         * plugins/vibed/impulse_editor.cpp:
11532         * plugins/vibed/impulse_editor.h:
11533         * plugins/vibed/nine_button_selector.cpp:
11534         * plugins/vibed/nine_button_selector.h:
11535         * plugins/vibed/vibed.cpp:
11536         * plugins/vst_base/lvsl_client.cpp:
11537         * plugins/vst_base/lvsl_client.h:
11538         * plugins/vst_effect/vst_effect.cpp:
11539         * plugins/vst_effect/vst_effect.h:
11540         * plugins/vst_effect/vst_subplugin_features.cpp:
11541         * plugins/vst_effect/vst_subplugin_features.h:
11542         * src/audio/audio_alsa.cpp:
11543         * src/audio/audio_jack.cpp:
11544         * src/audio/audio_oss.cpp:
11545         * src/audio/audio_port.cpp:
11546         * src/audio/audio_sample_recorder.cpp:
11547         * src/core/arp_and_chords_tab_widget.cpp:
11548         * src/core/automation_editor.cpp:
11549         * src/core/bb_editor.cpp:
11550         * src/core/effect.cpp:
11551         * src/core/effect_chain.cpp:
11552         * src/core/effect_control_dialog.cpp:
11553         * src/core/effect_select_dialog.cpp:
11554         * src/core/effect_tab_widget.cpp:
11555         * src/core/engine.cpp:
11556         * src/core/envelope_and_lfo_widget.cpp:
11557         * src/core/envelope_tab_widget.cpp:
11558         * src/core/export_project_dialog.cpp:
11559         * src/core/file_browser.cpp:
11560         * src/core/import_filter.cpp:
11561         * src/core/instrument.cpp:
11562         * src/core/main.cpp:
11563         * src/core/main_window.cpp:
11564         * src/core/meter_dialog.cpp:
11565         * src/core/midi_tab_widget.cpp:
11566         * src/core/mixer.cpp:
11567         * src/core/name_label.cpp:
11568         * src/core/note.cpp:
11569         * src/core/note_play_handle.cpp:
11570         * src/core/piano_roll.cpp:
11571         * src/core/piano_widget.cpp:
11572         * src/core/plugin.cpp:
11573         * src/core/plugin_browser.cpp:
11574         * src/core/preset_preview_play_handle.cpp:
11575         * src/core/sample_play_handle.cpp:
11576         * src/core/setup_dialog.cpp:
11577         * src/core/song_editor.cpp:
11578         * src/core/surround_area.cpp:
11579         * src/core/timeline.cpp:
11580         * src/core/tool.cpp:
11581         * src/core/track.cpp:
11582         * src/core/track_container.cpp:
11583         * src/lib/journalling_object.cpp:
11584         * src/lib/project_journal.cpp:
11585         * src/lib/sample_buffer.cpp:
11586         * src/lib/string_pair_drag.cpp:
11587         * src/midi/midi_alsa_raw.cpp:
11588         * src/midi/midi_alsa_seq.cpp:
11589         * src/midi/midi_client.cpp:
11590         * src/midi/midi_oss.cpp:
11591         * src/tracks/automation_pattern.cpp:
11592         * src/tracks/bb_track.cpp:
11593         * src/tracks/instrument_track.cpp:
11594         * src/tracks/pattern.cpp:
11595         * src/tracks/sample_track.cpp:
11596         * src/widgets/automatable_button.cpp:
11597         * src/widgets/automatable_slider.cpp:
11598         * src/widgets/combobox.cpp:
11599         * src/widgets/cpuload_widget.cpp:
11600         * src/widgets/effect_label.cpp:
11601         * src/widgets/group_box.cpp:
11602         * src/widgets/knob.cpp:
11603         * src/widgets/lcd_spinbox.cpp:
11604         * src/widgets/led_checkbox.cpp:
11605         * src/widgets/pixmap_button.cpp:
11606         * src/widgets/project_notes.cpp:
11607         * src/widgets/rack_plugin.cpp:
11608         * src/widgets/rack_view.cpp:
11609         * src/widgets/tempo_sync_knob.cpp:
11610         * src/widgets/visualization_widget.cpp:
11611         * src/widgets/volume_knob.cpp:
11612         return of the singletons
11614         * include/fifo_buffer.h:
11615         initial release, allows chunked audio buffer
11617         * include/audio_alsa.h:
11618         * include/audio_device.h:
11619         * include/audio_dummy.h:
11620         * include/audio_jack.h:
11621         * include/audio_oss.h:
11622         * include/audio_sdl.h:
11623         * include/mixer.h:
11624         * src/audio/audio_alsa.cpp:
11625         * src/audio/audio_device.cpp:
11626         * src/audio/audio_jack.cpp:
11627         * src/audio/audio_oss.cpp:
11628         * src/audio/audio_sdl.cpp:
11629         * src/core/mixer.cpp:
11630         * src/core/setup_dialog.cpp:
11631         use chunked audio buffer
11633         * src/core/mixer.cpp:
11634         don't delete the audio device when changing quality, fixes JACK without
11635         external server
11637         * include/sample_buffer.h:
11638         * plugins/audio_file_processor/audio_file_processor.cpp:
11639         * plugins/patman/patman.cpp:
11640         * src/lib/sample_buffer.cpp:
11641         handle different sample rates, fixes many looping patch samples
11643         * src/core/sample_play_handle.cpp:
11644         fixed high quality
11646         * plugins/patman/patman.cpp:
11647         automated Loop and Tune modes
11649         * plugins/audio_file_processor/audio_file_processor.cpp:
11650         automated Loop mode
11652         * src/core/automation_editor.cpp:
11653         fixed selections
11655         * src/core/track_container.cpp:
11656         use modularized sample extensions
11658         * include/string_pair_drag.h:
11659         * plugins/audio_file_processor/audio_file_processor.cpp:
11660         * plugins/patman/patman.cpp:
11661         * src/lib/string_pair_drag.cpp:
11662         changed string pair MIME type
11664         * src/lib/mmp.cpp:
11665         renamed root element
11667         * data/lmms.xml:
11668         initial release, project MIME type
11670         * data/Makefile.am:
11671         install project MIME type
11673         * data/lmms.desktop:
11674         - added project MIME type
11675         - added Catalan translation
11677         * include/oscillator.h:
11678         * src/lib/oscillator.cpp:
11679         got switches out of for-loops
11681         * include/arp_and_chords_tab_widget.h:
11682         * include/effect_tab_widget.h:
11683         * include/instrument_track.h:
11684         * include/midi_tab_widget.h:
11685         * include/track.h:
11686         cleaned up dependencies
11688         * data/locale/ca.ts:
11689         updated translation
11691 2007-04-07      Javier Serrano Polo <jasp00/at/terra/dot/es>
11693         * plugins/patman/artwork.png:
11694         * plugins/patman/logo.png:
11695         * plugins/patman/loop_off.png:
11696         * plugins/patman/loop_on.png:
11697         * plugins/patman/Makefile.am:
11698         * plugins/patman/patman.cpp:
11699         * plugins/patman/patman.h:
11700         * plugins/patman/tune_off.png:
11701         * plugins/patman/tune_on.png:
11702         initial release, PatMan instrument plugin
11704         * include/sample_buffer.h:
11705         * src/lib/sample_buffer.cpp:
11706         - added start/end loop points, different from start/end sample points
11707         - added sample frequency
11708         - reworked resampling, fixes resampling underruns/clicks
11709         - reused try-to-make-relative and try-to-make-absolute file handling
11710         - reused samplerate conversion
11712         * include/sample_buffer.h:
11713         * include/sample_play_handle.h:
11714         * plugins/audio_file_processor/audio_file_processor.cpp:
11715         * plugins/audio_file_processor/audio_file_processor.h:
11716         * plugins/singerbot/singerbot.cpp:
11717         * src/core/sample_play_handle.cpp:
11718         * src/lib/sample_buffer.cpp:
11719         added per handle state
11721         * include/engine.h:
11722         * include/file_browser.h:
11723         * include/plugin.h:
11724         * plugins/audio_file_processor/audio_file_processor.cpp:
11725         * plugins/audio_file_processor/audio_file_processor.h:
11726         * src/core/engine.cpp:
11727         * src/core/file_browser.cpp:
11728         * src/core/main_window.cpp:
11729         modularized sample extensions
11731         * plugins/audio_file_processor/audio_file_processor.cpp:
11732         - check dragged file extension
11733         - accept dragged files from desktop
11734         - fit displayed file name in the background box
11736         * src/core/track_container.cpp:
11737         fixed track swapping
11739         * src/tracks/bb_track.cpp:
11740         fixed loading last bb-track name
11742         * include/pattern.h:
11743         * src/tracks/pattern.cpp:
11744         removed obsolete method
11746         * plugins/polyb302/polyb302.cpp:
11747         * plugins/polyb302/polyb302.h:
11748         simplified inclusions and comments
11750         * include/main_window.h:
11751         cosmetic, grouped methods
11753         * data/locale/ca.ts:
11754         updated translation
11756 2007-04-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
11758         * src/lmms_single_source.cpp:
11759         moved inclusion of file_browser.cpp up as it has problems with headers
11760         included by later files
11762 2007-03-28      Javier Serrano Polo <jasp00/at/terra/dot/es>
11764         * include/mixer.h:
11765         * include/note_play_handle.h:
11766         * src/core/note_play_handle.cpp:
11767         * src/core/song_editor.cpp:
11768         fixed notes with dynamic tempo
11770         * include/main_window.h:
11771         * src/core/main_window.cpp:
11772         added online help
11774         * include/file_browser.h:
11775         * src/core/file_browser.cpp:
11776         - filter directories without relevant content
11777         - simplified entry retrieval
11779         * include/basic_filters.h:
11780         limit Moog instability
11782         * src/core/main.cpp:
11783         updated year
11785         * src/widgets/knob.cpp:
11786         initialize members according to last arrangement
11788         * data/locale/ca.ts:
11789         updated translation
11791 2007-03-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
11793         * configure.in:
11794         fixed "typo" in help
11796 2007-03-25      Javier Serrano Polo <jasp00/at/terra/dot/es>
11798         * plugins/polyb302/artwork.png:
11799         * plugins/polyb302/logo.png:
11800         * plugins/polyb302/Makefile.am:
11801         * plugins/polyb302/polyb302.cpp:
11802         * plugins/polyb302/polyb302.h:
11803         initial release, polyphonic version of lb302 plugin
11805         * include/instrument_track.h:
11806         * include/note_play_handle.h:
11807         * src/core/note_play_handle.cpp:
11808         * src/tracks/instrument_track.cpp:
11809         trigger detuning without signals
11811         * configure.in:
11812         fixed singerbot error
11814         * include/knob.h:
11815         arranged private/protected members
11817         * data/locale/ca.ts:
11818         updated translation
11820 2007-03-07      Javier Serrano Polo <jasp00/at/terra/dot/es>
11822         * plugins/singerbot/singerbot.cpp:
11823         fixed high quality play
11825         * data/locale/ca.ts:
11826         shortened some words
11828 2007-02-28      Javier Serrano Polo <jasp00/at/terra/dot/es>
11830         * src/audio/audio_alsa.cpp:
11831         * src/audio/audio_sdl.cpp:
11832         fixed high quality play
11834         * include/audio_alsa.h:
11835         * include/audio_device.h:
11836         * include/audio_dummy.h:
11837         * include/audio_jack.h:
11838         * include/audio_oss.h:
11839         * include/audio_sdl.h:
11840         * include/midi_alsa_raw.h:
11841         * include/midi_alsa_seq.h
11842         * include/midi_client.h:
11843         * include/midi_dummy.h:
11844         * include/midi_oss.h:
11845         * include/setup_dialog.h:
11846         * src/core/setup_dialog.cpp:
11847         save device names without localization
11849         * data/locale/ca.ts:
11850         updated translation
11852         * plugins/lb302/lb302.cpp:
11853         * src/audio/audio_alsa.cpp:
11854         * src/audio/audio_oss.cpp:
11855         fixed typos
11857 2007-02-27      Javier Serrano Polo <jasp00/at/terra/dot/es>
11859         * src/widgets/fade_button.cpp:
11860         simplified timer usage, fixes frozen leds and hopefully the segfaults
11862         * src/core/config_mgr.cpp:
11863         create widgets once
11865 2007-02-25      Javier Serrano Polo <jasp00/at/terra/dot/es>
11867         * plugins/singerbot/singerbot.cpp:
11868         * plugins/singerbot/singerbot.h:
11869         use libsamplerate
11871         * plugins/singerbot/singerbot.cpp:
11872         - resample while playing, reduced start-up CPU usage
11873         - joined scheme commands
11875         * configure.in:
11876         - added libsamplerate dependency to singerbot
11877         - don't add plugin libraries to global LIBS
11879         * src/core/automation_editor.cpp:
11880         - fixed selection
11881         - values moved at time 0 don't move horizontally
11883         * src/core/piano_roll.cpp:
11884         little optimization when selecting all notes
11886         * src/tracks/instrument_track.cpp:
11887         emit sentMidiTime always, pitch automation mustn't be disabled
11889         * plugins/ladspa_base/ladspa_control.cpp:
11890         * plugins/ladspa_effect/ladspa_effect.cpp:
11891         raise gain range up to 10
11893         * include/effect_select_dialog.h:
11894         * include/plugin.h:
11895         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
11896         * plugins/ladspa_effect/ladspa_subplugin_features.h:
11897         * plugins/vst_effect/vst_subplugin_features.cpp:
11898         * plugins/vst_effect/vst_subplugin_features.h:
11899         * src/core/effect_select_dialog.cpp:
11900         changed description layout
11902         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
11903         simplified translations
11905         * plugins/live_tool/live_tool.cpp:
11906         added what's-this-text
11908 2007-02-20      Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
11910         * data/locale/ru.ts:
11911         updated Russian translation
11913 2007-02-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
11915         * Makefile.am:
11916         added include/effect_lib.h to sources-list
11918 2007-02-03      Paul Giblock <pgib/at/users/dot/sourceforge/dot/net>
11920         * plugins/lb302/lb302.cpp:
11921         * plugins/lb302/lb302.h:
11922         * plugins/lb302/artwork.png:
11923         * plugins/lb302/logo.png:
11924         * plugins/lb302/Makefile.am:
11925         * plugins/lb302/README:
11926         Initial release.  LB302 Bass Synth beta instrument plugin
11928         * configure.in:
11929         * plugins/Makefile.am:
11930         * src/tracks/instrument_track.cpp:
11931         Added LB302 support
11933         * data/projects/misc/lb302_quick.mmp:
11934         Added LB302 demo
11936         * src/widgets/knob.cpp:
11937         Fixed compile-time bug caused by pointer casted to uint
11939 2007-01-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
11941         * src/core/note_play_handle.cpp:
11942         removed obsolete support for monophonic instruments
11944         * src/tracks/instrument_track.cpp:
11945         added new code for better support of monophonic instrument
11947 2007-01-20      Javier Serrano Polo <jasp00/at/terra/dot/es>
11949         * plugins/singerbot/artwork.png:
11950         * plugins/singerbot/logo.png:
11951         * plugins/singerbot/Makefile.am:
11952         * plugins/singerbot/singerbot.h:
11953         * plugins/singerbot/singerbot.cpp:
11954         initial release, SingerBot (experimental) instrument plugin
11956         * configure.in:
11957         * include/note_play_handle.h:
11958         * plugins/Makefile.am:
11959         * src/core/arp_and_chords_tab_widget.cpp:
11960         * src/core/note_play_handle.cpp:
11961         * src/tracks/instrument_track.cpp:
11962         added singerbot support
11964         * include/sample_buffer.h:
11965         deleteResampling methods made static
11967         * plugins/audio_file_processor/audio_file_processor.cpp:
11968         * plugins/organic/organic.cpp:
11969         * plugins/triple_oscillator/triple_oscillator.cpp:
11970         * src/core/note_play_handle.cpp:
11971         * src/tracks/instrument_track.cpp:
11972         call deleteNotePluginData() only if there is plugin data, fixes
11973         unprotected instruments
11975         * plugins/vestige/vestige.cpp:
11976         trigger deleteNotePluginData()
11978         * src/tracks/instrument_track.cpp:
11979         avoid double unlock
11981         * configure.in:
11982         fixed configuring with --with-stk
11984         * acinclude.m4:
11985         moved QT_TRANSLATIONS_DIR to config.h
11987         * plugins/flp_import/flp_import.cpp:
11988         * plugins/flp_import/unrtf/word.c:
11989         optimized unsafe loops
11991         * src/lib/sample_buffer.cpp:
11992         * src/widgets/project_notes.cpp:
11993         minor cosmetic changes
11995         * include/shared_object.h:
11996         not really thread-safe, will be removed
11998 2007-01-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12000         * src/core/note.cpp:
12001         fixed segfault in hasDetuningInfo() if m_detuning was NULL
12003         * README:
12004         * src/core/about_dialog.cpp:
12005         extended copyright from 2006 to 2007
12007 2006-12-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12009         * configure.in:
12010         some cleanups and fixes
12012         * src/tracks/instrument_track.cpp:
12013         before calling mixer::addPlayHandle(), unlock m_notesMutex as in some
12014         cases (when running into xruns)
12015         instrumentTrack::deleteNotePluginData() is called while the mutex is
12016         locked and the program was frozen
12018         * include/track.h:
12019         * plugins/flp_import/flp_import.cpp:
12020         * plugins/midi_import/midi_import.cpp:
12021         * src/core/file_browser.cpp:
12022         * src/core/preset_preview_play_handle.cpp:
12023         * src/core/song_editor.cpp:
12024         * src/core/track.cpp:
12025         * src/core/track_container.cpp:
12026         * src/tracks/instrument_track.cpp:
12027         changed name of constant CHANNEL_TRACK to INSTRUMENT_TRACK
12029 2006-12-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12031         * plugins/kicker/kicker.cpp:
12032         changed minimal value for frequency-knobs from 40 to 5 Hz
12034 2006-12-23      Javier Serrano Polo <jasp00/at/terra/dot/es>
12036         * plugins/kicker/kicker.cpp:
12037         fixed envelope segfault
12039 2006-12-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12041         * include/note_play_handle.h:
12042         * src/core/note_play_handle.cpp:
12043         added parameter to nphsOfInstrumentTrack() which will cause the method
12044         to add note-play-handles even if they're released
12046         * include/effect_lib.h:
12047         - renamed bassBosst to fastBastBoost
12048         - added new bassBoost-class based on audacity's bass-boost-effect
12050         * plugins/kicker/kicker.cpp:
12051         * include/effect_lib.h:
12052         introduced new distortion-class which sounds better than
12053         foldback-distortion
12055 2006-12-20      Javier Serrano Polo <jasp00/at/terra/dot/es>
12057         * src/widgets/rack_plugin.cpp:
12058         * src/widgets/tempo_sync_knob.cpp:
12059         defer deletion of additional windows, fixes event-loop segfault
12061 2006-12-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12063         * src/tracks/instrument_track.cpp:
12064         fixed basic envelope
12066         * plugins/kicker/kicker.h:
12067         * plugins/kicker/kicker.cpp:
12068         * plugins/kicker/logo.png:
12069         * plugins/kicker/artwork.png:
12070         * plugins/kicker/Makefile.am:
12071         * plugins/Makefile.am:
12072         * configure.in:
12073         added Kicker-plugin, a versatile kick- & bassdrum-synthesizer
12075         * include/sweep_oscillator.h:
12076         added simple sweep-oscillator-class
12078         * include/effect_lib.h:
12079         - added foldbackDistortion-class
12080         - added process()-methods to monoBase- and stereoBase-class
12081         - added bypass-classes for mono and stereo
12082         - added effect-chaining-class
12084         * configure.in:
12085         fail if -fomit-frame-pointer is found in compiler-flags and
12086         VST-support is not disabled
12088 2006-12-19      Javier Serrano Polo <jasp00/at/terra/dot/es>
12090         * include/tool.h:
12091         * src/core/tool.cpp:
12092         initial release, base class for all tool plugins
12094         * include/plugin.h:
12095         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
12096         renamed AnalysisTools to Tool
12098         * include/main_window.h:
12099         * src/core/main_window.cpp:
12100         added tools menu
12102         * Makefile.am:
12103         * src/lmms_single_source.cpp:
12104         added tool plugins
12106         * configure.in:
12107         * plugins/live_tool/artwork.png:
12108         * plugins/live_tool/live_tool.cpp:
12109         * plugins/live_tool/live_tool.h:
12110         * plugins/live_tool/logo.png:
12111         * plugins/live_tool/Makefile.am:
12112         added live tool, an example tool plugin
12114         * plugins/Makefile.am:
12115         - added live tool
12116         - eased SVN merging
12118         * data/*/Makefile.am:
12119         * data/*/*/Makefile.am:
12120         * plugins/vst_base/Makefile.am:
12121         - removed wildcard extension for POSIX compliance
12122         - fixed additional automake 1.10 issues
12124 2006-12-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12126         * plugins/bass_booster/bassboster_control_dialog.h:
12127         * plugins/bass_booster/bassboster_control_dialog.cpp:
12128         set changed parameters directly using new set...-methods of effect-lib
12129         (preserves current effect-state and therefore avoids clicks in sound-
12130         stream)
12132         * include/effect_lib.h:
12133         - renamed class "base" to "monoBase"
12134         - monoToStereoAdaptor can now have different effects for the two
12135           channels
12136         - added stereoToMonoAdaptor
12137         - extended baseBoost-class by several methods
12138         
12139         * plugins/vestige/vestige.h:
12140         * plugins/vestige/vestige.cpp:
12141         added note-state-array for handling sequences of "note-on note-off"
12142         events while the according note is already on which for example is the
12143         case when placing the two notes at the same key next to each other -
12144         until now the plugin started playing the second note but stopped
12145         immediately as the note-off-event of the first note arrived later than
12146         the note-on-event of the second one
12148         * src/core/instrument.cpp:
12149         always call invalidate() in destructor so (instrumentPlayHandle-
12150         driven) plugins do not have to care about it
12152         * src/tracks/instrument_track.cpp:
12153         make sure value returned by masterKey() is within allowed range 
12155         * src/core/mixer.cpp:
12156         fixed bug which caused LMMS to crash when using parallelizing-level
12157         above 1 and invalidated play-handles were existing
12159 2006-12-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12161         * plugins/bass_booster/bassboster_control_dialog.cpp:
12162         * plugins/bass_booster/bassboster_control_dialog.h:
12163         * plugins/bass_booster/bass_boster.h:
12164         * plugins/bass_booster/bass_boster.cpp:
12165         * plugins/bass_booster/Makefile.am:
12166         * plugins/Makefile.am:
12167         * configure.in:
12168         added bassbooster-effect-plugin
12170         * src/core/effect_select_dialog.cpp:
12171         added support for effects without sub-plugin-support and fixed some
12172         potential crashs
12174         * include/effect_lib.h:
12175         added simple but powerful template-based effect-library with currently
12176         two basic effects
12178 2006-12-11      Javier Serrano Polo <jasp00/at/terra/dot/es>
12180         * include/sample_buffer.h:
12181         * src/lib/sample_buffer.cpp:
12182         - fixed SDL_sound decoding
12183         - enabled speex samples
12185         * src/core/file_browser.cpp:
12186         * src/core/main_window.cpp:
12187         enabled speex samples
12189         * plugins/ladspa_effect/ladspa_effect.cpp:
12190         fixed adding effect segfault
12192 2006-12-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12194         * configure.in:
12195         check for ${prefix} before extending CFLAGS etc. - should fix issue
12196         with make-problems when using older automake-versions
12198         * include/instrument.h:
12199         * include/envelope_tab_widget.h:
12200         * src/core/envelope_tab_widget.cpp:
12201         support for instruments which want to define their own number of
12202         release-frames
12204         * include/instrument_track.h:
12205         * include/instrument.h:
12206         * src/core/note_play_handle.cpp:
12207         support for monophonic instruments
12209         * include/mixer.h:
12210         * src/core/mixer.cpp:
12211         made mixer::removePlayHandle() to accept const-pointers
12213 2006-12-06      Javier Serrano Polo <jasp00/at/terra/dot/es>
12215         * include/note.h:
12216         * src/core/note.cpp:
12217         show detuning in the piano roll
12219         * include/piano_roll.h:
12220         * src/core/piano_roll.cpp:
12221         - show note detuning
12222         - save last key when starting to play, fixes held notes bug
12223         - removed cursor enter/leave events, they could be ignored
12224         - optimized unsafe loops
12226         * include/xqmap.h:
12227         initial release, QMap with lowerBound for Qt3
12229         * include/automation_pattern.h:
12230         * src/tracks/automation_pattern.cpp:
12231         - use lowerBound find, resets to proper values
12232         - work with inverted midi time
12234         * include/automation_editor.h:
12235         * src/core/automation_editor.cpp:
12236         - work with inverted midi time
12237         - fixed display of hidden values
12238         - added red cross
12239         - update detuning in the piano roll
12240         - removed cursor enter/leave events, they could be ignored
12241         - optimized unsafe loops
12242         - minor optimizations
12244         * include/note_play_handle.h:
12245         * src/core/arp_and_chords_tab_widget.cpp:
12246         set subnotes' BB track
12248         * data/track_icons/*.png:
12249         re-added corrupted images
12251         * src/core/name_label.cpp:
12252         added bad pixmap protection
12254         * src/audio/audio_alsa.cpp:
12255         - removed unnecessary asynchronous behaviour, fixes large audio buffers
12256         - fill the whole period buffer, avoids underrun in synchronous mode
12258         * src/core/setup_dialog.cpp:
12259         don't use the journal
12261         * include/journalling_object.h:
12262         ease short disabling
12264         * include/automatable_object.h:
12265         - use light journal disabling
12266         - use the journal if necessary
12268         * src/widgets/knob.cpp:
12269         * src/widgets/lcd_spinbox.cpp:
12270         * src/widgets/volume_knob.cpp:
12271         use the journal if necessary
12273         * src/widgets/tempo_sync_knob.cpp:
12274         - change icon when changing mode, fixes automation crash
12275         - disable the journal when calculating sync time
12277         * src/core/bb_editor.cpp:
12278         don't create TCOs when there aren't any BB tracks
12280         * src/tracks/instrument_track.cpp:
12281         removed temporary fix
12283 2006-12-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12285         * plugins/ladspa_effect/caps/Makefile.am:
12286         added include-path of LMMS for successfully compiling CAPS with shipped
12287         LADSPA-header
12289         * src/tracks/instrument_track.cpp:
12290         integrated patch from Jean-Yves Lefort <jylefort/at/freebsd/dot/org>
12292 2006-12-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12294         * Makefile.am:
12295         added ladspa-1.1.h to source-file-list
12297         * plugins/ladspa_effect/caps/basics.h:
12298         include shipped LADSPA-header if none was found during configure
12300 2006-12-03      Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
12302         * data/locale/ru.ts:
12303         updated Russian translation
12305 2006-11-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12307         * plugins/vst_base/lvsl_server.c:
12308         proper handling of pitch-bend-events
12310         * plugins/vestige/vestige.h:
12311         * plugins/vestige/vestige.cpp:
12312         handle MIDI-events by forwarding them to VST-plugin
12314         * include/instrument.h:
12315         * src/tracks/instrument_track.cpp:
12316         if supported by according instrument, it now can handle all incoming
12317         MIDI-events (except Noteon and Noteoff)
12319         * src/midi/midi_alsa_seq.cpp:
12320         more complete implementation of MIDI-event-handling
12322 2006-11-15      Javier Serrano Polo <jasp00/at/terra/dot/es>
12324         * include/audio_alsa.h:
12325         * src/audio/audio_alsa.cpp:
12326         * src/audio/audio_device.cpp:
12327         * src/audio/audio_file_wave.cpp:
12328         convert-endian-based conversion instead of little-endian-based,
12329         fixes OSS and SDL
12331         * include/audio_sdl.h:
12332         * src/audio/audio_sdl.cpp:
12333         fill the whole audio buffer
12335 2006-11-11      Javier Serrano Polo <jasp00/at/terra/dot/es>
12337         * src/core/piano_roll.cpp:
12338         fixed pasting recorded notes segfault
12340         * configure.in:
12341         turned EXTRAFLAGS into DEFAULTFLAGS
12343 2006-11-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12345         * plugins/flp_import/flp_import.cpp:
12346         include ctype.h
12348 2006-11-08      Javier Serrano Polo <jasp00/at/terra/dot/es>
12350         * include/bb_track.h:
12351         * src/tracks/bb_track.cpp:
12352         change color of selected group of TCOs
12354         * plugins/vst_base/lvsl_server.c:
12355         fixed segfault when initializing some VST plugins
12357         * src/lib/sample_buffer.cpp:
12358         fixed switching from normal play to resampling play
12360 2006-10-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12362         * src/lib/string_pair_drag.cpp:
12363         when decoding value of stringPairDrag-class use everything after ":"
12364         instead of first section as the value (string) itself might contain
12365         ":"-characters - makes it possible to drag'n'drop instrument-tracks
12366         with VeSTige-instrument and avoids crash
12368         * src/core/piano_roll.cpp:
12369         when checking cursor-position in edit-mode (move/resize note), do
12370         comparisons in pixels instead of tact64th - fixes bug that 32th- and
12371         64th-notes could not be resized
12373         * src/core/file_browser.cpp:
12374         also recognize "mmpz"-files as projects and load them when
12375         double-clicking them
12377         * src/tracks/pattern.cpp:
12378         when loading pattern, check type afterwards and correct if necessary
12380 2006-10-09      Mikael Freeman <mikael/dot/freeman/at/mac/dot/se>
12382         * data/locale/sv.ts:
12383         updated Swedish translation
12385 2006-09-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12387         * include/setup_dialog.h:
12388         * src/core/main_window.cpp:
12389         * src/core/setup_dialog.cpp:
12390         * src/lib/mmp.cpp:
12391         added support for compressed project ("mmpz"-extension), files are
12392         compressed if extension given to multimediaProject::writeFile() is
12393         mmpz or (if none given) user enabled compression as default
12395         * data/locale/de.ts:
12396         updated German translation (still incomplete (mainly for
12397         mallets-plugin))
12399         * lmms.1:
12400         updated manpage (added link to Wiki and updated description)
12402         * configure.in:
12403         * include/ladspa-1.1.h:
12404         * plugins/ladspa_base/ladspa_manager.h:
12405         added the latest LADSPA-header to be shipped with LMMS for always
12406         building LMMS with LADSPA-support, even if no ladspa.h was found on
12407         system (still causes warning)
12409 2006-09-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12411         * configure.in:
12412         * plugins/ladspa_effect/Makefile.am:
12413         * plugins/ladspa_effect/caps/Makefile.am:
12414         added missing Makefile.am and re-added CAPS-support
12416 2006-09-25      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
12418         * plugins/vibed/vibrating_string.cpp:
12419         2x oversampling in non-hq-mode to get the instument to sound the
12420         same in both modes
12421         
12422         * configure.in:
12423         * plugins/ladspa_effect/Makefile.am:
12424         removed references to CAPS (sorry about that Toby, but I couldn't get
12425         anything to build with them--there's no make info in the CAPS dir)
12427 2006-09-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12429         * acinclude.m4:
12430         * configure.in:
12431         * Makefile.am:
12432         * include/piano_roll.h:
12433         * include/piano_widget.h:
12434         * src/core/piano_roll.cpp:
12435         * src/core/piano_widget.cpp:
12436         made LMMS compile with mingw-cross-compiler
12438         * include/automatable_slider.h:
12439         * plugins/stk/mallets/mallets.cpp:
12440         * plugins/vst_effect/vst_subplugin_features.cpp:
12441         * plugins/vst_effect/vst_subplugin_features.cpp:
12442         * src/core/meter_dialog.cpp:
12443         * src/widgets/automatable_slider.cpp:
12444         * src/widgets/knob.cpp:
12445         * src/widgets/volume_knob.cpp:
12446         Qt4-fixes
12448         * plugins/audio_file_processor/audio_file_processor.cpp:
12449         * src/lib/sample_buffer.cpp:
12450         removed obsolete inclusion of paths.h
12452         * include/rack_view.h:
12453         * plugins/ladspa_effect/ladspa_effect.cpp:
12454         * src/core/effect_control_dialog.cpp:
12455         include qt3-support-header first
12457         * plugins/vst_effect/vst_control_dialog.cpp:
12458         do not try to reparent effect's plugin-widget in destructor - fixes
12459         crash when deleting vst-effect from effect-chain
12461         * src/lib/mmp.cpp:
12462         do not indent mmp-files anymore as it wastes *a lot* of unneccesary
12463         space
12465         * data/projects/cool_songs/StrictProduction-Underline.mmp:
12466         added another cool project
12468         * plugins/ladspa_base/ladspa_manager.cpp:
12469         - always add /usr/lib/ladspa and /usr/local/lib/ladspa to directories
12470           where to search for LADSPA-plugins
12471         - also search in /usr/lib/lmms/ladspa for LADSPA-plugins (that's where
12472           for example CAPS is installed)
12474         * plugins/ladspa_effect/caps/:
12475         added CAPS (C Audio Plugin Suite) for providing a basic LADSPA-plugin-
12476         collection
12478 2006-09-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12480         * plugins/vst_effect/vst_control_dialog.cpp:
12481         save and load settings of VST-effect - with this VST-effect-support is
12482         complete for now
12484         * plugins/vst_base/lvsl_client.h:
12485         * plugins/vst_base/lvsl_client.cpp:
12486         * plugins/vestige/vestige.cpp:
12487         moved code from vestigeInstrument::saveSettings() and
12488         vestigeInstrument::loadSettings() to remoteVSTPlugin
12490         * plugins/ladspa_effect/ladspa_control_dialog.h:
12491         changed node-name from "controls" to "ladspacontrols" to be more
12492         consistent with naming-conventions
12494         * plugins/ladspa_effect/ladspa_subplugin_features.h:
12495         * plugins/ladspa_effect/ladspa_subplugin_features.cpp:
12496         moved ladspaSubPluginFeatures-code from LADSPA-base to where it
12497         belongs/is used - in LADSPA-effect
12499         * data/projects/demos/Zvonsully-RaceTheZBeat.mmp:
12500         * data/projects/cool_songs/Malex-Horizon4.mmp:
12501         added two projects
12503         * plugins/ladspa_base/ladspa_browser.cpp:
12504         * plugins/ladspa_base/ladspa_subplugin_features.cpp:
12505         removed #ifdef SINGLE_SOURCE_COMPILE, as this doesn't affect plugins -
12506         fixes bug with undefined symbol in libladspaeffect.so
12508         * configure.in:
12509         enable VST-support per default
12511         * include/aeffectx.h:
12512         added Javier's header (with dssi-vst-patch)
12514         * data/lmms:
12515         * data/lmms.desktop:
12516         * data/Makefile.am:
12517         added desktop- and menu-entry-file for LMMS (thanks to Javier for the
12518         latter one on debian-list)
12520 2006-09-23      Mikael Freeman <mikael/dot/freeman/at/mac/dot/se>
12522         * data/locale/sv.ts:
12523         added first Swedish translation (very incomplete)
12525 2006-09-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12527         * plugins/vst_base/lvsl_client.cpp:
12528         m_initialized is now set before calling waitForProcessingFinished(),
12529         makes VST-effects work
12531 2006-09-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12533         * plugins/vst_effect/Makefile.am:
12534         * plugins/vst_effect/logo.png:
12535         * plugins/vst_effect/vst_effect.h:
12536         * plugins/vst_effect/vst_effect.cpp:
12537         * plugins/vst_effect/vst_control_dialog.h:
12538         * plugins/vst_effect/vst_control_dialog.cpp:
12539         * plugins/vst_effect/vst_subplugin_features.h:
12540         * plugins/vst_effect/vst_subplugin_features.cpp:
12541         added plugin for supporting VST-effects inside LMMS - currently very
12542         experimental and incomplete, but it compiles and works somehow ;-)
12544         * plugins/ladspa_effect/Makefile.am:
12545         generating ladspa_effect.moc not needed ynmore
12547         * plugins/vestige/Makefile.am:
12548         - use new vstbase-library
12549         - do not link against X11, as not needed anymore
12551         * plugins/Makefile.am:
12552         * plugins/vst_base/Makefile.am:
12553         * plugins/vst_base/communication.h:
12554         * plugins/vst_base/lvsl_client.h:
12555         * plugins/vst_base/lvsl_client.cpp:
12556         * plugins/vst_base/lvsl_server.c:
12557         * plugins/vst_base/vst_base.cpp:
12558         moved LVSL-code into separate library for allowing multiple
12559         LMMS-plugins to deal with VST-plugins
12561 2006-09-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12563         * plugins/*/*.png:
12564         * data/locale/*.qm:
12565         * data/samples/*:
12566         * data/themes/*:
12567         re-added all binary files as they were corrupted during SVN-migration
12568         for some reason
12570         * configure.in:
12571         * Makefile.am:
12572         * plugins/ladspa_base/*:
12573         * include/config_mgr.h:
12574         * include/engine.h:
12575         * include/setup_dialog.h:
12576         * src/audio/audio_port.cpp:
12577         * src/core/config_mgr.cpp:
12578         * src/core/engine.cpp:
12579         * src/core/setup_dialog.cpp:
12580         * src/lmms_single_source.cpp:
12581         moved all LADSPA-related code into separate library against which LMMS
12582         is linked when compiling with LADSPA-support
12584         * Makefile.cvs:
12585         renamed to Makefile.svn as LMMS-CVS-repo was migrated to subversion
12587 2006-09-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12589         * plugins/vestige/vestige.h:
12590         * plugins/vestige/vestige.cpp:
12591         * plugin/vestige/lvsl_client.h:
12592         * plugin/vestige/lvsl_client.cpp:
12593         take advantage of LMMS' new parallelizing-support - works indeed the
12594         way expected! all VST-servers are now balanced all over available CPUs
12596         * plugins/audio_file_processor/audio_file_processor.h:
12597         * plugins/audio_file_processor/audio_file_processor.cpp:
12598         * plugins/bit_invader/bit_invader.h:
12599         * plugins/bit_invader/bit_invader.cpp:
12600         * plugins/organic/organic.h:
12601         * plugins/organic/organic.cpp:
12602         * plugins/plucked_string_synth/plucked_string_synth.h:
12603         * plugins/plucked_string_synth/plucked_string_synth.cpp:
12604         * plugins/mallets/mallets.h:
12605         * plugins/mallets/mallets.cpp:
12606         * plugins/vestige/vestige.h:
12607         * plugins/vestige/vestige.cpp:
12608         * plugins/vibed/vibed.h:
12609         * plugins/vibed/vibed.cpp:
12610         * include/instrument.h:
12611         * include/instrument_play_handle.h:
12612         * include/mixer.h:
12613         * include/note_play_handle.h:
12614         * include/play_handle.h:
12615         * include/plugin.h:
12616         * include/preset_preview_play_handle.h:
12617         * include/sample_play_handle.h:
12618         * include/setup_dialog.h:
12619         * include/track.h:
12620         * src/core/instrument.cpp:
12621         * src/core/mixer.cpp:
12622         * src/core/plugin.cpp:
12623         * src/core/preset_preview_play_handle.cpp:
12624         * src/core/sample_play_handle.cpp:
12625         * src/core/setup_dialog.cpp:
12626         * src/tracks/instrument_track.cpp:
12627         added first simple support for parallelizing sound-processing for
12628         using full power of SMP-systems (e.g. my new dual-core-notebook :-)
12630 2006-09-17      Javier Serrano Polo <jasp00/at/terra/dot/es>
12632         * include/tempo_sync_knob.h:
12633         fixed save/load segfault in LADSPA controls
12635         * src/core/song_editor.cpp:
12636         fixed looping when processing the audio buffer
12638         * include/timeline.h:
12639         * src/core/timeline.cpp:
12640         update loop points state button when loading a project
12642         * src/core/automation_editor.cpp:
12643         fixed segfault when stopping without pattern
12645 2006-09-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12647         * plugins/audio_file_processor/audio_file_processor.cpp:
12648         * plugins/bit_invader/bit_invader.cpp:
12649         * plugins/flp_import/flp_import.cpp:
12650         * plugins/midi_import/midi_import.cpp:
12651         * plugins/organic/organic.cpp:
12652         * plugins/plucked_string_synth/plucked_string_synth.cpp:
12653         * plugins/mallets/mallets.cpp:
12654         * plugins/vestige/vestige.cpp:
12655         * plugins/vibed/vibed.cpp:
12656         extended plugin-descriptor by sub_plugin_features-field (for
12657         non-effects likely NULL)
12659         * include/audio_port.h:
12660         * include/effect.h:
12661         * include/effect_chain.h:
12662         * include/effect_label.h:
12663         * include/effect_tab_widget.h:
12664         * include/instrument.h:
12665         * include/instrument_track.h:
12666         * include/ladspa_browser.h:
12667         * include/ladspa_manager.h:
12668         * include/main_window.h:
12669         * include/plugin.h:
12670         * include/rack_plugin.h:
12671         * include/rack_view.h:
12672         * include/sample_track.h:
12673         * src/lmms_single_source.cpp:
12674         * src/audio/audio_port.cpp:
12675         * src/core/effect.cpp:
12676         * src/core/effect_chain.cp:
12677         * src/core/effect_tab_widget.cpp:
12678         * src/core/import_filter.cpp:
12679         * src/core/ladspa_browser.cpp:
12680         * src/core/main_window.cpp:
12681         * src/core/mixer.cpp:
12682         * src/core/plugin.cpp:
12683         * src/core/plugin_browser.cpp:
12684         * src/tracks/instrument_track.cpp:
12685         * src/tracks/sample_track.cpp:
12686         * src/widgets/effect_label.cpp:
12687         * src/widgets/ladspa_control.cpp:
12688         * src/widgets/rack_plugin.cpp:
12689         * src/widgets/rack_view.cpp:
12690         added generic effect-framework based on LADSPA-effect-code for using
12691         arbitrary effects inside LMMS and using sub-plugins (such as
12692         LADSPA-plugins) transparently at the same time, now writing of any
12693         other effects an begin
12695         * plugins/ladspa_effect/ladspa_effect.h:
12696         * plugins/ladspa_effect/ladspa_effect.cpp:
12697         * plugins/ladspa_effect/ladspa_control_dialog.h:
12698         * plugins/ladspa_effect/ladspa_control_dialog.cpp:
12699         moved LADSPA-effect-support into separate plugin
12701         * include/dummy_effect.h:
12702         * include/effect_control_dialog.h:
12703         * include/effect_select_dialog.h:
12704         * include/ladspa_base.h:
12705         * include/ladspa_subplugin_features.h:
12706         * src/core/effect_control_dialog.cpp:
12707         * src/core/effect_select_dialog.cpp:
12708         * src/core/ladspa_subplugin_features.cpp:
12709         added (see description above)
12711         * include/ladspa_control_dialog.h:
12712         * include/ladspa_description.h:
12713         * include/ladspa_effect.h:
12714         * include/select_ladspa_dialog.h:
12715         * src/core/ladspa_control_dialog.cpp:
12716         * src/core/ladspa_effect.cpp:
12717         * src/core/select_ladspa_dialog.cpp:
12718         removed
12720         * data/locale/de.ts:
12721         updated German translation
12723         * configure.in:
12724         - do not set wrong VST_SUPPORT-condition if winegcc was found and
12725           --with-vst specified but VST-headers are missing
12726         - LADSPA-support not experimental anymore and enabled per default when
12727           header is found
12728         - use -O2 per default
12730 2006-09-11      Javier Serrano Polo <jasp00/at/terra/dot/es>
12732         * plugins/vestige/lvsl_server.c:
12733         save/load all plugin parameters
12735 2006-09-09      Javier Serrano Polo <jasp00/at/terra/dot/es>
12737         * src/core/automation_editor.cpp:
12738         fixed single source compilation
12740 2006-09-08      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
12741         * configure.in:
12742         fixed check for STK headers and library
12743         
12744         * plugins/stk/mallets/mallets.h:
12745         removed the meaningless index boundary limiter for m_delayRead and
12746         m_delayWrite
12747         
12748         * configure.in:
12749         * plugins/Makefile.am:
12750         * plugins/stk/Makefile.am:
12751         began work on supporting STK instruments
12753         * plugins/stk/mallets/Makefile.am:
12754         * plugins/stk/mallets/artwork.png:
12755         * plugins/stk/mallets/logo.png:
12756         * plugins/stk/mallets/mallets.h:
12757         * plugins/stk/mallets/mallets.cpp:
12758         added mallets instrument
12759         
12760         * include/config_mgr.h:
12761         * src/core/config_mgr.cpp:
12762         * include/setup_dialog.h:
12763         * src/core/setup_dialog.cpp:
12764         added STK rawwave to directory selector
12765         
12766 2006-09-03      Thomas Girard <thomas/dot/g/dot/girard/at/free/dot/fr>
12768         * src/core/file_browser.cpp:
12769         fixed bad project browsing segfault
12771 2006-09-03      Javier Serrano Polo <jasp00/at/terra/dot/es>
12773         * include/bb_track.h:
12774         * src/core/track.cpp:
12775         integrated Toby's Qt4 fixes
12777         * src/widgets/tempo_sync_knob.cpp:
12778         - integrated Toby's Qt4 fixes
12779         - connect the meter dialog only when custom sync
12780         - don't set the modified flag on automated changes
12782         * src/core/song_editor.cpp:
12783         - integrated Toby's Qt4 fixes
12784         - rely on objects to set the modified flag
12786         * src/core/meter_dialog.cpp:
12787         added names to display in the automation editor
12789 2006-09-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12791         * acinclude.m4:
12792         * include/effect_tab_widget.h:
12793         * include/ladspa_description.h:
12794         * include/qt3support.h:
12795         * include/rack_view.h:
12796         * include/track.h:
12797         * src/audio/audio_device.cpp:
12798         * src/core/automation_editor.cpp:
12799         * src/core/effect_tab_widget.cpp:
12800         * src/core/envelope_and_lfo_widget.cpp:
12801         * src/core/ladspa_control_dialog.cpp:
12802         * src/core/ladspa_effect.cpp:
12803         * src/core/ladspa_port_dialog.cpp:
12804         * src/core/name_label.cpp:
12805         * src/core/note.cpp:
12806         * src/core/piano_roll.cpp:
12807         * src/lib/ladspa_2_lmms.cpp:
12808         * src/lib/ladspa_manager.cpp:
12809         * src/tracks/automation_pattern.cpp:
12810         * src/tracks/instrument_track.cpp:
12811         * src/widgets/effect_label.cpp:
12812         * src/widgets/ladspa_control.cpp:
12813         * src/widgets/ladspa_description.cpp:
12814         * src/widgets/rack_plugin.cpp:
12815         * src/widgets/rack_view.cpp:
12816         * src/widgets/volume_knob.cpp:
12817         Qt4-compat fixes
12819 2006-08-30      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
12820         * src/widgets/ladspa_control.cpp:
12821         added a lock to prevent segfaults when changing the values
12822         while playing
12823         
12824         * src/core/ladspa_effect.cpp:
12825         corrected the labeling of "(ms)" which were showing up as
12826         "(ms))"
12827         
12828         * Makefile.am:
12829         * src/lmms_single_source.cpp:
12830         * include/meter_dialog.h:
12831         * src/core/meter_dialog.cpp:
12832         * include/tempo_sync_knob.h:
12833         * src/widgets/tempo_sync_knob:
12834         added user definable settings for tempo sync
12835         
12836         * src/core/arp_and_chords_tab_widget.cpp:
12837         - changed arp time knob to save using new tempo sync format
12838         - fixed a bug that was preventing the arp groupbox state from
12839           being restored properly
12840         
12841         * src/core/envelope_and_lfo_widget.cpp:
12842         changed lfo time knob to save using new tempo sync format
12843         
12844 2006-08-28      Javier Serrano Polo <jasp00/at/terra/dot/es>
12846         * COPYING:
12847         updated GPL
12849         * README:
12850         * source files:
12851         updated FSF address
12853         * depcomp:
12854         removed generated file
12856         * mkinstalldirs:
12857         removed auxiliary automake file
12859 2006-08-27      Javier Serrano Polo <jasp00/at/terra/dot/es>
12861         * include/automation_track.h:
12862         * include/bb_editor.h:
12863         * include/bb_track.h:
12864         * include/instrument_track.h:
12865         * include/sample_track.h:
12866         * src/core/bb_editor.cpp:
12867         * src/core/song_editor.cpp:
12868         * src/tracks/automation_track.cpp:
12869         * src/tracks/bb_track.cpp:
12870         * src/tracks/sample_track.cpp:
12871         removed start frame from play() methods
12873         * src/tracks/instrument_track.cpp:
12874         - removed start frame from play() methods
12875         - removed checks when sending automation events
12877         * include/track.h:
12878         - removed start frame from play() methods
12879         - removed checks when sending automation events
12880         - use update() instead of repaint()
12882         * src/core/track.cpp:
12883         - fixed no bb-track case
12884         - removed checks when sending automation events
12885         - use update() instead of repaint()
12887         * src/core/track_container.cpp:
12888         * src/widgets/kmultitabbar.cpp:
12889         * src/widgets/text_float.cpp:
12890         use update() instead of repaint()
12892         * include/automation_editor.h:
12893         * include/piano_roll.h:
12894         * src/core/automation_editor.cpp:
12895         * src/core/piano_roll.cpp:
12896         moved update() reimplementations to methods called from paintEvent()
12898         * include/envelope_and_lfo_widget.h:
12899         * src/core/envelope_tab_widget.cpp:
12900         optimized envelope and LFO computations
12902         * src/core/envelope_and_lfo_widget.cpp:
12903         - optimized envelope and LFO computations
12904         - separated sample variables updates from paint events
12906         * include/combobox.h:
12907         clear the menu when the combobox is cleared
12909         * src/midi/midi_alsa_seq.cpp:
12910         clean-up properly
12912 2006-08-24      Javier Serrano Polo <jasp00/at/terra/dot/es>
12914         * include/shared_object.h:
12915         initial release, shared object for use among threads
12917         * include/sample_buffer.h:
12918         became a shared object
12920         * src/tracks/instrument_track.cpp:
12921         use sample handles to play frozen patterns, fixes crackling
12923         * include/pattern.h:
12924         * src/tracks/pattern.cpp:
12925         allow access to the frozen pattern
12927         * include/sample_play_handle.h:
12928         * src/core/sample_play_handle.cpp:
12929         - react to bb-track mute automation
12930         - added constructor to handle frozen patterns
12931         - use shared sample buffers
12933         * include/instrument_track.h:
12934         getAudioPort() is required
12936         * include/sample_track.h:
12937         * src/tracks/sample_track.cpp:
12938         - removed obsolete play() in sampleTCO
12939         - use shared sample buffers
12941         * src/core/envelope_and_lfo_widget.cpp:
12942         fixed load settings deadlock
12944         * src/audio/audio_device.cpp:
12945         graceful shutdown
12947         * include/midi_alsa_seq.h:
12948         * src/midi/midi_alsa_seq.cpp:
12949         added pipe to detect shutdown
12951         * Makefile.am:
12952         added shared object
12954 2006-08-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
12956         * configure.in:
12957         - changed package-maintainer-email-address to lmms-devel-list
12958         - removed -floop-optimization2-flag as it is deprecated and not
12959           supported by coming GCC 4.2
12961 2006-08-20      Javier Serrano Polo <jasp00/at/terra/dot/es>
12963         * include/envelope_and_lfo_widget.h:
12964         * src/core/envelope_and_lfo_widget.cpp:
12965         * src/core/envelope_tab_widget.cpp:
12966         changed busy flag into busy mutex, improves thread safety
12968 2006-08-18      Javier Serrano Polo <jasp00/at/terra/dot/es>
12970         * src/core/bb_editor.cpp:
12971         removed disabled tracks
12973         * src/tracks/instrument_track.cpp:
12974         added automation disabled
12976         * include/bb_track.h:
12977         * include/track.h:
12978         * src/core/track.cpp:
12979         * src/tracks/bb_track.cpp:
12980         renamed disabled track logic to automation disabled
12982         * include/pattern.h:
12983         * src/tracks/pattern.cpp:
12984         added empty() to check whether there is any relevant note
12986         * src/lib/oscillator.cpp:
12987         check user waveform presence, fixes organic segfault
12989         * src/core/name_label.cpp:
12990         changed icon selection, fixes loss of icon
12992 2006-08-17      Erwin Goossen <egoossen/at/tomaatnet/dot/nl>
12994         * data/locale/nl.ts:
12995         updated Dutch translation
12997 2006-08-16      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
12998         * src/widgets/tempo_sync_knob.cpp:
12999         changed context menu to only display possible note length
13000         options based on the knob's max value
13001         
13002         * include/ladspa_effect.h:
13003         * src/core/ladspa_effect.cpp:
13004         - added a new port data type TIME for port names containing
13005           "(ms)", "(S)", or "(Seconds)"
13006         - converts units to milliseconds for TIME ports
13007         
13008         * src/widgets/ladspa_control.cpp:
13009         use a tempoSyncKnob for TIME ports
13010         
13011         * src/widgets/automatable_button.cpp:
13012         remove toggled signal sent from method toggle--it's also sent
13013         from setValue, and the double signal was wreaking havoc with
13014         the channel linkings
13015         
13016         * include/ladspa_control.h:
13017         * include/ladspa_control_dialog.h:
13018         * src/core/ladspa_control_dialog.cpp:
13019         * src/widgets/ladspa_control.cpp:
13020         * src/widgets/rack_plugin.cpp:
13021         - added channel link selectors for individual ports
13022         - don't show control edit button for plugins with no controls
13023         
13024 2006-08-16      Erwin Goossen <egoossen/at/tomaatnet/dot/nl>
13026         * data/locale/nl.ts:
13027         added Dutch translation
13029 2006-08-15      Javier Serrano Polo <jasp00/at/terra/dot/es>
13031         * include/automatable_object.h:
13032         fixed unlinking objects
13034         * include/automation_pattern.h:
13035         added constructor for unlinking objects
13037         * src/tracks/automation_pattern.cpp:
13038         - added constructor for unlinking objects
13039         - don't remove value at position 0
13041         * INSTALL:
13042         * Makefile.cvs:
13043         * install-sh:
13044         * missing:
13045         removed more generated files
13047 2006-08-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13049         * src/widgets/knob.cpp:
13050         support for linking knobs using <Shift> + drag'n'drop (note that
13051         connetions are not saved!)
13053 2006-08-15      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13054         * src/widgets/ladspa_control.cpp:
13055         doubled the number of steps in the knobs
13056         
13057         * src/core/ladspa_control_dialog.cpp:
13058         changed linking to default on
13059         
13060         * data/themes/default/effect_plugin.png:
13061         * src/widgets/rack_plugin.cpp:
13062         * src/widgets/rack_view.cpp:
13063         added some texture to the plugin widget
13064         
13065         * src/core/ladspa_control_dialog.cpp:
13066         save and restore the channel link state
13067         
13068         * src/widgets/rack_plugin.cpp:
13069         added deletion of the control view to the dtor to make it clean
13070         up after itself
13071         
13072         * include/automatable_object.h:
13073         * include/ladspa_control.h:
13074         * include/ladspa_control_dialog.h:
13075         * src/core/ladspa_control_dialog.cpp:
13076         * src/core/ladspa_control.cpp:
13077         - added a link channels option to the ladspa controls
13078         
13079         * All of the effects related files:
13080         reformatted to respect the 80 characters per line convention
13081         
13082 2006-08-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13084         * Makefile.cvs:
13085         small makefile to be run before configure for creating/copying all
13086         necessary files
13088         * config.sub:
13089         * config.guess:
13090         * configure:
13091         * config.h.in:
13092         * ltmain.sh:
13093         removed
13095 2006-08-14      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13096         * Makefile.am:
13097         * include/ladspa_effect.h:
13098         * src/core/ladspa_effect.cpp:
13099         * include/effect.h:
13100         * include/effect_chain.h:
13101         * include/ladspa_browser:
13102         * include/ladspa_control_dialog.h:
13103         * include/rack_plugin.h:
13104         * select_ladspa_dialog.h:
13105         * src/core/effect.cpp:
13106         * src/core/effect_chain.cpp:
13107         * src/core/ladspa_browser.cpp:
13108         * src/core/ladspa_control_dialog.cpp:
13109         * src/core/select_ladspa_dialog.cpp:
13110         * src/tracks/instrument_track.cpp:
13111         * src/tracks/sample_track.cpp:
13112         * src/widgets/ladspa_control.cpp:
13113         * src/widgets/rack_plugin.cpp:
13114         - separated ladspa specific stuff into a class derived from
13115           effect
13116         - changed the default value range for unhinted ports from
13117           (-99999,99999) to (0,1)
13119 2006-08-13      Javier Serrano Polo <jasp00/at/terra/dot/es>
13121         * src/tracks/sample_track.cpp:
13122         moved playing to samplePlayHandle, removes crackling
13124         * include/sample_track.h:
13125         - allow sample buffer access
13126         - getAudioPort() is required
13127         - removed slots, moved playing to samplePlayHandle
13129         * include/sample_play_handle.h.
13130         * src/core/sample_play_handle.cpp:
13131         - became a QObject
13132         - create handle from sampleTCO
13133         - fill audio buffer from the requested base frame
13134         - made automation-awared
13136         * Makefile.am:
13137         samplePlayHandle is now a QObject
13139         * include/sample_buffer.h:
13140         - use fast sample generation, rely on proper waveforms
13141         - removed locks in sample generation
13142         - added lock methods for use in higher levels
13144         * src/lib/oscillator.cpp:
13145         lock user waveform once per loop
13147         * data/samples/shapes/low_sine.wav:
13148         low frequency sine for use in the oscillator
13150         * include/lmms_math.h:
13151         added fast pseudo-random integer generator
13153         * include/oscillator.h:
13154         - use fast noise generation
13155         - simplified user-wave call, frames must never be 0
13157         * include/basic_filters.h:
13158         - added minQ "constant"
13159         - limit Q resonance
13161         * src/core/envelope_tab_widget.cpp:
13162         added minQ "constant"
13164 2006-08-10      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13165         * src/widgets/ladspa_control.cpp:
13166         unfixed my misunderstood fix of the setting of sample rate
13167         dependent ports
13168         
13169         * src/core/mixer:
13170         got rid of the "more_effect |= ..." nonsense
13171         
13172         * src/widgets/effect_label.cpp:
13173         * src/widgets/rack_plugin.cpp:
13174         changed the parenting of the control dialog to main window
13175         instead of NULL
13177 2006-08-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13179         * configure.in:
13180         added check for ctype.h to make LMMS work on Zenwalk-systems
13182 2006-08-10      Javier Serrano Polo <jasp00/at/terra/dot/es>
13184         * include/bb_track.h:
13185         * include/track.h:
13186         * src/core/bb_editor.cpp:
13187         added disabled tracks
13189         * src/tracks/bb_track.cpp:
13190         - added disabled tracks
13191         - fixed BB-track 0 cloning bug
13193         * src/core/track.cpp:
13194         - added disabled tracks
13195         - update track operations menu
13196         - simplified engine access
13197         - fixed BB-track 0 cloning bug
13198         - improved removing automation patterns
13200         * include/track_container.h:
13201         - moved tracks() to public
13202         - added node name
13204         * src/core/track_container.cpp:
13205         added node name
13207         * data/themes/default/mute_on_disabled.png:
13208         * data/themes/default/track_op_menu_disabled.png:
13209         * data/themes/default/mute_off_disabled.png:
13210         * resources/mute_on_disabled.png:
13211         * resources/track_op_menu_disabled.png:
13212         * resources/mute_off_disabled.png:
13213         added disabled track artwork
13215 2006-08-10      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13216         * include/effect.h:
13217         * include/effect_chain.h:
13218         * include/effect_label.h:
13219         * include/effect_tab_widget.h:
13220         * include/ladspa_control.h:
13221         * include/ladspa_control_dialog.h:
13222         * include/ladspa_description.h:
13223         * include/rack_plugin.h:
13224         * include/rack_view.h:
13225         * src/core/effect.cpp:
13226         * src/core/effect_tab_widget.cpp:
13227         * src/core/ladspa_port_dialog.cpp:
13228         * src/core/ladspa_control_dialog.cpp:
13229         * src/widgets/ladspa_description.cpp:
13230         * src/widgets/rack_plugin.cpp:
13231         * src/widgets/rack_view.cpp:
13232         added Qt4 includes
13234         * include/config_mgr.h:
13235         * include/setup_dialog.h:
13236         * src/core/config_mgr.cpp:
13237         * src/core/setup_dialog.cpp:
13238         * src/lib/ladspa_manager.cpp:
13239         -added ladspa search path to user configuration
13240         -made ladspa loader ignore all files not ending in "so"
13242         * include/effect.h:
13243         * src/core/effect.cpp:
13244         * src/widgets/ladspa_control.cpp:
13245         corrected an error in setting the values for sample rate
13246         dependent ports
13248         the crackling in the sample tracks is due to rounding errors
13249         in the calculation of _start_frame in sampleTrack::play that
13250         cause it to occasionally skip a sample.  Don't know what to
13251         do about it--just thought it should be noted somewhere.
13253 2006-08-09      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13254         * Makefile.am:
13255         * include/effect_label.h:
13256         * include/effect_tab_widget.h:
13257         * include/instrument_track.h:
13258         * include/ladspa_control.h:
13259         * include/ladspa_control_dialog.h:
13260         * include/rack_plugin.h:
13261         * include/rack_view.h:
13262         * src/lmms_single_source.cpp:
13263         * src/audio/audio_port.cpp:
13264         * src/core/effect.cpp:
13265         * src/core/effect_tab_widget.cpp:
13266         * src/core/ladspa_control_dialog.cpp:
13267         * src/core/ladspa_port_dialog.cpp:
13268         * src/tracks/instrument_track.cpp:
13269         * src/tracks/sample_track.cpp:
13270         * src/widgets/ladspa_control.cpp:
13271         * src/widgets/rack_plugin.cpp:
13272         * src/widgets/rack_view.cpp:
13273         -full save and load
13274         -added effects to sample tracks
13275         -fixed the knob twoddling segfaults (hopefully)
13276         -somewhere between 0.2.1 and yesterday a crackling has been
13277          introduced in the sample tracks.  My largish checkins
13278          look like an obvious culprit, but it would have to be
13279          something I forgot to #ifdef LADSPA_SUPPORT out.
13281 2006-08-08      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13282         * include/effect.h:
13283         * include/effect_chain.h:
13284         * include/effect_tab_widget.h:
13285         * include/ladspa_browser.h:
13286         * include/ladspa_control.h:
13287         * include/ladspa_control_dialog.h:
13288         * include/rack_plugin.h:
13289         * include/rack_view.h:
13290         * src/core/effect.cpp:
13291         * src/core/effect_chain.cpp:
13292         * src/core/effect_tab_widget.cpp:
13293         * src/core/ladspa_browser.cpp:
13294         * src/core/ladspa_control_dialog.cpp:
13295         * src/tracks/instrument_track.cpp:
13296         * src/widgets/ladspa_control.cpp:
13297         * src/widgets/rack_plugin.cpp:
13298         * src/widgets/rack_view.cpp:
13299         -added ability to change the order of effects or delete them
13300         -partial save and load support
13301         -still getting spurious segfaults when twoddling with knobs,
13302          the textFloat associated with the knob is being reparented to
13303          NULL(?!), but works well enough to at least hear what things
13304          sound like with effects
13306 2006-08-07      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13307         * include/oscillator.h:
13308         * plugins/vibed/vibrating_string.h:
13309         * plugins/vibed/vibrating_string.cpp:
13310         clean up some things that were preventing the getNextSample
13311         methods from being inlined
13313         * configure:
13314         * configure.in:
13315         -made ladspa support default off
13316         -must pass --with-ladspa to get it to build
13318         * Makefile.am:
13319         * data/themes/default/add.png:
13320         * data/themes/default/analysis.png:
13321         * data/themes/default/ports.png:
13322         * data/themes/default/uhoh.png:
13323         * data/themes/default/unavailable_sound.png:
13324         * data/themes/blue_scene/add.png:
13325         * data/themes/blue_scene/analysis.png:
13326         * data/themes/blue_scene/ports.png:
13327         * data/themes/blue_scene/uhoh.png:
13328         * data/themes/blue_scene/unavailable_sound.png:
13329         * include/audio_port.h:
13330         * include/effect_chain.h:
13331         * include/effect_tab_widget.h:
13332         * include/effect.h:
13333         * include/engine.h:
13334         * include/group_box.h:
13335         * include/instrument_track.h:
13336         * include/ladspa_2_lmms.h:
13337         * include/ladspa_browser.h:
13338         * include/ladspa_control.h:
13339         * include/ladspa_control_dialog.h:
13340         * include/ladspa_description.h:
13341         * include/ladspa_manager.h:
13342         * include/ladspa_port_dialog.h:
13343         * include/main_window.h:
13344         * include/rack_plugin.h:
13345         * include/rack_view.h:
13346         * include/select_ladspa_dialog.h:
13347         * src/lmms_single_source.cpp:
13348         * src/audio/audio_port.cpp:
13349         * src/core/effect_chain.cpp:
13350         * src/core/effect_tab_widget.cpp:
13351         * src/core/effect.cpp:
13352         * src/core/engine.cpp:
13353         * src/core/ladspa_browser.cpp:
13354         * src/core/ladspa_control.cpp:
13355         * src/core/ladspa_port_dialog.cpp:
13356         * src/core/main_window.cpp:
13357         * src/core/mixer.cpp:
13358         * src/core/select_ladspa_dialog.cpp:
13359         * src/lib/ladspa_2_lmms.cpp:
13360         * src/lib/ladspa_manager.cpp:
13361         * src/tracks/instrument_track.cpp:
13362         * src/widgets/group_box.cpp:
13363         * src/widgets/ladspa_control.cpp:
13364         * src/widgets/ladspa_description.cpp:
13365         * src/widgets/rack_plugin.cpp:
13366         * src/widgets/rack_view.cpp:
13367         -added preliminary support for ladspa effects
13368         -no load or save
13369         -expect segfaults
13371 2006-08-07      Javier Serrano Polo <jasp00/at/terra/dot/es>
13373         * include/lcd_spinbox.h:
13374         added manualChange signal
13376         * src/widgets/lcd_spinbox.cpp:
13377         - added manualChange signal
13378         - emit valueChanged whenever value is changed
13379         - removed redundant journalling operations
13381         * src/core/song_editor.cpp:
13382         - set modified flag if there's a manual BPM change
13383         - set tempo if BPM value has changed
13384         - allow further processing on muted tracks
13386         * include/note_play_handle.h:
13387         * src/core/note_play_handle.cpp:
13388         * src/tracks/instrument_track.cpp:
13389         added bbTrack reference to check whether it's muted
13391         * src/tracks/bb_track.cpp:
13392         send automation events
13394         * include/mixer.h:
13395         * src/core/mixer.cpp:
13396         fixed overflow when using big audio buffers
13398         * plugins/audio_file_processor/audio_file_processor.cpp:
13399         use automation in start-/end-point knobs
13401         * plugins/vibed/vibed.cpp:
13402         fixed reversed pan
13404 2006-08-06      Javier Serrano Polo <jasp00/at/terra/dot/es>
13406         * include/engine.h:
13407         * include/midi_time.h:
13408         * src/core/engine.cpp:
13409         * src/core/note_play_handle.cpp:
13410         * src/tracks/bb_track.cpp:
13411         * src/tracks/sample_track.cpp:
13412         frames computation based on 64th of a tact, fixes BB-pattern arbitrary
13413         positioning in song editor
13415         * include/song_editor.h:
13416         * src/core/song_editor.cpp:
13417         - frames computation based on 64th of a tact
13418         - changed playPos frame counter to float, improves timing precision
13420         * src/tracks/instrument_track.cpp:
13421         - frames computation based on 64th of a tact
13422         - simplified note playing
13424 2006-08-03      Javier Serrano Polo <jasp00/at/terra/dot/es>
13426         * src/core/automation_editor.cpp:
13427         - fixed vertical bars in Auto view
13428         - fixed selection frame drawing
13429         - renamed some members and variables
13431         * include/automation_editor.h:
13432         renamed some members
13434 2006-08-01      Javier Serrano Polo <jasp00/at/terra/dot/es>
13436         * include/automation_editor.h:
13437         added "Auto" view
13439         * src/core/automation_editor.cpp:
13440         - added "Auto" view
13441         - improved labels display
13442         - removed duplicate variable y_base
13444         * include/song_editor.h:
13445         * src/core/engine.cpp:
13446         * src/core/song_editor.cpp:
13447         - moved framesPerTact() from songEditor to engine
13448         - update frames per tact only when changes happen
13450         * include/engine.h:
13451         * src/core/note_play_handle.cpp:
13452         * src/tracks/bb_track.cpp:
13453         * src/tracks/instrument_track.cpp:
13454         * src/tracks/sample_track.cpp:
13455         moved framesPerTact() from songEditor to engine
13457 2006-07-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13459         * configure.in:
13460         made 0.2.1 release
13462         * include/mixer.h:
13463         * include/visualization_widget.h:
13464         * src/widgets/visualization_widget.cpp:
13465         fixed a bug in connection between mixer and visualization-widget
13467 2006-07-24      Javier Serrano Polo <jasp00/at/terra/dot/es>
13469         * src/tracks/instrument_track.cpp:
13470         handle notes deleted when keys still pressed
13472         * include/song_editor.h:
13473         * src/core/note.cpp:
13474         * src/core/song_editor.cpp:
13475         added checks to avoid segfaults when closing the application
13477 2006-07-23      Javier Serrano Polo <jasp00/at/terra/dot/es>
13479         * src/core/piano_widget.cpp:
13480         initialize m_lastKey, fixes segfault
13482         * src/core/automation_editor.cpp:
13483         * src/core/note_play_handle.cpp:
13484         added checks to avoid segfaults when closing the application
13486 2006-07-22      Javier Serrano Polo <jasp00/at/terra/dot/es>
13488         * include/automatable_object.h:
13489         avoid unnecessary level updates
13491         * include/track.h:
13492         * src/tracks/instrument_track.cpp:
13493         trigger automation only when time has changed
13495         * src/core/track.cpp:
13496         - trigger automation only when time has changed
13497         - remove references from patterns when closing the application
13499         * include/automation_pattern.h:
13500         added method to avoid segfaults when closing the application
13502         * src/tracks/automation_pattern.cpp:
13503         - added check to avoid segfaults when closing the application
13504         - reverted processMidiTime(), that processing is needed
13506         * src/core/track_container.cpp:
13507         * src/lib/journalling_object.cpp:
13508         added checks to avoid segfaults when closing the application
13510         * include/engine.h:
13511         * src/core/engine.cpp:
13512         - do the clean-up in close()
13513         - ensure deleted elements aren't accessed
13515         * src/core/main_window.cpp:
13516         close the engine rather than delete it
13518         * include/instrument_track.h:
13519         allow access to the piano widget
13521         * include/piano_widget.h:
13522         moved key event handlers to public
13524         * include/piano_roll.h:
13525         redirect events to the piano widget
13527         * src/core/piano_roll.cpp:
13528         - changed some accelerators
13529         - redirect keyboard events to the piano widget
13530         - fixed segfault when pressing Ctrl with no pattern
13532         * src/core/automation_editor.cpp:
13533         changed some accelerators
13535         * src/core/song_editor.cpp:
13536         play the automation track only when playing song
13538         * include/automation_track.h:
13539         removed unused signal section
13541         * data/locale/ca.ts:
13542         updated translation
13544 2006-07-21      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
13546         * configure.in:
13547         - removed -fomit-frame-pointer flag--causes wine to crash on
13548           Ubuntu
13549         - added check for gcc 4.0 for optimization flags--left it
13550           commented out--needs to be tested with 4.1
13552 2006-07-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13554         * src/tracks/automation_pattern.cpp:
13555         automationPattern::processMidiTime(): do not start search on time-map if
13556         empty - find() on maps is horribly slow and makes LMMS unusable (still
13557         have to find a better solution without any find()s at all)
13559 2006-07-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13561         * configure.in:
13562         - added optimization-flags
13563         - made 0.2.0 release
13565         * vst_sdk23_headers.diff:
13566         - removed as not needed anymore
13568 2006-07-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13570         * data/locale/de.ts:
13571         * data/locale/de.qm:
13572         updated German translation
13574         * include/automation_editor.h:
13575         decreased DEFAULT_Y_DELTA
13577         * plugins/flp_import/flp_import.cpp:
13578         removed some obsolete code
13580 2006-07-17      dieEasy <dieeasy/at/cheapnet/dot/it>
13582         * locale/it.ts:
13583         updated Italian translation
13585 2006-07-16      Javier Serrano Polo <jasp00/at/terra/dot/es>
13587         * data/themes/default/automation.png:
13588         * resources/automation.png:
13589         * src/core/automation_editor.cpp:
13590         * src/core/main_window.cpp:
13591         * src/core/piano_roll.cpp:
13592         * src/core/piano_widget.cpp:
13593         * src/core/surround_area.cpp:
13594         * src/widgets/automatable_button.cpp:
13595         * src/widgets/automatable_slider.cpp:
13596         * src/widgets/combobox.cpp:
13597         * src/widgets/knob.cpp:
13598         * src/widgets/lcd_spinbox.cpp:
13599         * src/widgets/tempo_sync_knob.cpp:
13600         added automation icon
13602 2006-07-15      Javier Serrano Polo <jasp00/at/terra/dot/es>
13604         * data/locale/ca.ts:
13605         updated translation
13607         * src/core/automation_editor.cpp:
13608         corrected help sentence
13610 2006-07-14      Javier Serrano Polo <jasp00/at/terra/dot/es>
13612         * include/note.h:
13613         * src/core/note.cpp:
13614         - added detuning knob
13615         - added explicit constructor from another note
13617         * include/note_play_handle.h:
13618         * src/core/note_play_handle.cpp:
13619         handle detuning automation
13621         * include/instrument_track.h:
13622         send a signal when handling automation
13624         * src/tracks/instrument_track.cpp:
13625         - send a signal when handling automation
13626         - use note detuning to calculate frequency
13628         * src/core/arp_and_chords_tab_widget.cpp:
13629         extended detuning to chords and arpeggios
13631         * include/automation_pattern.h:
13632         * src/tracks/automation_pattern.cpp:
13633         - automation pattern can be initialized without track
13634         - slots moved to public
13636         * include/automatable_object.h:
13637         automation pattern can be initialized without track
13639         * src/core/song_editor.cpp:
13640         * src/widgets/automatable_slider.cpp:
13641         updated clear automation method name
13643         * include/piano_roll.h:
13644         added open (note in editor) mode and support methods
13646         * src/core/piano_roll.cpp:
13647         - added open (note in editor) mode and support methods
13648         - clone detuning knobs when copying/pasting notes
13650         * src/core/automation_editor.cpp:
13651         - improved display when no pattern
13652         - play buttons can be used to play related note patterns
13653         - improved play/pause button display
13655 2006-07-10      Javier Serrano Polo <jasp00/at/terra/dot/es>
13657         * include/combobox.h:
13658         * src/widgets/combobox.cpp:
13659         - use automation capabilities
13660         - added context menu
13662         * src/core/arp_and_chords_tab_widget.cpp:
13663         * src/core/automation_editor.cpp:
13664         * src/core/envelope_tab_widget.cpp:
13665         * src/core/export_project_dialog.cpp:
13666         * src/core/piano_roll.cpp:
13667         upgraded combo boxes
13669         * src/core/bb_editor.cpp:
13670         - upgraded combo box
13671         - improved bb-track management
13673         * src/tracks/bb_track.cpp:
13674         - update bb editor combo box when removed
13675         - moving track is the active one
13677         * src/core/song_editor.cpp:
13678         - upgraded combo box
13679         - use default template to create new projects
13681         * include/main_window.h:
13682         * src/core/main_window.cpp:
13683         - added user templates to templates menu
13684         - update templates menu when accessed
13686 2006-07-09      Javier Serrano Polo <jasp00/at/terra/dot/es>
13688         * include/piano_widget.h:
13689         * src/core/piano_widget.cpp:
13690         - use automation capabilities using a helper knob
13691         - added context menu
13692         - added save/load methods
13693         - use raw keycodes to play the piano
13695         * include/instrument_track.h:
13696         * src/tracks/instrument_track.cpp:
13697         - don't set song modified flag when playing automation
13698         - use piano widget save/load methods
13700 2006-07-08      Javier Serrano Polo <jasp00/at/terra/dot/es>
13702         * include/automation_track.h:
13703         * src/tracks/automation_track.cpp:
13704         initial release, to handle automation of objects without a track
13706         * include/lcd_spinbox.h:
13707         * src/widgets/lcd_spinbox.cpp:
13708         - use automation capabilities
13709         - added context menu
13711         * include/automatable_slider.h:
13712         * src/widgets/automatable_slider.cpp:
13713         initial release, slider with automation
13715         * include/song_editor.h:
13716         * src/core/song_editor.cpp:
13717         - use automatable sliders
13718         - use automation track
13719         - upgraded lcd spin box
13720         - joined some slider creation code between QT versions
13721         - show slider status on manual change only
13723         * include/track.h:
13724         * src/core/track.cpp:
13725         added automation track
13727         * src/audio/audio_alsa.cpp:
13728         * src/audio/audio_jack.cpp:
13729         * src/audio/audio_oss.cpp:
13730         * src/core/midi_tab_widget.cpp:
13731         * src/tracks/instrument_track.cpp:
13732         upgraded lcd spin boxes
13734         * include/automatable_object.h:
13735         check whether the automation editor has been created
13737         * src/core/surround_area.cpp:
13738         fixed position rounding
13740         * Makefile.am:
13741         * src/lmms_single_source.cpp:
13742         added automatable_slider and automation_track
13744 2006-07-03      Javier Serrano Polo <jasp00/at/terra/dot/es>
13746         * plugins/audio_file_processor/audio_file_processor.cpp:
13747         removed all automation
13749         * src/widgets/automatable_button.cpp:
13750         button groups may not use automation
13752         * src/widgets/knob.cpp:
13753         knobs may not use automation
13755         * include/automatable_object.h:
13756         - moved update flag to automation pattern
13757         - moved nullTrack() to public
13759         * include/automation_pattern.h:
13760         * src/tracks/automation_pattern.cpp:
13761         moved update flag from automatable object
13763 2006-07-02      Javier Serrano Polo <jasp00/at/terra/dot/es>
13765         * include/surround_area.h:
13766         * src/core/surround_area.cpp:
13767         - use automation capabilities using helper knobs
13768         - added context menu
13769         - added save/load methods
13771         * include/instrument_track.h:
13772         * src/tracks/instrument_track.cpp:
13773         use upgraded surround area
13775         * include/automatable_button.h:
13776         * src/widgets/automatable_button.cpp:
13777         - use automation capabilities in button and button group
13778         - added button context menu
13780         * include/group_box.h:
13781         * include/led_checkbox.h:
13782         * include/pixmap_button.h:
13783         * plugins/audio_file_processor/audio_file_processor.cpp:
13784         * plugins/vestige/vestige.cpp:
13785         * plugins/vibed/impulse_editor.cpp:
13786         * plugins/vibed/impulse_editor.h:
13787         * plugins/vibed/nine_button_selector.cpp:
13788         * plugins/vibed/nine_button_selector.h:
13789         * plugins/vibed/vibed.cpp:
13790         * src/core/envelope_tab_widget.cpp:
13791         * src/core/export_project_dialog.cpp:
13792         * src/core/midi_tab_widget.cpp:
13793         * src/core/setup_dialog.cpp:
13794         * src/core/track.cpp:
13795         * src/widgets/group_box.cpp:
13796         * src/widgets/led_checkbox.cpp:
13797         * src/widgets/pixmap_button.cpp:
13798         upgraded buttons
13800         * plugins/bit_invader/bit_invader.cpp:
13801         - upgraded buttons
13802         - use sample length knob automation
13804         * plugins/organic/organic.cpp:
13805         - upgraded button
13806         - use waveshape knob automation
13808         * plugins/triple_oscillator/triple_oscillator.cpp:
13809         * src/core/arp_and_chords_tab_widget.cpp:
13810         * src/core/envelope_and_lfo_widget.cpp:
13811         upgraded buttons and button groups
13813         * include/automatable_object.h:
13814         - moved getAutomationPattern to public
13815         - added some checks and minor fixes
13817         * src/core/automation_editor.cpp:
13818         improved levels display
13820         * src/core/song_editor.cpp:
13821         save/load automation editor state
13823         * src/widgets/tempo_sync_knob.cpp:
13824         added automation editor option in context menu
13826 2006-06-29      Javier Serrano Polo <jasp00/at/terra/dot/es>
13828         * Makefile.am:
13829         * include/automation_editor.h:
13830         * include/automation_pattern.h:
13831         * include/engine.h:
13832         * include/main_window.h:
13833         * include/song_editor.h:
13834         * include/time_pattern.h:
13835         * include/time_roll.h:
13836         * include/track.h:
13837         * src/lmms_single_source.cpp:
13838         * src/core/automation_editor.cpp:
13839         * src/core/engine.cpp:
13840         * src/core/main_window.cpp:
13841         * src/core/time_roll.cpp:
13842         * src/core/track.cpp:
13843         * src/tracks/automation_pattern.cpp:
13844         * src/tracks/instrument_track.cpp:
13845         * src/tracks/sample_track.cpp:
13846         * src/tracks/time_pattern.cpp:
13847         * src/widgets/knob.cpp:
13848         renamed time* classes to automation* ones
13850         * include/automatable_object.h:
13851         - renamed time* classes to automation* ones
13852         - fixed int classes rounding
13854         * plugins/organic/organic.cpp:
13855         save harmonic settings like before
13857         * data/presets/Organic/organ_risingsun.cs.xml:
13858         * data/presets/Organic/organ_swish.cs.xml:
13859         * data/presets/Organic/pad_ethereal.cs.xml:
13860         * data/presets/Organic/pad_rich.cs.xml:
13861         * data/presets/Organic/pad_sweep.cs.xml:
13862         * data/presets/Organic/sequencer_64.cs.xml:
13863         upgraded to new detuning algorithm
13865 2006-06-28      Javier Serrano Polo <jasp00/at/terra/dot/es>
13867         * include/level_object.h:
13868         * src/tracks/time_pattern.cpp:
13869         added level<->label methods
13871         * include/automatable_object.h:
13872         - added level<->label methods
13873         - minimized rounding errors
13875 2006-06-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13877         * plugins/vestige/lvsl_server.c:
13878         compatibility with older VST-headers (2.0) mentioned by configure
13880         * acinclude.m4:
13881         * configure.in:
13882         compat-fixes for FreeBSD
13884 2006-06-27      Javier Serrano Polo <jasp00/at/terra/dot/es>
13886         * include/time_pattern.h:
13887         * src/tracks/time_pattern.cpp:
13888         initial release, pattern for dynamic values
13890         * include/time_roll.h:
13891         * src/core/time_roll.cpp:
13892         initial release, time pattern editor
13894         * include/level_object.h:
13895         initial release, mainly used by the time-roll
13897         * include/automatable_object.h:
13898         - added levelObject inheritance and related functions
13899         - added time pattern
13900         - moved linkObject methods to private for safety
13901         - save/load settings can use generic names and types other than double
13903         * include/engine.h:
13904         * include/main_window.h:
13905         * src/core/engine.cpp:
13906         * src/core/main_window.cpp:
13907         added time-roll
13909         * include/knob.h:
13910         * src/widgets/knob.cpp:
13911         - use automation capabilities
13912         - added time-roll option in context menu
13914         * include/tempo_sync_knob.h:
13915         * include/volume_knob.h:
13916         * src/widgets/automatable_button.cpp:
13917         * src/widgets/lcd_spinbox.cpp:
13918         * src/widgets/tempo_sync_knob.cpp:
13919         * src/widgets/volume_knob.cpp:
13920         added automation
13922         * include/envelope_and_lfo_widget.h:
13923         * plugins/audio_file_processor/audio_file_processor.cpp:
13924         * plugins/bit_invader/bit_invader.cpp:
13925         * plugins/organic/organic.cpp:
13926         * plugins/plucked_string_synth/plucked_string_synth.cpp:
13927         * plugins/triple_oscillator/triple_oscillator.cpp:
13928         * plugins/vibed/vibed.cpp:
13929         * src/core/arp_and_chords_tab_widget.cpp:
13930         * src/core/envelope_and_lfo_widget.cpp:
13931         * src/core/envelope_tab_widget.cpp:
13932         added automation to many knobs
13934         * include/track.h:
13935         * src/core/track.cpp:
13936         - added time pattern
13937         - added name methods
13939         * include/instrument_track.h:
13940         * src/tracks/instrument_track.cpp:
13941         - moved name scope to track
13942         - added automation to knobs
13943         - don't try to load a time pattern plugin
13945         * src/tracks/sample_track.cpp:
13946         added automation to knob
13948         * include/note.h:
13949         * src/core/note.cpp:
13950         moved quantized() to public
13952         * include/qt3support.h:
13953         added QPointer
13955         * include/song_editor.h:
13956         added time pattern
13958         * src/core/piano_roll.cpp:
13959         * src/core/song_editor.cpp:
13960         simplified combobox numbers generation
13962         * data/themes/default/zoom_x.png:
13963         * data/themes/default/zoom_y.png:
13964         * resources/zoom_x.png:
13965         * resources/zoom_y.png:
13966         icons for the time-roll
13968         * Makefile.am:
13969         * src/lmms_single_source.cpp:
13970         added new files
13972 2006-06-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
13974         * plugins/organic/organic.cpp:
13975         * plugins/organic/organic.h:
13976         * plugins/triple_oscillator/triple_oscillator.cpp:
13977         * plugins/triple_oscillator/triple_oscillator.h:
13978         updated code which uses knob-identification-capabilities
13980         * include/knob.h:
13981         * include/volume_knob.h:
13982         * src/widgets/knob.cpp:
13983         * src/widgets/volume_knob.cpp:
13984         use data-property of automatableObject for identifying the knob
13985         (replaces the id-stuff)
13987         * include/automatable_object.h:
13988         added data-property in which any arbitrary information can be stored
13990 2006-06-10      Javier Serrano Polo <jasp00/at/terra/dot/es>
13992         * src/lib/sample_buffer.cpp:
13993         - fixed bug when sample processor generates less frames than the audio
13994           buffer size
13995         - load full wav samples
13997         * data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml:
13998         * data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml:
13999         upgraded to newer version, end frame value caused segfault
14001 2006-06-09      Javier Serrano Polo <jasp00/at/terra/dot/es>
14003         * include/lmms_math.h:
14004         * include/oscillator.h:
14005         * include/sample_buffer.h:
14006         * src/lib/oscillator.cpp:
14007         - reverted to PM and added FM as a new modulation method
14008         - improved performance, specially PM/FM
14009         - moved fraction() to global scope
14010         - removed absolute value from userWaveSample, it's handled by fraction()
14012         * plugins/triple_oscillator/pm_active.png:
14013         * plugins/triple_oscillator/pm_inactive.png:
14014         * plugins/triple_oscillator/triple_oscillator.cpp:
14015         added PM buttons, hid FM ones
14017         * Makefile.am:
14018         added lmms_math.h
14020         * data/locale/ca.ts:
14021         updated translation
14023 2006-06-05      Javier Serrano Polo <jasp00/at/terra/dot/es>
14025         * include/oscillator.h:
14026         * include/panning.h:
14027         * plugins/organic/organic.cpp:
14028         * plugins/organic/organic.h:
14029         * plugins/triple_oscillator/triple_oscillator.cpp:
14030         * plugins/triple_oscillator/triple_oscillator.h:
14031         * src/lib/oscillator.cpp:
14032         oscillator rewrite, now many parameters may be changed between audio
14033         buffer updates
14035         * Makefile.am:
14036         note_play_handle is now a QObject
14038         * data/projects/cool_songs/Djeezus-BeatRolls.mmp:
14039         * data/projects/cool_songs/Djeezus-Oscilisous.mmp:
14040         * data/projects/cool_songs/Marfil-MarfilDrum01.mmp:
14041         * data/projects/cool_songs/Mart-Concave_flow.mmp:
14042         * data/projects/cool_songs/Mart-Dirt_Track.mmp:
14043         * data/projects/cool_songs/MaxFellner-Ease.mmp:
14044         * data/projects/cool_songs/SharkyX-DeadManDancing.mmp:
14045         * data/projects/cool_songs/SharkyX-Experiments.mmp:
14046         * data/projects/cool_songs/Siegel-DreamWave.mmp:
14047         * data/projects/cool_songs/TobyDox-Confused.mmp:
14048         * data/projects/cool_songs/TobyDox-Psycho.mmp:
14049         * data/projects/cool_songs/TobyDox-TheFourthDimension.mmp:
14050         * data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmp:
14051         * data/projects/demos/basses-demo.mmp:
14052         * data/projects/demos/beat-collection.mmp:
14053         * data/projects/demos/demo1.mmp:
14054         * data/projects/demos/demo3.mmp:
14055         * data/projects/demos/demo5.mmp:
14056         * data/projects/demos/demo6.mmp:
14057         * data/projects/demos/loop_collection.mmp:
14058         * data/projects/demos/some_basslines.mmp:
14059         * data/projects/misc/1st.mmp:
14060         * data/projects/misc/time_machine.mmp:
14061         * data/projects/templates/AcousticDrumset.mpt:
14062         * data/projects/templates/ClubMix.mpt:
14063         * data/presets/AudioFileProcessor/Bass-Mania.cs.xml:
14064         * data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml:
14065         * data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml:
14066         reverted audiofileprocessors to not point to /usr/local/share/lmms, they
14067         should continue working
14069         * include/knob.h:
14070         * include/volume_knob.h:
14071         * src/widgets/knob.cpp:
14072         * src/widgets/volume_knob.cpp:
14073         added knob id
14075         * include/note_play_handle.h:
14076         * src/core/note_play_handle.cpp:
14077         update note frequency when changing base note in instrument track
14079         * include/instrument_track.h:
14080         * plugins/flp_import/flp_import.cpp:
14081         * src/core/piano_widget.cpp:
14082         * src/tracks/instrument_track.cpp:
14083         unify method to set a base note
14085 2006-06-03      Javier Serrano Polo <jasp00/at/terra/dot/es>
14087         * acinclude.m4:
14088         * src/core/main.cpp:
14089         detect and load standard Qt translations
14091 2006-05-29      Javier Serrano Polo <jasp00/dot/terra/dot/es>
14093         * src/core/arp_and_chords_tab_widget.cpp:
14094         fixed integer-overflow
14096         * include/oscillator.h:
14097         * include/sample_buffer.h: 
14098         * plugins/organic/organic.cpp:
14099         * plugins/triple_oscillator/triple_oscillator.cpp:
14100         * src/core/envelope_and_lfo_widget.cpp:
14101         * src/lib/oscillator.cpp:
14102         - several segfault-fixes when while playing note
14103         - volume-knob-changes take effect immediately
14105         * data/locale/ca.ts:
14106         added catalan translation
14108 2006-05-26      Javier Serrano Polo <jasp00/dot/terra/dot/es>
14110         * src/lib/sample_buffer.cpp:
14111         corrected the calculation of f1 in play to prevent it from shifting
14112         the start_frame out of bounds when resampling.
14114         * src/core/config_mgr.cpp:
14115         * src/lib/mmp.cpp:
14116         changed the xml output to use UTF8 encoding instead of ascii.
14118 2006-05-23      Danny McRae     <khjklujn/at/users/dot/sourceforge/dot/net>
14120         * include/oscillator.h:
14121         FM mixing sometimes calculates a negative "time" for the sampling
14122         which causes bad things to happen when pulling the data out of
14123         a user defined wave.  Changed userWaveSample to use the absolute
14124         value of the sample, which fixes the segfaulting problem.  Not
14125         sure whether I should care about the negative times elsewhere.
14127 2006-05-22      Danny McRae     <khjklujn/at/users/dot/sourceforge/dot/net>
14129         * plugins/audio_file_processor/audio_file_processor.h:
14130         * plugins/audio_file_processor/audio_file_processor.cpp:
14131         added a switch to setAudioFile to force the track name to be
14132         used for the track if a name already exists.  Fixes the problem
14133         of having tracks being renamed to the file name when loading a
14134         saved song.
14136 2006-05-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14138         * data/locale/de.ts:
14139         updated German translation
14141         * src/core/bb_editor.cpp:
14142         added button in bb-editor for adding new beat/bassline
14144         * include/track.h:
14145         * src/core/track.cpp:
14146         * src/tracks/bb_track.cpp:
14147         * src/tracks/instrument_track.cpp:
14148         * src/tracks/pattern.cpp:
14149         * src/tracks/sample_track.cpp:
14150         added "muted"-property to track-content-objects for being able to mute
14151         single patterns, samples etc. either via context-menu or using <Ctrl>
14152         and middle mousebutton
14154 2006-05-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14156         * src/core/track_container.cpp:
14157         added missing #include (debug.h for assert(...) )
14159 2006-04-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14161         * plugins/flp_import/unrtf/output.c:
14162         generally use bigger font-sizes
14164         * plugins/flp_import/unrtf/attr.c:
14165         * plugins/flp_import/unrtf/attr.h:
14166         * plugins/flp_import/flp_import.cpp:
14167         do not crash when importing FLP-projects more than one time per
14168         session (some vars need to be reset before unrtf works again)
14170         * plugins/flp_import/flp_import.cpp:
14171         - limit number of bb-tracks for avoiding hangups
14172         - set length of step-notes to -64 instead of -1
14173         - scale filter-resonance to smaller values
14175 2006-04-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14177         * plugins/vibed/vibed.cpp:
14178         some small optimizations in vibed::playNote( ... )
14180 2006-04-16      Danny McRae     <khjklujn/at/users/dot/sourceforge/dot/net>
14181         * Makefile.am:
14182         * src/lmms_single_source.cpp:
14183         * include/knob.h:
14184         * include/instrument_track.h:
14185         * src/tracks/instrument_track.cpp:
14186         *+src/include/volume_knob.h:
14187         *+src/widgets/volume_knob.cpp:
14188         * include/setup_dialog.h:
14189         * src/core/setup_dialog.cpp:
14190         * include/sample_track.h:
14191         * src/tracks/sample_track.cpp:
14192         * plugins/audio_file_processor/audio_file_processor.h:
14193         * plugins/audio_file_processor/audio_file_processor.cpp:
14194         * plugins/organic/organic.h:
14195         * plugins/organic/organic.cpp:
14196         * plugins/triple_oscillator/triple_oscillator.h:
14197         * plugins/triple_oscillator/triple_oscillator.cpp:
14198         * plugins/vibed/vibed.h:
14199         * plugins/vibed/vibed.cpp:
14200         Added a volume knob widget that will display the volume level as
14201         either a percentage or in dbV, which can be selected from the
14202         general settings in the setup dialog.  Changed vibed to use a 
14203         volume range from 0 to 200 to bring it in line with every other
14204         volume knob in lmms.  Unfortunately, this will break any existing
14205         presets, but better to do it now before many of them actually
14206         exist.
14208         * src/core/mixer.cpp:
14209         Changed the number of channels processed from the fixed value of
14210         SURROUND_CHANNELS to m_audioDev->channels() so that only the
14211         number of channels that will be output get processed instead of
14212         the maximum number of channels that could be defined.
14213         
14214 2006-04-15      Danny McRae     <khjklujn/at/users/dot/sourceforge/dot/net>
14215         * include/mixer.h:
14216         * src/core/mixer.cpp:
14217         * src/core/song_editor.cpp:
14218         *+data/themes/default/auto_limit.png:
14219         *+data/themes/blue_scene/auto_limit.png:
14220         Added auto limiter option.  Main window now has a button next to
14221         the high-quality button to toggle the auto limiter on and off
14222         The limiter scales the whole section between zero crossings where
14223         a clip occurs.  This required adding another processing buffer
14224         in the mixer, which will double the latency when the auto limiter
14225         is being used, but when it's not being used, there is no change
14226         to the latency.  Because it's based on detecting the zero
14227         crossings, the lowest frequency for which it is effective is
14228         sample_rate/(4*buffer_len).
14230 2006-04-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14232         * src/lib/mmp.cpp:
14233         clean metadata-nodes when saving projects, project-templates or presets
14235         * plugins/vibed/vibed.cpp:
14236         - in vibed::loadSettings():
14237           - simplified loading of wave-shape
14238           - delete base64-decoded data at the end
14239         - commented out code in destructor as it is not necessary - to be
14240           removed someday
14242         * include/base64.h:
14243         fixed fatal bug in Qt4-version of base64::decode(): memcpy()ed data to
14244         _data instead of *_data
14246         * src/widgets/group_box.cpp:
14247         * src/widgets/tab_widget.cpp:
14248         some fine-tuning of Qt4-version of painting-code
14250         * src/widgets/lcd_spinbox.cpp:
14251         explicitely set black background-color in Qt4-version
14253         * src/core/midi_tab_widget.cpp:
14254         Qt4-version of MIDI-connection-code is now working
14256         * src/core/main_window.cpp:
14257         * plugins/vibed/impulse_editor.cpp:
14258         * plugins/vibed/nine_button_selector.cpp:
14259         * plugins/vibed/vibed.cpp:
14260         * plugins/plucked_string_synth/plucked_string_synth.cpp:
14261         * plugins/triple_oscillator/triple_oscillator.cpp:
14262         * plugins/bit_invader/bit_invader.cpp:
14263         * plugins/organic/organic.cpp:
14264         * src/core/song_editor.cpp:
14265         * src/core/piano_roll.cpp:
14266         * src/core/main_window.cpp:
14267         * src/core/bb_editor.cpp:
14268         * src/core/track.cpp:
14269         * src/widgets/project_notes.cpp:
14270         * src/widgets/group_box.cpp:
14271         * src/widgets/tab_widget.cpp:
14272         * src/widgets/tool_button.cpp:
14273         added missing setAutoFillBackground( TRUE )-call for making QWidget
14274         paint specified background-color/pixmap - makes Qt4-version of LMMS
14275         almost usable
14277         * src/widgets/tab_widget.cpp:
14278         per default hide newly added tabs
14280         * include/spc_bg_hndl_widget.h:
14281         added missing code for painting pixmap-backgrounds in Qt4-version
14283         * plugins/vestige/lvsl_client.cpp:
14284         use QX11EmbedContainer instead of QX11EmbedWidget in Qt4-version ->
14285         working VST-support in Qt4-version of LMMS
14287         * include/sample_buffer.h:
14288         * src/lib/sample_buffer.cpp:
14289         - when loading sample, first look for it in user's working-directory,
14290           then in LMMS' factory-samples-directory
14291         - simplified making the path of a sample-file relative
14293         * include/config_mgr.h:
14294         * src/core/config_mgr.cpp:
14295         * src/core/main_window.cpp:
14296         * src/tracks/instrument_track.cpp:
14297         replaced methods projectsDir(), presetsDir() and samplesDir() with
14298         userProjectsDir(), factoryProjectsDir(), userPresetsDir(),
14299         factoryPresetsDir() etc.
14301         * include/file_browser.h:
14302         * src/core/file_browser.cpp:
14303         try to avoid duplicate "/" in paths - fixes some problems
14305 2006-04-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14307         * most files:
14308         Qt4-fixes:
14309         - when including headers, specify qt-module too (QtCore, QtGui etc.)
14310         - draw gradients using QLinearGradient etc.
14311         - other opmizations (use QHash instead of QMap etc.)
14313 2006-04-10      Danny McRae     <khjklujn/at/users/dot/sourceforge/dot/net>
14315         * Makefile.am:
14316         * include/lmms_constants.h:
14317         * include/basic_filters.h:
14318         * include/oscillator.h:
14319         * include/interpolation.h:
14320         converted calculations using PI to single precision
14321         
14322         * src/audio/audio_device.cpp:
14323         * src/audio/audio_alsa.cpp:
14324         * src/audio/audio_file_wave.cpp:
14325         corrected handling of big endian data
14327         * plugins/vibed/vibed.h:
14328         * plugins/vibed/vibed.cpp:
14329         * plugins/vibed/nine_button_selector.h:
14330         * plugins/vibed/nine_button_selector.cpp:
14331         - added octave to save and restore settings
14332         - removed mysterious m_sampleBuffer that was causing seg faults in the
14333           deconstructor
14335         * src/core/main_window.cpp:
14336         added checks to handle "gimp like windows" for save and restore widget 
14337         states to prevent seg fault
14339         * data/projects/cool_songs/Djeezus-BeatRolls.mmp:
14340         * data/projects/cool_songs/Djeezus-Oscilisous.mmp:
14341         * data/projects/cool_songs/Marfil-MarfilDrum01.mpp:
14342         * data/projects/cool_songs/Mart-Concave_flow.mpp:
14343         * data/projects/cool_songs/Mart-Dirt_Track.mpp:
14344         * data/projects/cool_songs/MaxFellner-Ease.mpp:
14345         * data/projects/cool_songs/SharkyX-DeadManDancing.mpp:
14346         * data/projects/cool_songs/SharkyX-Experiments.mpp:
14347         * data/projects/cool_songs/Siegel-DreamWave.mpp:
14348         * data/projects/cool_songs/TobyDox-Confused.mpp:
14349         * data/projects/cool_songs/TobyDox-Psycho.mpp:
14350         * data/projects/cool_songs/TobyDox-TheFourthDimension.mpp:
14351         * data/projects/covers/J.S.Bach-Preludium_and_Fuge_A-Minor.mmp:
14352         * data/projects/demos/basses-demo.mpp:
14353         * data/projects/demos/beat-collection.mpp:
14354         * data/projects/demos/demo1.mpp:
14355         * data/projects/demos/demo3.mpp:
14356         * data/projects/demos/demo5.mpp:
14357         * data/projects/demos/demo6.mpp:
14358         * data/projects/demos/loop_collection.mpp:
14359         * data/projects/demos/some_basslines.mpp:
14360         * data/projects/misc/1st.mpp:
14361         * data/projects/misc/time_machine.mpp:
14362         * data/projects/templates/AccousticDrums.mpt:
14363         * data/projects/templates/ClubMix.mpt:
14364         * data/presets/AudioFileProcessor/Bass-Mainia.cs.xml:
14365         * data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml:
14366         * data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml:
14367         updated audiofileprocessors to point to factory presets files in
14368         /usr/local/share/lmms
14370 2006-04-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14372         * src/core/envelope_and_lfo_widget.cpp:
14373         do not show hint when loading settings in which lfo-shape is set to USER
14375         * src/core/preset_preview_play_handle.cpp:
14376         disable project-journalling while loading preset
14378         * src/core/preset_preview_play_handle.cpp:
14379         * src/tracks/instrument_track.cpp:
14380         for generating infinite notes, pass valueRanges<f_cnt_t>::max instead
14381         of ~0 to note-play-handle-constructor as ~0 = 1 for signed ints
14383         * include/types.h:
14384         - changed types of fpab_t and f_cnt_t to be signed - compiler
14385           generates more optimized code this way
14386         - added template-struct "valueRanges", containing members "min" and
14387           "max" which hold the minimum and maximum value of the type the
14388           template is instantiated with
14390         * plugins/bit_invader/bit_invader.cpp:
14391         - fixed buffer-overflow when loading sample-data from base64 and more
14392           bytes were decoded than allocated in wave-buffer
14393         - delete decoded base64-data after copying it into wave-buffer
14395 2006-04-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14397         * src/core/envelope_and_lfo_widget.cpp:
14398         - connect valueChanged()-event of lfo-shape-buttongroup with
14399           lfoWaveCh()-slot - fixes bug that clicks at the lfo-wave-buttons
14400           were not recognized
14401         - completely revised level()-method which doesn't have the bug
14402           anymore, that in release-phase the envelope-level simply went down
14403           from sustain-level to zero, now it goes down from the level at which
14404           the note was released, new method is also much cleaner and more
14405           optimized (and optmizable by compiler)
14407         * src/core/preset_preview_play_handle.cpp:
14408         hide preview-instrument-track-window after loading settings
14410 2006-04-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14412         * plugins/vibed/vibrating_string.h:
14413         corrected type-names for resample()-method-parameters (f_cnt_t instead
14414         of samplerate_t)
14416 2006-04-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14418         * include/config_mgr.h:
14419         * src/core/config_mgr.cpp:
14420         use setup-wizard only for setting working-directory
14422         * src/core/main_window.cpp:
14423         when creating file-browsers, pass 2 directories:
14424                 - factory-files
14425                 - user-files
14426         this concerns projects, presets and samples - obsoletes
14427         copying/linking files the first time, LMMS is run (new factory files in
14428         new versions do not cause any trouble anymore)
14430         * include/file_browser.h:
14431         * src/core/file_browser.cpp:
14432         added support for merging several directory-trees into one view
14434 2006-04-05      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
14436         * include/sample_track.h:
14437         * src/tracks/sample_track.cpp:
14438         - add volume knob to sample tracks
14440 2006-04-05      Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
14442         * plugins/vibed/impulse_editor.cpp:
14443         - corrected mismatch sin/saw mismatch in initialization
14445         * plugins/vibed/string_container.h:
14446         * plugins/vibed/string_container.cpp:
14447         * plugins/vibed/vibed.h:
14448         * plugins/vibed/vibed.cpp:
14449         - added string id tracking to allow adding strings while playing
14451 2006-04-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14453         * include/plugin_browser.h:
14454         * src/core/plugin_browser.cpp:
14455         - per default show small items for plugins in plugin-browser and show
14456           details on mouse-over (nice animations!! ;-) - avoids problems with
14457           hidden plugin-items because of too low screen-resolution and missing
14458           scrollbars
14459         - draw plugin-details-text using QPainter::drawText (not with old own
14460           (buggy) algorithm for text-drawing with word-break-support)
14462 2006-04-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14464         * plugins/flp_import/unrtf/*:
14465         * plugins/flp_import/flp_import.cpp:
14466         use integrated unrtf-source into FLP-import-filter for converting
14467         RTF-comments to plain HTML which is usable with QTextEdit
14469 2006-04-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14471         * src/core/song_editor.cpp:
14472         set master-volume-slider correctly in songEditor::setMasterVolume()
14474         * include/envelope_tab_widget.h:
14475         * src/core/envelope_tab_widget.cpp:
14476         * src/core/note_play_handle.cpp:
14477         - in envelopeTabWidget::releaseFrames():
14478                 if the volume-envelope is used, do not check
14479                 release-frames of other envelope-targets, as it is not
14480                 interesting if they're beyond the end of the volume-envelope
14481                 (silent so or so) - may result in less CPU-usage in some
14482                 situations if the user set a bigger release to an envelope
14483                 other than the volume-env
14484         - for arpeggio-base-notes only use number of release-frames of
14485           volume-envelope for m_releaseFramesToDo (for not creating silent notes
14486           in release-phase of arp-base-note)
14488         * plugins/vibed/impulse_editor.cpp:
14489         use saw-wave as default shape for strings as it sounds much more like
14490         a typical guitar-string than a sine-wave
14492         * plugins/triple_oscillator/triple_oscillator.h:
14493         * plugins/triple_oscillator/triple_oscillator.cpp:
14494         re-implement setParameter()-method for setting user-defined wave-shape
14495         (used by FLP-import-filter)
14497         * plugins/flp_import/flp_import.cpp:
14498         - convert 3x Osc params to TripleOscillator-settings and load them
14499         - load Vibed-Plugin for Plucked!-instrument
14500         - load arpeggio-settings of channel
14501         - load filter-settings of channel
14502         - handle base-note of each channel
14503         - correct master-volume-calculation
14505 2006-04-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14507         * plugins/flp_import/flp_import.cpp:
14508         - hack for converting RTF-comment to HTML using unrtf (if installed)
14510 2006-03-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14512         * plugins/flp_import/flp_import.h:
14513         * plugins/flp_import/flp_import.cpp:
14514         - try to load samples correctly using FL Studio installation
14515         - recognize steps (not working properly yet)
14516         - set current pattern of project
14517         - separate handling of plugin-parameters (will allow support of FL
14518           presets later!)
14519         - added FLP_StepData (225) (not handled as format not known yet)
14520         - added FLP_EnvLfoParams (218) (not handled as format not known yet)
14521         - load envelope-settings of instrument-tracks
14523         * src/core/track_container.cpp:
14524         disable journalling in destructor of trackContainer
14526         * include/config_mgr.h:
14527         * include/setup_dialog.h:
14528         * src/core/config_mgr.cpp:
14529         * src/core/setup_dialog.cpp:
14530         support for setting path to installation directory of FL Studio
14532 2006-03-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14534         * include/song_editor.h:
14535         * src/core/song_editor.cpp:
14536         added setMasterVolume() and setMasterPitch()
14538         * plugins/flp_import/flp_import.h:
14539         * plugins/flp_import/flp_import.cpp:
14540         - read text-len correctly
14541         - do not crash when creating new pattern before actual channels are
14542           created
14543         - stated event 224 to be FLP_PatternData
14544         - extract information for creating notes out of pattern-data
14545         - add playlist-items after all is done for resizing them correctly
14547 2006-03-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14549         * plugins/flp_import/flp_import.h:
14550         * plugins/flp_import/flp_import.cpp:
14551         improvements for having a working flp-filter as soon as possible
14553 2006-03-28      Danny McRae     <khjklujn/at/yahoo/dot/com>
14555         * src/lib/sample_buffer.cpp:
14556         corrected miscalculation of buffer size in resample
14558         * nine_button_selector.cpp:
14559         * nine_button_selector.h:
14560         * string_container.cpp:
14561         * string_container.h:
14562         * vibed.cpp:
14563         * vibed.h:
14564         changed QPtrList variables to vlist type to make things more
14565         Qt4 friendly
14566         
14567 2006-03-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14569         * plugins/flp_import/:
14570         skeleton for FLP-import-filter and some first code (doesn't work yet)
14572         * include/midi.h:
14573         * include/midi_port.h:
14574         * include/midi_tab_widget.h:
14575         * src/core/midi_tab_widget.cpp:
14576         * src/midi/midi_port.cpp:
14577         support for default-velocity for MIDI-in and/or -out-events - useful
14578         when recording with constant velocity
14580 2006-03-26      Danny McRae     <khjklujn/at/yahoo/dot/com>
14582         * plugins/vibed/:
14583         added "Vibed"-plugin, a powerful combination of PluckedStringSynth and
14584         BitInvader that's capable of producing a surprisingly wide range of
14585         sounds
14587 2006-03-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14589         * src/lib/journalling_object.cpp:
14590         in journallingObject::saveState(): append new dom-element to parent
14591         before calling saveSettings() as some implementations of it depend on
14592         knowing something about it's parent (e.g. whether it's the clipboard
14593         etc.) - fixes several bugs related to clipboard-usage and drag'n'drop
14595 2006-03-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14597         * include/instrument_track.h:
14598         * src/core/preset_preview_play_handle.cpp:
14599         disable journalling for all objects involved in preset-preview
14601         * src/tracks/instrument_track.cpp:
14602         when saving preset, create new node below content-node of project, as
14603         the behaviour of saveTrackSpecificSettings() was changed some days
14604         before
14606         * src/lib/mmp.cpp:
14607         bugfixes concerning project type-naming
14609         * src/core/arp_and_chords_tab_widget.cpp:
14610         bugfixes concerning loading/saving settings
14612 2006-03-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14614         * src/core/track.cpp:
14615         in trackContentWidget::undoStep(): cast journalling object to
14616         track-content-object and close it instead of deleting it - fixes crash
14617         after undo of TCO-add
14619 2006-03-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14621         * plugins/organic/organic.cpp:
14622         * plugins/organic/randomise_pressed.png:
14623         added pixmap for visual feedback when pressing randomise-button
14625         * plugins/midi_import/midi_import.cpp:
14626         removed attribute FASTCALL from midiImport::tryImport() for not
14627         crashing LMMS, as tryImport() is not defined as FASTCALL in
14628         importFilter-API
14630         * src/core/export_project_dialog.cpp:
14631         fixed bug causing LMMS to crash when trying to export a project
14633 2006-03-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14635         * src/core/track.cpp:
14636         * src/core/track_container.cpp:
14637         * src/tracks/pattern.cpp:
14638         in loadSettings(): do not get confused by meta-data (journal etc.)
14640         * src/lib/journalling_object.cpp:
14641         - lot of bugfixes
14642         - save/load data of journal-entry (QVariant) by encoding/decoding it
14643           with base64
14645         * include/base64.h:
14646         * src/lib/base64.cpp:
14647         support for encoding and decoding whole QVariant, independent of its 
14648         type (the result is one string, representing data of any type (int,
14649         QMap, QVector QString...) - this is just awesome!!)
14651         * src/tracks/instrument_track.cpp:
14652         do not crash in several situations if instrument is not loaded for
14653         some reason (e.g. invalid preset)
14655         * src/core/track.cpp:
14656         full support for undo/redo adding/removing a TCO (track-type
14657         independent)
14659 2006-03-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14661         * src/core/main_window.cpp:
14662         avoid layouting-errors when restore widget-state by showing widget
14663         while moving it
14665         * include/note.h:
14666         * src/core/note.cpp:
14667         undo/redo-support for note-properties
14669         * most files:
14670         - derive from journallingObject instead of settings and/or engineObject
14671         - in saveSettings() do not create own node, instead directly set
14672           attributes of passed dom-element
14674         * include/journalling_object.h:
14675         * src/lib/journalling_object.cpp:
14676         - added saveSettings() and loadSettings()-method from former
14677           settings-class
14678         - new wrapper-functions around saveSettings() and loadSettings():
14679           saveState()
14680           restoreState()
14681           -> objects do not have to create a new node on their own,
14682              saveState() does it for them using nodeName() as node-name
14683           -> journal of object is saved/restored automatically
14685         * include/settings.h:
14686         removed
14688 2006-03-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14690         * include/journalling_object.h:
14691         - renamed from editable_object.h
14692         - renamed editStep to journalEntry
14693         - renamed editableObject to journallingObject
14694         - renamed other method-names
14696         * include/project_journal.h:
14697         * src/lib/project_journal.cpp:
14698         renamed editHistory to projectJournal and changed file-names
14699         accordingly
14701         * most files:
14702         renamed class channelTrack to instrumentTrack and changed other
14703         method-names to match new naming-convention
14705         * include/instrument_track.h:
14706         * src/tracks/instrument_track.cpp:
14707         renamed channel_track.* to instrument_track.*
14709 2006-03-16      Andreas Brandmaier <andreas/at/brandmaier/dot/de>
14711         * plugins/organic/organic.cpp:
14712         * plugins/organic/organic.h:
14713         * plugins/organic/randomise.png:
14714         added "randomise preset" button to organic plugin
14716 2006-03-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14718         * include/types.h:
14719         added type for editable-object-ID
14721         * include/track.h:
14722         * src/core/track.cpp:
14723         * src/tracks/bb_track.cpp:
14724         * src/tracks/pattern.cpp:
14725         * src/tracks/sample_track.cpp:
14726         undo/redo-support for position- and size-changes of TCO
14728         * include/automatable_object.h:
14729         added methods for saving step-recording-state on stack and restoring
14730         it
14732         * include/automatable_object.h:
14733         * include/automatable_button.h:
14734         * include/knob.h:
14735         * src/widgets/automatable_button.cpp:
14736         * src/widgets/knob.cpp:
14737         added second template-parameter to automatableObject which specifies
14738         the type to be used for internal calculations (necessary for working
14739         undo/redo-implementation for bool-objects like buttons)
14741         * include/led_checkbox.h:
14742         * src/widgets/led_checkbox.cpp:
14743         fixed some bugs
14745 2006-03-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14747         * include/main_window.h:
14748         * src/core/main_window.cpp:
14749         added edit-menu with undo/redo-items
14751         * src/core/piano_roll.cpp:
14752         * src/core/song_editor.cpp:
14753         * src/core/track_container.cpp:
14754         * src/tracks/channel_track.cpp:
14755         * src/widgets/project_notes.cpp:
14756         use mainWindow::saveWidgetState() and mainWindow::restoreWidgetState()
14757         for saving widget-state in project-file
14759         * include/piano_roll.h:
14760         * src/core/piano_roll.cpp:
14761         made piano-roll a settings-object
14763         * include/main_window.h:
14764         * src/core/main_window.cpp:
14765         added static methods for saving and restoring state of a widget
14766         (position, size, visibility etc.) to/from QDomElement
14768         * include/timeline.h:
14769         * src/core/song_editor.cpp:
14770         * src/core/timeline.cpp:
14771         save loop-point-positions and loop-point-state in project
14773         * plugins/bit_invader/bit_invader.cpp:
14774         added visual feedback when pressing wave-shape-buttons
14776         * include/combobox.h:
14777         * include/led_checkbox.h:
14778         * include/pixmap_button.h:
14779         * src/widgets/combobox.cpp:
14780         * src/widgets/led_checkbox.cpp:
14781         * src/widgets/pixmap_button.cpp:
14782         use automatableButton as new base-class
14783         
14784         * include/automatable_button.h:
14785         * src/widgets/automatable_button.cpp:
14786         - added class automatableButton to be the base-class for pixmapButton,
14787           ledCheckBox etc.
14788         - added automatableButtonGroup, a more powerful button-group, designed
14789           to be used in conjunction with automatableButton-derived buttons
14791 2006-03-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14793         * include/automatable_object.h:
14794         - added setInitValue() to be used by ALL creators of automatable
14795           objects for initializing object-value - otherwise edit-step-history
14796           gets filled with steps to set object's value to init-value
14797         - derive from editableObject and re-implement some methods for
14798           transparent edit-history for all automatable objects (knobs etc.)
14800         * include/editable_object.h:
14801         * include/edit_history.h:
14802         * src/lib/edit_history.cpp:
14803         added support for recording edit-steps, the base for a generic
14804         undo/redo-system
14806 2006-03-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14808         * include/settings.h:
14809         * src/core/plugin_browser.cpp:
14810         * src/core/song_editor.cpp:
14811         * src/core/track_container.cpp:
14812         * plugins/midi_import/midi_import.cpp:
14813         * plugins/midi_import/midi_import.h:
14814         made MIDI-file-code an import-filter
14816         * include/import_filter.h:
14817         * src/core/import_filter.cpp:
14818         support for import-filter-plugins - simply call
14820         importFilter::import( FILE_NAME, TRACK_CONTAINER )
14822         for any file and the rest will be done fully automatically according
14823         to installed import-filter-plugins
14825 2006-03-08      Zolo <the-zolo/at/gmx/dot/de>
14827         * data/themes/blue_scene/:
14828         updated some pixmaps
14830         * data/themes/blue_scene/plugins/:
14831         added pixmaps for plugins
14833 2006-03-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14835         * src/core/timeline.cpp:
14836         more logical loop-point-handling:
14837                 middle mouse button -> left loop-point
14838                 right mouse button -> right loop-point
14840         * plugins/audio_file_processor/audio_file_processor.cpp:
14841         * plugins/bit_invader/bit_invader.cpp:
14842         * plugins/organic/organic.cpp:
14843         * plugins/plucked_string_synth/plucked_string_synth.cpp:
14844         * plugins/triple_oscillator/triple_oscillator.cpp:
14845         * plugins/vestige/vestige.cpp:
14846         * include/plugin.h:
14847         * src/core/instrument.cpp:
14848         * src/core/plugin.cpp:
14849         * src/lib/embed.cpp:
14850         added support for plugin-theming
14852         * src/lib/embed.cpp:
14853         - first search in artwork-directories before searching for embedded data
14854           as most artwork is not linked into binary (except plugins)
14855         - if pixmap not found, try to load according pixmap from
14856           default-artwork-dir
14858         * include/embed.h:
14859         * src/core/main.cpp:
14860         * src/lib/embed.cpp:
14861         as localizations are no longer embedded into binary, loadTranslation()
14862         was moved to main.cpp and contains only some basic code for loading
14863         appropriate translation from file
14865         * src/core/config_mgr.cpp:
14866         several fixes concerning artwork-path
14868 2006-03-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14870         * src/core/arp_and_chords_tab_widget.cpp:
14871         more senseful range for arpeggio time: 25-2000 ms (instead of 10-1000ms)
14873         * src/audio/audio_alsa.cpp:
14874         * src/audio/audio_oss.cpp:
14875         * src/midi/midi_alsa_raw.cpp:
14876         * src/midi/midi_alsa_seq.cpp:
14877         * src/midi/midi_oss.cpp:
14878         only specify threading-priority when using Qt 3.3.5 or above as older
14879         versions cause problems when running the whole app with realtime
14880         priority - fixes several lockups
14882         * src/widgets/knob.cpp:
14883         when moving mouse while having shift pressed, increase/decrease by
14884         single steps
14886         * src/core/envelope_tab_widget.cpp:
14887         use 10 KHz as filter-maximum instead of 16 KHz
14889         * include/track.h:
14890         * src/core/track.cpp:
14891         added HACK to avoid crash because of bug in Qt (< 3.3.5) when removing
14892         track
14894         * src/core/config_mgr.cpp:
14895         - use default-theme-path if theme-path from config-file doesn't exist
14896         - add "/" to theme-path if missing
14898 2006-03-06      Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
14900         * locale/ru.ts:
14901         updated Russian translation
14903 2006-03-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14905         * src/core/main_window.cpp:
14906         always set to configured-state before showing setup-dialog on first
14907         startup
14909 2006-03-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14911         * src/core/engine.cpp:
14912         finalize main-window after having mixer to start its audio-devices -
14913         fixes crash on first time LMMS is started
14915 2006-02-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14917         * data/locale/de.ts:
14918         updated German translation
14920         * src/core/timeline.cpp:
14921         use note::toNearestTact() in timeLine::mouseMoveEvent() instead of own
14922         calculations
14924         * src/core/track.cpp:
14925         per default make TCO-ops (create, move, resize) aligned on tact-
14926         boundaries, free positioning/resizing can be achieved by pressing
14927         <Ctrl> after pressing mouse-button
14929         * include/midi_time.h:
14930         added note::toNearestTact()-method
14932         * include/pattern.h:
14933         * src/core/piano_roll.cpp:
14934         * src/track/pattern.cpp:
14935         do not quantize note-position while moving selection of notes
14937         * src/core/song_editor.cpp:
14938         some layout-fixes for looking good with "Blue Scene" as well
14940 2006-02-27      Zolo <the-zolo/at/gmx/dot/de>
14942         * data/themes/blue_scene/:
14943         added new theme for LMMS
14945 2006-02-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14947         * src/core/song_editor.cpp:
14948         * src/tracks/pattern.cpp:
14949         do not crash when playing a pattern which is deleted
14951         * src/core/track_container.cpp:
14952         pause mixer when cloning tracks for avoiding side-effects, probably
14953         fixes some crash-bugs
14955         * include/config_mgr.h:
14956         * include/setup_dialog.h:
14957         * src/core/config_mgr.cpp:
14958         * src/core/setup_dialog.cpp:
14959         * src/lib/embed.cpp:
14960         first simple support for theming
14962         * Makefile.am:
14963         * configure.in:
14964         re-organized all data-directories (samples, presets, localizations,
14965         artwork etc.) and put them into data/ dir to be all installed into
14966         $prefix/share/lmms
14968 2006-02-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14970         * src/tracks/channel_track.cpp:
14971         apply a very basic envelope at the beginning and the end of a note for
14972         avoiding these "typical" clicks which were there before
14974 2006-02-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
14976         * configure.in:
14977         * Makefile.am:
14978         * src/lmms_single_source.cpp:
14979         added support for compiling LMMS from one source file which often
14980         results in a better/more optimized executable
14982         * include/note.h:
14983         * include/piano_roll.h:
14984         * src/core/note.cpp:
14985         * src/core/piano_roll.cpp:
14986         - simple quantization-support
14987         - fixed lengths for drawing notes can be selected in piano-roll
14989         * resources/black_key.png:
14990         * resources/black_key_pressed.png:
14991         * resources/pr_black_key.png:
14992         * resources/pr_white_key_big.png:
14993         * resources/pr_white_key_small.png:
14994         * resources/white_key.png:
14995         * resources/white_key_pressed.png:
14996         replaced by new graphics
14998         * src/core/engine.cpp:
14999         delete piano-roll after song-editor and bb-editor as patterns being
15000         destroyed still depend on it
15002 2006-02-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15004         * src/tracks/channel_track.cpp:
15005         do not lock mutex in processOutEvent() as it causes a deadlock when
15006         having channel-activity-indicators enabled
15008         * include/midi_mapper.h
15009         * include/project_notes.h:
15010         * src/lib/sample_buffer.cpp:
15011         * src/midi/midi_file.cpp:
15012         * src/midi/midi_mapper.cpp:
15013         * src/widgets/project_notes.cpp:
15014         misc fixes for being able to compile LMMS from one source-file
15016         * include/automatable_object.h:
15017         * include/knob.h:
15018         * include/lcd_spinbox.h:
15019         * include/led_checkbox.h:
15020         * src/widgets/knob.cpp:
15021         * src/widgets/led_checkbox.cpp:
15022         * src/widgets/lcd_spinbox.cpp:
15023         introduced template-class automatableObject for central value-
15024         manipulation, range-checking etc. and made some classes (e.g. knob,
15025         ledCheckBox, lcdCheckBox) derive from it - preparations for full
15026         automation-support in LMMS
15028         * Makefile.am:
15029         do not strip executable when installing as it makes even basic debugging
15030         impossible
15032 2006-02-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15034         * src/widgets/combobox.cpp:
15035         * src/widgets/knob.cpp:
15036         * src/widgets/led_checkbox.cpp:
15037         draw shadowed text
15039         * include/mixer.h:
15040         * src/core/arp_and_chords_tab_widget.cpp:
15041         * src/core/mixer.cpp:
15042         better xrun-detection and -handling (still not perfect)
15044         * include/mixer.h:
15045         * src/tracks/channel_track.cpp:
15046         fixed critical bug which made LMMS crash if xruns were detected and
15047         notes were discarded by mixer and therefore deleted twice
15049 2006-02-19      Andreas Brandmaier <andreas/at/brandmaier/dot/de>
15051         * plugins/organic/organic.cpp:
15052         * plugins/organic/organic.h:
15053         * presets/Organic:
15054         * presets/Bitinvader:
15055         added waveshape knob
15056         changed distortion method from clipping to foldback
15057         renamed and added presets for Organic and BitInvader
15058         
15059 2006-02-18      Andreas Brandmaier <andreas/at/brandmaier/dot/de>
15061         * plugins/organic/organic.cpp:
15062         * plugins/organic/organic.h:
15063         * presets/Organic:
15064         added new plugin synthesizer plugin organic and some presets
15066 2006-02-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15068         * plugins/triple_oscillator/triple_oscillator.cpp:
15069         per default set volume of each osc to 33%
15071         * allmost all files:
15072         use engine-technology
15074         * include/engine.h:
15075         * src/core/engine.cpp:
15076         added engine- and engineObject-class providing new "engine-technology"
15077         which makes singleton-classes obsoletes and offers a lot of new
15078         possibilities like GUI-data-separation and having several projects
15079         open at the same time
15081 2006-02-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15083         * include/mixer.h:
15084         * include/song_editor.h:
15085         * src/core/mixer.cpp:
15086         * src/core/song_editor.cpp:
15087         simple xrun-detection - do not accept new note-play-handles if xruns
15088         are detected
15090 2006-02-06      Andreas Brandmaier <andy/at/brandmaier/dot/de>
15092         * plugins/bitinvader/bitinvader.cpp:
15093         * plugins/bitinvader/bitinvader.h:
15094         * plugins/bitinvader/graph.cpp:
15095         * plugins/bitinvader/graph.h:
15096         - code cleanup
15097         - added drag&drop support to wavegraph
15098         - added new BitInvader presets and improved old ones
15100 2006-02-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15102         * include/basic_filters.h:
15103         small optimizations: do not divide by 2.0, instead multiply with 0.5
15105         * src/core/main.cpp:
15106         set SCHED_FIFO-priority for LMMS if possible
15108         * plugins/vestige/communication.h:
15109         * plugins/vestige/lvsl_client.cpp:
15110         * plugins/vestige/lvsl_server.c:
15111         - set SCHED_FIFO-priority for VST-server if possible
15112         - no X-calls needed anymore
15113         - more complete host-callback-implementation
15114         - support for geometry-changes of plugin
15115         - use std::list instead of std::vector for enqueing MIDI-events (faster)
15116         - support for telling plugin system's language
15118         * configure.in:
15119         when checking for VST-SDK-headers, use C++ compiler instead of
15120         C-compilers as headers fail to compile with it
15122 2006-02-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15124         * include/types.h:
15125         * most files:
15126         more strict typing -> types for samplerate, bpm, frame-count,
15127         channel-count etc.
15129         * src/core/track.cpp:
15130         when creating a track, pause mixer for not causing any trouble because
15131         of incompletely initialized track etc. - fixes several crashes when
15132         adding track while playing
15134         * include/mixer.h:
15135         * src/core/mixer.cpp:
15136         more "intelligent" mix-mutex-management for allow multiple pause()-
15137         calls without ending in deadlock or crash because of mutex being
15138         unlocked to early
15140 2006-02-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15142         * configure.in:
15143         made 0.1.4 release
15145         * Makefile.am:
15146         added -rdynamic-switch again to make LMMS able to load plugins
15148         * include/track_container.h:
15149         fixed bug which caused LMMS not being compilable using GCC 3
15151 2006-02-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15153         * configure.in:
15154         made 0.1.3 release
15156         * lmms.1:
15157         added manpage (taken from debian-package and updated)
15159         * include/base64.h:
15160         * include/rubberband.h:
15161         * plugins/bit_invader/graph.cpp:
15162         * src/core/name_label.cpp:
15163         * src/widgets/combobox.cpp:
15164         * src/widgets/rubberband.cpp:
15165         Qt4-compat fixes
15167         * locale/de.ts:
15168         updated German translation
15170         * src/core/main.cpp:
15171         updated copyright-notice in help-text
15173 2006-01-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15175         * plugins/vestige/fstclient.h:
15176         * plugins/vestige/fstclient.cpp:
15177         - renamed to lvsl_client.*
15178         - when waiting for plugin to have finished process()ing, usleep() some
15179           micro-seconds for allowing better scheduling
15181         * plugins/vestige/lvsl_server.c:
15182         - merged code from fstserver.cpp, fstserver.h and fstcore.c into one
15183           source-file and removed rests of the old FST-API which makes all
15184           the VST-code MUCH more cleaner and less redundant (LVSL = LMMS VST
15185           Support Layer)
15186         - VST SDK 2.4 compatibility (no need to fix headers with 2.4!)
15188 2006-01-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15190         * plugins/bit_invader/bit_invader.cpp:
15191         - call graph::setSamplePointer() after loading settings
15192         - memcpy() samples in bitInvader::smoothClicked() instead of copying
15193           them in a loop
15195         * plugins/bit_invader/graph.cpp:
15196         - update after setting new sample
15198         * src/tracks/pattern.cpp:
15199         - disable auto-cleanup during pattern-freeze
15200         - initialize member m_progress in patternFreezeStatusDialig-dtor - fixes
15201           bug which sometimes closed the window before actual freezing was
15202           started
15204         * include/buffer_allocator.h:
15205         * src/lib/buffer_allocator.cpp:
15206         - added possibility to disable auto-cleanup at certain times e.g. when
15207           freezing a pattern
15208         - cleanup only every 10th free()-call for decreasing overhead
15209         - only start searching for free bufs if there're enough remaining
15211 2006-01-24      Andreas Brandmaier <andy/at/brandmaier/dot/de>
15213         * plugins/bit_invader/bit_invader.cpp:
15214         * plugins/bit_invader/bit_invader.h:
15215         * presets/BitInvader:
15216         - changed sample buffer encoding in presets to base64
15217         - added BitInvader various presets
15219 2006-01-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15221         * include/sample_buffer.h:
15222         * src/lib/sample_buffer.cpp:
15223         * plugins/audio_file_processor/audio_file_processor.cpp:
15224         use new base64-code
15226         * include/base64.h:
15227         * src/lib/base64.cpp:
15228         added methods for encoding/decoding binary data to/from base64-encoded
15229         data (wrapper-implementation for Qt4)
15231 2006-01-23      Andreas Brandmaier <andy/at/brandmaier/dot/de>
15233         * plugins/bit_invader/bit_invader.cpp:
15234         * plugins/bit_invader/bit_invader.h:
15235         * plugins/bit_invader/graph.cpp:
15236         * plugins/bit_invader/graph.h:
15237         - improved mouse handling.
15238         - replaced waveform generation methods by those of toby's oscillator
15239           class
15240         - added user-loadable waveform
15241         - code cleanup
15243 2006-01-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15245         * include/timeline.h:
15246         * src/core/song_editor.cpp:
15247         * src/core/timeline.cpp:
15248         updates are now completely done by timeline/QTimer without being
15249         called from song-editor out of non-GUI-thread which caused segfaults
15250         etc. sometimes
15252         * include/name_label.h:
15253         * src/core/name_label.cpp:
15254         * src/tracks/bb_track.cpp:
15255         * src/tracks/sample_track.cpp:
15256         added support for user-defined track-icons
15258         * artwork/track_icons/*png:
15259         added several icons to be used as track-icons
15261         * include/track.h:
15262         * src/core/track.cpp:
15263         * src/core/track_container.cpp:
15264         do not hide track for completely repainting it, use special method for
15265         it
15267         * include/pattern.h:
15268         * src/tracks/pattern.cpp:
15269         only repaint if necessary, otherwise just paint the pixmap we painted
15270         before
15272         * include/bb_editor.h:
15273         * src/core/bb_editor.cpp:
15274         added combobox for selecting bb-track inside bb-editor
15276         * include/combobox.h:
15277         * src/widgets/combobox.cpp:
15278         - added clear()-method
15279         - do not crash when having no items
15280         - scale pixmap to fit into combobox
15281         - place menu below combobox if possible
15283 2006-01-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15285         * include/track.h:
15286         * src/core/track.cpp:
15287         * src/tracks/pattern.cpp:
15288         * src/tracks/sample_track.cpp:
15289         added support for used-defined track-height by pressing <Shift> and
15290         move mouse (with pressed button)
15292         * include/song_editor.h:
15293         * include/track.h:
15294         * include/track_container.h:
15295         * src/core/song_editor.cpp:
15296         * src/core/track.cpp:
15297         * src/core/track_container.cpp:
15298         take advantage of new rubberband:
15299         - selecting track-content-objects of any type either via rubberband or
15300           by clicking while pressing <Ctrl>
15301         - move selected track-content-objects
15302         - delete selected track-content-objects
15304         * include/rubberband.h:
15305         * src/widgets/rubberband.cpp:
15306         added rubberband which either acts as wrapper for Qt4's QRubberBand or
15307         as a widget imitating a rubberband
15309         * include/track.h:
15310         * src/core/track.cpp:
15311         draw vertical lines for each bar
15313         * include/bb_editor.h:
15314         * include/song_editor.h:
15315         * include/track_container.h:
15316         * src/core/bb_editor.cpp:
15317         * src/core/song_editor.cpp:
15318         * src/core/track.cpp:
15319         * src/core/track_container.cpp:
15320         fixed all that stuff with annoying scrollbars which partly hid important
15321         widgets
15323 2006-01-21      Andreas Brandmaier <andy/at/brandmaier/dot/de>
15325         * plugins/bit_invader/bit_invader.cpp:
15326         * plugins/bit_invader/bit_invader.h:
15327         added smooth button
15329 2006-01-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15331         * src/tracks/pattern.cpp:
15332         also update after clearing all notes
15334         * include/piano_roll.h:
15335         * include/song_editor.h:
15336         * src/core/piano_roll.cpp:
15337         * src/core/song_editor.cpp:
15338         use new combobox for zooming-comboboxes
15340         * include/export_project_dialog.h:
15341         * src/core/export_project_dialog.cpp:
15342         - reject() dialog when pressing cancel
15343         - use new combobox
15345         * include/arp_and_chords_tab_widget.h:
15346         * src/core/arp_and_chords_tab_widget.cpp:
15347         use new combobox with according arpeggio-mode-icons
15349         * include/envelope_tab_widget.h:
15350         * src/core/envelope_tab_widget.cpp:
15351         * resources/filter_2lp.png:
15352         * resources/filter_ap.png:
15353         * resources/filter_bp.png:
15354         * resources/filter_hp.png:
15355         * resources/filter_lp.png:
15356         use new combobox with according filter-icons
15358         * include/combobox.h:
15359         * src/widgets/combobox.cpp:
15360         added own cool-looking combobox with menu-extension which basically
15361         has the same API as QComboBox
15363 2006-01-19      Andreas M. Brandmaier <andy/at/brandmaier/dot/de>
15365         * plugins/bit_invader/bit_invader.h:
15366         * plugins/bit_invader/bit_invader.cpp:
15367         * plugins/bit_invader/graph.h:
15368         * plugins/bit_invader/graph.cpp:
15369         added "BitInvader"-plugin, an usereditable wavetable-synthesizer
15371 2006-01-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15373         * src/lib/mmp.cpp:
15374         do not add "mmp"-extensions if there's already "mpt" (multimedia-
15375         project-template) as extension
15377         * include/arp_and_chords_tab_widget.h:
15378         * src/core/arp_and_chords_tab_widget.cpp:
15379         - added new sync-mode to arpeggiator
15380         - arpeggiator-modes are now selectable from combobox
15382 2006-01-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15384         * src/core/file_browser.cpp:
15385         use 7.5 instead of 8 as font-size
15387         * src/widgets/led_checkbox.cpp:
15388         use 7.5 instead of 7 as font-size
15390         * include/gui_templates.h:
15391         - added more precise pointSizeF()-method
15392         - more precise point-size-calculation for pointSize()-method which
15393           makes all fonts inside LMMS a bit bigger and everything more
15394           readable
15396         * include/setup_dialog.h:
15397         * src/core/note_play_handle.cpp:
15398         * src/core/setup_dialog.cpp:
15399         * src/tracks/channel_track.cpp:
15400         added switches for disabling several UI-effects for a better
15401         performance even on older hardware
15403         * include/preset_preview_play_handle.h:
15404         * src/core/preset_preview_play_handle.cpp:
15405         global-data-mutex is not a pointer anymore, instead it's a normal
15406         QMutex - fixes crashes with sort-arpeggio if no preset was previewed
15407         before
15409 2006-01-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15411         * src/widgets/kmultitabbar.cpp:
15412         made KMultiTabBar working with Qt4
15414         * src/audio/audio_jack.cpp:
15415         return if connection to JACK-server failed with old JACK-API
15416         (jack_client_new(...)) - fixes crash when using old JACK-API with
15417         LMMS and JACK-server is not running
15419         * include/preset_preview_play_handle.h:
15420         * src/core/arp_and_chords_tab_widget.cpp:
15421         * src/core/preset_preview_play_handle.cpp:
15422         as preset-note-play-handle is not registered at mixer, it cannot be
15423         returned in notePlayHandle::nphsOfChannelTrack() and therefore
15424         previewing presets with sort-mode arpeggios doesn't work - now the
15425         arpeggiator also checks preview-note for being the only note there
15427         * src/core/arp_and_chords_tab_widget.cpp:
15428         fixed some bugs in arpeggiator
15430         * src/core/piano_roll.cpp:
15431         lock qapp-thread in recordNote() - hopefully fixes some
15432         xlib-async-errors
15434         * src/tracks/channel_track.cpp:
15435         - do not process note-on-out-events if according key is already pressed
15436         - when invalidating note-play-handles, also reset m_notes-array for not
15437           crashing when applying another preset while key is pressed and
15438           released afterwards
15440 2006-01-10      Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
15442         * locale/ru.ts:
15443         updated Russian translation
15445 2006-01-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15447         * src/core/piano_roll.cpp:
15448         update pattern after changing volume of step-note
15450 2006-01-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15452         * include/setup_dialog.h:
15453         * src/core/config_mgr.cpp:
15454         * src/core/setup_dialog.cpp:
15455         made appearence of two dialogs switchable (question whether to re-run
15456         wizard after up-/downgrade and message after accepting setup-dialog)
15458 2006-01-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15460         * include/piano_roll.h:
15461         * src/core/piano_roll.cpp:
15462         * src/tracks/pattern.cpp:
15463         simple support for editing (existing) steps in piano-roll, e.g. for
15464         changing key of a step
15466         * plugins/vestige/vestige.cpp:
15467         per default switch to users VST-plugin-directory when opening plugin
15469         * include/config_mgr.h:
15470         * include/setup_dialog.h:
15471         * src/core/config_mgr.cpp:
15472         * src/core/setup_dialog.cpp:
15473         added possibility to setup working-directory and location of VST-plugins
15475         * src/widgets/tempo_sync_knob.cpp:
15476         removed a lot of obsolete #include's
15478         * include/piano_widget.h:
15479         * src/core/note_play_handle.cpp:
15480         * src/core/piano_widget.cpp:
15481         display played keys as if they were pressed
15483         * include/arp_and_chords_tab_widget.h:
15484         * include/note_play_handle.h:
15485         * src/core/arp_and_chords_tab_widget.cpp:
15486         * src/core/note_play_handle.cpp:
15487         added sort-mode for more powerful arpeggios
15489         * src/core/arp_and_chords_tab_widget.cpp:
15490         fixed bug which made the arpeggiator skipping notes sometimes at
15491         certain arpeggio-times
15493         * src/core/lmms_main_win.cpp:
15494         commented out code for creating effect-board-window-button
15496         * src/core/channel_track.cpp:
15497         removed inclusion of paths.h which isn't part of LMMS for quite a long
15498         while... - there were no problems because Linux has paths.h too
15500 2006-01-06      dieEasy <dieeasy/at/cheapnet/dot/it>
15502         * locale/it.ts:
15503         added Italian translation
15505 2006-01-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15507         * plugins/vestige/vestige.cpp:
15508         set vestige-logo as window-icon of plugin-GUI-window
15510         * src/core/instrument.cpp:
15511         set logo of plugin as window-icon of channel-track
15513         * include/dummy_instrument.h:
15514         * include/dummy_plugin.h:
15515         * include/instrument.h:
15516         * include/plugin.h:
15517         * src/core/instrument.cpp:
15518         * src/core/plugin.cpp:
15519         small changes in plugin-API: plugin now always has to pass pointer to
15520         plugin-descriptor to plugin-dtor to make the latter one able to
15521         provide several information
15523         * src/core/plugin.cpp:
15524         search for plugin-libs in configManager::pluginDir() which is
15525         $prefix/lib/lmms - hopefully solves problems with finding plugins on
15526         some systems
15528         * include/channel_track.h:
15529         * include/midi_tab_widget.h:
15530         * src/core/midi_tab_widget.cpp:
15531         * src/tracks/channel_track.cpp:
15532         when using Raw-MIDI-client, make items "MIDI input/output" checkable
15533         and enable/disable MIDI-input/output accordingly if user
15534         checked/unchecked it and update check-state if user changed MIDI-mode
15535         in midi-tab-widget in channel-track
15537         * src/core/midi_tab_widget.cpp:
15538         set MIDI-output-channel to 1 per default
15540         * src/lib/sample_buffer.cpp:
15541         added flac-files to filter of file-selection-dialog
15543         * include/note_play_handle.h:
15544         * src/core/note_play_handle.cpp:
15545         when invalidating note-play-handle, do some stuff which actually would
15546         be done by dtor if m_channelTrack wouldn't be NULL
15548 2006-01-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15550         * src/core/track.cpp:
15551         added tooltip to track-op-widget telling the user something about
15552         drag'n'drop-functionality...
15554         * include/lmms_main_win.h:
15555         * src/core/lmms_main_win.cpp:
15556         * src/lib/string_pair_drag.cpp:
15557         if main-window looses focus or a drag is completed, clear
15558         key-modifiers of LMMS-main-window, because we might have lost
15559         key-release-events in these cases and therefore our modifier-state-map
15560         could be incorrect - fixes several bugs concerning drag'n'drop
15562         * README:
15563         * src/core/about_dialog.cpp:
15564         extended copyright from 2005 to 2006 - Happy New Year!
15566 2005-12-31      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15568         * include/channel_track.h:
15569         * src/tracks/channel_track.cpp:
15570         removed surround-area in track-settings-widget and added button with
15571         MIDI-connection-menu instead
15573 2005-12-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15575         * include/track.h:
15576         * include/track_container.h:
15577         * src/core/track.cpp:
15578         * src/core/track_container.cpp:
15579         revised all the things around track-operations:
15580         - tracks are now directly movable via the grip at the beginning of a
15581           track - replaces "move up/down"-buttons and is much more usable
15582         - actions (clone/delete track) are now part of a popup-menu
15584         * src/core/lmms_main_win.cpp:
15585         - corrected file-description at the beginning
15586         - add space at left side before adding tool-buttons
15588         * src/core/midi_tab_widget.cpp:
15589         use smaller font for connection-selection-menu
15591 2005-12-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15593         * src/widgets/fade_button.cpp:
15594         do not update() directly in nextState(), use QTimer instead for avoiding
15595         xlib-threading-errors
15597 2005-12-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15599         * plugins/vestige/communication.h:
15600         * plugins/vestige/fstclient.cpp:
15601         * plugins/vestige/fstclient.h:
15602         * plugins/vestige/fstserver.cpp:
15603         * plugins/vestige/vestige.cpp:
15604         * plugins/vestige/vestige.h:
15605         - support for telling plugin current BPM, also catches BPM-changes
15606         - handle plugins without GUI correctly
15607         
15608         * include/tool_button.h:
15609         * src/widgets/tool_button.cpp:
15610         catch toggle-signals to emit clicked()-signal which is necessary if a
15611         button is checked using setChecked()-method and not by the user -
15612         fixes some bugs with piano-roll
15614         * include/piano_roll.h:
15615         * src/core/piano_roll.cpp:
15616         - show text-float after user copied notes
15617         - do not play note when just moving selection
15618         - when update()ing paint everything in a pixmap which is painted in
15619           paintEvent() - saves all the repaints everytime mouse-cursor is moved
15620           and makes painting tool-cursor possible again
15622         * src/tracks/channel_track.cpp:
15623         corrected calculation in channelTrack::masterKey()
15625 2005-12-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15627         * include/piano_roll.h:
15628         * src/core/piano_roll.cpp:
15629         always reset cursor when receiving leave-event
15631         * include/channel_track.h:
15632         * src/tracks/channel_track.cpp:
15633         use new fade-button as MIDI-event-indicator as well as simple
15634         play-default-tone-button
15636         * include/fade_button.h:
15637         * src/widgets/fade_button.cpp:
15638         added fade-button which can be activated and fades back to
15639         default-color afterwards
15641         * src/core/arp_and_chords_tab_widget.cpp:
15642         * src/core/envelope_and_lfo_widget.cpp:
15643         * src/core/envelope_tab_widget.cpp:
15644         * src/core/midi_tab_widget.cpp:
15645         * src/core/note.cpp:
15646         * src/core/song_editor.cpp:
15647         * src/core/track.cpp:
15648         * src/tracks/bb_track.cpp:
15649         * src/tracks/channel_track.cpp:
15650         * src/tracks/sample_track.cpp:
15651         do not use QString::number() for saving scalar value with
15652         setAttribute() as it is obsolete
15654         * src/audio/audio_alsa.cpp:
15655         * src/audio/audio_oss.cpp:
15656         start audio-thread with QThread::HightestPriority for having less xruns
15658         * src/tracks/pattern.cpp:
15659         save m_steps-property, otherwise restoring it in loadSettings() makes
15660         no sense... - fixes bug which caused LMMS to always reset number of
15661         steps to 16 when loading files, even if the user created patterns
15662         containing more than 16 steps
15664         * include/audio_dummy.h:
15665         - fixed missing implementation of thread running the whole time and
15666           calling audioDevice::processNextBuffer() -> fixes bugs & lockups when
15667           using audio-dummy-driver
15668         - thread now always waits the amount of time that is left for the
15669           current buffer, so if rendering of current buffer went faster than
15670           in realtime, the song doesn't play at a higher speed
15672 2005-12-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15674         * plugins/vestige/vestige.cpp:
15675         determine real key of note using channelTrack::masterKey
15677         * include/micro_timer.h:
15678         moved micro-timer-class from mixer.cpp in separate header for being
15679         available to all modules of LMMS
15681         * src/core/mixer.cpp:
15682         added metronome-sounds when recording in piano-roll
15684         * src/lib/sample_buffer.cpp:
15685         - added resample()-method for resampling whole sample-buffer
15686         - after libsndfile try to load sample with libvorbis instead of
15687           SDL_sound as the latter one seems to be buggy on few systems and
15688           leads to unexpected crashes
15689         - if sample-decoder doesn't resample sample automatically, do it
15690           afterwards using resample()
15692         * src/core/track_container.cpp:
15693         accept drops of type samplefile and sampledata too and create new
15694         channel-track with AudioFileProcessor
15696         * plugins/audio_file_processor/audio_file_processor.cpp:
15697         save/load sample-data which was dragged on plugin in settings
15699         * src/core/track.cpp:
15700         display correct length and now additionally start- and end-position of
15701         track-content-object
15703         * include/bb_track.h:
15704         * src/tracks/bb_track.cpp:
15705         do not align position and length of bb-track-objects on tact-boundaries
15706         as it offers an interesting new feature (incomplete/start beats etc.!)
15708 2005-12-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15710         * src/widgets/visualization_widget.cpp:
15711         enable visualization-widget per default
15713         * plugins/vestige/vestige.cpp:
15714         - do not crash when loading settings with empty plugin-attribute (e.g.
15715           older projects/presets)
15716         - set channel-name according to plugin-name
15717         - added note-off-button for being able to note off hanging notes
15718           (which sometimes occurs in combination with arpeggios)
15720 2005-12-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15722         * plugins/vestige/vestige.cpp:
15723         use new parameter-saving/loading-feature when saving/loading settings
15725         * plugins/vestige/communication.h:
15726         * plugins/vestige/fstclient.cpp:
15727         * plugins/vestige/fstclient.h:
15728         * plugins/vestige/fstserver.cpp:
15729         * plugins/vestige/fstserver.h:
15730         * plugins/vestige/fstcore.c:
15731         - added support for saving/loading parameters which almost completes
15732           LMMS's rudimentary VST-support
15733         - support for querying parameter-properties
15734         - some changes in initialization of plugin
15736         * src/tracks/pattern.cpp:
15737         pass unused wheel-events to trackContentObect for being able to scroll
15738         within song-editor
15740 2005-12-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15742         * plugins/vestige/fstcore.c:
15743         a lot of clean-ups and other bug-fixes making VeSTige almost usable
15744         and stable
15746         * plugins/vestige/fstclient.h:
15747         * plugins/vestige/fstclient.cpp:
15748         save PID of children when fork()ing XFST-server which is used for
15749         sending SIGTERM when destroying everything
15751         * plugins/vestige/communication.h:
15752         * plugins/vestige/fstclient.cpp:
15753         * plugins/vestige/fstserver.cpp:
15754         * plugins/vestige/fstcore.c:
15755         do not show editor until client created x11-embed-widget - solves
15756         problems with not-embedded plugins under KDE
15758         * plugins/vestige/fstserver.cpp:
15759         rewrote MIDI-enqueueing-code as the old one was very buggy and
15760         unreliable
15762         * plugins/vestige/vestige.h:
15763         * plugins/vestige/vestige.cpp:
15764         added mutex for plugin which solves some problems
15766         * include/mixer.h:
15767         * src/core/mixer.cpp:
15768         per default clear all play-handles but instrument-play-handles in
15769         mixer::clear() as instrument-playhandles normally exist during the
15770         whole life-time of a certain plugin and must not be deleted when just
15771         stopping song etc.
15773         * include/play_handle.h:
15774         added type-information, so every derived class has to pass a
15775         type-constant to playHandle-constructor
15777 2005-12-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15779         * configure.in:
15780         made 0.1.2 release
15782 2005-12-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15784         * src/lib/sample_buffer.cpp:
15785         - first try to use libsndfile instead of SDL_sound for decoding sample
15786           as SDL_sound sometimes doesn't handle samples (raw- and FLAC-files)
15787           the correct way and returns unusable data while libsndfile seems to
15788           work quite fine with these samples
15789         - when using libsamplerate, use linear-interpolation per default
15790           instead of zero-order-hold-resampling which results in MUCH higher 
15791           quality when resampling as it produces much less artifacts
15793         * src/core/file_browser.cpp:
15794         classify files with extension "flac" as samples
15796         * src/widgets/tab_widget.cpp:
15797         hide all other tabs when changing active tab - necessary for working
15798         with Qt 4.1
15800 2005-12-20      Danny McRae     <khjklujn/at/yahoo/dot/com>
15802         * resources/step_btn_on_100.png:
15803         * resources/step_btn_yellow.png:
15804         * include/pattern.h:
15805         * src/tracks/pattern.cpp:
15806         make it possible to change volume of steps in bb-editor using mouse
15807         wheel and which changes color of step-button accordingly
15809 2005-12-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15811         * src/lib/sample_buffer.cpp:
15812         first implementation of FLAC-encoding/decoding for compressing buffers
15813         before encoding them to base64 which results in smaller XML-files -
15814         currently disabled as it's still buggy and unusable
15816         * src/lib/buffer_allocator.cpp:
15817         in cleanup-method use list instead of vector for pool of buffers to be
15818         removed - fixes crash with Qt4
15820 2005-12-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15822         * src/widgets/knob.cpp:
15823         made knob ready for drag'n'drop of values
15825         * src/tracks/sample_track.cpp:
15826         load and save/load sample-data which doesn't come from sample in/from
15827         XML-node (base64-encoded)
15829 2005-12-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15831         * src/tracks/pattern.cpp:
15832         use Sint32 instead of Sint16 for determining central key, otherwise we
15833         might get overflows when having a lot of notes
15835         * src/tracks/sample_track.cpp:
15836         draw zero-line if sample is shorter than TCO
15838         * src/core/track.cpp:
15839         display text-float with current position/size when moving/resizing TCO
15841         * src/core/song_editor.cpp:
15842         do correct positioning for text-floats for master-volume/-pitch
15844         * include/envelope_and_lfo_widget.h:
15845         * src/core/envelope_and_lfo_widget.cpp:
15846         added support for user-defined wave-shapes - the user just has to drag
15847         an audio-sample into envelope/lfo-widget and that's all ;-)
15849         * src/tracks/pattern.cpp:
15850         * src/tracks/sample_track.cpp:
15851         make sound-buffer of frozen pattern draggable to sample in
15852         sample-track
15854         * include/sample_buffer.h:
15855         * src/lib/sample_buffer.cpp:
15856         support for base64-encoding of sample-data into a QString
15858         * src/core/track_container.cpp:
15859         import MIDI-file to itself when getting according drag'n'drop-request
15861         * plugins/audio_file_processor/audio_file_processor.h:
15862         * plugins/audio_file_processor/audio_file_processor.cpp:
15863         receive drop-events (set dragged sample etc.)
15865         * plugins/vestige/fstclient.h:
15866         * plugins/vestige/fstclient.cpp:
15867         renamed removeVSTPlugin::write/readValue to write/readValueS for
15868         compiling even with buggy GCC 3.x
15870         * include/file_browser.h:
15871         * src/core/file_browser.cpp:
15872         made up all that drag'n'drop-stuff, you're now able to drag samples
15873         and presets directly to according channel, sample etc.
15875 2005-12-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15877         * include/bb_editor.h:
15878         * include/pattern.h:
15879         * src/core/bb_editor.cpp:
15880         * src/tracks/pattern.cpp:
15881         always update according bb-tracks when changing pattern/it's length
15883         * include/track.h:
15884         * src/core/track.cpp:
15885         * src/core/track_container.cpp:
15886         drag'n'drop everywhere - now you can drag every track-content-object
15887         (e.g. a pattern) to every other track-content-object of the same type
15888         or to a free place in an according track or just in another
15889         track-container
15891         * include/mmp.h:
15892         * src/lib/mmp.cpp:
15893         allow additionally to load data from given string instead of file
15895         * include/timeline.h:
15896         * src/core/timeline.cpp:
15897         - disable magnetic loop-points when pressing control
15898         - set start-point directly to given position when pressing middle
15899           mouse-button, do the same for end-point of shift is pressed at the
15900           same time
15902         * include/piano_roll.h:
15903         * include/song_editor.h:
15904         * src/core/piano_roll.cpp:
15905         * src/core/song_editor.cpp:
15906         use modifier-key-states from lmmsMainWin instead of monitoring them on
15907         it's own
15909         * include/lmms_main_win.h:
15910         * src/core/lmms_main_win.cpp:
15911         capture key-events and save states of shift, control- and alt-key
15912         everytime it changes - other widgets can use this for querying whether
15913         one of these modifier-keys is pressed
15915 2005-12-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15917         * configure.in:
15918         added better LADSPA-check and fixed some other small things
15920         * src/core/mixer.cpp:
15921         query attribute "mididev" instead of "midiclient" for determining
15922         selected MIDI-device - fixes bug with apparently non-selectable
15923         MIDI-device/-client
15925         * src/core/plugin.cpp:
15926         * src/lib/ladspa_manager.cpp:
15927         load plugins using QLibrary instead of platform-dependent dl-functions
15929 2005-12-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15931         * include/audio_alsa.h:
15932         do not include alsa-headers if they do not exist...
15934 2005-12-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15936         * src/core/file_browser.cpp:
15937         display text-float while loading sample for preview
15939         * plugins/audio_file_processor/audio_file_processor.cpp:
15940         fixed bug which caused LMMS to crash when playing notes on
15941         audio-file-processor, which was created out of preset containing link
15942         to file which doesn't exist
15944         * src/core/song_editor.cpp:
15945         use text-floats instead of status-bar
15947         * src/core/lmms_main_win.cpp:
15948         removed status-bar
15950         * plugins/vestige/vestige.cpp:
15951         show text-float while loading plugin
15953         * include/text_float.h:
15954         * src/widgets/text_float.cpp:
15955         heavy improvements on text-float-widget which is now also able to
15956         display messages with title and pixmap and offers two static methods
15957         for displaying a certain message
15959         * src/tracks/channel_track.cpp:
15960         set project modified after accepting drops of presets/plugins
15962         * include/instrument_play_handle.h:
15963         check for m_instrument being NULL because play-handle might be
15964         invalidated and thus crash when referencing NULL-ptr
15966         * most files:
15967         continued improving Qt4-support
15969 2005-12-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15971         * most files:
15972         made LMMS compatible with Qt4 again after heavy development under Qt3
15973         led to incompatibility with Qt4
15975 2005-12-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
15977         * src/core/lmms_main_win.cpp:
15978         * src/lib/mmp.cpp:
15979         - default file-extension is now "mmp" (MultiMedia Project) instead of
15980           "xml" for being able to associate mmp-files with LMMS in
15981           file-managers etc. - futhermore LMMS-file-browser is much faster now
15982           because it does not have to examine each file
15983         - file-extension for song-templates is now "mpt" (MultiMedia Project
15984           Template)
15986         * include/cpuload_widget.h:
15987         * src/widgets/cpuload_widget.cpp:
15988         added cool CPU-load-widget displaying LMMS's current CPU-usage
15990         * src/core/note_play_handle.cpp:
15991         always check validity of sub-notes as they might not be known to mixer
15992         and therefore not invalidated in certain situations which made LMMS
15993         crashing (e.g. when deleting a channel-track which was current playing
15994         some arpeggio-notes)
15996         * include/pattern.h:
15997         * src/tracks/pattern.cpp:
15998         start separate thread for freezing pattern as this doesn't block the
15999         GUI-thread and user is now able to cancel pattern-freezing (which was
16000         not possible after last rewrite a few days ago)
16002         * include/timeline.h:
16003         * src/core/timeline.cpp:
16004         use timer for periodically screen-updates - locking QApplication-mutex
16005         isn't necessary anymore which makes LMMS not to hang when creating
16006         new song while playing etc.
16008         * src/core/piano_roll.cpp:
16009         when settings time-line-position, call setTact( 0 ) and
16010         setTact64th( 0 )-members instead of pos() = 0 (the latter one leads
16011         to crashes)
16013         * plugins/audio_file_processor/audio_file_processor.cpp:
16014         update start- and end-frames of sample-buffer when loading settings
16016 2005-12-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16018         * include/lmms_main_win.h:
16019         * include/song_editor.h:
16020         * src/core/lmms_main_win.cpp:
16021         * src/core/song_editor.cpp:
16022         * resources/toolbar_bg.png:
16023         * resources/main_toolbar_bg.png:
16024         heavy improvements on toolbars
16026         * include/nstate_button.h:
16027         * src/widgets/nstate_button.cpp:
16028         base-class is now toolButton instead of QPushButton
16030         * include/tool_button.h:
16031         * src/widgets/tool_button.cpp:
16032         - moved implemenation of toolButton into cpp-file
16033         - added highlighting during mouse-over
16034         - do not connect clicked()-signal if receiver and/or slot are NULL
16036 2005-12-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16038         * include/channel_track.h:
16039         * src/core/midi_tab_widget.cpp:
16040         * src/core/preset_preview_play_handle.cpp:
16041         added support for saving and restoring MIDI-connections of a channel
16042         in ordinary channel-preset-data
16044         * include/channel_track.h:
16045         * include/midi_tab_widget.h:
16046         * src/core/midi_tab_widget.cpp:
16047         * src/tracks/channel_track.cpp:
16048         dropped support for switchable MIDI-event-routing as it is done per
16049         default and actually makes no sense...
16051         * src/midi/midi_port.cpp:
16052         do not process MIDI-out-event if channel = -1
16054 2005-12-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16056         * src/core/midi_tab_widget.cpp:
16057         - always un-check items in port-menus when disabling receiving or
16058           sending MIDI-events
16059         - small GUI improvements
16061         * resources/midi_in.png:
16062         * resources/midi_out.png:
16063         added icons for MIDI-input- and MIDI-output-port-selection
16065 2005-12-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16067         * include/midi_alsa_seq.h:
16068         * include/midi_client.h:
16069         * include/midi_tab_widget.h:
16070         * src/core/midi_tab_widget.cpp:
16071         * src/midi/midi_alsa_seq.cpp:
16072         * src/midi/midi_client.cpp:
16073         added support for easy MIDI-port-subscription inside LMMS by just
16074         selecting according source-/destination-port from a menu in
16075         MIDI-setup-tab in each channel-window
16077 2005-12-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16079         * src/core/note_play_handle.cpp:
16080         * src/core/piano_roll.cpp:
16081         * src/core/piano_widget.cpp:
16082         * src/tracks/channel_track.cpp:
16083         moved output-MIDI-event-generation-code from channel-track to
16084         note-play-handles for covering arpeggio/chords and having exactly
16085         timed events - makes it now possible to control other MIDI-based
16086         synths etc. from patterns (which was not possible before because
16087         of a small bug) - will drop MIDI-out-plugin very soon as it isn't
16088         needed anymore
16090 2005-12-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16092         * include/piano_roll.h:
16093         * src/core/piano_roll.cpp:
16094         - when moving mouse draw a bar at current key
16095         - re-enabled mouse-tracking for cursor-changes when mouse is over tail
16096           of note etc.
16098         * resources/zoom.png:
16099         * src/core/song_editor.cpp:
16100         * src/core/piano_roll.cpp:
16101         added small zoom-icon to zoom-combobox
16103 2005-12-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16105         * include/midi_alsa_raw.h:
16106         * include/midi_client.h:
16107         * include/midi_dummy.h:
16108         * include/midi_oss.h:
16109         * src/midi/midi_alsa_raw.cpp:
16110         * src/midi/midi_client.cpp:
16111         * src/midi/midi_oss.cpp:
16112         renamed class midiRawClient to midiClientRaw
16113         
16114         * include/pattern.h:
16115         * src/core/song_editor.cpp:
16116         * src/tracks/pattern.cpp:
16117         do not hang in endless loop when rendering pattern with enabled
16118         looping-points
16120         * src/core/time_line.cpp:
16121         align looping-points on bars
16123         * include/bb_editor.h:
16124         * include/piano_roll.h:
16125         * include/song_editor.h:
16126         * include/timeline.h:
16127         * include/tool_button.h:
16128         * src/core/bb_editor.cpp:
16129         * src/core/piano_roll.cpp:
16130         * src/core/song_editor.cpp:
16131         * src/core/timeline.cpp:
16132         redesigned toolbars of song-editor, bb-editor and piano-roll - now
16133         they're looking really cool and especially time-line-features are much
16134         more usable
16136         * include/song_editor.cpp:
16137         * src/core/lmms_main_win.cpp:
16138         * src/core/song_editor.cpp:
16139         - added main-toolbar at bottom of screen and moved several widgets from
16140           song-editor-toolbar into it
16141         - added high-quality-button for switching to 88200/96000 Hz
16143         * src/widgets/tab_widget.cpp:
16144         reversed scroll-wheel-direction for changing tab
16146 2005-12-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16148         * src/core/main.cpp:
16149         - better handling of command-line options
16150         - added help switch
16151         - fixed bugs concerning rendering from command-line
16153         * include/audio_alsa.h:
16154         * include/audio_device.h:
16155         * include/audio_dummy.h:
16156         * include/audio_file_device.h:
16157         * include/audio_file_ogg.h:
16158         * include/audio_file_wave.h
16159         * include/audio_jack.h:
16160         * include/audio_oss.h:
16161         * include/audio_sdl.h:
16162         * include/export.h:
16163         * include/export_project_dialog.h:
16164         * include/mixer.h:
16165         * include/pattern.h
16166         * include/song_editor.h:
16167         * src/audio/audio_alsa.cpp:
16168         * src/audio/audio_device.cpp:
16169         * src/audio/audio_file_device.cpp:
16170         * src/audio/audio_file_ogg.cpp:
16171         * src/audio/audio_file_wave.cpp:
16172         * src/audio/audio_jack.cpp:
16173         * src/audio/audio_oss.cpp:
16174         * src/audio/audio_port.cpp:
16175         * src/audio/audio_sdl.cpp:
16176         * src/core/export_project_dialog.cpp:
16177         * src/core/lmms_main_win.cpp:
16178         * src/core/main.cpp:
16179         * src/core/mixer.cpp:
16180         * src/core/song_editor.cpp:
16181         * src/track/pattern.cpp:
16182         changed architecture of mixer-system from push- to pull-architecture
16183         which makes almost all things (song-export, pattern-freezing etc.) much
16184         easier and also results in a better performance (especially when using
16185         JACK) - additionally LMMS doesn't take 100% CPU anymore
16187 2005-12-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16189         * src/core/config_mgr.cpp:
16190         do not try to re-run wizard in case of version mismatches
16192         * configure.in:
16193         * plugins/Makefile.am:
16194         * presets/Makefile.am:
16195         dropped ladspa_sine_1063-plugin as it is only for experimental
16196         purposes
16198 2005-11-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16200         * plugins/vestige/vestige.h:
16201         * plugins/vestige/vestige.cpp:
16202         changes for working with new VST-framework
16204         * plugins/vestige/fstclient.h:
16205         * plugins/vestige/fstserver.h:
16206         * plugins/vestige/fstclient.cpp:
16207         * plugins/vestige/fstserver.cpp:
16208         * plugins/vestige/fstcore.c:
16209         * plugins/vestige/communication.h:
16210         added new VST-framework (client-server-architecture) based on XFST
16212         * include/qxembed.h
16213         * src/widgets/qxembed.cpp:
16214         added QXEmbed-widget which is necessary for embedding VST-plugin
16216 2005-11-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16218         * src/core/mixer.cpp:
16219         added usleep()-call for realizing usable threading and solve problems
16220         with 100%-CPU-usage
16222 2005-11-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16224         * include/channel_track.h:
16225         * include/sample_play_handle.h:
16226         * include/sample_track.h:
16227         * src/core/sample_play_handle.cpp:
16228         * src/tracks/channel_track.cpp:
16229         * src/tracks/sample_track.cpp:
16230         made things work with audio-ports
16232         * include/mixer.h:
16233         * src/core/mixer.cpp:
16234         completely revised internal mixing-engine make it working with
16235         the new audio-ports, which results in a much cleaner, faster and more
16236         powerful mixing-engine
16238         * include/audio_port.h:
16239         * src/audio/audio_port.cpp:
16240         added so called audio-ports which are important for transporting sound
16241         from it's origin through the mixer and the effect-board (the latter
16242         one isn't existing yet but coming quite soon) - another important
16243         point is the ability of having output-ports for each channel/sample-
16244         track with JACK
16246         * src/tracks/channel_track.cpp:
16247         translate default-channel-name "Default"
16249         * src/audio/audio_jack.cpp:
16250         - sync JACK's buffer-size with LMMS's one
16251         - start JACK-transport if not already done
16253         * include/mixer.h:
16254         * src/audio/audio_jack.cpp:
16255         * src/core/mixer.cpp:
16256         * src/lib/sample_buffer.cpp:
16257         * src/widgets/visualization_widget.cpp:
16258         use memset() for clearing buffers - obsoletes usage of silence-buffers
16259         in mixer
16261 2005-11-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16263         * src/midi/midi_alsa_seq.cpp:
16264         use relative instead of absolute scheduling for events which makes
16265         MIDI-out working
16267 2005-10-31      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16269         * include/midi_alsa_seq.h:
16270         * src/midi/midi_alsa_seq.cpp:
16271         several bug-fixes
16273 2005-10-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16275         * include/midi_alsa_seq.h:
16276         * src/midi/midi_alsa_seq.cpp:
16277         added first version of ALSA-sequencer - currently doesn't handle all
16278         common events, but note-on/off and key-pressure work so far
16280         * include/midi_client.h:
16281         - added method applyPortMode() for making MIDI-subsystem able to get
16282           known of port-mode changes which is necessary if they have REAL
16283           ports like ALSA-seq. has
16284         - renamed validatePortName() to applyPortName() and made it non-pure
16285           virtual
16287         * src/tracks/channel_track.cpp:
16288         initialize m_midiEventRoutingEnabled with FALSE per default in ctor
16290         * src/core/mixer.cpp:
16291         delete midi-dev on exit
16293         * src/midi/midi_midi_alsa_raw.cpp:
16294         when reading/saving device-name via config-mgr, use "midialsaraw"
16295         instead of "midialsa" as context-name
16297 2005-10-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16299         * src/widgets/project_notes.cpp:
16300         set initial text to bright gray, since black text on a very dark back-
16301         ground isn't very readable...
16303         * include/lmms_main_win.h:
16304         * include/setup_dialog.h:
16305         * src/core/bb_editor.cpp:
16306         * src/core/lmms_main_win.cpp:
16307         * src/core/setup_dialog.cpp:
16308         * src/core/song_editor.cpp:
16309         * src/widgets/project_notes.cpp:
16310         added support for GIMP-like usability, i.e. no MDI
16312         * src/core/song_editor.cpp:
16313         * src/core/bb_editor.cpp:
16314         reorder some code in constructor for not crashing if window is
16315         shown while constructor is still running
16317 2005-10-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16319         * src/widgets/led_checkbox.cpp:
16320         also emit toggled()-signal if state actually wasn't changed
16322         * include/lcd_spinbox.h:
16323         * src/widgets/lcd_spinbox.cpp:
16324         - display special strings if value is a certain number
16325         - support for disabled-state (gray/no input)
16327         * include/midi_tab_widget.h:
16328         * src/core/midi_tab_widget.cpp:
16329         * src/tracks/channel_track.cpp:
16330         added new tab "MIDI" for being able to setup MIDI-related stuff for
16331         each channel
16333         * include/channel_track.h:
16334         * include/midi*:
16335         * include/piano_widget.h:
16336         * include/setup_dialog.h:
16337         * src/core/mixer.cpp:
16338         * src/core/piano_roll.cpp:
16339         * src/core/piano_widget.cpp:
16340         * src/core/setup_dialog.cpp:
16341         * src/core/song_editor.cpp:
16342         * src/midi/midi*:
16343         * src/tracks/channel_track.cpp:
16344         coded a completely new, powerful and clean MIDI-system which e.g. makes
16345         it possible to mask MIDI-events for each channel and to receive and send
16346         (timed!) MIDI-events on a separate MIDI-port for each channel, which
16347         only makes sense if using non-raw (sequenced) MIDI-client - currently
16348         none existing, but ALSA-sequencer-support is in progress
16350         * include/midi_device.h:
16351         * src/midi/midi_device.cpp:
16352         removed
16354 2005-10-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16356         * src/widgets/tempo_sync_knob.cpp:
16357         do not implement the same code as knob does in mouseMoveEvent() - call
16358         knob::mouseMoveEvent() instead
16360         * include/knob.h:
16361         * src/widgets/knob.cpp:
16362         cleaned up a lot and fixed some bugs
16364 2005-10-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16366         * include/song_editor.h:
16367         decreased MAX_BPM to 999 since BPM-LCD-spinbox is intended to have
16368         only three digits while 1000 has four of them... ;-)
16370         * include/track_container.h:
16371         * src/core/track_container.cpp:
16372         trackContainer::scrollArea-class has now m_trackContainer-member
16373         for storing parent which makes cast of parent-widget to track-container
16374         (which sometimes failed...) obsolete
16376         * configure.in:
16377         check for libfst and present VST-SDK header-files
16379 2005-10-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16381         * plugins/vestige/vestige.h:
16382         * plugins/vestige/vestige.cpp:
16383         added possibility of opening plugins instead of hardcoding them ;-)
16385         * include/track.h:
16386         renamed createTrack() and cloneTrack() to create() and clone()
16388         * include/track_container.h:
16389         * src/core/track_container.cpp:
16390         receive drop-events -> add channel with instrument/preset
16392         * src/audio/audio_jack.cpp:
16393         removed usleep() out of loop in audioJACK::writeBufferToDev() since it
16394         caused LMMS to hang e.g when removing a track
16396         * src/core/plugin_browser.cpp:
16397         show hand-cursor if over a plugin-description-widget
16399         * src/widgets/pixmap_button.cpp:
16400         if pixmap-button is set non-checkable, draw active-graphic if pressed
16401         down and inactive one in normal state
16403         * include/lmms_main_win.h:
16404         * src/core/lmms_main_win.cpp:
16405         own workspace for making wheelEvent(...) is now obsolete -> removed
16407         * include/track_container.h:
16408         * src/core/song_editor.cpp:
16409         * src/core/track_container.cpp:
16410         added own scroll-area for capturing special wheel-events where a
16411         modifier-key (shift, control etc.) is pressed
16413         * src/core/song_editor.cpp:
16414         removed add-channel-button as it is obsolete after adding plugin-browser
16416         * resources/:
16417         improved icons such as project_*.png and sample-track-related icons
16419 2005-10-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16421         * include/channel_track.h:
16422         * src/tracks/channel_track.cpp:
16423         - moved channelButton-implementation to channel_track.src
16424         - added support for receiving drop-events, which makes channel-track
16425           to load either the given instrument or the given preset
16427         * src/core/plugin_browser.cpp:
16428         * include/plugin_browser.h:
16429         added cool plugin-browser, which displays all available instrument-
16430         plugins which are draggable to a channel-window/button
16432         * include/string_pair_drag.h:
16433         * src/lib/string_pair_drag.cpp:
16434         added drag'n'drop-implementation for dragging string-pairs (key/value)
16435         which provides a standard-interface, although drag'n'drop has changed a
16436         lot in Qt 4
16438         * src/widgets/crystal_button.cpp:
16439         made mouseMoveEvent()-method much more effective
16441         * Makefile.am:
16442         * buildtools/Makefile.am:
16443         build buildtools in subdir instead of top-build-directory - solves
16444         dependendy problems with bin2res
16446         * src/core/file_browser.cpp:
16447         do not depend on typeinfo of audioFileProcessor anymore by using
16448         new setParameter()-method
16450         * include/plugin.h:
16451         added setParameter() and getParameter()-methods for making LMMS able to
16452         set parameters of a specific plugin without knowing anything about it
16454 2005-10-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16456         * buildtools/bin2res.cpp:
16457         * include/embed.h:
16458         * src/lib/embed.cpp:
16459         - declaration of embedded-data-descriptor is now located in embed.h and
16460           part of namespace embed
16461         - added support for local embedded-resources which is important for
16462           plugins containing their own images etc., so data and access-methods
16463           are stored into namespace PLUGIN_NAME
16465         * include/plugin.h:
16466         * src/core/plugin.cpp:
16467         added logo-field to descriptor-structure and simplified method for
16468         getting descriptors of all plugins
16470         * include/basic_filters.h:
16471         removed Moog-2-filter as it is only very CPU-intensive without any
16472         significant difference to sound of normal Moog-filter
16474 2005-10-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16476         * src/lib/ladspa_manager.cpp:
16477         skip not existing/unreadable directories when searching for plugins
16479         * include/vestige.h:
16480         * src/plugins/vestige.cpp:
16481         make use of new instrument-play-handle
16483         * include/channel_track.h:
16484         * src/core/browser.cpp:
16485         * src/core/song_editor.cpp:
16486         * src/midi/midi_file.cpp:
16487         * src/tracks/channel_track.cpp:
16488         renamed loadPlugin() to loadInstrument()
16490         * include/config_mgr.h:
16491         * src/core/config_mgr.cpp:
16492         added pluginDir()-method
16494         * include/instrument_play_handle.h:
16495         added another play-handle for playing instruments which do not
16496         produce sound for each note
16498         * src/plugins/:
16499         renamed directory soundgenerators to plugins and modified all plugins
16500         for working with revised plugin-system
16502         * include/instrument.h:
16503         * include/plugin.h:
16504         * src/core/instrument.cpp:
16505         * src/core/plugin.cpp:
16506         splitted code from instrument up into class plugin and class instrument
16507         and revised plugin-system
16509         * include/instrument.h:
16510         * src/core/instrument.cpp:
16511         renamed files soundgenerator.* to instrument.* as well as class-name
16513 2005-10-15      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16515         * include/vestige.h:
16516         * src/soundgenerators/vestige.cpp:
16517         new plugin "VeSTige" for handling VST-plugins - VERY experimental,
16518         but at least, we get some sound out of these strange dll-files ;-)
16520 2005-10-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16522         * src/audio/audio_jack.cpp:
16523         do not fill up buffers if JACK-transport is not rolling but at the same
16524         time always handle frame-syncing-var in JACK-callback, even if JACK-
16525         transport is not rolling - fixes several bugs like lockups when
16526         removing tracks while JACK-server is pausing...
16528         * src/widgets/knob.cpp:
16529         fixed bug which caused hidden mouse-cursor forever when pressing right
16530         mouse-button while left one is pressed
16532         * src/lib/ladspa_manager.cpp:
16533         use /usr/lib/ladspa as default-directory if env-var LADSPA_PATH is not
16534         set
16536         * src/soundgenerators/*.cpp:
16537         removed obsolete defaultSettings()-method from each soundgenerator
16539 2005-10-13      Danny McRae     <khjklujn/at/yahoo/dot/com>
16541         * include/ladspa_manager.h
16542         * include/ladspa_sine_1063.h
16543         * src/lib/ladspa_manager.cpp:
16544         * src/soundgenerators/ladspa_sine_1063.cpp:
16545         added LADSPA-support and a simple soundgenerator for testing-purposes
16547 2005-10-12      Danny McRae     <khjklujn/at/yahoo/dot/com>
16549         * Makefile.am:
16550         * include/led_checkbox.h:
16551         * src/core/envelope_and_lfo_widget.cpp:
16552         * src/widgets/led_checkbox.cpp:
16553         inherit ledCheckBox from QWidget instead of QCheckBox since it sometimes
16554         caused graphic-errors when running on KDE with Baghira-style...
16556 2005-10-05      Danny McRae     <khjklujn/at/yahoo/dot/com>
16558         * resources/note_double_whole.png:
16559         * resources/note_eighth.png:
16560         * resources/note_half.png:
16561         * resources/note_none.png:
16562         * resources/note_quarter.png:
16563         * resources/note_sixteenth.png:
16564         * resources/note_thirtysecond.png:
16565         * resources/note_whole.png:
16566         * resources/xclock.png:
16567         added icons for context-menu of tempoSyncKnob
16569         * src/widgets/lcd_spinbox.cpp:
16570         emit valueChanged()-signal in wheelEvent()-method
16572         * include/song_editor.h:
16573         * src/core/song_editor.cpp:
16574         - added getBPM()-method
16575         - emit signal if BPM is changed
16577         * include/arp_and_chords_tab_widget.h:
16578         * include/envelope_and_lfo_widget.h:
16579         * src/core/arp_and_chords_tab_widget.cpp:
16580         * src/core/envelope_and_lfo_widget.cpp:
16581         use new tempoSyncKnob-widget instead of traditional time-knob
16583         * include/tempo_sync_knob.h:
16584         * src/widgets/tempo_sync_knob.cpp:
16585         added tempo-sync-knob which automatically converts fixed note-length's
16586         to a fixed time in ms everytime BPM is changed
16588 2005-10-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16590         * include/basic_filters.h:
16591         - added another moog-filter which sounds a bit better but needs MUCH
16592           more CPU-time...
16593         - cleaned up different filter-code-branches
16595 2005-10-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16597         * include/oscillator.h:
16598         cast to int instead of floor()ing value in oscillator::phase() which
16599         makes the whole thing faster again...
16601 2005-09-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16603         * src/widgets/tab_widget.cpp:
16604         fixed bugs when adding widget with already existing index
16606         * Makefile.am:
16607         * include/midi_out.h:
16608         * include/plucked_string_synth.h:
16609         * src/soundgenerators/midi_out.cpp:
16610         * src/soundgenerators/plucked_string_synth.cpp:
16611         classes midiOut and pluckedStringSynth do not have slots or signals,
16612         so Q_OBJECT-macros were removed and MOC-code isn't compiled anymore
16614         * include/sgs:
16615         * src/core/plugin_management.cpp:
16616         removed because not needed anymore with new plugin-system
16618         * configure.in:
16619         * Makefile.am:
16620         * include/audio_file_processor.h:
16621         * include/channel_track.h:
16622         * include/midi_out.h:
16623         * include/plucked_string_synth.h:
16624         * include/sound_generator.h:
16625         * include/triple_oscillator.h:
16626         * src/core/browser.cpp:
16627         * src/core/sound_generator.cpp:
16628         * src/core/song_editor.cpp:
16629         * src/midi/midi_file.cpp:
16630         * src/soundgenerators/*:
16631         * src/tracks/channel_track.cpp:
16632         made all sound-generator-plugins shared libraries loaded at runtime,
16633         which gives much more flexibility because you can load songs/presets
16634         from people having other plugins just by adding according lib*.so file
16635         to /usr/lib - no need to recompile!
16637         * inlude/empty_sg_plugin.h:
16638         added empty sound-generator plugin
16640 2005-09-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16642         * include/song_editor.h:
16643         * src/core/song_editor.cpp:
16644         added combo-box for selectinf zooming-factor
16646         * include/piano_roll.h:
16647         * src/core/piano_roll.cpp:
16648         added combo-box for selecting zooming-factor
16650         * include/led_checkbox.h:
16651         * src/widgets/led_checkbox.cpp:
16652         added methods for querying and setting state
16654         * src/core/arp_and_chords_tab_widget.cpp:
16655         * src/core/envelope_tab_widget.cpp:
16656         better alignment of widgets inside each of this tabs
16658         * src/tracks/channel_track.cpp:
16659         finished improving GUI of channel-track-window by using tabWidget
16660         instead of tabBar for plugin-, env/lfo- and arp-widgets
16662         * include/envelope_and_lfo_widget.h:
16663         * src/core/envelope_and_lfo_widget.cpp:
16664         use ledCheckBox'es instead of pixmapButton's with QLabel's
16666         * include/tab_widget.h:
16667         * src/widgets/tab_widget.cpp:
16668         made tabWidget more powerful:
16669         - use indexed tabs
16670         - different painting if no caption was defined
16671         - switch tabs if wheel-events occurs
16673 2005-09-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16675         * src/tracks/channel_track.cpp:
16676         began improving GUI of channel-track-window
16678         * projects/cool_songs/TobyDox-TheFourthDimension.xml:
16679         added another song...
16681         * include/qt3support.h:
16682         Qt 3.1-support
16684         * include/audio_alsa.h:
16685         define macro ALSA_PCM_NEW_HW_PARAMS_API for working with older ALSA-
16686         versions which offer old and new HW-param-API - we're using the new one
16688 2005-09-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16690         * many files:
16691         make LMMS compile with Qt 3.0 and GCC 2.95
16693 2005-09-25      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16695         * src/audio/audio_jack.cpp:
16696         - decreased wait-time from 0.5 ms to 0.2 ms in writeBufferToDev(...)
16697         - clear part of buffers that could not be filled for avoiding bad
16698           noise in case there's no data from sound-render-thread, because it is
16699           locked or got no cpu-time for some reason
16701         * src/core/timeline.cpp:
16702         do not call update() in updatePosition, call paintEvent() directly
16703         instead - hopefully fixes the "unexspected Xlib async replies"
16704         which occured in some seldom cases because there were paint-events
16705         generated - something that must not be done in other threads...
16707         * resources/source/songeditor.svg:
16708         * resources/songeditor.png:
16709         created a new song-editor-icon
16711         * src/core/song_editor.cpp:
16712         do not save play-pos from previous play-mode when beginning to play
16713         in different play-mode - fixes bug in timeline behaviour "back to start"
16715 2005-09-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16717         * configure.in:
16718         * include/audio_oss.h:
16719         * include/midi_oss.h:
16720         * src/audio/audio_oss.cpp:
16721         * src/midi/midi_oss.cpp:
16722         made LMMS compiling and working without OSS - configure detects
16723         whether soundcard.h is available
16725         * include/gui_templates.h:
16726         made template pointSize(...) platform-independent by not using x11-
16727         specific qt-classes/-functions
16729         * include/templates.h:
16730         moved pointSize-function with all the headers it depends on into
16731         gui_templates.h
16733         * src/core/mixer.cpp:
16734         - do not initialize member m_surroundSilence if surround is disabled
16735         - free silence-buffers in dtor
16737         * src/tracks/bb_track.cpp:
16738         when drawing gradient skip first and last line as a rect is painted
16739         over it afterwards
16741         * src/core/track_container.cpp:
16742         set modified-state for song when removing track
16744 2005-09-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16746         * configure.in:
16747         made 0.1.1 release
16749 2005-09-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16751         * include/about_dialog.h:
16752         * src/core/about_dialog.cpp:
16753         no need for passing parent when creating about-dialog
16755         * src/core/song_editor.cpp:
16756         - different usage of question-box in songEditor::mayChangeProject()
16757           because of bugs with several qt-versions...
16758         - when exporting song, do use baseName( TRUE ) instead of baseName()
16759           for determining base-name of rendered file
16761         * src/core/lmms_main_win.cpp:
16762         - display filename before app-name in window-title
16763         - only use basename of filename in window-title
16764         - added message referring to LMMS-homepage when clicking on
16765           Help/Help
16767         * src/core/export_song_dialog.cpp:
16768         use lmmsMainWin::resetWindowTitle() for resetting window-title
16769         after export is done
16771         * src/widgets/knob.cpp:
16772         do not add tooltips to knobs - clicking on knob has quite the same
16773         effect so tooltips are just annoying
16775         * src/core/browser.cpp:
16776         when matching file-name, always convert them to lower case for also
16777         handling files like foo.WAV
16779         * src/core/config_mgr.cpp:
16780         added setValue(...)-call for saving working-directory after setting
16781         up everything - fixes bug with empty browsers after fresh personal
16782         installation of LMMS
16784 2005-09-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16786         * configure.in:
16787         made 0.1.0 release
16789 2005-09-18      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16791         * src/tracks/bb_track.cpp:
16792         revised paintEvent()-method -> bb-TCO's are now painted with a gradient!
16794         * src/core/song_editor.cpp:
16795         - call bbEditor::stop before playing to make sure play-button in
16796           bb-editor is properly reset
16797         - call realignTracks() with parameter TRUE in wheelEvent(...)
16798         - some hacks for making pause-button work...
16800         * src/core/track_container.cpp:
16801         added parameter _complete_update to trackContainer::realignTracks()
16802         to be able to hide and show all tracks which is necessary e.g.
16803         after having changed pixels-per-tact-property -> zooming in song-editor
16804         works now well
16806         * src/core/setup_dialog.cpp:
16807         added message-box telling the user to restart LMMS
16809         * include/midi_alsa_raw.h:
16810         * include/midi_device.h:
16811         * include/midi_oss.h:
16812         * include/midi_dummy.h:
16813         * include/mixer.h:
16814         * include/setup_dialog.h:
16815         * src/core/mixer.cpp:
16816         * src/core/setup_dialog.cpp:
16817         * src/midi/midi_alsa_raw.cpp:
16818         * src/midi/midi_device.cpp:
16819         * src/midi/midi_oss.cpp:
16820         made it possible to select and setup MIDI-device
16822         * include/knob.h:
16823         * src/widgets/knob.cpp:
16824         - many cleanups, coding style improvements etc.
16825         - added new behaviour for controlling knob -> move cursor up/down for
16826           changing value
16827         - replaced usage of status-bar by text-float-widget
16829         * include/text_float.h:
16830         * src/widgets/text_float.cpp:
16831         took text-float from Rosegarden
16833         * include/config_mgr.h:
16834         * src/core/config_mgr.cpp:
16835         - fixed bug in configManager::setValue(): new value-pair was always
16836           pushed back, even if it already existed, so result of value() didn't
16837           change until restart
16838         - moved widget-creation-code from ctor to new method createWidgets()
16839           which fixes problems with unlocalized strings in wizard because
16840           embed::loadTranslation() calls configManager::inst()->localeDir()
16841           for determining path to localization files - this call created all
16842           wizard-widgets before actual localization was loaded...
16844 2005-09-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16846         * src/core/setup_dialog.cpp:
16847         added switches for disabling tooltips and turning on classical knob-
16848         behaviour
16850         * include/led_checkbox.h:
16851         * src/widget/led_checkbox.cpp:
16852         added LED-check-box
16854 2005-09-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16856         * src/core/mixer.cpp:
16857         clear output-buffers in ctor before using them -> avoids awful noises
16858         at startup
16860         * src/core/mixer.cpp:
16861         * src/lib/sample_buffer.cpp:
16862         * src/tracks/channel_track.cpp:
16863         * src/tracks/sample_track.cpp:
16864         use given frame-parameter in methods playing sample-buffers instead
16865         of mixer::framesPerAudioBuffer() -> no clicks at tact-border because
16866         of odd sample-frame-count
16868         * src/core/lmms_main_win.cpp:
16869         call presetPreviewPlayHandle::cleanUp() in dtor -> fixes segfault which
16870         which occured at exit if you previewed a channel during session
16872         * include/preset_preview_play_handle.h:
16873         * src/core/preset_preview_play_handle.cpp:
16874         added cleanUp()-method which deletes blind track-container containing
16875         preset-preview-channel
16877         * src/soundgenerators/triple_oscillator.cpp:
16878         - unified much code by defining setChecked when compiling with Qt 3
16879         - also set file-name of user-defined-wave as tool-tip when loading
16880           settings
16882         * most files in src/:
16883         use new tooltip-system - removes qt3/qt4-compat-code
16885         * include/tooltip.h:
16886         * src/widget/tooltip.cpp:
16887         added tooltip-namespace with method "add(...)" for allowing transparent
16888         usage of tooltips, so there's no difference to code using tooltips
16889         whether it is compiled with Qt 3 or Qt 4
16891 2005-09-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16893         * include/mixer.h:
16894         * include/note_play_handle.h:
16895         * include/play_handle.h:
16896         * src/core/mixer.cpp:
16897         * src/core/note_play_handle.cpp:
16898         * src/tracks/channel_track.cpp:
16899         added play-handle-invalidating-feature making it possible to
16900         invalidate notes of which the objects they depend on do not exist
16901         anymore or things like that. for example channel-track-dtor
16902         invalidates all note-play-handles linked with according channel
16903         -> no segfault when deleting channel-track
16905         * src/core/track_container.cpp:
16906         pause mixer before removing track -> no segfault
16908         * src/lib/mmp.cpp:
16909         initialize m_type in mmp::multimediaProject( projectTypes )
16911         * src/lib/buffer_allocator.cpp:
16912         added mutex for better protection against parallel accesses from
16913         several threads - fixes some segfaults
16915         * src/core/lmms_main_win.cpp:
16916         improved ~lmmsMainWin() which now first instructs mixer to quit it's
16917         thread for avoiding spurious usages of objects to be destroyed
16918         afterwards -> no segfault at the end
16920         * src/core/export_song_dialog.cpp:
16921         * src/tracks/pattern.cpp:
16922         cleaned up exporting/freezing mechanisms by using mixer's new methods
16923         play() and pause()
16925         * include/mixer.h:
16926         * src/core/mixer.cpp:
16927         cleaned up mixer-thread syncing stuff by reorganizing mutexes and
16928         replacing m_waitMutex by m_safetySyncMutex as well as according methods
16929         lockWaitMutex() and unlockWaitMutex() by play() and pause()
16931         * src/core/setup_dialog.cpp:
16932         tell config-manager to save it's config-file when setupDialog is
16933         destroyed
16935 2005-09-13      Stephane Thomas <sthomas/at/nerim.net>
16937         * locale/fr.ts:
16938         added French translation
16940 2005-09-13      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16942         * src/core/lmms_main_win.cpp:
16943         - show setup-dialog if LMMS is started first time or mixer uses dummy-
16944           audio-driver
16945         - added setup-dialog-entry to settings-menu
16947         * src/lib/mmp.cpp:
16948         if saving preset, check whether file-name contains suffix ".cs.xml"
16949         and add it if necessary
16951         * include/midi_alsa_raw.h:
16952         * src/midi/midi_alsa_raw.cpp:
16953         * src/midi/midi_device.cpp:
16954         - changed everything (including file-names) from midiAlsa to midiALSARaw
16955         - added terminate()-call in dtor for terminating thread properly
16957         * include/tab_bar.h:
16958         * src/widget/tab_bar.cpp:
16959         - added flag for addTab(...)-method indicating whether to use given
16960           text as caption or just as tooltip
16961         - reduced #ifdef QT4-macros by defining some names when compiling
16962           with Qt3
16964         * include/setup_dialog.h:
16965         * src/core/setup_dialog.cpp:
16966         added help-button in audio-setup-tab and improved geometry-stuff
16968         * include/audio_alsa.h:
16969         * include/audio_oss.h:
16970         * src/audio/audio_alsa.cpp:
16971         * src/audio/audio_oss.cpp:
16972         added probeDevice()-method which eases determining device-name in
16973         either actual audio-class as well as in it's setup-widget
16975 2005-09-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
16977         * src/core/mixer.cpp:
16978         use new audio-settings-technology for opening audio-device
16980         * include/setup_dialog.h:
16981         * src/core/setup_dialog.cpp:
16982         added setup-dialog for general-, audio- and MIDI-settings
16984         * include/audio_alsa.h:
16985         * include/audio_device.h:
16986         * include/audio_dummy.h:
16987         * include/audio_jack.h:
16988         * include/audio_oss.h:
16989         * include/audio_sdl.h:
16990         * src/audio/audio_alsa.cpp:
16991         * src/audio/audio_device.cpp:
16992         * src/audio/audio_jack.cpp:
16993         * src/audio/audio_oss.cpp:
16994         * src/audio/audio_sdl.cpp:
16995         added setup-widget-technology making it possible to have audio-device-
16996         specific setup-widgets which can be used in setup-dialog etc.
16998         * include/lcd_spinbox.h:
16999         * src/widgets/lcd_spinbox.cpp:
17000         added stepping-functionality
17002         * include/tab_widget.h:
17003         * src/widgets/tab_widget.cpp:
17004         pass caption to constructor instead of using fixed text
17006         * include/tab_bar.h:
17007         * src/widgets/tab_bar.cpp:
17008         - added direction-parameter in constructor
17009         - added exclusive-property
17010         - addTab(...) returns now pointer to tab-button which gives caller
17011           possibility to modify the button
17013         * src/core/mixer.cpp:
17014         save frames-per-audio-buffer-value in ctor if not set yet instead
17015         of saving it in dtor
17017         * src/lib/embed.cpp:
17018         do not return null-pixmap if pixmap not found
17020 2005-09-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17022         * resources/setup_audio.png:
17023         * resources/setup_general.png:
17024         * resources/setup_midi.png:
17025         added icons to be used in setup-dialog
17027         * src/audio/audio_alsa.cpp:
17028         * src/audio/audio_sample_recorder.cpp:
17029         use auto-cleaning pointer in createSampleBuffer(...) (fixes memory-leak
17030         in ALSA-driver)
17032         * include/buffer_allocator.h:
17033         added simple class for auto-cleaning pointers
17035         * src/core/mixer.cpp:
17036         - added delete-calls in mixer::tryAudioDevices()
17037         - init s_instanceOfMe-member in dtor, otherwise LMMS hangs up
17039         * locale/:
17040         * artwork/:
17041         moved translations and some artwork-stuff into locale- and artwork-
17042         directory which is going to be installed into
17043         LMMS-data-dir (/usr/share/lmms etc.) and shrinks executable
17045         * src/lib/embed.cpp:
17046         added possibility to have resources in external files instead of being
17047         linked into executable
17049         * configure.in:
17050         - use macro AS_HELP_STRING for formatting help-strings
17051         - removed --with-latency option as it is not needed anymore
17053 2005-09-06      Alireza <dr/dot/alireza/at/gmail/dot/com>
17055         * resources/ir.ts:
17056         added Persian translation
17058 2005-09-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17060         * src/audio/audio_oss.cpp:
17061         - read device-name from config-file before evaluating environment-
17062           variables etc.
17063         - fixed bugs with device-probing (after dev-file was searched, there    
17064           was no open(...)-call again so it always failed if the first open(...)
17065           didn't work
17067         * src/audio/audio_alsa.cpp:
17068         read device-name from config-file before evaluating environment-
17069         variables or using "default"
17071         * src/core/lmms_main_win.cpp:
17072         call bufferAllocator::cleanUp( 0 ) for destroying all allocated buffers
17074         * include/buffer_allocator.h:
17075         * src/lib/buffer_allocator.cpp:
17076         - added clean-up-technique which removes least used buffers if
17077           buffer-size exceeds limits (which depends on mixer's buffer-size)
17078         - added field to bufDesc indicating usage of this buf - used by
17079           alloc-method for determining most used, free and matching buffer
17081         * include/lcd_spinbox.h:
17082         * src/widgets/lcd_spinbox.cpp:
17083         made lcdSpinBox controlable by scroll-wheel
17085         * src/widgets/knob.cpp:
17086         do not center knob if width of label is greater than actual knob
17088         * src/audio/audio_sample_recorder.cpp:
17089         use bufferAllocator instead of new[]/delete[]
17091         * src/core/mixer.cpp:
17092         - read value for frames-per-audio-buffer out of config-file and save
17093           it at exit
17094         - free buffer at exit
17096         * include/config_mgr.h:
17097         * src/core/config_mgr.cpp:
17098         added value() and setValue()-method which offers all components of LMMS
17099         an easy way for loading/saving their settings at startup/exit
17101 2005-09-02      Mario Izquierdo <mariodebian/at/gmail/dot/com>
17102 2005-09-02      Johnny Saenz <saenzac/at/hotmail/dot/com>
17104         * resources/es.ts:
17105         added Spanish translation
17107 2005-09-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17109         * most files:
17110         finished changes began on 2005-08-29
17112         * include/buffer_allocator.h:
17113         * src/lib/buffer_allocator.cpp:
17114         - only return aligned pointers
17115         - small changes in API
17117         * resources/de.ts:
17118         completed German translation
17120 2005-08-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17122         * most files:
17123         begin to use new bufferAllocator instead of old buffer-types and
17124         use mixer-method for determining current number of frames per
17125         audio-buffer
17127         * include/mixer.h:
17128         types audioBuffer and surroundAudioBuffer don't exist anymore as well
17129         as the constant FRAMES_PER_AUDIO_BUFFER - use
17130         mixer::inst()->framesPerAudioBuffer() instead
17132 2005-08-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17134         * include/song_editor.h:
17135         * src/core/song_editor.cpp:
17136         replaced QSpinBox by lcdSpinBox for BPM-spinbox
17138         * include/tab_bar.h:
17139         * src/widgets/tab_bar.cpp:
17140         removed function-parameter _font_size for tabBar::addTab(...)
17142         * most files:
17143         - replaced QFont::setPointSize()-calls by according pointSize()-calls
17144           which makes LMMS usable at any DPI-resolution
17145         - changes for Qt4-compatibility
17147         * include/misc.h:
17148         * include/template.h:
17149         moved misc.h to template.h and added template-function pointSize
17150         which sets a DPI-independent size for a given font
17152         * src/tracks/channel_track.cpp:
17153         use labeling-feature of LCD-spinbox and removed old QLabel and
17154         layouting-stuff
17156         * include/lcd_spinbox.h:
17157         * src/widgets/lcd_spinbox.cpp:
17158         - fixed bug: when moving mouse up, value was not updated properly
17159         - added labeling-feature
17160         - added valueChanged()-signal
17162         * src/core/arp_and_chords_tab_widget.cpp:
17163         set m_arpDirection correct when loading older settings
17165 2005-08-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17167         * include/channel_track.h:
17168         * src/tracks/channel_track.cpp:
17169         use new LCD-spinbox for effect-spinbox
17171         * include/lcd_spinbox.h:
17172         * src/widgets/lcd_spinbox.cpp:
17173         added LCD-spinbox, an improved QLCDNumber with ability of user-input
17175         * src/core/main.cpp:
17176         changed highlight- and text-color to dark white instead of glaring green
17177         for many people didn't like it...
17179         * include/audio_jack.h:
17180         * src/audio/audio_jack.cpp:
17181         - read and observe buf-size from JACK, so that writeBufferToDev() can
17182           wait accordingly to it - now JACK-transport also works if buf-sizes
17183           of LMMS and JACK are different
17184         - also free buffers in destructor and not just throw them out of list
17186 2005-08-26      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17188         * include/audio_jack.h:
17189         * src/audio/audio_jack.cpp:
17190         - also work with older versions which do not have jack_client_open()
17191         - fixed bugs
17192         - use bufferAllocator instead of new[] and delete[] in time-critical
17193           functions
17195         * include/buffer_allocator.h:
17196         * src/lib/buffer_allocator.cpp:
17197         added bufferAllocator which is an optimized internal memory-manager
17199 2005-08-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17201         * include/audio_jack.h:
17202         * src/audio/audio_jack.cpp:
17203         beginning of support for JACK-transport
17205         * src/audio/audio_sdl.cpp:
17206         fixed memory leak - m_outputBuffer was not deleted in destructor
17208         * src/core/arp_and_chords_tab_widget.cpp:
17209         completed usage of switchable groupboxes by saving groupbox-states
17210         and evaluating them in processNote()
17212 2005-08-22      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17214         * resources/afp_artwork.png:
17215         small improvements for better usability and internationalization
17217         * src/soundgenerators/audio_file_processor.cpp:
17218         - cleanups and small improvements concerning painting
17219         - added missing tooltips
17220         - moved open-sample-button right to filename-display-bar
17222         * src/widgets/pixmap_button.cpp:
17223         changed default-pixmaps to led_yellow.png and led_off.png
17225         * resources/pattern_bg.png:
17226         resized from 2x43 to 2x25
17228         * src/core/name_label.cpp:
17229         decreased default-font
17231         * include/track.h:
17232         decreased size of track-settings-widget from 256 to 224
17234         * include/channel_track.h:
17235         * src/tracks/channel_track.cpp:
17236         - use labeling-feature of knob for labeling volume-knob
17237         - use smaller surroundArea in track-settings-widget and smaller
17238           channel-button with smaller font
17240         * src/core/surround_area.cpp:
17241         made surroundArea working with different widget-sizes than default size
17243         * resources/background_artwork.png:
17244         made bg-image more pale
17246         * include/bb_editor.h:
17247         * src/core/bb_editor.cpp:
17248         changed painting-behaviour and made button-bg-gfx's obsolete by using
17249         specialBgHandlingWidget
17251         * include/groupbox.h:
17252         * src/widgets/groupbox.cpp:
17253         improved groupbox by adding animation and more
17255         * src/core/envelope_and_lfo_widget.cpp:
17256         * src/core/envelope_tab_widget.cpp:
17257         - use knobs new labeling-feature
17258         - use new tab-widget for target-widgets
17260         * include/tab_widget.h:
17261         * src/widgets/tab_widget.cpp:
17262         added own tab-widget which looks much cooler than Qt's one
17264         * src/core/arp_and_chords_tab_widget.cpp:
17265         - using now new groupbox-widget and reorganized knob/switch-positions
17266         - revised arpeggio-direction-buttons
17267         - use knobs new labeling-feature
17268         - removed obsolete headers
17270         * include/knob.h:
17271         * src/widgets/knob.cpp:
17272         added labeling-feature for automatically labeling knobs with given
17273         text
17276 2005-08-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17278         * src/widgets/side_bar_widget.cpp:
17279         * src/tracks/channel_track.cpp:
17280         * src/core/config_mgr.cpp:
17281         * src/core/piano_roll.cpp:
17282         * src/core/arp_and_chords_tab_widget.cpp:
17283         * src/core/main.cpp:
17284         * src/core/browser.cpp:
17285         replaced painting-device-dependent method setPixelSize by setPointSize
17287         * src/core/envelope_and_lfo_widget.cpp:
17288         now using new group-box which looks much cooler and is more usable
17290         * include/groupbox.h:
17291         * src/widgets/groupbox.cpp:
17292         added own groupbox-widget with state-LED
17294         * src/widgets/pixmap_button.cpp:
17295         delete m_bgPixmap in destructor
17297         * include/spc_bg_hndl_widget.h:
17298         - made member m_backgroundPixmap to normal QPixmap instead of pointer to
17299           it which also fixes a memory leak as dtor didn't delete the pixmap
17300         - also use erase-pixmap of widget if available
17302         * include/oscillator.h:
17303         - made shape-functions using phase()-function for determining phase of
17304           sample
17305         - made oscillator::phase() using modff instead of floorf-math which
17306           makes the whole thing up to 20% faster
17308         * src/core/about_dialog.cpp:
17309         added URL of project-page of LMMS
17311         * src/core/song_editor.cpp:
17312         create new project if file given in cmd-line is not read-/usable
17314         * include/export_project_dialog.h:
17315         * include/song_editor.h:
17316         * src/core/main.cpp:
17317         * src/core/song_editor.cpp:
17318         added --render command-line-switch to render file and quit as soon as
17319         job is done - very good for benchmarks
17321         * src/core/main.cpp:
17322         added --version command-line-switch
17324 2005-08-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17326         * src/core/lmms_main_win.cpp:
17327         - extended filter for sample-browser
17328         - added home- and root-browser for being able to load songs, presets,
17329           samples etc. from somewhere else than within lmms-working-directory
17331 2005-07-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17333         * src/core/lmms_main_win.cpp:
17334         * src/core/track_container.cpp:
17335         * src/core/track.cpp:
17336         by completing destructors and fixing some other small bugs there's
17337         finally no seg-fault when quitting app! (the bug annoying for months...)
17339         * include/track_container.h:
17340         all public-slots were made to normal public and FASTCALLed functions
17341         since they aren't connected to a signal anywhere and it just blows up
17342         qt-moc-code
17344         * include/sample_track.h:
17345         made method sampleTCO::changeLength(...) FASTCALLed since it's virtual
17346         and method in base-class is also FASTCALLed - eliminates crash when
17347         resizing sample
17349         * include/track.h:
17350         * src/core/track.cpp:
17351         removed unsused method setTrackWidgetHeight( int )
17353 2005-07-26      Pedro Lopez-Cabanillas <pedro/dot/lopez/dot/cabanillas/at/gmail/dot/com>
17355         * src/core/browser.cpp:
17356         * src/core/config_mgr.cpp:
17357         * src/core/lmms_main_win.cpp:
17358         * src/core/main.cpp:
17359         * src/core/song_editor.cpp:
17360         * src/lib/mmp.cpp:
17361         * src/tracks/pattern.cpp:
17362         * src/widgets/project_notes.cpp:
17363         small changes for compatibility with Qt 3.1
17365         * src/midi/midi_alsa.cpp:
17366         * src/midi/midi_oss.cpp:
17367         added MIDIDEV-environment variable for being able to choose a MIDI
17368         device different from the default one
17370 2005-07-24      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17372         * include/midi_mapper.h:
17373         * src/midi/midi_mapper.cpp:
17374         added MIDI-mapper to be used in combination with midiDevice's and/or
17375         MIDI-Out-Plugin which can read MIDI-maps added before
17377         * midi-maps/*map:
17378         added MIDI-maps from KMid
17380         * include/midi_dummy.h:
17381         * src/midi/midi_device.cpp:
17382         added dummy MIDI-driver for not crashing if no MIDI-device is available
17384         * src/core/piano_roll.cpp:
17385         - go to start of pattern when pressing home-key
17386         - added support for zooming
17388         * src/core/song_editor.cpp:
17389         - fixed bug with loop-points by setting current-frame-var to zero to
17390           force reset of it
17391         - added auto-scrolling ability
17392         - fixed bug which caused horizontal scrollbar to have an undefined
17393           max-value after starting up LMMS
17394         - go to start of pattern when pressing home-key
17396 2005-07-23      Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
17398         * resources/ru.ts:
17399         added Russian translation
17401 2005-07-23      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17403         * src/core/piano_roll.cpp:
17404         scroll back when stopping and play-position changes to invisible area
17406         * include/time_line.h:
17407         * src/core/song_editor.cpp:
17408         * src/core/time_line.cpp:
17409         added control-buttons to time-line making it possible to control
17410         things like auto-scrolling, looping and play-position after stop
17412         * src/midi/midi_device.cpp:
17413         limit volume between 0 and 127 when sending out note-on-event
17415 2005-07-21      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17417         * include/nstate_button.h:
17418         * src/widgets/nstate_button.cpp:
17419         added widget nStateButton which is a button able to have n different
17420         states with according pixmaps and tooltips
17422         * resources/back_to_zero.png:
17423         * resources/keep_stop_position.png:
17424         * resources/back_to_start.png:
17425         * resources/loop_points_off.png:
17426         * resources/loop_points_on.png:
17427         * resources/autoscroll_off.png:
17428         * resources/autoscroll_on.png:
17429         added pixmaps for buttons to be used in time-line as soon as possible
17431         * lmms-0.1.0rc1.tar.bz2:
17432         release of Release Candidate 1 of LMMS 0.1.0
17434 2005-07-20      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17436         * src/midi/midi_file.cpp:
17437         - proper handling of note-on-events which velocity 0 -> treat like
17438           note-off-events makes it now possible to import a much larger amount
17439           of MIDI-files
17440         - added progress-dialog when importing MIDI-file
17442         * src/core/song_editor.cpp:
17443         horizontal scrollbar is now placed some pixels above lower edge so that
17444         it doesn't take action when resizing song-editor-window at lower edge
17446         * src/core/track_container.cpp:
17447         added progress-dialog for loading project and according
17448         qApp->processEvents()-call -> LMMS now isn't blocked anymore while
17449         loading project
17451         * include/knob.h:
17452         * src/widgets/knob.cpp:
17453         fixed bugs caused by changes made before for scroll-wheel-support
17455 2005-07-19      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17457         * include/knob.h:
17458         * src/widgets/knob.cpp:
17459         added better scroll-wheel support which increases/decreases knob-value
17460         by 20th of range (e.g 0.05 if knob is ranged between 0 and 1)
17462 2005-07-17      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17464         * projects/:
17465         added "covers"-dir and added "Preludium and Fuge A-Minor" by J.S.Bach
17466         to it as first covered project ;-)
17468         * src/core/note_play_handle.cpp:
17469         - fixed bad bug in notePlayHandle::play(): instead of directly being
17470           deleted, sub-notes were given to mixer to be removed when they played
17471           completely but since these sub-notes are not known to mixer, it
17472           couldn't delete them
17473         - always call channelTrack::deleteNotePluginData() in
17474           noteplayhandle-dtor even if pointer to note-plugin-data is NULL so
17475           that all plugins are notified when note is done (midiOut-plugin
17476           needs that for sending note-off-events!)
17478         * include/midi_out.h:
17479         * src/soundgenerators/midi_out.cpp:
17480         new plugin midiOut which sends all notes on this channel out to
17481         external midi-device this is especially cool for playing arpeggio for
17482         key pressed on external midi-device!!
17484         * src/soundgenerators/plucked_string_synth.cpp:
17485         removed unneccesary inclusion of qpainter-header
17487         * include/midi_file.h:
17488         * src/midi/midi_file.cpp:
17489         * src/core/lmms_main_win.cpp:
17490         * src/core/song_editor.cpp:
17491         added support for importing MIDI-file (very experimental!!)
17493         * include/midi.h:
17494         * include/midi_device.h:
17495         moved general MIDI-stuff from midi_device.h to midi.h
17497         * src/audio/audio_file_device.cpp:
17498         added missing arg()-call to QMessageBox::critical()-call in
17499         audioFileDevice-ctor
17501 2005-07-16      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17503         * src/core/config_mgr.cpp:
17504         added shortcuts to navigation-buttons
17505         
17506 2005-07-14      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17508         * src/core/piano_roll.cpp:
17509         only play notes while editing if we're not in play-mode
17511         * include/song_editor.h:
17512         * src/core/song_editor.cpp:
17513         when exporting always render one additional tact at the end so that
17514         we don't cut off notes with delay etc.
17516 2005-07-12      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17518         - successful compilation with GCC 4.0.1 ;-)
17520         * src/core/arp_and_chords_tab_widget.cpp:
17521         fixed bug responsible for playing base-notes of chords all time
17522         if any arpeggio selected was selected
17524 2005-07-11      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17526         * resources/source/wizard_files.xcf:
17527         * resources/wizard_files.png:
17528         updated project-file-icon in image
17530         * src/core/config_mgr.cpp:
17531         - ask user whether to re-run setup-wizard if config-file indicates
17532           different version of LMMS
17533         - removed redundant assignment in configManager::loadConfigFile()
17534         - added additional layout for having space at the left and right side
17535         - increased font-size of title
17537         * Makefile.am:
17538         install LMMS-icon into LMMS-data-dir
17540         * lmms-0.1.0beta.tar.bz2:
17541         made beta-release of 0.1.0 and announced it on kde-apps.org
17543 2005-07-10      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17545         * presets/TripleOscillator/:
17546         added cool Church Organ preset and improved Xylophon preset
17548         * resources/de.ts:
17549         updated German translations and cleaned up all obsolete translations 
17550         and context which shrinks the file by 50K...
17552         * samples/instruments/:
17553         removed vibraphone01.ogg because of poor quality
17555         * src/core/piano_roll.cpp:
17556         - do not set what's-this-texts as tooltips for play/stop-button
17557         - added tooltip and what's-this-text to record-button
17558         - display message in piano-roll how to open a pattern if none is opened
17559         - always set window-title, even if no pattern is opened
17561         * src/core/mixer.cpp:
17562         using iterators in second loop in mixer::run() leads to crashes, so
17563         an optimized version of the old code is used now again...
17565         * src/core/lmms_main_win.cpp:
17566         added tool-buttons for new project, open/save project etc. and added
17567         popup-menu to new-button containing projects in template-directory
17569         * include/song_editor.h:
17570         * src/core/song_editor.cpp:
17571         - changed remaining method-names containing "[Ss]ong" to "[Pp]roject"
17572         - toggle channel-button after adding channel-track
17574         * include/export_project_dialog.h:
17575         * src/core/export_project_dialog.cpp:
17576         renamed from export_song_dialog.ext to export_project_dialog.ext
17578 2005-07-09      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17580         * all files:
17581         now all source-code-files but some single exceptions do not have more
17582         than 80 characters per line and also were made to conform one
17583         programming-style 
17585         * include/sgs:
17586         wrote sane soundgenerator-plugin-scanner using bash-scripting which
17587         replaces old, dirty and exaggerated c++-program and is also fully
17588         portable
17590         * include/lmms_main_win.h:
17591         * include/song_editor.h:
17592         * src/core/lmms_main_win.cpp:
17593         * src/core/song_editor.cpp:
17594         renamed methods newFile, openFile etc. to createNewProject, openProject
17595         etc.
17597         * resources/source/:
17598         - renamed filenew.png, fileopen.png etc. to project_new.png etc.
17599         - replaced song_file.png by project_file.png which has a new file-icon
17600           with LMMS-logo inside
17601         - replaced preset_file.png by new graphic where the star is inside
17602           of a file-icon
17604         * resources/source/lmms_logo.svg:
17605         made logo Inkscape 0.41 compatible (had problems with gradients since
17606         logo originally had been made with Inkscape 0.39)
17608         * src/widgets/project_notes.cpp:
17609         removed unnecessary name-strings for QActions
17611         * resources/project_notes.png:
17612         replaced 16x16-icon with 22x22-icon to provide big enough icon for
17613         toolbar which needs 22x22-icons
17615         * src/core/bb_editor.cpp:
17616         * src/core/song_editor.cpp:
17617         * src/tracks/bb_track.cpp:
17618         do not crash if either there're no bb-tracks but bb-editor has tracks
17619         or there're bb-tracks but bb-editor contains no tracks
17621         * src/core/mixer.cpp:
17622         * src/core/note_play_handle.cpp:
17623         * src/core/track_container.cpp:
17624         * src/tracks/pattern.cpp:
17625         rewrote loops using vectors to use iterators instead of indices etc.
17626         which makes it all a bit smaller and faster since we do not always have
17627         to access the current element using the []-operator
17629 2005-07-08      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17631         * src/core/envelope_tab_widget.cpp:
17632         * src/lib/sample_buffer.cpp:
17633         * src/widgets/knob.cpp:
17634         small fixes for making compilable with qt4
17636         * configure.in:
17637         * projects/:
17638         added directories "tutorials" and "recorded_loops"
17640 2005-07-07      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17642         * include/bb_track.h:
17643         added FASTCALL to moveLocation(...) and changeLength(...) which fixes
17644         crash-bug
17646         * src/core/song_editor.cpp:
17647         do not confirm overwriting file if new project was just saved
17649         * samples/:
17650         added a lot of new samples from wikisource and others
17652 2005-07-06      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17654         * include/project_notes.h:
17655         * src/core/song_editor.cpp:
17656         * src/widgets/project_notes.cpp:
17657         clear project-notes when clearing song (new/open file etc.)
17659         * src/tracks/pattern.cpp:
17660         ask user when he tries to freeze a pattern of a muted channel whether he
17661         wants to continue since freezing a pattern of a muted channel makes no
17662         sense (you're rendering silence!)
17664         * include/piano_roll:
17665         * src/core/piano_roll.cpp:
17666         - added possibility to edit the volume of notes
17667         - removed all bool-variables indicating whether an action is being
17668           performed at the moment and introduced m_action, indicating
17669           one of the actions defined in (also new) enum editActions
17670         - replaced m_startTone and m_startOctave with one variable m_startKey,
17671           which makes a lot of code unnecessary
17672         - rewrote loops using note-vectors to use iterators instead of
17673           indices and vector::size()
17674         - renamed m_evolutionHeight to m_notesEditHeight
17675         - replaced QMouseEvent::pos().[xy]()-calls with QMouseEvent::[xy]()
17676         - pianoRoll::getKey() does now take y-position (int) as parameter
17677           instead of QPoint since it only needs y-position
17678         - use new setKey()/key()-member of note everywhere where it is possible
17680         * include/note.h:
17681         added setKey()- and key()-member which setting/getting absolute key
17682         of note
17684 2005-07-05      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17686         * configure.in:
17687         * projects/:
17688         categorized projects in "cool_songs", "demos", "misc" and "templates"
17689         so that we don't annoy the user with a lot projects in his/her project-
17690         root - have to fill up "templates" with project-templates, e.g.
17691         basic drum-kit, accoustic drum-kit etc.
17693         * most files:
17694         added FASTCALL-attributes to functions taking at least one parameter
17696         * include/audio_file_processor.h:
17697         * include/plucked_string_synth.h:
17698         * include/triple_oscillator.h:
17699         moved deleteNotePluginData()-method into according cpp-files which
17700         makes including note_play_handle.h obsolete
17702         * include/audio_file_processor.h:
17703         * include/sample_buffer.h:
17704         * src/lib/sample_buffer.cpp:
17705         * src/soundgenerators/audio_file_processor.cpp:
17706         added support for saving sample-rate-conversion-state in m_pluginData
17707         of a note which fixes bug making clicks in sound when playing a sample
17708         simultanously at different pitches
17710         * configure.in:
17711         check whether compiler knows floorf and powf and if not, define them
17712         to floor/pow
17714 2005-07-04      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17716         * most files:
17717         made LMMS compiling (and working) with Qt 3.0, GCC 2.95 and other old
17718         libs (compiled it under Knoppix 3.1)
17720         * include/misc.h:
17721         changed names of abs, min, max, limit to myAbs, myMin etc. for not
17722         conflicting with functions of STL with the same name
17724         * configure.in:
17725         * src/lib/sample_buffer.cpp:
17726         added support for versions of libsndfile < 1.0.11 since API has changed
17727         in libsndfile 1.0.11
17729 2005-07-03      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17731         * resources/control_env_amount_active.png:
17732         * resources/control_env_amount_inactive.png:
17733         * include/envelope_and_lfo_widget.h:
17734         * src/core/envelope_and_lfo_widget.cpp:
17735         it's now possible to control the amount of an envelope with the
17736         according LFO by toggling new button (otherwise the level of the LFO is
17737         added to the level of the envelope as it always has been)
17739         * src/core/envelope_and_lfo_widget.cpp:
17740         now you can toggle the amount of an envelope/LFO between 0 and 1 by
17741         clicking on according graph
17743         * all files:
17744         updated mail-address in header
17746         * src/audio/audio_device.cpp:
17747         always use SURROUND_CHANNELS as channel-count for libsrc since
17748         resampling is done on surround-buffers - fixes bug which was
17749         responsible for producing useless noise when exporting file in
17750         high-quality-mode
17752         * src/core/export_song_dialog.cpp:
17753         made "high-quality-mode"-switch working (disabled for some reason
17754         in 0.0.9...)
17756         * src/core/mixer.cpp:
17757         when restoring audio-device, also restore quality-level
17759         * include/bb_editor.h:
17760         * src/core/bb_editor.cpp:
17761         cleaned up a lot because there was still much code from times when
17762         the track-technology didn't exist and which isn't now used any more
17764         * src/audio/audio_alsa.cpp:
17765         added support for 48 KHz soundcards
17767 2005-07-02      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17769         * configure.in:
17770         * src/lib/sample_buffer.cpp:
17771         made it possible to compile LMMS without SDL_sound, reorganized
17772         sample-decoding and added libsndfile- and libvorbis-support
17774         * include/midi_time.h:
17775         added operators "=", "+=", "-=" and implemented copy-ctor
17777         * include/piano_roll.h:
17778         made currentPattern() a const method and added validPattern()
17780         * src/tracks/pattern.cpp:
17781         optimized addNote() function which uses m_note.push_back() for notes
17782         beyond last note
17784         * src/core/piano_roll.cpp:
17785         * src/tracks/pattern.cpp:
17786         when pattern is destroyed it checks whether it is currently opened in
17787         piano-roll and if so pattern lets piano-roll set its pointer to current
17788         pattern to NULL. piano-roll does now always check whether current
17789         pattern is not NULL. in this case it denies any actions. fixes bug which
17790         led to crash when having piano-roll open while deleting pattern (e.g.
17791         creating new file, opening file etc.)
17793 2005-07-01      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17795         * all files:
17796         replaced "location" in names of functions/variables by "position"
17797         for more clear and unified names
17799         * include/piano_roll.h:
17800         * include/timeline.h:
17801         * src/core/piano_roll.cpp:
17802         * src/core/timeline.cpp:
17803         added support for autoscroll in piano-roll when playing/recording
17804         pattern
17806 2005-06-30      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17808         * include/channel_track.h:
17809         * include/midi_device.h
17810         * include/mixer.h:
17811         * include/pattern.h:
17812         * src/core/piano_roll.cpp:
17813         * src/midi/midi_device.cpp:
17814         * src/tracks/channel_track.cpp:
17815         added support for recording notes from MIDI-device (e.g. MIDI-keyboard
17816         or virtual channel-piano) in a pattern using the piano-roll
17818         * include/pattern.h
17819         * src/core/song_editor.cpp:
17820         fixed bug which led to crash: when pattern was played in non-looping
17821         mode song-editor always called pattern::finishFreeze() even if there
17822         actually was no pattern-freezing-process -> added isFreezing() which
17823         is called by song-editor for checking whether pattern is being freezed
17824         before calling finishFreeze()
17826         * src/core/lmms_main_win.cpp:
17827         * src/lib/sample_buffer.cpp:
17828         when showing open-file-dialog, use QFileDialog::selectedFiles()[0]
17829         instead of QFileDialog::selectedFile() because selectedFile() returns
17830         incorrect file-name if user clicked on the file and then on
17831         "Open"-button instead of double-clicking file
17833         * src/audio/audio_oss.cpp:
17834         * src/soundgenerators/triple_oscillator.cpp:
17835         * src/tracks/channel_track.cpp:
17836         added #include <stdlib.h> for solving problems with undeclared
17837         functions getenv() and rand() on some distributions (e.g Slackware)
17839         * src/core/track.cpp:
17840         * src/soundgenerators/triple_oscillator.cpp:
17841         * src/tracks/channel_track.cpp:
17842         added missing #include "debug.h" for solving problems with undeclared
17843         assert() because of not included assert.h
17845 2005-06-29      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17847         * configure.in:
17848         * include/audio_sdl.h:
17849         * src/lib/sample_buffer.cpp:
17850         if SDL/SDL.h does not exist, search for it in SDL10, SDL11 etc. and
17851         include according headers in source-files (solves problems on FreeBSD)
17853         * README:
17854         updated everything a bit...
17856 2005-06-28      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17858         * include/envelope_tab_widget.h:
17859         * src/core/envelope_tab_widget.cpp:
17860         use button instead of knob for turning filter on/off
17862 2005-06-27      Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
17864         * samples/effects/Makefile.am:
17865         don't install effect-samples into directory of basses-samples