Commit Graph

731 Commits

Author SHA1 Message Date
Tobias Doerffel
232c1de404 InstrumentTrackView: save and restore last position of window
When closing a InstrumentTrackWindow save its position so it can be
restored later when showing it. Fixes windows always popping up
somewhere else when toggling instrument track button repeatedly.
2009-04-18 18:25:44 +02:00
Tobias Doerffel
1802b91e55 RemotePlugin: allow waitForInitDone() without busy waiting
An additional parameter to waitForInitDone() allows to disable busy
waiting which could be desired in various places to avoid deadlocks.
2009-04-18 17:41:37 +02:00
Tobias Doerffel
7200eb8158 RemotePlugin: made lock() and unlock() methods public
Made RemotePlugin::lock() and RemotePlugin::unlock() public allowing
to use RemotePlugin class without subclassing it.
2009-04-18 17:18:24 +02:00
Tobias Doerffel
5828643582 Note class: renamed method "bool selected()" to "bool isSelected()"
In class "Note" renamed method "bool selected()" to "bool isSelected()"
in order to match coding style conventions.
2009-04-17 15:11:41 +02:00
Tobias Doerffel
6f0388be7c PianoView/PianoRoll: fixed keycodes for OS X
This patch enables the usage of PC keyboard for playing instrument piano
or piano roll on OS X by evaluating nativeVirtualKey rather than
nativeScanCode.
2009-04-16 10:40:00 +02:00
Tobias Doerffel
656b195cfd RemotePlugin: never lock up if remote plugin died
Up to now there were insufficient checks whether the remote plugin
has died and so the result usually has been a complete lock-up of LMMS
(especially when using buggy VST plugins or similiar). By adding
according checks to remotePlugin::lock() and remotePlugin::unlock()
as well as remotePluginBase::waitForMessage() those lock-ups are gone.
2009-04-14 00:34:37 +02:00
Tobias Doerffel
e0d352dc2c FileBrowser: added file type VstPluginFile
Added file type VstPluginFile in order to allow loading DLL files by
an according plugin directly from file browser.
2009-04-13 23:58:30 +02:00
Tobias Doerffel
76662a3a51 InstrumentTrack: fixed calculation in midiPitch()
InstrumentTrack::midiPitch() returned 16384 instead of 16383 if pitch
was set to +100 cents. This commit fixes the calculation.
2009-04-13 16:13:18 +02:00
Tobias Doerffel
b4e38e3978 AudioJack: fixed lockup when getting zombified
This commit fixes lockup of the whole audio engine as soon as LMMS'
JACK backend got zombified due to longer delays (e.g. when audio engine
is blocked while loading a project). Restart JACK backend in such cases
and show an according message to the user.

Furthermore this commit includes various cleanups and improvements.
2009-04-07 00:07:19 +02:00
Tobias Doerffel
ff010da5ee SongEditor: fixed horizontal scrollbar with Qt 4.5
Due to optimizations in the graphics subsystem of Qt 4.5
songEditor::paintEvent() didn't get called regularly anymore and thus
the range of the horizontal scrollbar didn't get updated at all.

