Commit Graph

1959 Commits

Author SHA1 Message Date
Johannes Lorenz
aa8f9361c6 Rename InstrumentView250 to InstrumentViewFixedSize 2019-07-17 22:20:25 +02:00
Johannes Lorenz
a4df7a9765 Split InstrumentView into itself and InstrumentView250 2019-07-14 10:20:54 +02:00
Johannes Lorenz
a4b801fe1b TabWidget: Add missing size hints
This is mostly for completeness, it does not fix any known issues.
2019-07-13 22:49:10 +02:00
Johannes Lorenz
3585b14b98 Instrument view: Add missing size hints
Those are needed for the case when an instrument is being resized
manually.
2019-07-13 22:48:48 +02:00
Johannes Lorenz
d52c220a5c Fix instrument window tab sizes
- Fix the instrument window tabs minimum width and height formulae
- Also set minimum height and width for instrument tab
2019-03-29 18:43:39 +01:00
Johannes Lorenz
9aa997e574 Allow TabWidget to be variable sized 2019-03-16 16:38:16 +01:00
Johannes Lorenz
ee05523319 Extend quoting for AutomatableModels
This now also quotes, if required:

- non automated models
- models controlled by controller
2019-01-01 20:58:16 +01:00
Hyunjin Song
4252f755c2 Merge branch 'stable-1.2'
# Conflicts:
#	cmake/nsis/CMakeLists.txt
#	src/core/ProjectRenderer.cpp
#	src/tracks/Pattern.cpp
2018-10-29 16:20:58 +09:00
Hyunjin Song
d8fb07ff52 Fix minor glitches with sample tracks (#4666)
Switches some signal-slot connections to Qt::DirectConnection.
Now LMMS can handle loop points correctly and export samples without glitches.
Also tweaks some Mixer-related code to avoid related deadlocks on export.
2018-10-29 16:17:41 +09:00
Johannes Lorenz
4babbe25c5 Enable compiled-in XPM pixmaps (#4578) 2018-10-11 19:32:11 +02:00
Z3R0C
00cc6dc22b Fix sample track playback crash (#4586)
Fixes double-freeing `AudioPort` which is a regression in #4310.

Co-authored-by: Shmuel H <shmuelhazan0@gmail.com>
Co-authored-by: Hyunjin Song <tteu.ingog@gmail.com>
2018-09-18 11:21:45 +09:00
Hyunjin Song
4069aaada2 Merge branch 'stable-1.2'
# Conflicts:
#	.travis/osx..install.sh
#	CMakeLists.txt
#	cmake/apple/install_apple.sh.in
#	doc/lmms.1
#	include/VstSyncController.h
#	plugins/carlabase/carla.h
#	plugins/vestige/vestige.cpp
#	plugins/vst_base/CMakeLists.txt
#	plugins/vst_base/RemoteVstPlugin.cpp
#	plugins/vst_base/Win64/CMakeLists.txt
#	plugins/zynaddsubfx/zynaddsubfx
#	plugins/zynaddsubfx/zynaddsubfx/src/Misc/QtXmlWrapper.cpp
#	src/core/Song.cpp
#	src/core/main.cpp
2018-09-18 09:54:38 +09:00
Hyunjin Song
91ca660161 Fallback to default audio/MIDI backends if invalid one is set
Also shows the setup dialog in case of invalid audio backends
2018-09-13 11:01:49 +09:00
Hyunjin Song
f37ca49e6d Fix decimal separator handling (#4547)
Makes LMMS can handle both periods and commas properly when loading real numbers.
2018-09-12 11:02:40 +09:00
DomClark
2c5cda563b Fix kVstTransportChanged flag usage in VST sync
Changed according to feedback from AudioBlast. The flag used to be set most of the time, now it is only set when playback starts/stops, looping is toggled, or playback jumps around.
2018-09-11 22:01:11 +09:00
Hyunjin Song
3d5e74d638 Merge branch 'stable-1.2'
# Conflicts:
#	cmake/modules/MinGWCrossCompile.cmake
#	plugins/FreeBoy/FreeBoy.cpp
2018-08-24 09:54:39 +09:00
Hyunjin Song
12d251cc3e Merge branch 'stable-1.2'
# Conflicts:
#	cmake/linux/package_linux.sh.in
#	data/locale/cs.ts
2018-08-24 09:50:36 +09:00
Michael Gregorius
8d00e90322 Remove peak value references from Mixer::getPeakValues
Adjust Mixer::getPeakValues so client do not have to allocate the
variables that will store the peak values.

Adjust both existing clients: FxMixer and VisualizationWidget.
2018-08-16 19:49:30 +02:00
Michael Gregorius
160488c096 Make the oscilloscope colors available as properties
Make the oscilloscope colors available as properties so that they can be
changed via style sheets. Adjust the existing styles to use the colors
that have been hard coded previously.

Cleanup the paintEvent method of VisualizationWidget, e.g. by extracting
a method to determine the color to use for the line and by pulling
variables to the place where they are used. Fix some Clang warnings.
2018-08-16 19:47:58 +02:00
Hyunin Song
112d34226a Fix broken MIDI import
Fix a regression in 3e538d510c (#4401) that
readAllData doesn't read the file from the beginning
2018-07-27 15:48:58 +09:00
Lukas W
e65ccea7ba Merge branch 'stable-1.2' 2018-07-22 11:49:20 +02:00
Lukas W
a35d23f3b8 Merge remote-tracking branch 'lukas/cleanup/qt4' 2018-07-17 08:57:57 +02:00
Lukas W
ff1c30e35d Merge remote-tracking branch 'lukas/cleanup/qt4'
# Conflicts:
#	cmake/toolchains/common/MSYS.cmake
2018-07-17 08:52:49 +02:00
Lukas W
820d006c4e Add Appveyor script, fix 32bit Windows compilation 2018-07-17 08:49:13 +02:00
Lukas W
c670d4827a Minor QString usage improvements 2018-07-11 20:13:47 +02:00
Michael Gregorius
0dc28436fa Add option to show note values on notes in Piano Roll (#4466)
Add the option to show note values on notes in the Piano Roll. This
functionality is currently coupled with the option "Enable note labels
in piano roll" which can be found in the main menu.

The notes are rendered at about 80% of the notes height. They are only
rendered if they fit on the whole note and if the font does not become
too tiny.

Enable the configuration of the note value text's color via the
stylesheets and set the value to white for both shipped themes.

Other changes:
* Clean up some warnings about old school casts and implicit casts.
2018-07-10 22:43:16 +02:00
Hyunjin Song
f2d68326a7 Fix occasional audio interface deadlock (#4450) 2018-07-10 11:13:56 +09:00
Shmuel H
ec28a65c89 AudioSdl: Add support for full SDL2 with float samples and recording
(with backward compatibility for SDL1).

Cherry-picked from dcc442411f
2018-07-07 17:16:08 +02:00
Lukas W
fe2483e309 Enable 64bit VSTs on Linux
* Remove trial-and-error approach of detecting VST's machine types. Read PE
  headers instead.
* Add RemoteVstPlugin64 to AppImage
2018-07-07 17:16:08 +02:00
justnope
f2a8f56944 MSVC fixes (#4352)
* locale: using path instead of individual files to reduce command line size
* remotevstplugin: changed order return type & calling convention (compiler error)
* lmmsobj: removed single quotes for command line defines
* added vcpkg support & std::make_unique for MSVC
* carla: include exports header
* package_linux: corrected RemoteVstPlugin name
* vstbase: toolchain file conditional on MSVC
* Added install for remotevstplugin
* msvc: installer works with vcpkg

Remotevst 64bit install removed due to an ApImage problem
2018-07-07 17:16:08 +02:00
Lukas W
20a6b96161 Fix 64bit VSTs on Linux by fixing callback calling convention 2018-07-07 17:16:08 +02:00
Lukas W
d756a7ade0 MSVC: Fix VST build 2018-07-07 16:40:37 +02:00
Lukas W
966bf1c6de Use CMake GenerateExportHeader 2018-07-07 11:20:54 +02:00
Lukas W
3c6f200beb Merge branch 'stable-1.2'
# Conflicts:
#	cmake/modules/BuildPlugin.cmake
#	plugins/CMakeLists.txt
#	plugins/LadspaEffect/swh/CMakeLists.txt
#	plugins/LadspaEffect/tap/CMakeLists.txt
#	plugins/zynaddsubfx/zynaddsubfx
#	plugins/zynaddsubfx/zynaddsubfx/src/Misc/QtXmlWrapper.cpp
#	src/gui/MainWindow.cpp
2018-07-06 12:42:15 +02:00
Hyunin Song
3e538d510c Fix MIDI import encoding issue on Windows 2018-07-05 20:16:01 +09:00
Hyunin Song
1af0f083ea Fix WAV exporting on Windows 2018-07-05 20:16:01 +09:00
Hyunin Song
ddcae478d4 Fix sample file loading on Windows 2018-07-05 20:16:01 +09:00
Hyunin Song
792e4786ad Fix file name encoding issues with VST on Windows
Fix plugin loading and setting loading/saving
2018-07-05 20:16:01 +09:00
Hyunin Song
e9f2b57107 Fix project URL for some files
They were created before https://github.com/LMMS/lmms/pull/3326
and added after it.
2018-06-28 20:23:53 +09:00
Lukas W
11c693205e Remove usage of deprecated Qt API
Removes usage of the following deprecated Qt functions:
- QPixmap::grabWidget
- QString::null
- qFind
- qSort
- qGreater
- qCopy
2018-06-17 14:27:28 +02:00
Lukas W
da1c78ce86 Remove Qt4 compatibility code 2018-06-17 12:47:12 +02:00
dobbelaj
d11966a7ea Introduce UI_CTRL_KEY and use where appropriate (#4431)
This is an abstraction for the name of the 'Ctrl' (or equivalent) key on
linux, windows and apple
2018-06-17 11:20:00 +02:00
Hussam al-Homsi
6d46bd473f Remove "What's This?" and update tooltips (#4128) 2018-06-06 01:50:11 +03:00
Colin Wallace
2c672d47fe Prefer = default over empty destructor.
Same thing but less verbose.
2018-05-28 19:28:05 -07:00
Hyunin Song
3cf2afd831 Merge branch 'stable-1.2'
# Conflicts:
#	include/MixerWorkerThread.h
#	src/core/MixerWorkerThread.cpp
2018-05-26 16:09:38 +09:00
Colin Wallace
a3cdda04c0 Give our threads names (#4356)
* Give our threads names

It helps with debugging.

* Use Q_OBJECT macro to automatically name threads.

By default, QThread sets its name based on the Qt meta class. To get an
accurate metaclass, the class which inherits QThread must declare
Q_OBJECT in its header. Futhermore, Qt's MOC requires that a Qt type be
the primary base class when declaring Q_OBJECT, hence the order of
base classes has been rearranged for some classes.
2018-05-24 18:01:51 -07:00
SecondFlight
4585a07673 Allow renaming of FX mixer channels with the F2 and enter keys. (#4348)
* Add f2 as a FX mixer rename shortcut. Enter doesn't work yet.

* Add both enter keys, remove code duplication

* Fix renaming with enter/return

* Clean up
2018-05-13 17:15:32 -04:00
Premik
e8b69b9700 Zooming with mouse wheel center (#3835)
* Horizontal mouse-wheel zooming. Ensure zoom center is always on the current mouse position.

* Horizontal zoom using mouse wheel center on the mouse position. For the SongEditor too.

* Wheel center on the Automation editor too.
2018-05-10 00:45:45 +02:00
Hyunjin Song
03aa5fb3c7 Fix crash on exit from MIDI connections (#4340) 2018-05-07 17:08:43 -07:00
Matt Kline
68c9d227d0 Default some empty destructors
Moving empty destructors out of the .cpp files and into headers
allows them to be devirtualized in certain cases.
(When the compiler can't "see" a function in a header, it must largely
assume it's some black box that the linker will resolve.)

While we're at it, use C++11's `= default` to define empty virtual
desturctors for us.

For some classes (e.g., Piano), nothing is derived from it, so we can
mark the class as final and remove any explicit virtual dtor.

There are many other places where this can be done, but this is a large
enough patch as-is.
2018-05-06 16:34:08 -07:00