Corrected seg fault in vibed deconstructor. Add harmonic to vibed save and restore presets. Corrected load and save seg fault when using gimp like windows. Corrected big endian alsa driver. Changed parameters in single precision trig functions to use single precision PI. Modified Files: ChangeLog Makefile.am data/presets/AudioFileProcessor/Bass-Mania.cs.xml data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml data/projects/cool_songs/Djeezus-BeatRolls.mmp data/projects/cool_songs/Djeezus-Oscilisous.mmp data/projects/cool_songs/Marfil-MarfilDrum01.mmp data/projects/cool_songs/Mart-Concave_flow.mmp data/projects/cool_songs/Mart-Dirt_Track.mmp data/projects/cool_songs/MaxFellner-Ease.mmp data/projects/cool_songs/SharkyX-DeadManDancing.mmp data/projects/cool_songs/SharkyX-Experiments.mmp data/projects/cool_songs/Siegel-DreamWave.mmp data/projects/cool_songs/TobyDox-Confused.mmp data/projects/cool_songs/TobyDox-Psycho.mmp data/projects/cool_songs/TobyDox-TheFourthDimension.mmp data/projects/covers/J.S.Bach-Preludium_and_Fugue_A-Minor.mmp data/projects/demos/basses-demo.mmp data/projects/demos/beat_collection.mmp data/projects/demos/demo1.mmp data/projects/demos/demo3.mmp data/projects/demos/demo5.mmp data/projects/demos/demo6.mmp data/projects/demos/loop_collection.mmp data/projects/demos/some_basslines.mmp data/projects/misc/1st.mmp data/projects/misc/time_machine.mmp data/projects/templates/AcousticDrumset.mpt data/projects/templates/ClubMix.mpt include/basic_filters.h include/interpolation.h include/oscillator.h plugins/vibed/nine_button_selector.cpp plugins/vibed/nine_button_selector.h plugins/vibed/vibed.cpp plugins/vibed/vibed.h src/audio/audio_alsa.cpp src/audio/audio_device.cpp src/audio/audio_file_wave.cpp src/core/main_window.cpp include/lmms_constants.h git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@126 0778d3d1-df1d-0410-868b-ea421aaaa00d
3555 lines
115 KiB
Plaintext
3555 lines
115 KiB
Plaintext
2006-04-10 Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
|
|
* Makefile.am:
|
|
* include/lmms_constants.h:
|
|
* include/basic_filters.h:
|
|
* include/oscillator.h:
|
|
* include/interpolation.h:
|
|
* src/widgets/knob.cpp:
|
|
converted calculations using PI to single precision
|
|
|
|
* src/audio/audio_device.cpp:
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_file_wave.cpp:
|
|
corrected handling of big endian data
|
|
|
|
* plugins/vibed/vibed.h:
|
|
* plugins/vibed/vibed.cpp:
|
|
* plugins/vibed/nine_button_selector.h:
|
|
* plugins/vibed/nine_button_selector.cpp:
|
|
-added octave to save and restore settings
|
|
-removed mysterious m_sampleBuffer that was causing seg faults in the
|
|
deconstructor
|
|
|
|
* src/core/main_window.cpp:
|
|
added checks to handle "gimp like windows" for save and restore widget
|
|
states to prevent seg fault
|
|
|
|
* data/projects/cool_songs/Djeezus-BeatRolls.mmp:
|
|
* data/projects/cool_songs/Djeezus-Oscilisous.mmp:
|
|
* data/projects/cool_songs/Marfil-MarfilDrum01.mpp:
|
|
* data/projects/cool_songs/Mart-Concave_flow.mpp:
|
|
* data/projects/cool_songs/Mart-Dirt_Track.mpp:
|
|
* data/projects/cool_songs/MaxFellner-Ease.mpp:
|
|
* data/projects/cool_songs/SharkyX-DeadManDancing.mpp:
|
|
* data/projects/cool_songs/SharkyX-Experiments.mpp:
|
|
* data/projects/cool_songs/Siegel-DreamWave.mpp:
|
|
* data/projects/cool_songs/TobyDox-Confused.mpp:
|
|
* data/projects/cool_songs/TobyDox-Psycho.mpp:
|
|
* data/projects/cool_songs/TobyDox-TheFourthDimension.mpp:
|
|
* data/projects/covers/J.S.Bach-Preludium_and_Fuge_A-Minor.mmp:
|
|
* data/projects/demos/basses-demo.mpp:
|
|
* data/projects/demos/beat-collection.mpp:
|
|
* data/projects/demos/demo1.mpp:
|
|
* data/projects/demos/demo3.mpp:
|
|
* data/projects/demos/demo5.mpp:
|
|
* data/projects/demos/demo6.mpp:
|
|
* data/projects/demos/loop_collection.mpp:
|
|
* data/projects/demos/some_basslines.mpp:
|
|
* data/projects/misc/1st.mpp:
|
|
* data/projects/misc/time_machine.mpp:
|
|
* data/projects/templates/AccousticDrums.mpt:
|
|
* data/projects/templates/ClubMix.mpt:
|
|
* data/presets/AudioFileProcessor/Bass-Mainia.cs.xml:
|
|
* data/presets/AudioFileProcessor/Fat-Reversed-Kick.cs.xml:
|
|
* data/presets/AudioFileProcessor/Kick-4-your-Subwoofer.cs.xml:
|
|
updated audiofileprocessors to point to factory presets files in /usr/local/share/lmms
|
|
|
|
|
|
2006-04-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
do not show hint when loading settings in which lfo-shape is set to USER
|
|
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
disable project-journalling while loading preset
|
|
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
* src/tracks/instrument_track.cpp:
|
|
for generating infinite notes, pass valueRanges<f_cnt_t>::max instead
|
|
of ~0 to note-play-handle-constructor as ~0 = 1 for signed ints
|
|
|
|
* include/types.h:
|
|
- changed types of fpab_t and f_cnt_t to be signed - compiler
|
|
generates more optimized code this way
|
|
- added template-struct "valueRanges", containing members "min" and
|
|
"max" which hold the minimum and maximum value of the type the
|
|
template is instantiated with
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
- fixed buffer-overflow when loading sample-data from base64 and more
|
|
bytes were decoded than allocated in wave-buffer
|
|
- delete decoded base64-data after copying it into wave-buffer
|
|
|
|
2006-04-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
- connect valueChanged()-event of lfo-shape-buttongroup with
|
|
lfoWaveCh()-slot - fixes bug that clicks at the lfo-wave-buttons
|
|
were not recognized
|
|
- completely revised level()-method which doesn't have the bug
|
|
anymore, that in release-phase the envelope-level simply went down
|
|
from sustain-level to zero, now it goes down from the level at which
|
|
the note was released, new method is also much cleaner and more
|
|
optimized (and optmizable by compiler)
|
|
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
hide preview-instrument-track-window after loading settings
|
|
|
|
2006-04-07 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vibed/vibrating_string.h:
|
|
corrected type-names for resample()-method-parameters (f_cnt_t instead
|
|
of samplerate_t)
|
|
|
|
2006-04-06 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/config_mgr.h:
|
|
* src/core/config_mgr.cpp:
|
|
use setup-wizard only for setting working-directory
|
|
|
|
* src/core/main_window.cpp:
|
|
when creating file-browsers, pass 2 directories:
|
|
- factory-files
|
|
- user-files
|
|
this concerns projects, presets and samples - obsoletes
|
|
copying/linking files the first time, LMMS is run (new factory files in
|
|
new versions do not cause any trouble anymore)
|
|
|
|
* include/file_browser.h:
|
|
* src/core/file_browser.cpp:
|
|
added support for merging several directory-trees into one view
|
|
|
|
2006-04-05 Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/sample_track.h:
|
|
* src/tracks/sample_track.cpp:
|
|
- add volume knob to sample tracks
|
|
|
|
2006-04-05 Danny McRae <khjklujn/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vibed/impulse_editor.cpp:
|
|
- corrected mismatch sin/saw mismatch in initialization
|
|
|
|
* plugins/vibed/string_container.h:
|
|
* plugins/vibed/string_container.cpp:
|
|
* plugins/vibed/vibed.h:
|
|
* plugins/vibed/vibed.cpp:
|
|
- added string id tracking to allow adding strings while playing
|
|
|
|
2006-04-05 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/plugin_browser.h:
|
|
* src/core/plugin_browser.cpp:
|
|
- per default show small items for plugins in plugin-browser and show
|
|
details on mouse-over (nice animations!! ;-) - avoids problems with
|
|
hidden plugin-items because of too low screen-resolution and missing
|
|
scrollbars
|
|
- draw plugin-details-text using QPainter::drawText (not with old own
|
|
(buggy) algorithm for text-drawing with word-break-support)
|
|
|
|
2006-04-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/flp_import/unrtf/*:
|
|
* plugins/flp_import/flp_import.cpp:
|
|
use integrated unrtf-source into FLP-import-filter for converting
|
|
RTF-comments to plain HTML which is usable with QTextEdit
|
|
|
|
2006-04-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/song_editor.cpp:
|
|
set master-volume-slider correctly in songEditor::setMasterVolume()
|
|
|
|
* include/envelope_tab_widget.h:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
* src/core/note_play_handle.cpp:
|
|
- in envelopeTabWidget::releaseFrames():
|
|
if the volume-envelope is used, do not check
|
|
release-frames of other envelope-targets, as it is not
|
|
interesting if they're beyond the end of the volume-envelope
|
|
(silent so or so) - may result in less CPU-usage in some
|
|
situations if the user set a bigger release to an envelope
|
|
other than the volume-env
|
|
- for arpeggio-base-notes only use number of release-frames of
|
|
volume-envelope for m_releaseFramesToDo (for not creating silent notes
|
|
in release-phase of arp-base-note)
|
|
|
|
* plugins/vibed/impulse_editor.cpp:
|
|
use saw-wave as default shape for strings as it sounds much more like
|
|
a typical guitar-string than a sine-wave
|
|
|
|
* plugins/triple_oscillator/triple_oscillator.h:
|
|
* plugins/triple_oscillator/triple_oscillator.cpp:
|
|
re-implement setParameter()-method for setting user-defined wave-shape
|
|
(used by FLP-import-filter)
|
|
|
|
* plugins/flp_import/flp_import.cpp:
|
|
- convert 3x Osc params to TripleOscillator-settings and load them
|
|
- load Vibed-Plugin for Plucked!-instrument
|
|
- load arpeggio-settings of channel
|
|
- load filter-settings of channel
|
|
- handle base-note of each channel
|
|
- correct master-volume-calculation
|
|
|
|
2006-04-01 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/flp_import/flp_import.cpp:
|
|
- hack for converting RTF-comment to HTML using unrtf (if installed)
|
|
|
|
2006-03-30 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/flp_import/flp_import.h:
|
|
* plugins/flp_import/flp_import.cpp:
|
|
- try to load samples correctly using FL Studio installation
|
|
- recognize steps (not working properly yet)
|
|
- set current pattern of project
|
|
- separate handling of plugin-parameters (will allow support of FL
|
|
presets later!)
|
|
- added FLP_StepData (225) (not handled as format not known yet)
|
|
- added FLP_EnvLfoParams (218) (not handled as format not known yet)
|
|
- load envelope-settings of instrument-tracks
|
|
|
|
* src/core/track_container.cpp:
|
|
disable journalling in destructor of trackContainer
|
|
|
|
* include/config_mgr.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
support for setting path to installation directory of FL Studio
|
|
|
|
2006-03-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
added setMasterVolume() and setMasterPitch()
|
|
|
|
* plugins/flp_import/flp_import.h:
|
|
* plugins/flp_import/flp_import.cpp:
|
|
- read text-len correctly
|
|
- do not crash when creating new pattern before actual channels are
|
|
created
|
|
- stated event 224 to be FLP_PatternData
|
|
- extract information for creating notes out of pattern-data
|
|
- add playlist-items after all is done for resizing them correctly
|
|
|
|
2006-03-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/flp_import/flp_import.h:
|
|
* plugins/flp_import/flp_import.cpp:
|
|
improvements for having a working flp-filter as soon as possible
|
|
|
|
2005-03-28 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* src/lib/sample_buffer.cpp:
|
|
corrected miscalculation of buffer size in resample
|
|
|
|
* nine_button_selector.cpp:
|
|
* nine_button_selector.h:
|
|
* string_container.cpp:
|
|
* string_container.h:
|
|
* vibed.cpp:
|
|
* vibed.h:
|
|
changed QPtrList variables to vlist type to make things more
|
|
Qt4 friendly
|
|
|
|
2006-03-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/flp_import/:
|
|
skeleton for FLP-import-filter and some first code (doesn't work yet)
|
|
|
|
* include/midi.h:
|
|
* include/midi_port.h:
|
|
* include/midi_tab_widget.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/midi/midi_port.cpp:
|
|
support for default-velocity for MIDI-in and/or -out-events - useful
|
|
when recording with constant velocity
|
|
|
|
2005-03-26 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* plugins/vibed/:
|
|
added "Vibed"-plugin, a powerful combination of PluckedStringSynth and
|
|
BitInvader that's capable of producing a surprisingly wide range of
|
|
sounds
|
|
|
|
2006-03-26 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/lib/journalling_object.cpp:
|
|
in journallingObject::saveState(): append new dom-element to parent
|
|
before calling saveSettings() as some implementations of it depend on
|
|
knowing something about it's parent (e.g. whether it's the clipboard
|
|
etc.) - fixes several bugs related to clipboard-usage and drag'n'drop
|
|
|
|
2006-03-25 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/instrument_track.h:
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
disable journalling for all objects involved in preset-preview
|
|
|
|
* src/tracks/instrument_track.cpp:
|
|
when saving preset, create new node below content-node of project, as
|
|
the behaviour of saveTrackSpecificSettings() was changed some days
|
|
before
|
|
|
|
* src/lib/mmp.cpp:
|
|
bugfixes concerning project type-naming
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
bugfixes concerning loading/saving settings
|
|
|
|
2006-03-24 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/track.cpp:
|
|
in trackContentWidget::undoStep(): cast journalling object to
|
|
track-content-object and close it instead of deleting it - fixes crash
|
|
after undo of TCO-add
|
|
|
|
2006-03-23 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/organic/organic.cpp:
|
|
* plugins/organic/randomise_pressed.png:
|
|
added pixmap for visual feedback when pressing randomise-button
|
|
|
|
* plugins/midi_import/midi_import.cpp:
|
|
removed attribute FASTCALL from midiImport::tryImport() for not
|
|
crashing LMMS, as tryImport() is not defined as FASTCALL in
|
|
importFilter-API
|
|
|
|
* src/core/export_project_dialog.cpp:
|
|
fixed bug causing LMMS to crash when trying to export a project
|
|
|
|
2006-03-19 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
in loadSettings(): do not get confused by meta-data (journal etc.)
|
|
|
|
* src/lib/journalling_object.cpp:
|
|
- lot of bugfixes
|
|
- save/load data of journal-entry (QVariant) by encoding/decoding it
|
|
with base64
|
|
|
|
* include/base64.h:
|
|
* src/lib/base64.cpp:
|
|
support for encoding and decoding whole QVariant, independent of its
|
|
type (the result is one string, representing data of any type (int,
|
|
QMap, QVector QString...) - this is just awesome!!)
|
|
|
|
* src/tracks/instrument_track.cpp:
|
|
do not crash in several situations if instrument is not loaded for
|
|
some reason (e.g. invalid preset)
|
|
|
|
* src/core/track.cpp:
|
|
full support for undo/redo adding/removing a TCO (track-type
|
|
independent)
|
|
|
|
2006-03-18 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/main_window.cpp:
|
|
avoid layouting-errors when restore widget-state by showing widget
|
|
while moving it
|
|
|
|
* include/note.h:
|
|
* src/core/note.cpp:
|
|
undo/redo-support for note-properties
|
|
|
|
* most files:
|
|
- derive from journallingObject instead of settings and/or engineObject
|
|
- in saveSettings() do not create own node, instead directly set
|
|
attributes of passed dom-element
|
|
|
|
* include/journalling_object.h:
|
|
* src/lib/journalling_object.cpp:
|
|
- added saveSettings() and loadSettings()-method from former
|
|
settings-class
|
|
- new wrapper-functions around saveSettings() and loadSettings():
|
|
saveState()
|
|
restoreState()
|
|
-> objects do not have to create a new node on their own,
|
|
saveState() does it for them using nodeName() as node-name
|
|
-> journal of object is saved/restored automatically
|
|
|
|
* include/settings.h:
|
|
removed
|
|
|
|
2006-03-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/journalling_object.h:
|
|
- renamed from editable_object.h
|
|
- renamed editStep to journalEntry
|
|
- renamed editableObject to journallingObject
|
|
- renamed other method-names
|
|
|
|
* include/project_journal.h:
|
|
* src/lib/project_journal.cpp:
|
|
renamed editHistory to projectJournal and changed file-names
|
|
accordingly
|
|
|
|
* most files:
|
|
renamed class channelTrack to instrumentTrack and changed other
|
|
method-names to match new naming-convention
|
|
|
|
* include/instrument_track.h:
|
|
* src/tracks/instrument_track.cpp:
|
|
renamed channel_track.* to instrument_track.*
|
|
|
|
2006-03-16 Andreas Brandmaier <andreas/at/brandmaier/dot/de>
|
|
|
|
* plugins/organic/organic.cpp:
|
|
* plugins/organic/organic.h:
|
|
* plugins/organic/randomise.png:
|
|
added "randomise preset" button to organic plugin
|
|
|
|
2006-03-14 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/types.h:
|
|
added type for editable-object-ID
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
* src/tracks/bb_track.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
undo/redo-support for position- and size-changes of TCO
|
|
|
|
* include/automatable_object.h:
|
|
added methods for saving step-recording-state on stack and restoring
|
|
it
|
|
|
|
* include/automatable_object.h:
|
|
* include/automatable_button.h:
|
|
* include/knob.h:
|
|
* src/widgets/automatable_button.cpp:
|
|
* src/widgets/knob.cpp:
|
|
added second template-parameter to automatableObject which specifies
|
|
the type to be used for internal calculations (neccessary for working
|
|
undo/redo-implementation for bool-objects like buttons)
|
|
|
|
* include/led_checkbox.h:
|
|
* src/widgets/led_checkbox.cpp:
|
|
fixed some bugs
|
|
|
|
2006-03-13 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/main_window.h:
|
|
* src/core/main_window.cpp:
|
|
added edit-menu with undo/redo-items
|
|
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track_container.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
* src/widgets/project_notes.cpp:
|
|
use mainWindow::saveWidgetState() and mainWindow::restoreWidgetState()
|
|
for saving widget-state in project-file
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
made piano-roll a settings-object
|
|
|
|
* include/main_window.h:
|
|
* src/core/main_window.cpp:
|
|
added static methods for saving and restoring state of a widget
|
|
(position, size, visibility etc.) to/from QDomElement
|
|
|
|
* include/timeline.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/timeline.cpp:
|
|
save loop-point-positions and loop-point-state in project
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
added visual feedback when pressing wave-shape-buttons
|
|
|
|
* include/combobox.h:
|
|
* include/led_checkbox.h:
|
|
* include/pixmap_button.h:
|
|
* src/widgets/combobox.cpp:
|
|
* src/widgets/led_checkbox.cpp:
|
|
* src/widgets/pixmap_button.cpp:
|
|
use automatableButton as new base-class
|
|
|
|
* include/automatable_button.h:
|
|
* src/widgets/automatable_button.cpp:
|
|
- added class automatableButton to be the base-class for pixmapButton,
|
|
ledCheckBox etc.
|
|
- added automatableButtonGroup, a more powerful button-group, designed
|
|
to be used in conjunction with automatableButton-derived buttons
|
|
|
|
2006-03-12 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/automatable_object.h:
|
|
- added setInitValue() to be used by ALL creators of automatable
|
|
objects for initializing object-value - otherwise edit-step-history
|
|
gets filled with steps to set object's value to init-value
|
|
- derive from editableObject and re-implement some methods for
|
|
transparent edit-history for all automatable objects (knobs etc.)
|
|
|
|
* include/editable_object.h:
|
|
* include/edit_history.h:
|
|
* src/lib/edit_history.cpp:
|
|
added support for recording edit-steps, the base for a generic
|
|
undo/redo-system
|
|
|
|
2006-03-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/settings.h:
|
|
* src/core/plugin_browser.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track_container.cpp:
|
|
* plugins/midi_import/midi_import.cpp:
|
|
* plugins/midi_import/midi_import.h:
|
|
made MIDI-file-code an import-filter
|
|
|
|
* include/import_filter.h:
|
|
* src/core/import_filter.cpp:
|
|
support for import-filter-plugins - simply call
|
|
|
|
importFilter::import( FILE_NAME, TRACK_CONTAINER )
|
|
|
|
for any file and the rest will be done fully automatically according
|
|
to installed import-filter-plugins
|
|
|
|
2006-03-08 Zolo <the-zolo/at/gmx/dot/de>
|
|
|
|
* data/themes/blue_scene/:
|
|
updated some pixmaps
|
|
|
|
* data/themes/blue_scene/plugins/:
|
|
added pixmaps for plugins
|
|
|
|
2006-03-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/timeline.cpp:
|
|
more logical loop-point-handling:
|
|
middle mouse button -> left loop-point
|
|
right mouse button -> right loop-point
|
|
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
* plugins/organic/organic.cpp:
|
|
* plugins/plucked_string_synth/plucked_string_synth.cpp:
|
|
* plugins/triple_oscillator/triple_oscillator.cpp:
|
|
* plugins/vestige/vestige.cpp:
|
|
* include/plugin.h:
|
|
* src/core/instrument.cpp:
|
|
* src/core/plugin.cpp:
|
|
* src/lib/embed.cpp:
|
|
added support for plugin-theming
|
|
|
|
* src/lib/embed.cpp:
|
|
- first search in artwork-directories before searching for embedded data
|
|
as most artwork is not linked into binary (except plugins)
|
|
- if pixmap not found, try to load according pixmap from
|
|
default-artwork-dir
|
|
|
|
* include/embed.h:
|
|
* src/core/main.cpp:
|
|
* src/lib/embed.cpp:
|
|
as localizations are no longer embedded into binary, loadTranslation()
|
|
was moved to main.cpp and contains only some basic code for loading
|
|
appropriate translation from file
|
|
|
|
* src/core/config_mgr.cpp:
|
|
several fixes concerning artwork-path
|
|
|
|
2006-03-07 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
more senseful range for arpeggio time: 25-2000 ms (instead of 10-1000ms)
|
|
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_oss.cpp:
|
|
* src/midi/midi_alsa_raw.cpp:
|
|
* src/midi/midi_alsa_seq.cpp:
|
|
* src/midi/midi_oss.cpp:
|
|
only specify threading-priority when using Qt 3.3.5 or above as older
|
|
versions cause problems when running the whole app with realtime
|
|
priority - fixes several lockups
|
|
|
|
* src/widgets/knob.cpp:
|
|
when moving mouse while having shift pressed, increase/decrease by
|
|
single steps
|
|
|
|
* src/core/envelope_tab_widget.cpp:
|
|
use 10 KHz as filter-maximum instead of 16 KHz
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
added HACK to avoid crash because of bug in Qt (< 3.3.5) when removing
|
|
track
|
|
|
|
* src/core/config_mgr.cpp:
|
|
- use default-theme-path if theme-path from config-file doesn't exist
|
|
- add "/" to theme-path if missing
|
|
|
|
2006-03-06 Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
|
|
|
|
* locale/ru.ts:
|
|
updated Russian translation
|
|
|
|
2006-03-05 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/main_window.cpp:
|
|
always set to configured-state before showing setup-dialog on first
|
|
startup
|
|
|
|
2006-03-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/engine.cpp:
|
|
finalize main-window after having mixer to start its audio-devices -
|
|
fixes crash on first time LMMS is started
|
|
|
|
2006-02-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* data/locale/de.ts:
|
|
updated German translation
|
|
|
|
* src/core/timeline.cpp:
|
|
use note::toNearestTact() in timeLine::mouseMoveEvent() instead of own
|
|
calculations
|
|
|
|
* src/core/track.cpp:
|
|
per default make TCO-ops (create, move, resize) aligned on tact-
|
|
boundaries, free positioning/resizing can be achieved by pressing
|
|
<Ctrl> after pressing mouse-button
|
|
|
|
* include/midi_time.h:
|
|
added note::toNearestTact()-method
|
|
|
|
* include/pattern.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/track/pattern.cpp:
|
|
do not quantize note-position while moving selection of notes
|
|
|
|
* src/core/song_editor.cpp:
|
|
some layout-fixes for looking good with "Blue Scene" as well
|
|
|
|
2006-02-27 Zolo <the-zolo/at/gmx/dot/de>
|
|
|
|
* data/themes/blue_scene/:
|
|
added new theme for LMMS
|
|
|
|
2006-02-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/song_editor.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
do not crash when playing a pattern which is deleted
|
|
|
|
* src/core/track_container.cpp:
|
|
pause mixer when cloning tracks for avoiding side-effects, probably
|
|
fixes some crash-bugs
|
|
|
|
* include/config_mgr.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
* src/lib/embed.cpp:
|
|
first simple support for theming
|
|
|
|
* Makefile.am:
|
|
* configure.in:
|
|
re-organized all data-directories (samples, presets, localizations,
|
|
artwork etc.) and put them into data/ dir to be all installed into
|
|
$prefix/share/lmms
|
|
|
|
2006-02-25 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
apply a very basic envelope at the beginning and the end of a note for
|
|
avoiding these "typical" clicks which were there before
|
|
|
|
2006-02-22 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
* Makefile.am:
|
|
* src/lmms_single_source.cpp:
|
|
added support for compiling LMMS from one source file which often
|
|
results in a better/more optimized executable
|
|
|
|
* include/note.h:
|
|
* include/piano_roll.h:
|
|
* src/core/note.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
- simple quantization-support
|
|
- fixed lengths for drawing notes can be selected in piano-roll
|
|
|
|
* resources/black_key.png:
|
|
* resources/black_key_pressed.png:
|
|
* resources/pr_black_key.png:
|
|
* resources/pr_white_key_big.png:
|
|
* resources/pr_white_key_small.png:
|
|
* resources/white_key.png:
|
|
* resources/white_key_pressed.png:
|
|
replaced by new graphics
|
|
|
|
* src/core/engine.cpp:
|
|
delete piano-roll after song-editor and bb-editor as patterns being
|
|
destroyed still depend on it
|
|
|
|
2006-02-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
do not lock mutex in processOutEvent() as it causes a deadlock when
|
|
having channel-activity-indicators enabled
|
|
|
|
* include/midi_mapper.h
|
|
* include/project_notes.h:
|
|
* src/lib/sample_buffer.cpp:
|
|
* src/midi/midi_file.cpp:
|
|
* src/midi/midi_mapper.cpp:
|
|
* src/widgets/project_notes.cpp:
|
|
misc fixes for being able to compile LMMS from one source-file
|
|
|
|
* include/automatable_object.h:
|
|
* include/knob.h:
|
|
* include/lcd_spinbox.h:
|
|
* include/led_checkbox.h:
|
|
* src/widgets/knob.cpp:
|
|
* src/widgets/led_checkbox.cpp:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
introduced template-class automatableObject for central value-
|
|
manipulation, range-checking etc. and made some classes (e.g. knob,
|
|
ledCheckBox, lcdCheckBox) derive from it - preparations for full
|
|
automation-support in LMMS
|
|
|
|
* Makefile.am:
|
|
do not strip executable when installing as it makes even basic debugging
|
|
impossible
|
|
|
|
2006-02-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/combobox.cpp:
|
|
* src/widgets/knob.cpp:
|
|
* src/widgets/led_checkbox.cpp:
|
|
draw shadowed text
|
|
|
|
* include/mixer.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/mixer.cpp:
|
|
better xrun-detection and -handling (still not perfect)
|
|
|
|
* include/mixer.h:
|
|
* src/tracks/channel_track.cpp:
|
|
fixed critical bug which made LMMS crash if xruns were detected and
|
|
notes were discarded by mixer and therefore deleted twice
|
|
|
|
2006-02-19 Andreas Brandmaier <andreas/at/brandmaier/dot/de>
|
|
|
|
* plugins/organic/organic.cpp:
|
|
* plugins/organic/organic.h:
|
|
* presets/Organic:
|
|
* presets/Bitinvader:
|
|
added waveshape knob
|
|
changed distortion method from clipping to foldback
|
|
renamed and added presets for Organic and BitInvader
|
|
|
|
2006-02-18 Andreas Brandmaier <andreas/at/brandmaier/dot/de>
|
|
|
|
* plugins/organic/organic.cpp:
|
|
* plugins/organic/organic.h:
|
|
* presets/Organic:
|
|
added new plugin synthesizer plugin organic and some presets
|
|
|
|
2006-02-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/triple_oscillator/triple_oscillator.cpp:
|
|
per default set volume of each osc to 33%
|
|
|
|
* allmost all files:
|
|
use engine-technology
|
|
|
|
* include/engine.h:
|
|
* src/core/engine.cpp:
|
|
added engine- and engineObject-class providing new "engine-technology"
|
|
which makes singleton-classes obsoletes and offers a lot of new
|
|
possibilities like GUI-data-separation and having several projects
|
|
open at the same time
|
|
|
|
2006-02-06 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/mixer.h:
|
|
* include/song_editor.h:
|
|
* src/core/mixer.cpp:
|
|
* src/core/song_editor.cpp:
|
|
simple xrun-detection - do not accept new note-play-handles if xruns
|
|
are detected
|
|
|
|
2006-02-06 Andreas Brandmaier <andy/at/brandmaier/dot/de>
|
|
|
|
* plugins/bitinvader/bitinvader.cpp:
|
|
* plugins/bitinvader/bitinvader.h:
|
|
* plugins/bitinvader/graph.cpp:
|
|
* plugins/bitinvader/graph.h:
|
|
- code cleanup
|
|
- added drag&drop support to wavegraph
|
|
- added new BitInvader presets and improved old ones
|
|
|
|
2006-02-05 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/basic_filters.h:
|
|
small optimizations: do not divide by 2.0, instead multiply with 0.5
|
|
|
|
* src/core/main.cpp:
|
|
set SCHED_FIFO-priority for LMMS if possible
|
|
|
|
* plugins/vestige/communication.h:
|
|
* plugins/vestige/lvsl_client.cpp:
|
|
* plugins/vestige/lvsl_server.c:
|
|
- set SCHED_FIFO-priority for VST-server if possible
|
|
- no X-calls needed anymore
|
|
- more complete host-callback-implementation
|
|
- support for geometry-changes of plugin
|
|
- use std::list instead of std::vector for enqueing MIDI-events (faster)
|
|
- support for telling plugin system's language
|
|
|
|
* configure.in:
|
|
when checking for VST-SDK-headers, use C++ compiler instead of
|
|
C-compilers as headers fail to compile with it
|
|
|
|
2006-02-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/types.h:
|
|
* most files:
|
|
more strict typing -> types for samplerate, bpm, frame-count,
|
|
channel-count etc.
|
|
|
|
* src/core/track.cpp:
|
|
when creating a track, pause mixer for not causing any trouble because
|
|
of incompletely initialized track etc. - fixes several crashes when
|
|
adding track while playing
|
|
|
|
* include/mixer.h:
|
|
* src/core/mixer.cpp:
|
|
more "intelligent" mix-mutex-management for allow multiple pause()-
|
|
calls without ending in deadlock or crash because of mutex being
|
|
unlocked to early
|
|
|
|
2006-02-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
made 0.1.4 release
|
|
|
|
* Makefile.am:
|
|
added -rdynamic-switch again to make LMMS able to load plugins
|
|
|
|
* include/track_container.h:
|
|
fixed bug which caused LMMS not being compilable using GCC 3
|
|
|
|
2006-02-01 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
made 0.1.3 release
|
|
|
|
* lmms.1:
|
|
added manpage (taken from debian-package and updated)
|
|
|
|
* include/base64.h:
|
|
* include/rubberband.h:
|
|
* plugins/bit_invader/graph.cpp:
|
|
* src/core/name_label.cpp:
|
|
* src/widgets/combobox.cpp:
|
|
* src/widgets/rubberband.cpp:
|
|
Qt4-compat fixes
|
|
|
|
* locale/de.ts:
|
|
updated German translation
|
|
|
|
* src/core/main.cpp:
|
|
updated copyright-notice in help-text
|
|
|
|
2006-01-30 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
- renamed to lvsl_client.*
|
|
- when waiting for plugin to have finished process()ing, usleep() some
|
|
micro-seconds for allowing better scheduling
|
|
|
|
* plugins/vestige/lvsl_server.c:
|
|
- merged code from fstserver.cpp, fstserver.h and fstcore.c into one
|
|
source-file and removed rests of the old FST-API which makes all
|
|
the VST-code MUCH more cleaner and less redundant (LVSL = LMMS VST
|
|
Support Layer)
|
|
- VST SDK 2.4 compatibility (no need to fix headers with 2.4!)
|
|
|
|
2006-01-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
- call graph::setSamplePointer() after loading settings
|
|
- memcpy() samples in bitInvader::smoothClicked() instead of copying
|
|
them in a loop
|
|
|
|
* plugins/bit_invader/graph.cpp:
|
|
- update after setting new sample
|
|
|
|
* src/tracks/pattern.cpp:
|
|
- disable auto-cleanup during pattern-freeze
|
|
- initialize member m_progress in patternFreezeStatusDialig-dtor - fixes
|
|
bug which sometimes closed the window before actual freezing was
|
|
started
|
|
|
|
* include/buffer_allocator.h:
|
|
* src/lib/buffer_allocator.cpp:
|
|
- added possibility to disable auto-cleanup at certain times e.g. when
|
|
freezing a pattern
|
|
- cleanup only every 10th free()-call for decreasing overhead
|
|
- only start searching for free bufs if there're enough remaining
|
|
|
|
2006-01-24 Andreas Brandmaier <andy/at/brandmaier/dot/de>
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
* plugins/bit_invader/bit_invader.h:
|
|
* presets/BitInvader:
|
|
- changed sample buffer encoding in presets to base64
|
|
- added BitInvader various presets
|
|
|
|
2006-01-23 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/sample_buffer.h:
|
|
* src/lib/sample_buffer.cpp:
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
use new base64-code
|
|
|
|
* include/base64.h:
|
|
* src/lib/base64.cpp:
|
|
added methods for encoding/decoding binary data to/from base64-encoded
|
|
data (wrapper-implementation for Qt4)
|
|
|
|
2006-01-23 Andreas Brandmaier <andy/at/brandmaier/dot/de>
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
* plugins/bit_invader/bit_invader.h:
|
|
* plugins/bit_invader/graph.cpp:
|
|
* plugins/bit_invader/graph.h:
|
|
- improved mouse handling.
|
|
- replaced waveform generation methods by those of toby's oscillator
|
|
class
|
|
- added user-loadable waveform
|
|
- code cleanup
|
|
|
|
2006-01-22 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/timeline.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/timeline.cpp:
|
|
updates are now completely done by timeline/QTimer without being
|
|
called from song-editor out of non-GUI-thread which caused segfaults
|
|
etc. sometimes
|
|
|
|
* include/name_label.h:
|
|
* src/core/name_label.cpp:
|
|
* src/tracks/bb_track.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
added support for user-defined track-icons
|
|
|
|
* artwork/track_icons/*png:
|
|
added several icons to be used as track-icons
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
do not hide track for completely repainting it, use special method for
|
|
it
|
|
|
|
* include/pattern.h:
|
|
* src/tracks/pattern.cpp:
|
|
only repaint if neccessary, otherwise just paint the pixmap we painted
|
|
before
|
|
|
|
* include/bb_editor.h:
|
|
* src/core/bb_editor.cpp:
|
|
added combobox for selecting bb-track inside bb-editor
|
|
|
|
* include/combobox.h:
|
|
* src/widgets/combobox.cpp:
|
|
- added clear()-method
|
|
- do not crash when having no items
|
|
- scale pixmap to fit into combobox
|
|
- place menu below combobox if possible
|
|
|
|
2006-01-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
added support for used-defined track-height by pressing <Shift> and
|
|
move mouse (with pressed button)
|
|
|
|
* include/song_editor.h:
|
|
* include/track.h:
|
|
* include/track_container.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
take advantage of new rubberband:
|
|
- selecting track-content-objects of any type either via rubberband or
|
|
by clicking while pressing <Ctrl>
|
|
- move selected track-content-objects
|
|
- delete selected track-content-objects
|
|
|
|
* include/rubberband.h:
|
|
* src/widgets/rubberband.cpp:
|
|
added rubberband which either acts as wrapper for Qt4's QRubberBand or
|
|
as a widget imitating a rubberband
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
draw vertical lines for each bar
|
|
|
|
* include/bb_editor.h:
|
|
* include/song_editor.h:
|
|
* include/track_container.h:
|
|
* src/core/bb_editor.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
fixed all that stuff with annoying scrollbars which partly hid important
|
|
widgets
|
|
|
|
2006-01-21 Andreas Brandmaier <andy/at/brandmaier/dot/de>
|
|
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
* plugins/bit_invader/bit_invader.h:
|
|
added smooth button
|
|
|
|
2006-01-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/pattern.cpp:
|
|
also update after clearing all notes
|
|
|
|
* include/piano_roll.h:
|
|
* include/song_editor.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/song_editor.cpp:
|
|
use new combobox for zooming-comboboxes
|
|
|
|
* include/export_project_dialog.h:
|
|
* src/core/export_project_dialog.cpp:
|
|
- reject() dialog when pressing cancel
|
|
- use new combobox
|
|
|
|
* include/arp_and_chords_tab_widget.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
use new combobox with according arpeggio-mode-icons
|
|
|
|
* include/envelope_tab_widget.h:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
* resources/filter_2lp.png:
|
|
* resources/filter_ap.png:
|
|
* resources/filter_bp.png:
|
|
* resources/filter_hp.png:
|
|
* resources/filter_lp.png:
|
|
use new combobox with according filter-icons
|
|
|
|
* include/combobox.h:
|
|
* src/widgets/combobox.cpp:
|
|
added own cool-looking combobox with menu-extension which basically
|
|
has the same API as QComboBox
|
|
|
|
2006-01-19 Andreas M. Brandmaier <andy/at/brandmaier/dot/de>
|
|
|
|
* plugins/bit_invader/bit_invader.h:
|
|
* plugins/bit_invader/bit_invader.cpp:
|
|
* plugins/bit_invader/graph.h:
|
|
* plugins/bit_invader/graph.cpp:
|
|
added "BitInvader"-plugin, an usereditable wavetable-synthesizer
|
|
|
|
2006-01-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/lib/mmp.cpp:
|
|
do not add "mmp"-extensions if there's already "mpt" (multimedia-
|
|
project-template) as extension
|
|
|
|
* include/arp_and_chords_tab_widget.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
- added new sync-mode to arpeggiator
|
|
- arpeggiator-modes are now selectable from combobox
|
|
|
|
2006-01-15 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/file_browser.cpp:
|
|
use 7.5 instead of 8 as font-size
|
|
|
|
* src/widgets/led_checkbox.cpp:
|
|
use 7.5 instead of 7 as font-size
|
|
|
|
* include/gui_templates.h:
|
|
- added more precise pointSizeF()-method
|
|
- more precise point-size-calculation for pointSize()-method which
|
|
makes all fonts inside LMMS a bit bigger and everything more
|
|
readable
|
|
|
|
* include/setup_dialog.h:
|
|
* src/core/note_play_handle.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added switches for disabling several UI-effects for a better
|
|
performance even on older hardware
|
|
|
|
* include/preset_preview_play_handle.h:
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
global-data-mutex is not a pointer anymore, instead it's a normal
|
|
QMutex - fixes crashes with sort-arpeggio if no preset was previewed
|
|
before
|
|
|
|
2006-01-14 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/kmultitabbar.cpp:
|
|
made KMultiTabBar working with Qt4
|
|
|
|
* src/audio/audio_jack.cpp:
|
|
return if connection to JACK-server failed with old JACK-API
|
|
(jack_client_new(...)) - fixes crash when using old JACK-API with
|
|
LMMS and JACK-server is not running
|
|
|
|
* include/preset_preview_play_handle.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
as preset-note-play-handle is not registered at mixer, it cannot be
|
|
returned in notePlayHandle::nphsOfChannelTrack() and therefore
|
|
previewing presets with sort-mode arpeggios doesn't work - now the
|
|
arpeggiator also checks preview-note for being the only note there
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
fixed some bugs in arpeggiator
|
|
|
|
* src/core/piano_roll.cpp:
|
|
lock qapp-thread in recordNote() - hopefully fixes some
|
|
xlib-async-errors
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
- do not process note-on-out-events if according key is already pressed
|
|
- when invalidating note-play-handles, also reset m_notes-array for not
|
|
crashing when applying another preset while key is pressed and
|
|
released afterwards
|
|
|
|
2006-01-10 Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
|
|
|
|
* locale/ru.ts:
|
|
updated Russian translation
|
|
|
|
2006-01-10 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/piano_roll.cpp:
|
|
update pattern after changing volume of step-note
|
|
|
|
2006-01-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/setup_dialog.h:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
made appearence of two dialogs switchable (question whether to re-run
|
|
wizard after up-/downgrade and message after accepting setup-dialog)
|
|
|
|
2006-01-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
simple support for editing (existing) steps in piano-roll, e.g. for
|
|
changing key of a step
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
per default switch to users VST-plugin-directory when opening plugin
|
|
|
|
* include/config_mgr.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
added possibility to setup working-directory and location of VST-plugins
|
|
|
|
* src/widgets/tempo_sync_knob.cpp:
|
|
removed a lot of obsolete #include's
|
|
|
|
* include/piano_widget.h:
|
|
* src/core/note_play_handle.cpp:
|
|
* src/core/piano_widget.cpp:
|
|
display played keys as if they were pressed
|
|
|
|
* include/arp_and_chords_tab_widget.h:
|
|
* include/note_play_handle.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/note_play_handle.cpp:
|
|
added sort-mode for more powerful arpeggios
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
fixed bug which made the arpeggiator skipping notes sometimes at
|
|
certain arpeggio-times
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
commented out code for creating effect-board-window-button
|
|
|
|
* src/core/channel_track.cpp:
|
|
removed inclusion of paths.h which isn't part of LMMS for quite a long
|
|
while... - there were no problems because Linux has paths.h too
|
|
|
|
2006-01-06 dieEasy <dieeasy/at/cheapnet/dot/it>
|
|
|
|
* locale/it.ts:
|
|
added Italian translation
|
|
|
|
2006-01-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
set vestige-logo as window-icon of plugin-GUI-window
|
|
|
|
* src/core/instrument.cpp:
|
|
set logo of plugin as window-icon of channel-track
|
|
|
|
* include/dummy_instrument.h:
|
|
* include/dummy_plugin.h:
|
|
* include/instrument.h:
|
|
* include/plugin.h:
|
|
* src/core/instrument.cpp:
|
|
* src/core/plugin.cpp:
|
|
small changes in plugin-API: plugin now always has to pass pointer to
|
|
plugin-descriptor to plugin-dtor to make the latter one able to
|
|
provide several information
|
|
|
|
* src/core/plugin.cpp:
|
|
search for plugin-libs in configManager::pluginDir() which is
|
|
$prefix/lib/lmms - hopefully solves problems with finding plugins on
|
|
some systems
|
|
|
|
* include/channel_track.h:
|
|
* include/midi_tab_widget.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
when using Raw-MIDI-client, make items "MIDI input/output" checkable
|
|
and enable/disable MIDI-input/output accordingly if user
|
|
checked/unchecked it and update check-state if user changed MIDI-mode
|
|
in midi-tab-widget in channel-track
|
|
|
|
* src/core/midi_tab_widget.cpp:
|
|
set MIDI-output-channel to 1 per default
|
|
|
|
* src/lib/sample_buffer.cpp:
|
|
added flac-files to filter of file-selection-dialog
|
|
|
|
* include/note_play_handle.h:
|
|
* src/core/note_play_handle.cpp:
|
|
when invalidating note-play-handle, do some stuff which actually would
|
|
be done by dtor if m_channelTrack wouldn't be NULL
|
|
|
|
2006-01-01 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/track.cpp:
|
|
added tooltip to track-op-widget telling the user something about
|
|
drag'n'drop-functionality...
|
|
|
|
* include/lmms_main_win.h:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/lib/string_pair_drag.cpp:
|
|
if main-window looses focus or a drag is completed, clear
|
|
key-modifiers of LMMS-main-window, because we might have lost
|
|
key-release-events in these cases and therefore our modifier-state-map
|
|
could be incorrect - fixes several bugs concerning drag'n'drop
|
|
|
|
* README:
|
|
* src/core/about_dialog.cpp:
|
|
extended copyright from 2005 to 2006 - Happy New Year!
|
|
|
|
2005-12-31 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* src/tracks/channel_track.cpp:
|
|
removed surround-area in track-settings-widget and added button with
|
|
MIDI-connection-menu instead
|
|
|
|
2005-12-30 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/track.h:
|
|
* include/track_container.h:
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
revised all the things around track-operations:
|
|
- tracks are now directly movable via the grip at the beginning of a
|
|
track - replaces "move up/down"-buttons and is much more usable
|
|
- actions (clone/delete track) are now part of a popup-menu
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
- corrected file-description at the beginning
|
|
- add space at left side before adding tool-buttons
|
|
|
|
* src/core/midi_tab_widget.cpp:
|
|
use smaller font for connection-selection-menu
|
|
|
|
2005-12-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/fade_button.cpp:
|
|
do not update() directly in nextState(), use QTimer instead for avoiding
|
|
xlib-threading-errors
|
|
|
|
2005-12-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/communication.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstserver.cpp:
|
|
* plugins/vestige/vestige.cpp:
|
|
* plugins/vestige/vestige.h:
|
|
- support for telling plugin current BPM, also catches BPM-changes
|
|
- handle plugins without GUI correctly
|
|
|
|
* include/tool_button.h:
|
|
* src/widgets/tool_button.cpp:
|
|
catch toggle-signals to emit clicked()-signal which is neccessary if a
|
|
button is checked using setChecked()-method and not by the user -
|
|
fixes some bugs with piano-roll
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
- show text-float after user copied notes
|
|
- do not play note when just moving selection
|
|
- when update()ing paint everything in a pixmap which is painted in
|
|
paintEvent() - saves all the repaints everytime mouse-cursor is moved
|
|
and makes painting tool-cursor possible again
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
corrected calculation in channelTrack::masterKey()
|
|
|
|
2005-12-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
always reset cursor when receiving leave-event
|
|
|
|
* include/channel_track.h:
|
|
* src/tracks/channel_track.cpp:
|
|
use new fade-button as MIDI-event-indicator as well as simple
|
|
play-default-tone-button
|
|
|
|
* include/fade_button.h:
|
|
* src/widgets/fade_button.cpp:
|
|
added fade-button which can be activated and fades back to
|
|
default-color afterwards
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/core/note.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track.cpp:
|
|
* src/tracks/bb_track.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
do not use QString::number() for saving scalar value with
|
|
setAttribute() as it is obsolete
|
|
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_oss.cpp:
|
|
start audio-thread with QThread::HightestPriority for having less xruns
|
|
|
|
* src/tracks/pattern.cpp:
|
|
save m_steps-property, otherwise restoring it in loadSettings() makes
|
|
no sense... - fixes bug which caused LMMS to always reset number of
|
|
steps to 16 when loading files, even if the user created patterns
|
|
containing more than 16 steps
|
|
|
|
* include/audio_dummy.h:
|
|
- fixed missing implementation of thread running the whole time and
|
|
calling audioDevice::processNextBuffer() -> fixes bugs & lockups when
|
|
using audio-dummy-driver
|
|
- thread now always waits the amount of time that is left for the
|
|
current buffer, so if rendering of current buffer went faster than
|
|
in realtime, the song doesn't play at a higher speed
|
|
|
|
2005-12-26 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
determine real key of note using channelTrack::masterKey
|
|
|
|
* include/micro_timer.h:
|
|
moved micro-timer-class from mixer.cpp in separate header for being
|
|
available to all modules of LMMS
|
|
|
|
* src/core/mixer.cpp:
|
|
added metronome-sounds when recording in piano-roll
|
|
|
|
* src/lib/sample_buffer.cpp:
|
|
- added resample()-method for resampling whole sample-buffer
|
|
- after libsndfile try to load sample with libvorbis instead of
|
|
SDL_sound as the latter one seems to be buggy on few systems and
|
|
leads to unexpected crashes
|
|
- if sample-decoder doesn't resample sample automatically, do it
|
|
afterwards using resample()
|
|
|
|
* src/core/track_container.cpp:
|
|
accept drops of type samplefile and sampledata too and create new
|
|
channel-track with AudioFileProcessor
|
|
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
save/load sample-data which was dragged on plugin in settings
|
|
|
|
* src/core/track.cpp:
|
|
display correct length and now additionally start- and end-position of
|
|
track-content-object
|
|
|
|
* include/bb_track.h:
|
|
* src/tracks/bb_track.cpp:
|
|
do not align position and length of bb-track-objects on tact-boundaries
|
|
as it offers an interesting new feature (incomplete/start beats etc.!)
|
|
|
|
2005-12-25 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/visualization_widget.cpp:
|
|
enable visualization-widget per default
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
- do not crash when loading settings with empty plugin-attribute (e.g.
|
|
older projects/presets)
|
|
- set channel-name according to plugin-name
|
|
- added note-off-button for being able to note off hanging notes
|
|
(which sometimes occurs in combination with arpeggios)
|
|
|
|
2005-12-24 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
use new parameter-saving/loading-feature when saving/loading settings
|
|
|
|
* plugins/vestige/communication.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstserver.cpp:
|
|
* plugins/vestige/fstserver.h:
|
|
* plugins/vestige/fstcore.c:
|
|
- added support for saving/loading parameters which almost completes
|
|
LMMS's rudimentary VST-support
|
|
- support for querying parameter-properties
|
|
- some changes in initialization of plugin
|
|
|
|
* src/tracks/pattern.cpp:
|
|
pass unused wheel-events to trackContentObect for being able to scroll
|
|
within song-editor
|
|
|
|
2005-12-23 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/fstcore.c:
|
|
a lot of clean-ups and other bug-fixes making VeSTige almost usable
|
|
and stable
|
|
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
save PID of children when fork()ing XFST-server which is used for
|
|
sending SIGTERM when destroying everything
|
|
|
|
* plugins/vestige/communication.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
* plugins/vestige/fstserver.cpp:
|
|
* plugins/vestige/fstcore.c:
|
|
do not show editor until client created x11-embed-widget - solves
|
|
problems with not-embedded plugins under KDE
|
|
|
|
* plugins/vestige/fstserver.cpp:
|
|
rewrote MIDI-enqueueing-code as the old one was very buggy and
|
|
unreliable
|
|
|
|
* plugins/vestige/vestige.h:
|
|
* plugins/vestige/vestige.cpp:
|
|
added mutex for plugin which solves some problems
|
|
|
|
* include/mixer.h:
|
|
* src/core/mixer.cpp:
|
|
per default clear all play-handles but instrument-play-handles in
|
|
mixer::clear() as instrument-playhandles normally exist during the
|
|
whole life-time of a certain plugin and must not be deleted when just
|
|
stopping song etc.
|
|
|
|
* include/play_handle.h:
|
|
added type-information, so every derived class has to pass a
|
|
type-constant to playHandle-constructor
|
|
|
|
2005-12-22 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
made 0.1.2 release
|
|
|
|
2005-12-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/lib/sample_buffer.cpp:
|
|
- first try to use libsndfile instead of SDL_sound for decoding sample
|
|
as SDL_sound sometimes doesn't handle samples (raw- and FLAC-files)
|
|
the correct way and returns unusable data while libsndfile seems to
|
|
work quite fine with these samples
|
|
- when using libsamplerate, use linear-interpolation per default
|
|
instead of zero-order-hold-resampling which results in MUCH higher
|
|
quality when resampling as it produces much less artifacts
|
|
|
|
* src/core/file_browser.cpp:
|
|
classify files with extension "flac" as samples
|
|
|
|
* src/widgets/tab_widget.cpp:
|
|
hide all other tabs when changing active tab - neccessary for working
|
|
with Qt 4.1
|
|
|
|
2005-12-20 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* resources/step_btn_on_100.png:
|
|
* resources/step_btn_yellow.png:
|
|
* include/pattern.h:
|
|
* src/tracks/pattern.cpp:
|
|
make it possible to change volume of steps in bb-editor using mouse
|
|
wheel and which changes color of step-button accordingly
|
|
|
|
2005-12-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/lib/sample_buffer.cpp:
|
|
first implementation of FLAC-encoding/decoding for compressing buffers
|
|
before encoding them to base64 which results in smaller XML-files -
|
|
currently disabled as it's still buggy and unusable
|
|
|
|
* src/lib/buffer_allocator.cpp:
|
|
in cleanup-method use list instead of vector for pool of buffers to be
|
|
removed - fixes crash with Qt4
|
|
|
|
2005-12-19 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/knob.cpp:
|
|
made knob ready for drag'n'drop of values
|
|
|
|
* src/tracks/sample_track.cpp:
|
|
load and save/load sample-data which doesn't come from sample in/from
|
|
XML-node (base64-encoded)
|
|
|
|
2005-12-18 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/pattern.cpp:
|
|
use Sint32 instead of Sint16 for determining central key, otherwise we
|
|
might get overflows when having a lot of notes
|
|
|
|
* src/tracks/sample_track.cpp:
|
|
draw zero-line if sample is shorter than TCO
|
|
|
|
* src/core/track.cpp:
|
|
display text-float with current position/size when moving/resizing TCO
|
|
|
|
* src/core/song_editor.cpp:
|
|
do correct positioning for text-floats for master-volume/-pitch
|
|
|
|
* include/envelope_and_lfo_widget.h:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
added support for user-defined wave-shapes - the user just has to drag
|
|
an audio-sample into envelope/lfo-widget and that's all ;-)
|
|
|
|
* src/tracks/pattern.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
make sound-buffer of frozen pattern draggable to sample in
|
|
sample-track
|
|
|
|
* include/sample_buffer.h:
|
|
* src/lib/sample_buffer.cpp:
|
|
support for base64-encoding of sample-data into a QString
|
|
|
|
* src/core/track_container.cpp:
|
|
import MIDI-file to itself when getting according drag'n'drop-request
|
|
|
|
* plugins/audio_file_processor/audio_file_processor.h:
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
receive drop-events (set dragged sample etc.)
|
|
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
renamed removeVSTPlugin::write/readValue to write/readValueS for
|
|
compiling even with buggy GCC 3.x
|
|
|
|
* include/file_browser.h:
|
|
* src/core/file_browser.cpp:
|
|
made up all that drag'n'drop-stuff, you're now able to drag samples
|
|
and presets directly to according channel, sample etc.
|
|
|
|
2005-12-17 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/bb_editor.h:
|
|
* include/pattern.h:
|
|
* src/core/bb_editor.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
always update according bb-tracks when changing pattern/it's length
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
* src/core/track_container.cpp:
|
|
drag'n'drop everywhere - now you can drag every track-content-object
|
|
(e.g. a pattern) to every other track-content-object of the same type
|
|
or to a free place in an according track or just in another
|
|
track-container
|
|
|
|
* include/mmp.h:
|
|
* src/lib/mmp.cpp:
|
|
allow additionally to load data from given string instead of file
|
|
|
|
* include/timeline.h:
|
|
* src/core/timeline.cpp:
|
|
- disable magnetic loop-points when pressing control
|
|
- set start-point directly to given position when pressing middle
|
|
mouse-button, do the same for end-point of shift is pressed at the
|
|
same time
|
|
|
|
* include/piano_roll.h:
|
|
* include/song_editor.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/song_editor.cpp:
|
|
use modifier-key-states from lmmsMainWin instead of monitoring them on
|
|
it's own
|
|
|
|
* include/lmms_main_win.h:
|
|
* src/core/lmms_main_win.cpp:
|
|
capture key-events and save states of shift, control- and alt-key
|
|
everytime it changes - other widgets can use this for querying whether
|
|
one of these modifier-keys is pressed
|
|
|
|
2005-12-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
added better LADSPA-check and fixed some other small things
|
|
|
|
* src/core/mixer.cpp:
|
|
query attribute "mididev" instead of "midiclient" for determining
|
|
selected MIDI-device - fixes bug with apparently non-selectable
|
|
MIDI-device/-client
|
|
|
|
* src/core/plugin.cpp:
|
|
* src/lib/ladspa_manager.cpp:
|
|
load plugins using QLibrary instead of platform-dependent dl-functions
|
|
|
|
2005-12-15 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/audio_alsa.h:
|
|
do not include alsa-headers if they do not exist...
|
|
|
|
2005-12-14 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/file_browser.cpp:
|
|
display text-float while loading sample for preview
|
|
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
fixed bug which caused LMMS to crash when playing notes on
|
|
audio-file-processor, which was created out of preset containing link
|
|
to file which doesn't exist
|
|
|
|
* src/core/song_editor.cpp:
|
|
use text-floats instead of status-bar
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
removed status-bar
|
|
|
|
* plugins/vestige/vestige.cpp:
|
|
show text-float while loading plugin
|
|
|
|
* include/text_float.h:
|
|
* src/widgets/text_float.cpp:
|
|
heavy improvements on text-float-widget which is now also able to
|
|
display messages with title and pixmap and offers two static methods
|
|
for displaying a certain message
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
set project modified after accepting drops of presets/plugins
|
|
|
|
* include/instrument_play_handle.h:
|
|
check for m_instrument being NULL because play-handle might be
|
|
invalidated and thus crash when referencing NULL-ptr
|
|
|
|
* most files:
|
|
continued improving Qt4-support
|
|
|
|
2005-12-13 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* most files:
|
|
made LMMS compatible with Qt4 again after heavy development under Qt3
|
|
led to incompatibility with Qt4
|
|
|
|
2005-12-11 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/lib/mmp.cpp:
|
|
- default file-extension is now "mmp" (MultiMedia Project) instead of
|
|
"xml" for being able to associate mmp-files with LMMS in
|
|
file-managers etc. - futhermore LMMS-file-browser is much faster now
|
|
because it does not have to examine each file
|
|
- file-extension for song-templates is now "mpt" (MultiMedia Project
|
|
Template)
|
|
|
|
* include/cpuload_widget.h:
|
|
* src/widgets/cpuload_widget.cpp:
|
|
added cool CPU-load-widget displaying LMMS's current CPU-usage
|
|
|
|
* src/core/note_play_handle.cpp:
|
|
always check validity of sub-notes as they might not be known to mixer
|
|
and therefore not invalidated in certain situations which made LMMS
|
|
crashing (e.g. when deleting a channel-track which was current playing
|
|
some arpeggio-notes)
|
|
|
|
* include/pattern.h:
|
|
* src/tracks/pattern.cpp:
|
|
start separate thread for freezing pattern as this doesn't block the
|
|
GUI-thread and user is now able to cancel pattern-freezing (which was
|
|
not possible after last rewrite a few days ago)
|
|
|
|
* include/timeline.h:
|
|
* src/core/timeline.cpp:
|
|
use timer for periodically screen-updates - locking QApplication-mutex
|
|
isn't neccessary anymore which makes LMMS not to hang when creating
|
|
new song while playing etc.
|
|
|
|
* src/core/piano_roll.cpp:
|
|
when settings time-line-position, call setTact( 0 ) and
|
|
setTact64th( 0 )-members instead of pos() = 0 (the latter one leads
|
|
to crashes)
|
|
|
|
* plugins/audio_file_processor/audio_file_processor.cpp:
|
|
update start- and end-frames of sample-buffer when loading settings
|
|
|
|
2005-12-10 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/lmms_main_win.h:
|
|
* include/song_editor.h:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* resources/toolbar_bg.png:
|
|
* resources/main_toolbar_bg.png:
|
|
heavy improvements on toolbars
|
|
|
|
* include/nstate_button.h:
|
|
* src/widgets/nstate_button.cpp:
|
|
base-class is now toolButton instead of QPushButton
|
|
|
|
* include/tool_button.h:
|
|
* src/widgets/tool_button.cpp:
|
|
- moved implemenation of toolButton into cpp-file
|
|
- added highlighting during mouse-over
|
|
- do not connect clicked()-signal if receiver and/or slot are NULL
|
|
|
|
2005-12-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
added support for saving and restoring MIDI-connections of a channel
|
|
in ordinary channel-preset-data
|
|
|
|
* include/channel_track.h:
|
|
* include/midi_tab_widget.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
dropped support for switchable MIDI-event-routing as it is done per
|
|
default and actually makes no sense...
|
|
|
|
* src/midi/midi_port.cpp:
|
|
do not process MIDI-out-event if channel = -1
|
|
|
|
2005-12-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/midi_tab_widget.cpp:
|
|
- always un-check items in port-menus when disabling receceiving or
|
|
sending MIDI-events
|
|
- small GUI improvements
|
|
|
|
* resources/midi_in.png:
|
|
* resources/midi_out.png:
|
|
added icons for MIDI-input- and MIDI-output-port-selection
|
|
|
|
2005-12-07 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/midi_alsa_seq.h:
|
|
* include/midi_client.h:
|
|
* include/midi_tab_widget.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/midi/midi_alsa_seq.cpp:
|
|
* src/midi/midi_client.cpp:
|
|
added support for easy MIDI-port-subscription inside LMMS by just
|
|
selecting according source-/destination-port from a menu in
|
|
MIDI-setup-tab in each channel-window
|
|
|
|
2005-12-06 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/note_play_handle.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/piano_widget.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
moved output-MIDI-event-generation-code from channel-track to
|
|
note-play-handles for covering arpeggio/chords and having exactly
|
|
timed events - makes it now possible to control other MIDI-based
|
|
synths etc. from patterns (which was not possible before because
|
|
of a small bug) - will drop MIDI-out-plugin very soon as it isn't
|
|
needed anymore
|
|
|
|
2005-12-05 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
- when moving mouse draw a bar at current key
|
|
- re-enabled mouse-tracking for cursor-changes when mouse is over tail
|
|
of note etc.
|
|
|
|
* resources/zoom.png:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
added small zoom-icon to zoom-combobox
|
|
|
|
2005-12-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/midi_alsa_raw.h:
|
|
* include/midi_client.h:
|
|
* include/midi_dummy.h:
|
|
* include/midi_oss.h:
|
|
* src/midi/midi_alsa_raw.cpp:
|
|
* src/midi/midi_client.cpp:
|
|
* src/midi/midi_oss.cpp:
|
|
renamed class midiRawClient to midiClientRaw
|
|
|
|
* include/pattern.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
do not hang in endless loop when rendering pattern with enabled
|
|
looping-points
|
|
|
|
* src/core/time_line.cpp:
|
|
align looping-points on bars
|
|
|
|
* include/bb_editor.h:
|
|
* include/piano_roll.h:
|
|
* include/song_editor.h:
|
|
* include/timeline.h:
|
|
* include/tool_button.h:
|
|
* src/core/bb_editor.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/timeline.cpp:
|
|
redesigned toolbars of song-editor, bb-editor and piano-roll - now
|
|
they're looking really cool and especially time-line-features are much
|
|
more usable
|
|
|
|
* include/song_editor.cpp:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/song_editor.cpp:
|
|
- added main-toolbar at bottom of screen and moved several widgets from
|
|
song-editor-toolbar into it
|
|
- added high-quality-button for switching to 88200/96000 Hz
|
|
|
|
* src/widgets/tab_widget.cpp:
|
|
reversed scroll-wheel-direction for changing tab
|
|
|
|
2005-12-03 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/main.cpp:
|
|
- better handling of command-line options
|
|
- added help switch
|
|
- fixed bugs concerning rendering from command-line
|
|
|
|
* include/audio_alsa.h:
|
|
* include/audio_device.h:
|
|
* include/audio_dummy.h:
|
|
* include/audio_file_device.h:
|
|
* include/audio_file_ogg.h:
|
|
* include/audio_file_wave.h
|
|
* include/audio_jack.h:
|
|
* include/audio_oss.h:
|
|
* include/audio_sdl.h:
|
|
* include/export.h:
|
|
* include/export_project_dialog.h:
|
|
* include/mixer.h:
|
|
* include/pattern.h
|
|
* include/song_editor.h:
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_device.cpp:
|
|
* src/audio/audio_file_device.cpp:
|
|
* src/audio/audio_file_ogg.cpp:
|
|
* src/audio/audio_file_wave.cpp:
|
|
* src/audio/audio_jack.cpp:
|
|
* src/audio/audio_oss.cpp:
|
|
* src/audio/audio_port.cpp:
|
|
* src/audio/audio_sdl.cpp:
|
|
* src/core/export_project_dialog.cpp:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/main.cpp:
|
|
* src/core/mixer.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/track/pattern.cpp:
|
|
changed architecture of mixer-system from push- to pull-architecture
|
|
which makes almost all things (song-export, pattern-freezing etc.) much
|
|
easier and also results in a better performance (especially when using
|
|
JACK) - additionally LMMS doesn't take 100% CPU anymore
|
|
|
|
2005-12-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/config_mgr.cpp:
|
|
do not try to re-run wizard in case of version mismatches
|
|
|
|
* configure.in:
|
|
* plugins/Makefile.am:
|
|
* presets/Makefile.am:
|
|
dropped ladspa_sine_1063-plugin as it is only for experimental
|
|
purposes
|
|
|
|
2005-11-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/vestige.h:
|
|
* plugins/vestige/vestige.cpp:
|
|
changes for working with new VST-framework
|
|
|
|
* plugins/vestige/fstclient.h:
|
|
* plugins/vestige/fstserver.h:
|
|
* plugins/vestige/fstclient.cpp:
|
|
* plugins/vestige/fstserver.cpp:
|
|
* plugins/vestige/fstcore.c:
|
|
* plugins/vestige/communication.h:
|
|
added new VST-framework (client-server-architecture) based on XFST
|
|
|
|
* include/qxembed.h
|
|
* src/widgets/qxembed.cpp:
|
|
added QXEmbed-widget which is neccessary for embedding VST-plugin
|
|
|
|
2005-11-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/mixer.cpp:
|
|
added usleep()-call for realizing usable threading and solve problems
|
|
with 100%-CPU-usage
|
|
|
|
2005-11-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* include/sample_play_handle.h:
|
|
* include/sample_track.h:
|
|
* src/core/sample_play_handle.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
made things work with audio-ports
|
|
|
|
* include/mixer.h:
|
|
* src/core/mixer.cpp:
|
|
completely revised internal mixing-engine make it working with
|
|
the new audio-ports, which results in a much cleaner, faster and more
|
|
powerful mixing-engine
|
|
|
|
* include/audio_port.h:
|
|
* src/audio/audio_port.cpp:
|
|
added so called audio-ports which are important for transporting sound
|
|
from it's origin through the mixer and the effect-board (the latter
|
|
one isn't existing yet but coming quite soon) - another important
|
|
point is ability of having output-ports for each channel/sample-track
|
|
with JACK
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
translate default-channel-name "Default"
|
|
|
|
* src/audio/audio_jack.cpp:
|
|
- sync JACK's buffer-size with LMMS's one
|
|
- start JACK-transport if not already done
|
|
|
|
* include/mixer.h:
|
|
* src/audio/audio_jack.cpp:
|
|
* src/core/mixer.cpp:
|
|
* src/lib/sample_buffer.cpp:
|
|
* src/widgets/visualization_widget.cpp:
|
|
use memset() for clearing buffers - obsoletes usage of silence-buffers
|
|
in mixer
|
|
|
|
2005-11-07 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/midi/midi_alsa_seq.cpp:
|
|
use relative instead of absolute scheduling for events which makes
|
|
MIDI-out working
|
|
|
|
2005-10-31 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/midi_alsa_seq.h:
|
|
* src/midi/midi_alsa_seq.cpp:
|
|
several bug-fixes
|
|
|
|
2005-10-30 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/midi_alsa_seq.h:
|
|
* src/midi/midi_alsa_seq.cpp:
|
|
added first version of ALSA-sequencer - currently doesn't handle all
|
|
common events, but note-on/off and key-pressure work so far
|
|
|
|
* include/midi_client.h:
|
|
- added method applyPortMode() for making MIDI-subsystem able to get
|
|
known of port-mode changes which is neccessary if they have REAL
|
|
ports like ALSA-seq. has
|
|
- renamed validatePortName() to applyPortName() and made it non-pure
|
|
virtual
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
initialize m_midiEventRoutingEnabled with FALSE per default in ctor
|
|
|
|
* src/core/mixer.cpp:
|
|
delete midi-dev on exit
|
|
|
|
* src/midi/midi_midi_alsa_raw.cpp:
|
|
when reading/saving device-name via config-mgr, use "midialsaraw"
|
|
instead of "midialsa" as context-name
|
|
|
|
2005-10-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/project_notes.cpp:
|
|
set initial text to bright gray, since black text on a very dark back-
|
|
ground isn't very readable...
|
|
|
|
* include/lmms_main_win.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/bb_editor.cpp:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/widgets/project_notes.cpp:
|
|
added support for GIMP-like usability, i.e. no MDI
|
|
|
|
* src/core/song_editor.cpp:
|
|
* src/core/bb_editor.cpp:
|
|
reorder some code in constructor for not crashing if window is
|
|
shown while constructor is still running
|
|
|
|
2005-10-23 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/led_checkbox.cpp:
|
|
also emit toggled()-signal if state actually wasn't changed
|
|
|
|
* include/lcd_spinbox.h:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
- display special strings if value is a certain number
|
|
- support for disabled-state (gray/no input)
|
|
|
|
* include/midi_tab_widget.h:
|
|
* src/core/midi_tab_widget.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added new tab "MIDI" for being able to setup MIDI-related stuff for
|
|
each channel
|
|
|
|
* include/channel_track.h:
|
|
* include/midi*:
|
|
* include/piano_widget.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/mixer.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/piano_widget.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/midi/midi*:
|
|
* src/tracks/channel_track.cpp:
|
|
coded a completely new, powerful and clean MIDI-system which e.g. makes
|
|
it possible to mask MIDI-events for each channel and to receive and send
|
|
(timed!) MIDI-events on a separate MIDI-port for each channel, which
|
|
only makes sense if using non-raw (sequenced) MIDI-client - currently
|
|
none existing, but ALSA-sequencer-support is in progress
|
|
|
|
* include/midi_device.h:
|
|
* src/midi/midi_device.cpp:
|
|
removed
|
|
|
|
2005-10-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/tempo_sync_knob.cpp:
|
|
do not implement the same code as knob does in mouseMoveEvent() - call
|
|
knob::mouseMoveEvent() instead
|
|
|
|
* include/knob.h:
|
|
* src/widgets/knob.cpp:
|
|
cleaned up a lot and fixed some bugs
|
|
|
|
2005-10-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/song_editor.h:
|
|
decreased MAX_BPM to 999 since BPM-LCD-spinbox is intended to have
|
|
only three digits while 1000 has four of them... ;-)
|
|
|
|
* include/track_container.h:
|
|
* src/core/track_container.cpp:
|
|
trackContainer::scrollArea-class has now m_trackContainer-member
|
|
for storing parent which makes cast of parent-widget to track-container
|
|
(which sometimes failed...) obsolete
|
|
|
|
* configure.in:
|
|
check for libfst and present VST-SDK header-files
|
|
|
|
2005-10-19 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* plugins/vestige/vestige.h:
|
|
* plugins/vestige/vestige.cpp:
|
|
added possibility of opening plugins instead of hardcoding them ;-)
|
|
|
|
* include/track.h:
|
|
renamed createTrack() and cloneTrack() to create() and clone()
|
|
|
|
* include/track_container.h:
|
|
* src/core/track_container.cpp:
|
|
receive drop-events -> add channel with instrument/preset
|
|
|
|
* src/audio/audio_jack.cpp:
|
|
removed usleep() out of loop in audioJACK::writeBufferToDev() since it
|
|
caused LMMS to hang e.g when removing a track
|
|
|
|
* src/core/plugin_browser.cpp:
|
|
show hand-cursor if over a plugin-description-widget
|
|
|
|
* src/widgets/pixmap_button.cpp:
|
|
if pixmap-button is set non-checkable, draw active-graphic if pressed
|
|
down and inactive one in normal state
|
|
|
|
* include/lmms_main_win.h:
|
|
* src/core/lmms_main_win.cpp:
|
|
own workspace for making wheelEvent(...) is now obsolete -> removed
|
|
|
|
* include/track_container.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/track_container.cpp:
|
|
added own scroll-area for capturing special wheel-events where a
|
|
modifier-key (shift, control etc.) is pressed
|
|
|
|
* src/core/song_editor.cpp:
|
|
removed add-channel-button as it is obsolete after adding plugin-browser
|
|
|
|
* resources/:
|
|
improved icons such as project_*.png and sample-track-related icons
|
|
|
|
2005-10-18 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* src/tracks/channel_track.cpp:
|
|
- moved channelButton-implementation to channel_track.src
|
|
- added support for receiving drop-events, which makes channel-track
|
|
to load either the given instrument or the given preset
|
|
|
|
* src/core/plugin_browser.cpp:
|
|
* include/plugin_browser.h:
|
|
added cool plugin-browser, which displays all available instrument-
|
|
plugins which are draggable to a channel-window/button
|
|
|
|
* include/string_pair_drag.h:
|
|
* src/lib/string_pair_drag.cpp:
|
|
added drag'n'drop-implementation for dragging string-pairs (key/value)
|
|
which provides a standard-interface, although drag'n'drop has changed a
|
|
lot in Qt 4
|
|
|
|
* src/widgets/crystal_button.cpp:
|
|
made mouseMoveEvent()-method much more effective
|
|
|
|
* Makefile.am:
|
|
* buildtools/Makefile.am:
|
|
build buildtools in subdir instead of top-build-directory - solves
|
|
dependendy problems with bin2res
|
|
|
|
* src/core/file_browser.cpp:
|
|
do not depend on typeinfo of audioFileProcessor anymore by using
|
|
new setParameter()-method
|
|
|
|
* include/plugin.h:
|
|
added setParameter() and getParameter()-methods for making LMMS able to
|
|
set parameters of a specific plugin without knowing anything about it
|
|
|
|
2005-10-17 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* buildtools/bin2res.cpp:
|
|
* include/embed.h:
|
|
* src/lib/embed.cpp:
|
|
- declaration of embedded-data-descriptor is now located in embed.h and
|
|
part of namespace embed
|
|
- added support for local embedded-resources which is important for
|
|
plugins containing their own images etc., so data and access-methods
|
|
are stored into namespace PLUGIN_NAME
|
|
|
|
* include/plugin.h:
|
|
* src/core/plugin.cpp:
|
|
added logo-field to descriptor-structure and simplified method for
|
|
getting descriptors of all plugins
|
|
|
|
* include/basic_filters.h:
|
|
removed Moog-2-filter as it is only very CPU-intensive without any
|
|
significant difference to sound of normal Moog-filter
|
|
|
|
2005-10-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/lib/ladspa_manager.cpp:
|
|
skip not existing/unreadable directories when searching for plugins
|
|
|
|
* include/vestige.h:
|
|
* src/plugins/vestige.cpp:
|
|
make use of new instrument-play-handle
|
|
|
|
* include/channel_track.h:
|
|
* src/core/browser.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/midi/midi_file.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
renamed loadPlugin() to loadInstrument()
|
|
|
|
* include/config_mgr.h:
|
|
* src/core/config_mgr.cpp:
|
|
added pluginDir()-method
|
|
|
|
* include/instrument_play_handle.h:
|
|
added another play-handle for playing instruments which do not
|
|
produce sound for each note
|
|
|
|
* src/plugins/:
|
|
renamed directory soundgenerators to plugins and modified all plugins
|
|
for working with revised plugin-system
|
|
|
|
* include/instrument.h:
|
|
* include/plugin.h:
|
|
* src/core/instrument.cpp:
|
|
* src/core/plugin.cpp:
|
|
splitted code from instrument up into class plugin and class instrument
|
|
and revised plugin-system
|
|
|
|
* include/instrument.h:
|
|
* src/core/instrument.cpp:
|
|
renamed files soundgenerator.* to instrument.* as well as class-name
|
|
|
|
2005-10-15 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/vestige.h:
|
|
* src/soundgenerators/vestige.cpp:
|
|
new plugin "VeSTige" for handling VST-plugins - VERY experimental,
|
|
but at least, we get some sound out of these strange dll-files ;-)
|
|
|
|
2005-10-13 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/audio/audio_jack.cpp:
|
|
do not fill up buffers if JACK-transport is not rolling but at the same
|
|
time always handle frame-syncing-var in JACK-callback, even if JACK-
|
|
transport is not rolling - fixes several bugs like lockups when
|
|
removing tracks while JACK-server is pausing...
|
|
|
|
* src/widgets/knob.cpp:
|
|
fixed bug which caused hidden mouse-cursor forever when pressing right
|
|
mouse-button while left one is pressed
|
|
|
|
* src/lib/ladspa_manager.cpp:
|
|
use /usr/lib/ladspa as default-directory if env-var LADSPA_PATH is not
|
|
set
|
|
|
|
* src/soundgenerators/*.cpp:
|
|
removed obsolete defaultSettings()-method from each soundgenerator
|
|
|
|
2005-10-13 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* include/ladspa_manager.h
|
|
* include/ladspa_sine_1063.h
|
|
* src/lib/ladspa_manager.cpp:
|
|
* src/soundgenerators/ladspa_sine_1063.cpp:
|
|
added LADSPA-support and a simple soundgenerator for testing-purposes
|
|
|
|
2005-10-12 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* Makefile.am:
|
|
* include/led_checkbox.h:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
* src/widgets/led_checkbox.cpp:
|
|
inherit ledCheckBox from QWidget instead of QCheckBox since it sometimes
|
|
caused graphic-errors when running on KDE with Baghira-style...
|
|
|
|
2005-10-05 Danny McRae <khjklujn/at/yahoo/dot/com>
|
|
|
|
* resources/note_double_whole.png:
|
|
* resources/note_eighth.png:
|
|
* resources/note_half.png:
|
|
* resources/note_none.png:
|
|
* resources/note_quarter.png:
|
|
* resources/note_sixteenth.png:
|
|
* resources/note_thirtysecond.png:
|
|
* resources/note_whole.png:
|
|
* resources/xclock.png:
|
|
added icons for context-menu of tempoSyncKnob
|
|
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
emit valueChanged()-signal in wheelEvent()-method
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
- added getBPM()-method
|
|
- emit signal if BPM is changed
|
|
|
|
* include/arp_and_chords_tab_widget.h:
|
|
* include/envelope_and_lfo_widget.h:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
use new tempoSyncKnob-widget instead of traditional time-knob
|
|
|
|
* include/tempo_sync_knob.h:
|
|
* src/widgets/tempo_sync_knob.cpp:
|
|
added tempo-sync-knob which automatically converts fixed note-length's
|
|
to a fixed time in ms everytime BPM is changed
|
|
|
|
2005-10-03 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/basic_filters.h:
|
|
- added another moog-filter which sounds a bit better but needs MUCH
|
|
more CPU-time...
|
|
- cleaned up different filter-code-branches
|
|
|
|
2005-10-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/oscillator.h:
|
|
cast to int instead of floor()ing value in oscillator::phase() which
|
|
makes the whole thing faster again...
|
|
|
|
2005-09-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/tab_widget.cpp:
|
|
fixed bugs when adding widget with already existing index
|
|
|
|
* Makefile.am:
|
|
* include/midi_out.h:
|
|
* include/plucked_string_synth.h:
|
|
* src/soundgenerators/midi_out.cpp:
|
|
* src/soundgenerators/plucked_string_synth.cpp:
|
|
classes midiOut and pluckedStringSynth do not have slots or signals,
|
|
so Q_OBJECT-macros were removed and MOC-code isn't compiled anymore
|
|
|
|
* include/sgs:
|
|
* src/core/plugin_management.cpp:
|
|
removed because not needed anymore with new plugin-system
|
|
|
|
* configure.in:
|
|
* Makefile.am:
|
|
* include/audio_file_processor.h:
|
|
* include/channel_track.h:
|
|
* include/midi_out.h:
|
|
* include/plucked_string_synth.h:
|
|
* include/sound_generator.h:
|
|
* include/triple_oscillator.h:
|
|
* src/core/browser.cpp:
|
|
* src/core/sound_generator.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/midi/midi_file.cpp:
|
|
* src/soundgenerators/*:
|
|
* src/tracks/channel_track.cpp:
|
|
made all sound-generator-plugins shared libraries loaded at runtime,
|
|
which gives much more flexibility because you can load songs/presets
|
|
from people having other plugins just by adding according lib*.so file
|
|
to /usr/lib - no need to recompile!
|
|
|
|
* inlude/empty_sg_plugin.h:
|
|
added empty sound-generator plugin
|
|
|
|
2005-09-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
added combo-box for selectinf zooming-factor
|
|
|
|
* include/piano_roll.h:
|
|
* src/core/piano_roll.cpp:
|
|
added combo-box for selecting zooming-factor
|
|
|
|
* include/led_checkbox.h:
|
|
* src/widgets/led_checkbox.cpp:
|
|
added methods for querying and setting state
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
better alignment of widgets inside each of this tabs
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
finished improving GUI of channel-track-window by using tabWidget
|
|
instead of tabBar for plugin-, env/lfo- and arp-widgets
|
|
|
|
* include/envelope_and_lfo_widget.h:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
use ledCheckBox'es instead of pixmapButton's with QLabel's
|
|
|
|
* include/tab_widget.h:
|
|
* src/widgets/tab_widget.cpp:
|
|
made tabWidget more powerful:
|
|
- use indexed tabs
|
|
- different painting if no caption was defined
|
|
- switch tabs if wheel-events occurs
|
|
|
|
2005-09-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
began improving GUI of channel-track-window
|
|
|
|
* projects/cool_songs/TobyDox-TheFourthDimension.xml:
|
|
added another song...
|
|
|
|
* include/qt3support.h:
|
|
Qt 3.1-support
|
|
|
|
* include/audio_alsa.h:
|
|
define macro ALSA_PCM_NEW_HW_PARAMS_API for working with older ALSA-
|
|
versions which offer old and new HW-param-API - we're using the new one
|
|
|
|
2005-09-26 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* many files:
|
|
make LMMS compile with Qt 3.0 and GCC 2.95
|
|
|
|
2005-09-25 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/audio/audio_jack.cpp:
|
|
- decreased wait-time from 0.5 ms to 0.2 ms in writeBufferToDev(...)
|
|
- clear part of buffers that could not be filled for avoiding bad
|
|
noise in case there's no data from sound-render-thread, because it is
|
|
locked or got no cpu-time for some reason
|
|
|
|
* src/core/timeline.cpp:
|
|
do not call update() in updatePosition, call paintEvent() directly
|
|
instead - hopefully fixes the "unexspected Xlib async replies"
|
|
which occured in some seldom cases because there were paint-events
|
|
generated - something that must not be done in other threads...
|
|
|
|
* resources/source/songeditor.svg:
|
|
* resources/songeditor.png:
|
|
created a new song-editor-icon
|
|
|
|
* src/core/song_editor.cpp:
|
|
do not save play-pos from previous play-mode when beginning to play
|
|
in different play-mode - fixes bug in timeline behaviour "back to start"
|
|
|
|
2005-09-24 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
* include/audio_oss.h:
|
|
* include/midi_oss.h:
|
|
* src/audio/audio_oss.cpp:
|
|
* src/midi/midi_oss.cpp:
|
|
made LMMS compiling and working without OSS - configure detects
|
|
whether soundcard.h is available
|
|
|
|
* include/gui_templates.h:
|
|
made template pointSize(...) platform-independent by not using x11-
|
|
specific qt-classes/-functions
|
|
|
|
* include/templates.h:
|
|
moved pointSize-function with all the headers it depends on into
|
|
gui_templates.h
|
|
|
|
* src/core/mixer.cpp:
|
|
- do not initialize member m_surroundSilence if surround is disabled
|
|
- free silence-buffers in dtor
|
|
|
|
* src/tracks/bb_track.cpp:
|
|
when drawing gradient skip first and last line as a rect is painted
|
|
over it afterwards
|
|
|
|
* src/core/track_container.cpp:
|
|
set modified-state for song when removing track
|
|
|
|
2005-09-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
made 0.1.1 release
|
|
|
|
2005-09-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/about_dialog.h:
|
|
* src/core/about_dialog.cpp:
|
|
no need for passing parent when creating about-dialog
|
|
|
|
* src/core/song_editor.cpp:
|
|
- different usage of question-box in songEditor::mayChangeProject()
|
|
because of bugs with several qt-versions...
|
|
- when exporting song, do use baseName( TRUE ) instead of baseName()
|
|
for determining base-name of rendered file
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
- display filename before app-name in window-title
|
|
- only use basename of filename in window-title
|
|
- added message referring to LMMS-homepage when clicking on
|
|
Help/Help
|
|
|
|
* src/core/export_song_dialog.cpp:
|
|
use lmmsMainWin::resetWindowTitle() for resetting window-title
|
|
after export is done
|
|
|
|
* src/widgets/knob.cpp:
|
|
do not add tooltips to knobs - clicking on knob has quite the same
|
|
effect so tooltips are just annoying
|
|
|
|
* src/core/browser.cpp:
|
|
when matching file-name, always convert them to lower case for also
|
|
handling files like foo.WAV
|
|
|
|
* src/core/config_mgr.cpp:
|
|
added setValue(...)-call for saving working-directory after setting
|
|
up everything - fixes bug with empty browsers after fresh personal
|
|
installation of LMMS
|
|
|
|
2005-09-19 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
made 0.1.0 release
|
|
|
|
2005-09-18 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/tracks/bb_track.cpp:
|
|
revised paintEvent()-method -> bb-TCO's are now painted with a gradient!
|
|
|
|
* src/core/song_editor.cpp:
|
|
- call bbEditor::stop before playing to make sure play-button in
|
|
bb-editor is properly reset
|
|
- call realignTracks() with parameter TRUE in wheelEvent(...)
|
|
- some hacks for making pause-button work...
|
|
|
|
* src/core/track_container.cpp:
|
|
added parameter _complete_update to trackContainer::realignTracks()
|
|
to be able to hide and show all tracks which is neccessary e.g.
|
|
after having changed pixels-per-tact-property -> zooming in song-editor
|
|
works now well
|
|
|
|
* src/core/setup_dialog.cpp:
|
|
added message-box telling the user to restart LMMS
|
|
|
|
* include/midi_alsa_raw.h:
|
|
* include/midi_device.h:
|
|
* include/midi_oss.h:
|
|
* include/midi_dummy.h:
|
|
* include/mixer.h:
|
|
* include/setup_dialog.h:
|
|
* src/core/mixer.cpp:
|
|
* src/core/setup_dialog.cpp:
|
|
* src/midi/midi_alsa_raw.cpp:
|
|
* src/midi/midi_device.cpp:
|
|
* src/midi/midi_oss.cpp:
|
|
made it possible to select and setup MIDI-device
|
|
|
|
* include/knob.h:
|
|
* src/widgets/knob.cpp:
|
|
- many cleanups, coding style improvements etc.
|
|
- added new behaviour for controlling knob -> move cursor up/down for
|
|
changing value
|
|
- replaced usage of status-bar by text-float-widget
|
|
|
|
* include/text_float.h:
|
|
* src/widgets/text_float.cpp:
|
|
took text-float from Rosegarden
|
|
|
|
* include/config_mgr.h:
|
|
* src/core/config_mgr.cpp:
|
|
- fixed bug in configManager::setValue(): new value-pair was always
|
|
pushed back, even if it already existed, so result of value() didn't
|
|
change until restart
|
|
- moved widget-creation-code from ctor to new method createWidgets()
|
|
which fixes problems with unlocalized strings in wizard because
|
|
embed::loadTranslation() calls configManager::inst()->localeDir()
|
|
for determining path to localization files - this call created all
|
|
wizard-widgets before actual localization was loaded...
|
|
|
|
2005-09-17 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/setup_dialog.cpp:
|
|
added switches for disabling tooltips and turning on classical knob-
|
|
behaviour
|
|
|
|
* include/led_checkbox.h:
|
|
* src/widget/led_checkbox.cpp:
|
|
added LED-check-box
|
|
|
|
2005-09-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/mixer.cpp:
|
|
clear output-buffers in ctor before using them -> avoids awful noises
|
|
at startup
|
|
|
|
* src/core/mixer.cpp:
|
|
* src/lib/sample_buffer.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
* src/tracks/sample_track.cpp:
|
|
use given frame-parameter in methods playing sample-buffers instead
|
|
of mixer::framesPerAudioBuffer() -> no clicks at tact-border because
|
|
of odd sample-frame-count
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
call presetPreviewPlayHandle::cleanUp() in dtor -> fixes segfault which
|
|
which occured at exit if you previewed a channel during session
|
|
|
|
* include/preset_preview_play_handle.h:
|
|
* src/core/preset_preview_play_handle.cpp:
|
|
added cleanUp()-method which deletes blind track-container containing
|
|
preset-preview-channel
|
|
|
|
* src/soundgenerators/triple_oscillator.cpp:
|
|
- unified much code by defining setChecked when compiling with Qt 3
|
|
- also set file-name of user-defined-wave as tool-tip when loading
|
|
settings
|
|
|
|
* most files in src/:
|
|
use new tooltip-system - removes qt3/qt4-compat-code
|
|
|
|
* include/tooltip.h:
|
|
* src/widget/tooltip.cpp:
|
|
added tooltip-namespace with method "add(...)" for allowing transparent
|
|
usage of tooltips, so there's no difference to code using tooltips
|
|
whether it is compiled with Qt 3 or Qt 4
|
|
|
|
2005-09-14 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/mixer.h:
|
|
* include/note_play_handle.h:
|
|
* include/play_handle.h:
|
|
* src/core/mixer.cpp:
|
|
* src/core/note_play_handle.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added play-handle-invalidating-feature making it possible to
|
|
invalidate notes of which the objects they depend on do not exist
|
|
anymore or things like that. for example channel-track-dtor
|
|
invalidates all note-play-handles linked with according channel
|
|
-> no segfault when deleting channel-track
|
|
|
|
* src/core/track_container.cpp:
|
|
pause mixer before removing track -> no segfault
|
|
|
|
* src/lib/mmp.cpp:
|
|
initialize m_type in mmp::multimediaProject( projectTypes )
|
|
|
|
* src/lib/buffer_allocator.cpp:
|
|
added mutex for better protection against parallel accesses from
|
|
several threads - fixes some segfaults
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
improved ~lmmsMainWin() which now first instructs mixer to quit it's
|
|
thread for avoiding spurious usages of objects to be destroyed
|
|
afterwards -> no segfault at the end
|
|
|
|
* src/core/export_song_dialog.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
cleaned up exporting/freezing mechanisms by using mixer's new methods
|
|
play() and pause()
|
|
|
|
* include/mixer.h:
|
|
* src/core/mixer.cpp:
|
|
cleaned up mixer-thread syncing stuff by reorganizing mutexes and
|
|
replacing m_waitMutex by m_safetySyncMutex as well as according methods
|
|
lockWaitMutex() and unlockWaitMutex() by play() and pause()
|
|
|
|
* src/core/setup_dialog.cpp:
|
|
tell config-manager to save it's config-file when setupDialog is
|
|
destroyed
|
|
|
|
2005-09-13 Stephane Thomas <sthomas/at/nerim.net>
|
|
|
|
* locale/fr.ts:
|
|
added French translation
|
|
|
|
2005-09-13 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
- show setup-dialog if LMMS is started first time or mixer uses dummy-
|
|
audio-driver
|
|
- added setup-dialog-entry to settings-menu
|
|
|
|
* src/lib/mmp.cpp:
|
|
if saving preset, check whether file-name contains suffix ".cs.xml"
|
|
and add it if neccessary
|
|
|
|
* include/midi_alsa_raw.h:
|
|
* src/midi/midi_alsa_raw.cpp:
|
|
* src/midi/midi_device.cpp:
|
|
- changed everything (including file-names) from midiAlsa to midiALSARaw
|
|
- added terminate()-call in dtor for terminating thread properly
|
|
|
|
* include/tab_bar.h:
|
|
* src/widget/tab_bar.cpp:
|
|
- added flag for addTab(...)-method indicating whether to use given
|
|
text as caption or just as tooltip
|
|
- reduced #ifdef QT4-macros by defining some names when compiling
|
|
with Qt3
|
|
|
|
* include/setup_dialog.h:
|
|
* src/core/setup_dialog.cpp:
|
|
added help-button in audio-setup-tab and improved geometry-stuff
|
|
|
|
* include/audio_alsa.h:
|
|
* include/audio_oss.h:
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_oss.cpp:
|
|
added probeDevice()-method which eases determining device-name in
|
|
either actual audio-class as well as in it's setup-widget
|
|
|
|
2005-09-11 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/mixer.cpp:
|
|
use new audio-settings-technology for opening audio-device
|
|
|
|
* include/setup_dialog.h:
|
|
* src/core/setup_dialog.cpp:
|
|
added setup-dialog for general-, audio- and MIDI-settings
|
|
|
|
* include/audio_alsa.h:
|
|
* include/audio_device.h:
|
|
* include/audio_dummy.h:
|
|
* include/audio_jack.h:
|
|
* include/audio_oss.h:
|
|
* include/audio_sdl.h:
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_device.cpp:
|
|
* src/audio/audio_jack.cpp:
|
|
* src/audio/audio_oss.cpp:
|
|
* src/audio/audio_sdl.cpp:
|
|
added setup-widget-technology making it possible to have audio-device-
|
|
specific setup-widgets which can be used in setup-dialog etc.
|
|
|
|
* include/lcd_spinbox.h:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
added stepping-functionality
|
|
|
|
* include/tab_widget.h:
|
|
* src/widgets/tab_widget.cpp:
|
|
pass caption to constructor instead of using fixed text
|
|
|
|
* include/tab_bar.h:
|
|
* src/widgets/tab_bar.cpp:
|
|
- added direction-parameter in constructor
|
|
- added exclusive-property
|
|
- addTab(...) returns now pointer to tab-button which gives caller
|
|
possibility to modify the button
|
|
|
|
* src/core/mixer.cpp:
|
|
save frames-per-audio-buffer-value in ctor if not set yet instead
|
|
of saving it in dtor
|
|
|
|
* src/lib/embed.cpp:
|
|
do not return null-pixmap if pixmap not found
|
|
|
|
2005-09-10 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* resources/setup_audio.png:
|
|
* resources/setup_general.png:
|
|
* resources/setup_midi.png:
|
|
added icons to be used in setup-dialog
|
|
|
|
* src/audio/audio_alsa.cpp:
|
|
* src/audio/audio_sample_recorder.cpp:
|
|
use auto-cleaning pointer in createSampleBuffer(...) (fixes memory-leak
|
|
in ALSA-driver)
|
|
|
|
* include/buffer_allocator.h:
|
|
added simple class for auto-cleaning pointers
|
|
|
|
* src/core/mixer.cpp:
|
|
- added delete-calls in mixer::tryAudioDevices()
|
|
- init s_instanceOfMe-member in dtor, otherwise LMMS hangs up
|
|
|
|
* locale/:
|
|
* artwork/:
|
|
moved translations and some artwork-stuff into locale- and artwork-
|
|
directory which is going to be installed into
|
|
LMMS-data-dir (/usr/share/lmms etc.) and shrinks executable
|
|
|
|
* src/lib/embed.cpp:
|
|
added possibility to have resources in external files instead of being
|
|
linked into executable
|
|
|
|
* configure.in:
|
|
- use macro AS_HELP_STRING for formatting help-strings
|
|
- removed --with-latency option as it is not needed anymore
|
|
|
|
2005-09-06 Alireza <dr/dot/alireza/at/gmail/dot/com>
|
|
|
|
* resources/ir.ts:
|
|
added Persian translation
|
|
|
|
2005-09-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/audio/audio_oss.cpp:
|
|
- read device-name from config-file before evaluating environment-
|
|
variables etc.
|
|
- fixed bugs with device-probing (after dev-file was searched, there
|
|
was no open(...)-call again so it always failed if the first open(...)
|
|
didn't work
|
|
|
|
* src/audio/audio_alsa.cpp:
|
|
read device-name from config-file before evaluating environment-
|
|
variables or using "default"
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
call bufferAllocator::cleanUp( 0 ) for destroying all allocated buffers
|
|
|
|
* include/buffer_allocator.h:
|
|
* src/lib/buffer_allocator.cpp:
|
|
- added clean-up-technique which removes least used buffers if
|
|
buffer-size exceeds limits (which depends on mixer's buffer-size)
|
|
- added field to bufDesc indicating usage of this buf - used by
|
|
alloc-method for determining most used, free and matching buffer
|
|
|
|
* include/lcd_spinbox.h:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
made lcdSpinBox controlable by scroll-wheel
|
|
|
|
* src/widgets/knob.cpp:
|
|
do not center knob if width of label is greater than actual knob
|
|
|
|
* src/audio/audio_sample_recorder.cpp:
|
|
use bufferAllocator instead of new[]/delete[]
|
|
|
|
* src/core/mixer.cpp:
|
|
- read value for frames-per-audio-buffer out of config-file and save
|
|
it at exit
|
|
- free buffer at exit
|
|
|
|
* include/config_mgr.h:
|
|
* src/core/config_mgr.cpp:
|
|
added value() and setValue()-method which offers all components of LMMS
|
|
an easy way for loading/saving their settings at startup/exit
|
|
|
|
2005-09-02 Mario Izquierdo <mariodebian/at/gmail/dot/com>
|
|
2005-09-02 Johnny Saenz <saenzac/at/hotmail/dot/com>
|
|
|
|
* resources/es.ts:
|
|
added Spanish translation
|
|
|
|
2005-09-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* most files:
|
|
finished changes began on 2005-08-29
|
|
|
|
* include/buffer_allocator.h:
|
|
* src/lib/buffer_allocator.cpp:
|
|
- only return aligned pointers
|
|
- small changes in API
|
|
|
|
* resources/de.ts:
|
|
completed German translation
|
|
|
|
2005-08-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* most files:
|
|
begin to use new bufferAllocator instead of old buffer-types and
|
|
use mixer-method for determining current number of frames per
|
|
audio-buffer
|
|
|
|
* include/mixer.h:
|
|
types audioBuffer and surroundAudioBuffer don't exist anymore as well
|
|
as the constant FRAMES_PER_AUDIO_BUFFER - use
|
|
mixer::inst()->framesPerAudioBuffer() instead
|
|
|
|
2005-08-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
replaced QSpinBox by lcdSpinBox for BPM-spinbox
|
|
|
|
* include/tab_bar.h:
|
|
* src/widgets/tab_bar.cpp:
|
|
removed function-parameter _font_size for tabBar::addTab(...)
|
|
|
|
* most files:
|
|
- replaced QFont::setPointSize()-calls by according pointSize()-calls
|
|
which makes LMMS usable at any DPI-resolution
|
|
- changes for Qt4-compatibility
|
|
|
|
* include/misc.h:
|
|
* include/template.h:
|
|
moved misc.h to template.h and added template-function pointSize
|
|
which sets a DPI-independent size for a given font
|
|
|
|
* src/tracks/channel_track.cpp:
|
|
use labeling-feature of LCD-spinbox and removed old QLabel and
|
|
layouting-stuff
|
|
|
|
* include/lcd_spinbox.h:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
- fixed bug: when moving mouse up, value was not updated properly
|
|
- added labeling-feature
|
|
- added valueChanged()-signal
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
set m_arpDirection correct when loading older settings
|
|
|
|
2005-08-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* src/tracks/channel_track.cpp:
|
|
use new LCD-spinbox for effect-spinbox
|
|
|
|
* include/lcd_spinbox.h:
|
|
* src/widgets/lcd_spinbox.cpp:
|
|
added LCD-spinbox, an improved QLCDNumber with ability of user-input
|
|
|
|
* src/core/main.cpp:
|
|
changed highlight- and text-color to dark white instead of glaring green
|
|
for many people didn't like it...
|
|
|
|
* include/audio_jack.h:
|
|
* src/audio/audio_jack.cpp:
|
|
- read and observe buf-size from JACK, so that writeBufferToDev() can
|
|
wait accordingly to it - now JACK-transport also works if buf-sizes
|
|
of LMMS and JACK are different
|
|
- also free buffers in destructor and not just throw them out of list
|
|
|
|
2005-08-26 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/audio_jack.h:
|
|
* src/audio/audio_jack.cpp:
|
|
- also work with older versions which do not have jack_client_open()
|
|
- fixed bugs
|
|
- use bufferAllocator instead of new[] and delete[] in time-critical
|
|
functions
|
|
|
|
* include/buffer_allocator.h:
|
|
* src/lib/buffer_allocator.cpp:
|
|
added bufferAllocator which is an optimized internal memory-manager
|
|
|
|
2005-08-24 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/audio_jack.h:
|
|
* src/audio/audio_jack.cpp:
|
|
beginning of support for JACK-transport
|
|
|
|
* src/audio/audio_sdl.cpp:
|
|
fixed memory leak - m_outputBuffer was not deleted in destructor
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
completed usage of switchable groupboxes by saving groupbox-states
|
|
and evaluating them in processNote()
|
|
|
|
2005-08-22 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* resources/afp_artwork.png:
|
|
small improvements for better usability and internationalization
|
|
|
|
* src/soundgenerators/audio_file_processor.cpp:
|
|
- cleanups and small improvements concerning painting
|
|
- added missing tooltips
|
|
- moved open-sample-button right to filename-display-bar
|
|
|
|
* src/widgets/pixmap_button.cpp:
|
|
changed default-pixmaps to led_yellow.png and led_off.png
|
|
|
|
* resources/pattern_bg.png:
|
|
resized from 2x43 to 2x25
|
|
|
|
* src/core/name_label.cpp:
|
|
decreased default-font
|
|
|
|
* include/track.h:
|
|
decreased size of track-settings-widget from 256 to 224
|
|
|
|
* include/channel_track.h:
|
|
* src/tracks/channel_track.cpp:
|
|
- use labeling-feature of knob for labeling volume-knob
|
|
- use smaller surroundArea in track-settings-widget and smaller
|
|
channel-button with smaller font
|
|
|
|
* src/core/surround_area.cpp:
|
|
made surroundArea working with different widget-sizes than default size
|
|
|
|
* resources/background_artwork.png:
|
|
made bg-image more pale
|
|
|
|
* include/bb_editor.h:
|
|
* src/core/bb_editor.cpp:
|
|
changed painting-behaviour and made button-bg-gfx's obsolete by using
|
|
specialBgHandlingWidget
|
|
|
|
* include/groupbox.h:
|
|
* src/widgets/groupbox.cpp:
|
|
improved groupbox by adding animation and more
|
|
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
- use knobs new labeling-feature
|
|
- use new tab-widget for target-widgets
|
|
|
|
* include/tab_widget.h:
|
|
* src/widgets/tab_widget.cpp:
|
|
added own tab-widget which looks much cooler than Qt's one
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
- using now new groupbox-widget and reorganized knob/switch-positions
|
|
- revised arpeggio-direction-buttons
|
|
- use knobs new labeling-feature
|
|
- removed obsolete headers
|
|
|
|
* include/knob.h:
|
|
* src/widgets/knob.cpp:
|
|
added labeling-feature for automatically labeling knobs with given
|
|
text
|
|
|
|
|
|
2005-08-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/widgets/side_bar_widget.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
* src/core/main.cpp:
|
|
* src/core/browser.cpp:
|
|
replaced painting-device-dependent method setPixelSize by setPointSize
|
|
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
now using new group-box which looks much cooler and is more usable
|
|
|
|
* include/groupbox.h:
|
|
* src/widgets/groupbox.cpp:
|
|
added own groupbox-widget with state-LED
|
|
|
|
* src/widgets/pixmap_button.cpp:
|
|
delete m_bgPixmap in destructor
|
|
|
|
* include/spc_bg_hndl_widget.h:
|
|
- made member m_backgroundPixmap to normal QPixmap instead of pointer to
|
|
it which also fixes a memory leak as dtor didn't delete the pixmap
|
|
- also use erase-pixmap of widget if available
|
|
|
|
* include/oscillator.h:
|
|
- made shape-functions using phase()-function for determining phase of
|
|
sample
|
|
- made oscillator::phase() using modff instead of floorf-math which
|
|
makes the whole thing up to 20% faster
|
|
|
|
* src/core/about_dialog.cpp:
|
|
added URL of project-page of LMMS
|
|
|
|
* src/core/song_editor.cpp:
|
|
create new project if file given in cmd-line is not read-/usable
|
|
|
|
* include/export_project_dialog.h:
|
|
* include/song_editor.h:
|
|
* src/core/main.cpp:
|
|
* src/core/song_editor.cpp:
|
|
added --render command-line-switch to render file and quit as soon as
|
|
job is done - very good for benchmarks
|
|
|
|
* src/core/main.cpp:
|
|
added --version command-line-switch
|
|
|
|
2005-08-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
- extended filter for sample-browser
|
|
- added home- and root-browser for being able to load songs, presets,
|
|
samples etc. from somewhere else than within lmms-working-directory
|
|
|
|
2005-07-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/track_container.cpp:
|
|
* src/core/track.cpp:
|
|
by completing destructors and fixing some other small bugs there's
|
|
finally no seg-fault when quitting app! (the bug annoying for months...)
|
|
|
|
* include/track_container.h:
|
|
all public-slots were made to normal public and FASTCALLed functions
|
|
since they aren't connected to a signal anywhere and it just blows up
|
|
qt-moc-code
|
|
|
|
* include/sample_track.h:
|
|
made method sampleTCO::changeLength(...) FASTCALLed since it's virtual
|
|
and method in base-class is also FASTCALLed - eliminates crash when
|
|
resizing sample
|
|
|
|
* include/track.h:
|
|
* src/core/track.cpp:
|
|
removed unsused method setTrackWidgetHeight( int )
|
|
|
|
2005-07-26 Pedro Lopez-Cabanillas <pedro/dot/lopez/dot/cabanillas/at/gmail/dot/com>
|
|
|
|
* src/core/browser.cpp:
|
|
* src/core/config_mgr.cpp:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/main.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/lib/mmp.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
* src/widgets/project_notes.cpp:
|
|
small changes for compatibility with Qt 3.1
|
|
|
|
* src/midi/midi_alsa.cpp:
|
|
* src/midi/midi_oss.cpp:
|
|
added MIDIDEV-environment variable for being able to choose a MIDI
|
|
device different from the default one
|
|
|
|
2005-07-24 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/midi_mapper.h:
|
|
* src/midi/midi_mapper.cpp:
|
|
added MIDI-mapper to be used in combination with midiDevice's and/or
|
|
MIDI-Out-Plugin which can read MIDI-maps added before
|
|
|
|
* midi-maps/*map:
|
|
added MIDI-maps from KMid
|
|
|
|
* include/midi_dummy.h:
|
|
* src/midi/midi_device.cpp:
|
|
added dummy MIDI-driver for not crashing if no MIDI-device is available
|
|
|
|
* src/core/piano_roll.cpp:
|
|
- go to start of pattern when pressing home-key
|
|
- added support for zooming
|
|
|
|
* src/core/song_editor.cpp:
|
|
- fixed bug with loop-points by setting current-frame-var to zero to
|
|
force reset of it
|
|
- added auto-scrolling ability
|
|
- fixed bug which caused horizontal scrollbar to have an undefined
|
|
max-value after starting up LMMS
|
|
- go to start of pattern when pressing home-key
|
|
|
|
2005-07-23 Alexey Kouznetsov <alexey/dot/kouznetsov/at/gmail/dot/com>
|
|
|
|
* resources/ru.ts:
|
|
added Russian translation
|
|
|
|
2005-07-23 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/piano_roll.cpp:
|
|
scroll back when stopping and play-position changes to invisible area
|
|
|
|
* include/time_line.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/core/time_line.cpp:
|
|
added control-buttons to time-line making it possible to control
|
|
things like auto-scrolling, looping and play-position after stop
|
|
|
|
* src/midi/midi_device.cpp:
|
|
limit volume between 0 and 127 when sending out note-on-event
|
|
|
|
2005-07-21 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/nstate_button.h:
|
|
* src/widgets/nstate_button.cpp:
|
|
added widget nStateButton which is a button able to have n different
|
|
states with according pixmaps and tooltips
|
|
|
|
* resources/back_to_zero.png:
|
|
* resources/keep_stop_position.png:
|
|
* resources/back_to_start.png:
|
|
* resources/loop_points_off.png:
|
|
* resources/loop_points_on.png:
|
|
* resources/autoscroll_off.png:
|
|
* resources/autoscroll_on.png:
|
|
added pixmaps for buttons to be used in time-line as soon as possible
|
|
|
|
* lmms-0.1.0rc1.tar.bz2:
|
|
release of Release Candidate 1 of LMMS 0.1.0
|
|
|
|
2005-07-20 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/midi/midi_file.cpp:
|
|
- proper handling of note-on-events which velocity 0 -> treat like
|
|
note-off-events makes it now possible to import a much larger amount
|
|
of MIDI-files
|
|
- added progress-dialog when importing MIDI-file
|
|
|
|
* src/core/song_editor.cpp:
|
|
horizontal scrollbar is now placed some pixels above lower edge so that
|
|
it doesn't take action when resizing song-editor-window at lower edge
|
|
|
|
* src/core/track_container.cpp:
|
|
added progress-dialog for loading project and according
|
|
qApp->processEvents()-call -> LMMS now isn't blocked anymore while
|
|
loading project
|
|
|
|
* include/knob.h:
|
|
* src/widgets/knob.cpp:
|
|
fixed bugs caused by changes made before for scroll-wheel-support
|
|
|
|
2005-07-19 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/knob.h:
|
|
* src/widgets/knob.cpp:
|
|
added better scroll-wheel support which increases/decreases knob-value
|
|
by 20th of range (e.g 0.05 if knob is ranged between 0 and 1)
|
|
|
|
2005-07-17 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* projects/:
|
|
added "covers"-dir and added "Preludium and Fuge A-Minor" by J.S.Bach
|
|
to it as first covered project ;-)
|
|
|
|
* src/core/note_play_handle.cpp:
|
|
- fixed bad bug in notePlayHandle::play(): instead of directly being
|
|
deleted, sub-notes were given to mixer to be removed when they played
|
|
completely but since these sub-notes are not known to mixer, it
|
|
couldn't delete them
|
|
- always call channelTrack::deleteNotePluginData() in
|
|
noteplayhandle-dtor even if pointer to note-plugin-data is NULL so
|
|
that all plugins are notified when note is done (midiOut-plugin
|
|
needs that for sending note-off-events!)
|
|
|
|
* include/midi_out.h:
|
|
* src/soundgenerators/midi_out.cpp:
|
|
new plugin midiOut which sends all notes on this channel out to
|
|
external midi-device this is especially cool for playing arpeggio for
|
|
key pressed on external midi-device!!
|
|
|
|
* src/soundgenerators/plucked_string_synth.cpp:
|
|
removed unneccesary inclusion of qpainter-header
|
|
|
|
* include/midi_file.h:
|
|
* src/midi/midi_file.cpp:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/song_editor.cpp:
|
|
added support for importing MIDI-file (very experimental!!)
|
|
|
|
* include/midi.h:
|
|
* include/midi_device.h:
|
|
moved general MIDI-stuff from midi_device.h to midi.h
|
|
|
|
* src/audio/audio_file_device.cpp:
|
|
added missing arg()-call to QMessageBox::critical()-call in
|
|
audioFileDevice-ctor
|
|
|
|
2005-07-16 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/config_mgr.cpp:
|
|
added shortcuts to navigation-buttons
|
|
|
|
2005-07-14 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/piano_roll.cpp:
|
|
only play notes while editing if we're not in play-mode
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
when exporting always render one additional tact at the end so that
|
|
we don't cut off notes with delay etc.
|
|
|
|
2005-07-12 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
- successful compilation with GCC 4.0.1 ;-)
|
|
|
|
* src/core/arp_and_chords_tab_widget.cpp:
|
|
fixed bug responsible for playing base-notes of chords all time
|
|
if any arpeggio selected was selected
|
|
|
|
2005-07-11 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* resources/source/wizard_files.xcf:
|
|
* resources/wizard_files.png:
|
|
updated project-file-icon in image
|
|
|
|
* src/core/config_mgr.cpp:
|
|
- ask user whether to re-run setup-wizard if config-file indicates
|
|
different version of LMMS
|
|
- removed redundant assignment in configManager::loadConfigFile()
|
|
- added additional layout for having space at the left and right side
|
|
- increased font-size of title
|
|
|
|
* Makefile.am:
|
|
install LMMS-icon into LMMS-data-dir
|
|
|
|
* lmms-0.1.0beta.tar.bz2:
|
|
made beta-release of 0.1.0 and announced it on kde-apps.org
|
|
|
|
2005-07-10 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* presets/TripleOscillator/:
|
|
added cool Church Organ preset and improved Xylophon preset
|
|
|
|
* resources/de.ts:
|
|
updated German translations and cleaned up all obsolete translations
|
|
and context which shrinks the file by 50K...
|
|
|
|
* samples/instruments/:
|
|
removed vibraphone01.ogg because of poor quality
|
|
|
|
* src/core/piano_roll.cpp:
|
|
- do not set what's-this-texts as tooltips for play/stop-button
|
|
- added tooltip and what's-this-text to record-button
|
|
- display message in piano-roll how to open a pattern if none is opened
|
|
- always set window-title, even if no pattern is opened
|
|
|
|
* src/core/mixer.cpp:
|
|
using iterators in second loop in mixer::run() leads to crashes, so
|
|
an optimized version of the old code is used now again...
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
added tool-buttons for new project, open/save project etc. and added
|
|
popup-menu to new-button containing projects in template-directory
|
|
|
|
* include/song_editor.h:
|
|
* src/core/song_editor.cpp:
|
|
- changed remaining method-names containing "[Ss]ong" to "[Pp]roject"
|
|
- toggle channel-button after adding channel-track
|
|
|
|
* include/export_project_dialog.h:
|
|
* src/core/export_project_dialog.cpp:
|
|
renamed from export_song_dialog.ext to export_project_dialog.ext
|
|
|
|
2005-07-09 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* all files:
|
|
now all source-code-files but some single exceptions do not have more
|
|
than 80 characters per line and also were made to conform one
|
|
programming-style
|
|
|
|
* include/sgs:
|
|
wrote sane soundgenerator-plugin-scanner using bash-scripting which
|
|
replaces old, dirty and exaggerated c++-program and is also fully
|
|
portable
|
|
|
|
* include/lmms_main_win.h:
|
|
* include/song_editor.h:
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/core/song_editor.cpp:
|
|
renamed methods newFile, openFile etc. to createNewProject, openProject
|
|
etc.
|
|
|
|
* resources/source/:
|
|
- renamed filenew.png, fileopen.png etc. to project_new.png etc.
|
|
- replaced song_file.png by project_file.png which has a new file-icon
|
|
with LMMS-logo inside
|
|
- replaced preset_file.png by new graphic where the star is inside
|
|
of a file-icon
|
|
|
|
* resources/source/lmms_logo.svg:
|
|
made logo Inkscape 0.41 compatible (had problems with gradients since
|
|
logo originally had been made with Inkscape 0.39)
|
|
|
|
* src/widgets/project_notes.cpp:
|
|
removed unneccessary name-strings for QActions
|
|
|
|
* resources/project_notes.png:
|
|
replaced 16x16-icon with 22x22-icon to provide big enough icon for
|
|
toolbar which needs 22x22-icons
|
|
|
|
* src/core/bb_editor.cpp:
|
|
* src/core/song_editor.cpp:
|
|
* src/tracks/bb_track.cpp:
|
|
do not crash if either there're no bb-tracks but bb-editor has tracks
|
|
or there're bb-tracks but bb-editor contains no tracks
|
|
|
|
* src/core/mixer.cpp:
|
|
* src/core/note_play_handle.cpp:
|
|
* src/core/track_container.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
rewrote loops using vectors to use iterators instead of indices etc.
|
|
which makes it all a bit smaller and faster since we do not always have
|
|
to access the current element using the []-operator
|
|
|
|
2005-07-08 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* src/core/envelope_tab_widget.cpp:
|
|
* src/lib/sample_buffer.cpp:
|
|
* src/widgets/knob.cpp:
|
|
small fixes for making compilable with qt4
|
|
|
|
* configure.in:
|
|
* projects/:
|
|
added directories "tutorials" and "recorded_loops"
|
|
|
|
2005-07-07 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/bb_track.h:
|
|
added FASTCALL to moveLocation(...) and changeLength(...) which fixes
|
|
crash-bug
|
|
|
|
* src/core/song_editor.cpp:
|
|
do not confirm overwriting file if new project was just saved
|
|
|
|
* samples/:
|
|
added a lot of new samples from wikisource and others
|
|
|
|
2005-07-06 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/project_notes.h:
|
|
* src/core/song_editor.cpp:
|
|
* src/widgets/project_notes.cpp:
|
|
clear project-notes when clearing song (new/open file etc.)
|
|
|
|
* src/tracks/pattern.cpp:
|
|
ask user when he tries to freeze a pattern of a muted channel whether he
|
|
wants to continue since freezing a pattern of a muted channel makes no
|
|
sense (you're rendering silence!)
|
|
|
|
* include/piano_roll:
|
|
* src/core/piano_roll.cpp:
|
|
- added possibility to edit the volume of notes
|
|
- removed all bool-variables indicating whether an action is being
|
|
performed at the moment and introduced m_action, indicating
|
|
one of the actions defined in (also new) enum editActions
|
|
- replaced m_startTone and m_startOctave with one variable m_startKey,
|
|
which makes a lot of code unneccessary
|
|
- rewrote loops using note-vectors to use iterators instead of
|
|
indices and vector::size()
|
|
- renamed m_evolutionHeight to m_notesEditHeight
|
|
- replaced QMouseEvent::pos().[xy]()-calls with QMouseEvent::[xy]()
|
|
- pianoRoll::getKey() does now take y-position (int) as parameter
|
|
instead of QPoint since it only needs y-position
|
|
- use new setKey()/key()-member of note everywhere where it is possible
|
|
|
|
* include/note.h:
|
|
added setKey()- and key()-member which setting/getting absolute key
|
|
of note
|
|
|
|
2005-07-05 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
* projects/:
|
|
categorized projects in "cool_songs", "demos", "misc" and "templates"
|
|
so that we don't annoy the user with a lot projects in his/her project-
|
|
root - have to fill up "templates" with project-templates, e.g.
|
|
basic drum-kit, accoustic drum-kit etc.
|
|
|
|
* most files:
|
|
added FASTCALL-attributes to functions taking at least one parameter
|
|
|
|
* include/audio_file_processor.h:
|
|
* include/plucked_string_synth.h:
|
|
* include/triple_oscillator.h:
|
|
moved deleteNotePluginData()-method into according cpp-files which
|
|
makes including note_play_handle.h obsolete
|
|
|
|
* include/audio_file_processor.h:
|
|
* include/sample_buffer.h:
|
|
* src/lib/sample_buffer.cpp:
|
|
* src/soundgenerators/audio_file_processor.cpp:
|
|
added support for saving sample-rate-conversion-state in m_pluginData
|
|
of a note which fixes bug making clicks in sound when playing a sample
|
|
simultanously at different pitches
|
|
|
|
* configure.in:
|
|
check whether compiler knows floorf and powf and if not, define them
|
|
to floor/pow
|
|
|
|
2005-07-04 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* most files:
|
|
made LMMS compiling (and working) with Qt 3.0, GCC 2.95 and other old
|
|
libs (compiled it under Knoppix 3.1)
|
|
|
|
* include/misc.h:
|
|
changed names of abs, min, max, limit to myAbs, myMin etc. for not
|
|
conflicting with functions of STL with the same name
|
|
|
|
* configure.in:
|
|
* src/lib/sample_buffer.cpp:
|
|
added support for versions of libsndfile < 1.0.11 since API has changed
|
|
in libsndfile 1.0.11
|
|
|
|
2005-07-03 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* resources/control_env_amount_active.png:
|
|
* resources/control_env_amount_inactive.png:
|
|
* include/envelope_and_lfo_widget.h:
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
it's now possible to control the amount of an envelope with the
|
|
according LFO by toggling new button (otherwise the level of the LFO is
|
|
added to the level of the envelope as it always has been)
|
|
|
|
* src/core/envelope_and_lfo_widget.cpp:
|
|
now you can toggle the amount of an envelope/LFO between 0 and 1 by
|
|
clicking on according graph
|
|
|
|
* all files:
|
|
updated mail-address in header
|
|
|
|
* src/audio/audio_device.cpp:
|
|
always use SURROUND_CHANNELS as channel-count for libsrc since
|
|
resampling is done on surround-buffers - fixes bug which was
|
|
responsible for producing useless noise when exporting file in
|
|
high-quality-mode
|
|
|
|
* src/core/export_song_dialog.cpp:
|
|
made "high-quality-mode"-switch working (disabled for some reason
|
|
in 0.0.9...)
|
|
|
|
* src/core/mixer.cpp:
|
|
when restoring audio-device, also restore quality-level
|
|
|
|
* include/bb_editor.h:
|
|
* src/core/bb_editor.cpp:
|
|
cleaned up a lot because there was still much code from times when
|
|
the track-technology didn't exist and which isn't now used any more
|
|
|
|
* src/audio/audio_alsa.cpp:
|
|
added support for 48 KHz soundcards
|
|
|
|
2005-07-02 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
* src/lib/sample_buffer.cpp:
|
|
made it possible to compile LMMS without SDL_sound, reorganized
|
|
sample-decoding and added libsndfile- and libvorbis-support
|
|
|
|
* include/midi_time.h:
|
|
added operators "=", "+=", "-=" and implemented copy-ctor
|
|
|
|
* include/piano_roll.h:
|
|
made currentPattern() a const method and added validPattern()
|
|
|
|
* src/tracks/pattern.cpp:
|
|
optimized addNote() function which uses m_note.push_back() for notes
|
|
beyond last note
|
|
|
|
* src/core/piano_roll.cpp:
|
|
* src/tracks/pattern.cpp:
|
|
when pattern is destroyed it checks whether it is currently opened in
|
|
piano-roll and if so pattern lets piano-roll set its pointer to current
|
|
pattern to NULL. piano-roll does now always check whether current
|
|
pattern is not NULL. in this case it denies any actions. fixes bug which
|
|
led to crash when having piano-roll open while deleting pattern (e.g.
|
|
creating new file, opening file etc.)
|
|
|
|
2005-07-01 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* all files:
|
|
replaced "location" in names of functions/variables by "position"
|
|
for more clear and unified names
|
|
|
|
* include/piano_roll.h:
|
|
* include/timeline.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/core/timeline.cpp:
|
|
added support for autoscroll in piano-roll when playing/recording
|
|
pattern
|
|
|
|
2005-06-30 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/channel_track.h:
|
|
* include/midi_device.h
|
|
* include/mixer.h:
|
|
* include/pattern.h:
|
|
* src/core/piano_roll.cpp:
|
|
* src/midi/midi_device.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added support for recording notes from MIDI-device (e.g. MIDI-keyboard
|
|
or virtual channel-piano) in a pattern using the piano-roll
|
|
|
|
* include/pattern.h
|
|
* src/core/song_editor.cpp:
|
|
fixed bug which led to crash: when pattern was played in non-looping
|
|
mode song-editor always called pattern::finishFreeze() even if there
|
|
actually was no pattern-freezing-process -> added isFreezing() which
|
|
is called by song-editor for checking whether pattern is being freezed
|
|
before calling finishFreeze()
|
|
|
|
* src/core/lmms_main_win.cpp:
|
|
* src/lib/sample_buffer.cpp:
|
|
when showing open-file-dialog, use QFileDialog::selectedFiles()[0]
|
|
instead of QFileDialog::selectedFile() because selectedFile() returns
|
|
incorrect file-name if user clicked on the file and then on
|
|
"Open"-button instead of double-clicking file
|
|
|
|
* src/audio/audio_oss.cpp:
|
|
* src/soundgenerators/triple_oscillator.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added #include <stdlib.h> for solving problems with undeclared
|
|
functions getenv() and rand() on some distributions (e.g Slackware)
|
|
|
|
* src/core/track.cpp:
|
|
* src/soundgenerators/triple_oscillator.cpp:
|
|
* src/tracks/channel_track.cpp:
|
|
added missing #include "debug.h" for solving problems with undeclared
|
|
assert() because of not included assert.h
|
|
|
|
2005-06-29 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* configure.in:
|
|
* include/audio_sdl.h:
|
|
* src/lib/sample_buffer.cpp:
|
|
if SDL/SDL.h does not exist, search for it in SDL10, SDL11 etc. and
|
|
include according headers in source-files (solves problems on FreeBSD)
|
|
|
|
* README:
|
|
updated everything a bit...
|
|
|
|
2005-06-28 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* include/envelope_tab_widget.h:
|
|
* src/core/envelope_tab_widget.cpp:
|
|
use button instead of knob for turning filter on/off
|
|
|
|
2005-06-27 Tobias Doerffel <tobydox/at/users/dot/sourceforge/dot/net>
|
|
|
|
* samples/effects/Makefile.am:
|
|
don't install effect-samples into directory of basses-samples
|
|
|