This commit makes the GUI track all changes related to the length of
the song.
2009-04-05 23:54:28 +02:00
Tobias Doerffel
1b91b599ba ProjectRenderer: added support for 24 Bit WAVs
Integrated patch by Skiessi which adds support for exporting 24 Bit WAV
files in LMMS.
2009-04-05 16:02:27 +02:00
llama
7cb7bc1dcf GIT SUCKS BALLS. FINALLY A COMMIT FROM WEEKS AGO 2009-03-31 19:56:12 -05:00
Tobias Doerffel
34bbde53e7 panning.h: fixed compiler warning
Fixed compiler warning about converting float to Sint16.
2009-03-25 17:00:06 +01:00
Tobias Doerffel
dc7cc064ce ControllerConnection: export symbols for win32 build
As of ee9e5680b7, LADSPA effect plugins access
ControllerConnection class. We therefore need to export its symbols.
2009-03-22 01:03:27 +01:00
Tobias Doerffel
02b06ae91e TrackContentWidget: cleaned up unused variable 2009-03-16 17:14:40 +01:00
Tobias Doerffel
7449c4f731 Fixed various types to be suffixed with "_t".
This commit ensures that all defined data types in include/lmms_basics.h are
suffxed with "_t" to keep consistency as well as to fix issues on systems
with older STL/libstdc++.
2009-03-15 16:28:13 +01:00
Tobias Doerffel
fdc065b8b8 MidiAlsaSeq: fixed typo which made output ports not work at all
As of 94d13e84ca, MidiClients::writablePorts()
was not overloaded properly anymore and thus no output ports appeared anymore.
2009-03-14 19:06:43 +01:00
Tobias Doerffel
c24b923b78 FX-Fader: added accessibleName property for FX faders for not displaying
an empty titlebar in context-menu
2009-03-14 16:02:18 +01:00
Tobias Doerffel
46097b72d7 Various fixes for better OpenBSD compatibility (thanks to Jacob Meuser) 2009-03-12 19:34:03 +01:00
Tobias Doerffel
94d13e84ca MIDI subsystem: fixed misspelled "writeable" into "writable", minor
coding style fixes
2009-03-12 01:09:32 +01:00
Tobias Doerffel
d794789210 ResourcesItem: if base()==BaseURL, try to return URL of provider in
getBaseDirectory()
2009-03-10 23:28:36 +01:00
Tobias Doerffel
2385a921eb WebResourcesProvider: added support for directory structure according to
directory information in WebResources/Index file
2009-03-10 23:21:23 +01:00
Tobias Doerffel
2d7b1f1211 LocalResourcesProvider: do not include own name in path-property of
directory items and fixed usage of ResourcesItem::fullName() - makes
format of XML cache file more consistent and also speeds up string
comparisonswhen filtering
2009-03-10 18:51:51 +01:00
Tobias Doerffel
5238e02fe7 WebResourcesProvider: initial implementation allowing to browse and
download online resources just like if they were local files
2009-03-09 00:52:35 +01:00
Tobias Doerffel
168b52dcff ResourcesItem: added BaseURL 2009-03-08 22:49:34 +01:00
Tobias Doerffel
f5057ce6d2 Standard filters: added 24 dB versions of RC filters as well as a vocal
format filter (thanks to Stefan Fendt!)
2009-03-08 15:19:01 +01:00
Tobias Doerffel
890f4564a1 Save database of LocalResourcesProvider into cache file at exit. 2009-02-28 17:13:11 +01:00
Tobias Doerffel
18282e0de3 Made UnifiedResourcesProvider actually pull ResourceItem's from its
merged databases into its own database (and also keep them up to date).

Furthermore added code to properly destroy merged databases and their
providers in desctrutor.
2009-02-28 17:10:48 +01:00
Tobias Doerffel
e69709ae83 ResourcesProvider's now can tell their databases not to locally cache their
items in a file by overloading ResourcesProvider::cacheDatabase()
2009-02-28 17:04:35 +01:00
Tobias Doerffel
aff61f16b0 Replaced global ResourcesDB with a global UnifiedResourcesProvider which
allows to add several resource directories or online resources.
2009-02-28 16:02:08 +01:00
Tobias Doerffel
75c03f65f2 Added UnifiedResourcesProvider which merges multiple ResourcesDB's and
offers one unified database.
2009-02-28 15:46:29 +01:00
Tobias Doerffel
a93a400539 Refactored resources framework to use the new LocalResourcesProvider for
scanning local directories and filling its ResourcesDB.

The ResourcesDB is responsible for writing local catalogue files. It
automatically loads back the appropriate catalogue file (depending on
the provider that operates on the ResourcesDB object) at initialization.
Will be useful for WebResourcesProvider as well to cache metadata of
online resources.

