Commit Graph

1213 Commits

Author SHA1 Message Date
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
efb335cea7 PianoRoll: do not make notes disappear under certain circumstances
When starting LMMS, loading an existing project and opening a pattern
with notes inside in piano roll, moving single notes showed unexpected
behaviour, i.e. the according note has been moved somewhere unreachable.

I tracked this down to a missing initialization of m_moveBoundary*
variables. Adding a few lines fixes the issue (closes #2632909).
2009-04-17 15:07:54 +02:00
Tobias Doerffel
d4680ba21d AutomationEditor: fixed window title
As of commit 91f3db7b window title of automation editor has been in
uppercase letters which is wrong.
2009-04-17 12:24:54 +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
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
9a4b4f3cfe Plugin: try to load all shared libraries first
Try to load all shared libraries before resolving any symbols. Fixes
problems with plugins that are linked against other shared libraries
located in LMMS' plugin directory.
2009-04-13 23:55:48 +02:00
Tobias Doerffel
ad79ac7e21 WebResourcesProvider: more safely manage download IDs
Do not add download ID returned by QHttp::get() to array and remove it
in the finishDownload() slot rather than adding the ID to the array as
soon as the download has finished.
2009-04-13 01:22:49 +02:00
Tobias Doerffel
6e30ae3369 InstrumentTrack::masterKey(): fixed miscalculation
Global master pitch wasn't taken into account correctly when calculating
master key of a given key. Made MIDI based instruments behave in the
opposite direction regarding pitch when changing global master pitch.

Thanks to Skiessi for pointing out this issue.
2009-04-08 23:36:43 +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
f42fee37c3 ProjectRenderer: fixed bug introduced by 1b91b599b...
There's been a missing evaluation of _os.depth in the 2nd ternary
operator which caused depth of filetype always be 24 bit even if 16 bit
was selected.
2009-04-06 00:20:12 +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
0ae72462d9 LocalResourcesProvider: fixed filesystem monitoring
The slot LocalResourcesProvider::reloadDirectory() contained various bugs
so it did not record changes in filesystem properly. This also fixes lots
of QFileSystemWatcher messages in console window when saving a new project
inside LMMS.
2009-04-05 23:18:37 +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
ca5588f747 3rdparty/libsamplerate: updated to version 0.1.7
Updated 3rdparty libsamplerate to version 0.1.7 and bumped requirement
to system's libsamplerate to version 0.1.7.

Besides minor stuff, version 0.1.7 has one important fix:

  * src/src_sinc.c
  Fix a segfault which occurs when memcpy is passed a bad length parameter.
  This bug has zero security implications beyond the ability to cause a
  program hitting this bug to exit immediately with a segfault.
2009-03-26 23:54:08 +01:00
Tobias Doerffel
2547bf8d57 Oscillator: reverted recent fix for PM
As of acaaea8204 a samplerate dependent
ratio has been added into calculation of the local phase. This however is
wrong for PM.
2009-03-22 15:15:47 +01:00
Tobias Doerffel
acaaea8204 Oscillator: fixed samplerate dependence of FM/PM
When doing FM/PM, the value of sub-oscillator is globally/locally added to
phase. However when doing this, a ratio between fixed default samplerate and
actual samplerate needs to be taken into account in the phase calculation.

This commit fixes missounding render output when rendering projects with
FM/PM inside at higher samplerates. (Thanks to Skiessi for his ladspa2.mmpz
which clearly brought up this bug)
2009-03-21 10:30:49 +01:00
Tobias Doerffel
f195d907a7 AudioAlsa: fixed crash when no more data is available
Calling alignedMemClear() when getNextBuffer() returns 0 is superfluous and
causes crashes in some situations. Simply get out of the outer loop as soon
as quit==true.
2009-03-18 23:57:16 +01:00
Tobias Doerffel
b1787f2c87 AutomationPatternView: anti-aliased painting of automation data
If pixels/tact ratio <= 32 use anti-aliasing for drawing automation data
resulting in a smoother appearence.
2009-03-16 17:38:39 +01:00
Tobias Doerffel
9ea3c6660d AutomationPatternView: fixed painting of automation data
At low pixels/tact ratio automation was not drawn properly due to miscalculation
of x2 variable. This patch fixes this by adding 1 to x2.
2009-03-16 17:37:25 +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
d981b32480 MidiPort: subscribe writable rather than readable port when settings
When loading MidiPort settings, erroneously readable port was subscribed rather
than writable port. This commit fixes the issue.
2009-03-14 19:09:46 +01:00
Tobias Doerffel
bd9be061a0 MidiPortMenu: minor coding style fixes 2009-03-14 19:06:06 +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
22c877d4f9 InstrumentTrack: in compat code of loadTrackSpecificSettings() also
check for nodeName being "connection" - do not try to load an instrument
called "connection" if one of the basic parameters of the InstrumentTrack
is automated
2009-03-13 09:47:29 +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
03bf853a4d AutomationPattern: save and restore length of AutomationPattern to avoid
confusions with the previous auto-resize behaviour
2009-03-12 19:03:42 +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
782156cf70 MidiPort: properly emit portChanged signals when loading settings - fixes
MidiPortMenu showing devices not checked although actually connected
2009-03-12 01:00:36 +01:00
Tobias Doerffel
e10de81df3 ResourcesItem: completely initialize itself even if name is empty 2009-03-10 23:31:08 +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
075b894b7e ResourcesDB: do not save topLevelNode in XML cache files - saves one
level of indentation and makes format more consistent
2009-03-10 18:53:15 +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
5976ab5ce2 TrackContainerView: when dragging a preset file into TrackContainerView
load complete track settings rather than just track specific settings -
fixes an issue where the track name was not loaded from the dragged preset
2009-03-09 22:43:33 +01:00
Tobias Doerffel
0dcef8c771 Add one instance of WebResourcesProvider to global resources database 2009-03-09 00:54:41 +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
ce6933bb7d ResourcesTreeModel: return proper data for web resources root node 2009-03-09 00:50:13 +01:00
Tobias Doerffel
0a37cfd795 ResourcesItem: evaluate complete suffix when determining file type by
extension - allows to classify legacy extensions such as ".cs.xml"
2009-03-09 00:48:49 +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
fa3d004f42 PatternView: if volume of a step is 95 it was not possible to increase
it to 100 by scrolling up (closes #2656024)
2009-03-04 19:00:04 +01:00
Tobias Doerffel
2887895df7 Regenerated optimized x86_64 basic ops with latest GCC 4.4.0 snapshot 2009-03-04 16:30:33 +01:00
Tobias Doerffel
18bbed4fd6 Regenerated optimized x86 basic ops with latest GCC 4.4.0 snapshot 2009-03-04 16:25:08 +01:00
Tobias Doerffel
ca8439301b UnifiedResourcesProvider: in remergeItems() reserve sufficient buckets
in hash map before repeatedly inserting items - should improve performance
2009-03-01 11:50:09 +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
bbafa5ec19 Use QFileInfo rather than QDir to determine whether a given path is a
valid directory before adding to QFileSystemWatcher.
2009-02-27 19:14:43 +01:00