LVSL: added support for (automatable) VST controls and VST presets

LMMS VST Support Layer has been greatly advanced as it now features
(automatable) VST controls as well as support for VST presets. This
still needs some work as it crashes with various plugins (e.g. z3ta+).

Signed-off-by: Tobias Doerffel <tobias.doerffel@gmail.com>
(cherry picked from commit 4d645b335d560aae0e7620243b021cb283e0ba99)
MinGWCrossCompile.cmake: fix cross builds with recent versions of CMake

LMMS failed to build with recent versions of CMake if CMAKE_RC_COMPILER
was not set in MinGWCrossCompile.cmake. Furthermore PKG_CONFIG_FOUND
manually needs to be set to TRUE.
(cherry picked from commit b65cf661a29ca983b4b58e0b54aefe5cf66a31fd)
LVSL: fixed Win32 and Win64 build

Some minor tweaks were neccessary in order to properly build the updated
LVSL on Win32 and Win64.
(cherry picked from commit 63c1928f5793a60613fd189e21a768474356c316)
LVSL: improved preset support

Fixed various bugs and crashes.
Added Polish localization files

Thanks to Radek Słowik <radek/at/vibender/dot/com> for the contribution!
(cherry picked from commit 774a97f31ad0d691e681ae9df677bf25dacd3171)
VstEffect: removed unused slot declaration

The openPlugin() slot in VstEffectControls class is not implemented,
therefore do not declare it as otherwise MOC references it.
(cherry picked from commit f4976adcd782ee77b54b5fa279d13cb55acd2eaa)
CALF: updated up to commit 022dbc37d9d4bf1af2f33a288844156bdc13d27f
(cherry picked from commit 0bcd267063de40992154aca566df7d6df6c4ee7a)
Updated SWH plugins and added missing hermes_filter plugin

There were minor updates in SWH Git repository. Incorporated bug fixes
and added missing hermes_filter plugin.
(cherry picked from commit cacc0d6c3e5e497f794f35c539ad045cd3113b8d)
Piano-roll: remove from selection feature (shift + left-click)
(cherry picked from commit 7f63351ca66cfdd7417106ee04cbfbc62662da02)
Piano-roll: preserve melody when resizing a note by holding shift

(cherry picked from commit b3b290f6dd40af1205a90f3844a776824e962a79)
InstrumentTrack, NotePlayHandle: fixed note detuning processing

Note detuning did not work properly for patterns starting after the
first bar in the song editor. This has been fixed by introducing
additional information about parent's song-global offset to
NotePlayHandle objects.

Closes #3462555.
(cherry picked from commit 5977041b6e68bd883a7203f6847ae681d7de2c78)
SampleTrack: set/update tooltip for samples when loading project

The tooltip for sample track object views was not restored properly
when loading projects. Thanks to Mikobuntu for pointing out this issue.
(cherry picked from commit 3e4b824dafd1f8833a3289a58b6847d51b77bd7a)
MidiController: removed unused variable

The local "bytes" variable is never used and thus can be removed. Fixes
compiler warning.
(cherry picked from commit 8c1019cdaeba95e19d7cae6565866b41d6b05944)
Mixer, Pattern: fixed pattern freeze with MIDI-based instruments

When freezing patterns the freezer hung forever as it checked for any
running play handles in order to render echoes etc. after the last note.
However if there are MIDI-based instruments such as LB302, ZASF,
Sf2Player etc. there will always be play handles (InstrumentPlayHandles)
in the mixer's play handle array. Therefore explicitely check for
remaining NotePlayHandles when freezing pattern. Furthermore added a
counter variable for safety reasons so rendering note tails will never
exceed 2000 buffer periods.

Thanks to Mikobuntu for reporting this issue!

Closes #3109262.
(cherry picked from commit e5bc77f4c31e58061d431c797d2545262d790848)
Initialize line-drawer in AutomationEditor

Possible endless loop if these two state variables are not intialized.
Now a line will have the origin of (0,0) if drawn (shift-click) without
previously clicking on a starting spot.  Perhaps not the best fix, but
it works. And I think allowing this first line (instead of blocking it)
is better for the enabling the user to accidently discover the feature.
Update copyright date to 2012 in usage
Add support for upgrading presets

This is in addition to songs.  Simply use multimediaProject.  Don't
screw around with Song().  Also, needed to move creation of xml
preamble (processing instruction) due to duplicate entry when
doing a load/save.
Add support for upgrading to standard output

Useful for me to initially import LMMS presets for use in lmms-lv2.
Merge branch 'master' of ssh://lmms.git.sourceforge.net/gitroot/lmms/lmms
ZynAddSubFX: fixed possible buffer overflow

bankdir could be overflowed in the strncat function since the length
limit is not correctly specified.

Closes #3510466.
(cherry picked from commit 8b66dfc860374555d7c85700a84f10fb86a20140)