All you have to do now is to create an according ResourcesProvider which
will automatically setup a ResourcesDB that can be operated on by the
ResourcesTreeModel.
2009-02-27 19:01:51 +01:00
Tobias Doerffel
f49274cac2 Separated out ResourcesDB::Item and ResourcesDB::TreeItem into
ResourcesItem and ResourcesTreeItem in own header- and source-files
2009-02-27 11:25:39 +01:00
Tobias Doerffel
d2f82ce3c0 Added skeleton for WebResourcesProvider class 2009-02-27 00:55:30 +01:00
Tobias Doerffel
2915896658 Added skeleton for LocalResourcesProvider class 2009-02-27 00:55:04 +01:00
Tobias Doerffel
71c8690442 Added skeleton for ResourcesProvider class 2009-02-27 00:54:38 +01:00
Tobias Doerffel
0804318b57 ResourcesDB: added typedef's for enumerations in ResourcesDB::Item 2009-02-27 00:53:33 +01:00
Tobias Doerffel
9bbb701dac Fixed file mode for files that were executable although they shouldn't be 2009-02-27 00:21:41 +01:00
Tobias Doerffel
9ebdc72404 ResourcesDB: added nameHash property in order to avoid unnecessary
string comparisons (now comparing two int's before comparing two whole
string objects)
2009-02-27 00:01:38 +01:00
Tobias Doerffel
57c7c64103 ResourcesDB: use pointers to manage hash-tree (both in tree-structure
and hash-map) - avoids local copies of objects as well as accidently
overwritten ResourcesDB::Item's in hash-map, which resulted in
inconsistencies in tree and finally crashes in several situations, e.g
removal of previously existing objects (closes #2584125)
2009-02-26 23:55:20 +01:00
Tobias Doerffel
8c85e9b1cf Reverted c310667bd90457a4edafd752718046bf892b1ea6y to keep trunk at least
a bit usable, will continue FLUIQ development in a separate branch
2009-02-24 17:09:18 +01:00
Paul Giblock
50eba261f8 Fix ScrollBar-hover for Cusis on Qt-4.5
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2064 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-22 02:33:18 +00:00
Paul Giblock
0bdeca5b54 Various SongEditor fixes and updated file headers
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2060 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-20 06:17:01 +00:00
Paul Giblock
c5571651df Add classic-TCO back, enhance song editor, cleanup code
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2059 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-20 05:01:22 +00:00
Tobias Doerffel
9ff11564e0 rewrote timing of fading animation for not postponing updates of hidden fadeButton until it becomes visible
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2056 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-19 15:01:41 +00:00
Tobias Doerffel
3cb8547c6a move timeLine marker in Piano Roll and autoscroll when recording while playing song (closes #2486334)
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2053 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-19 14:27:14 +00:00
Tobias Doerffel
923f400ed0 coding style fixes, improved handling of shared detuningHelper object
git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2047 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-19 13:38:32 +00:00
Tobias Doerffel
8aec19379e fixed various bugs regarding recording:
* once recording has been started, stop it as soon as playMode of song changes or similiar things happen (closes #2486341)
* fixed broken record-accompany in most use-cases other than using record-while-playing-song by also tracking NoteOn events and remember current play position to use 
the correct note postitions on NoteOff events (play position might have wrapped around in the meantime due to looppoints or end of BB track) (closes #2486299, #2486203)



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2046 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-19 13:37:41 +00:00
Tobias Doerffel
3f40d19d32 * added missing slot declaration for abortFreeze(), fixes lockup when freezing pattern (closes #2530320)
* update patternView after freezing
* fixed drawing of frozen pattern



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2041 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-13 23:35:52 +00:00
Tobias Doerffel
b01724c666 * when resampling whole sampleBuffer, set end_of_input = 1 in libsamplerate data struct - fixes lots of zero samples at the end of output buffer (closes #2531452)
* coding style fixes
* removed obsolete save/restore of EOF-property in libsample rate data struct when resampling successively (always use 0)



git-svn-id: https://lmms.svn.sf.net/svnroot/lmms/trunk/lmms@2039 0778d3d1-df1d-0410-868b-ea421aaaa00d
2009-02-13 16:35:40 +00:00