Commit Graph

42 Commits

Author SHA1 Message Date
Lukas W
966bf1c6de Use CMake GenerateExportHeader 2018-07-07 11:20:54 +02:00
Colin Wallace
ca3a7f3015 Remove unused method and extraneous state from AutomatableModelView (#4258)
* Remove DataType.

An AutomatableModel should not need to know what concrete type it is.
Use virtual methods and implement them in the derived class instead of
testing the type in the base class.

* Remove unused method

* Remove m_hasLinkedModels

We can compute it on-the-fly with very little cost, and doing so
simplifies the code.

* Remove extra 'public:'

Probably a remnant of merging master
2018-03-28 00:03:10 -07:00
Colin Wallace
56b4740146 Copy/paste model values to system clipboard
Previously they were copy/pasted internally, and not visible across LMMS
instances.
2018-03-20 00:43:15 -07:00
Colin Wallace
7593b2ee58 Replace macro magic with a template base class 2018-03-20 00:42:21 -07:00
Lukas W
a96771bb2d Add Q_OBJECT to FloatModel, IntModel, BoolModel 2017-11-24 13:48:36 +01:00
Lukas W
8d6cb120b9 Replace MemoryManager implementation with rpmalloc (#3873)
* Replace MemoryManager implementation with rpmalloc
    Fixes #3865
* Travis: Specify OSX image for Qt5 build
2017-10-18 17:02:40 +02:00
Steffen Baranowsky
5a2d8f12ad fixes rounding issue in automatablemodel (#3597)
* fixes rounding issue in automatablemodel

* fix CRS knob sticking in instrument plugins
2017-06-09 10:28:59 +02:00
Lukas W
6004edae5c Include past automation patterns in processing (#3382)
Fixes #662

* Include past automation tracks in processing
* Track::getTCOsInRange: Use binary search, fix doc
* Automation refactorings
* Add automation tests
2017-03-26 12:27:15 +02:00
grejppi
9e85d7c66e update all copyright headers to the proper url (#3326) 2017-02-06 02:41:15 +02:00
Steffen Baranowsky
7cf6150e75 suggest a fix for precision on knob dragging (#3075)
* fixes precision on knob dragging

* fixes precision on fader dragging

* diaplay a rounded float on knobs

* enter rounded value on fader

* add getRoundedValue() and getDigitCount() to floatmodel

* whitespace
2017-01-12 15:02:54 +01:00
Javier Serrano Polo
f14cb687de Drop forceStep in AutomatableModel (#3010) 2016-08-30 19:45:09 +02:00
Dave French
589cd4fb59 Model::isValueChanged correctly returns if sample exactness is used.
The introduction of sample exactness introduced a bug, if The value was
changed using sample exactness Model::isValueChanged was incorectly returning
false.

This bug has shown its self in the BassBooster plugin.
2015-04-05 13:42:09 +01:00
Lukas W
df9d495571 Some #include cleanups 2015-01-22 16:28:41 +01:00
Vesa
75770b4d2e Fix 64 bit, increase mm usage 2014-11-18 13:58:36 +02:00
Vesa
740a7e6850 Merge branch 'stable-1.1'
Conflicts:
	include/AutomatableModel.h
	include/FxMixer.h
	src/core/FxMixer.cpp
	src/gui/widgets/caption_menu.cpp
	src/tracks/InstrumentTrack.cpp
2014-11-16 15:16:40 +02:00
Vesa
f8c618b0ed Modify BassBooster to show how to replace signals/slots in DSP 2014-11-16 14:51:50 +02:00
Vesa
3e19bc8ddb Add a method to track value changes in AutomatableModel - this can be used by DSP code instead of signals/slots to improve performance 2014-11-16 14:14:35 +02:00
Lukas W
8e8879f735 Merge stable-1.1
Conflicts:
	include/ConfigManager.h
	include/MidiTime.h
	include/string_pair_drag.h
	src/gui/string_pair_drag.cpp
	src/gui/widgets/rubberband.cpp
2014-11-10 19:26:59 +01:00
Umcaruje
6fb923cba2 Correct the program name and site in the descriptions. 2014-11-04 22:56:50 +01:00
Vesa
23433a70b5 Sample-exact models: improve
- Remove the redundant hasSampleExactData() function. Instead, signal lack of s.ex.data by returning a NULL in valueBuffer()
- Cache s.ex.buffers and only update them once per period
- Make valueBuffer() in AutomatableModel threadsafe so that it can be used for NPH's sharing the same model
- Add sample-exactness to instrumenttrack's vol & pan knobs
2014-06-30 01:59:18 +03:00
Vesa
4185eac023 Merge branch 'stable-1.1'
Conflicts:
	src/core/AutomatableModel.cpp
2014-06-23 22:10:27 +03:00
Vesa
14909bdf1b Log scales finalized 2014-06-20 22:46:10 +03:00
Vesa
d331dfe352 Move improvements to sample-exact controller handling,
also some coding style fixes
2014-05-30 18:26:16 +03:00
Vesa
44f1d3df85 Initial implementation of sample-exact models and controllers
Also featuring a very efficient buffer-based system for transporting sample-exact control data
Also interpolation for automations
The native Amplifier is a reference implementation for taking advantage of sample-exact data and is currently
the only one that does so, it can be used to test things out, and as documentation/example for implementing the
same elsewhere
2014-05-30 18:22:36 +03:00
Vesa
aefc9832f8 Initial implementation for two additional methods in AutomatableModel, AutomationPattern:
These methods are used to fetch the automated value of a model at a given MidiTime
These are still untested but that shouldn't be a problem since they aren't actually used by anything yet... but I'll be doing some testing and bugfixing (if needed) for them later.
These will be an important step in making sampletracks eventually be reliably playable from any position, and more generically, being able to reliably convert MidiTime to real time. Of course they can be useful for other things too (not sure what though, yet).
2014-05-15 03:02:42 +03:00
Vesa
62068684c2 Fix to previous - use value<float>() instead of making an unnecessary new function... also accidentally didn't upload the new image last time 2014-05-04 22:54:06 +03:00
Vesa
4564ed14cd Automation Recording 2014-05-04 21:59:39 +03:00
Johannes Lorenz
63f6f2eab6 Final patch for logscales and knob with def ctors. 2014-04-09 13:18:01 +02:00
Johannes Lorenz
2b8e5c3992 Logscales, merged. 2014-04-09 12:31:21 +02:00
Johannes Lorenz
554323dcb6 Current logscales fix. 2014-04-05 09:05:22 +02:00
Johannes Lorenz
1f5ef70d2c Logscales temporary commit. 2014-04-05 08:15:35 +02:00
Tobias Doerffel
7b8eaa6835 Merge remote-tracking branch 'origin/stable-0.4-undo-redo'
Conflicts:
	include/AutomatableModel.h
	include/MidiPort.h
	include/TrackContainerView.h
	include/surround_area.h
	include/track.h
	src/core/AutomatableModel.cpp
	src/core/TrackContainer.cpp
	src/core/note.cpp
	src/core/track.cpp
	src/gui/PianoRoll.cpp
	src/gui/TrackContainerView.cpp
	src/gui/widgets/LcdSpinBox.cpp
2014-03-24 19:37:26 +01:00
Tobias Doerffel
6a1a295cec More CLANG compiler warning fixes 2014-03-21 11:14:22 +01:00
Tobias Doerffel
9ffeae441d AutomatableModel: avoid hiding virtual functions by overload 2014-03-21 10:43:26 +01:00
Tobias Doerffel
6f5a47342b AutomatableModel: coding style improvements 2014-03-21 10:43:07 +01:00
Tobias Doerffel
5540a356f7 AutomatableModel: added centerValue property
The optional centerValue property can be used by views to display the
center somehow. It defaults to minimum value.
2014-01-23 23:35:26 +01:00
Tobias Doerffel
1a99ed8e2f AutomatableModel: added isAtInitValue() 2014-01-20 23:05:45 +01:00
Tobias Doerffel
f0d6d44545 AutomatableModel: renamed to controllerConnection() + coding style fixes
Renamed getControllerConnection() to controllerConnection().
2014-01-20 22:11:58 +01:00
Tobias Doerffel
17c1ede50c AutomatableModelView/ContextMenu: option for unlinking all controls
Integrated patch by Rodrigo Rodrigues da Silva which adds an option
to all AutomatableModelView's context menu allowing to unlink all
linked controls.
2014-01-15 23:50:13 +01:00
Tobias Doerffel
a5c3cf6a99 Revised journalling (undo/redo) to record full states instead of changes
Recording single changes of objects or their specific properties is
completely superfluous as we have full implemented state tracking in all
objects already. Therefore use SerializingObject::saveState() and
SerializingObject::restoreState() in order to implement the undo/redo
functionality.

This is just an initial commit and needs some further work (especially
regarding stability). However even things like undo/redo of
addition/removal of Tracks and TrackContentObjects do work already.
2014-01-07 23:48:09 +01:00
NoiseByNorthwest
9215800114 Add magnetic effect (for init value) on knobs 2012-01-26 19:06:34 +01:00
Tobias Doerffel
1d5cb23385 File and class renames part 1
Most files and most of the core classes and their methods have been
renamed to match new coding style conventions:

391 files changed, 25400 insertions(+), 25598 deletions(-)

Furthermore splitted some files where model and view classes were
declared or implemented together in the same file.

Should be tested thoroughly as I might have missed renaming some virtual
methods or SIGNAL/SLOT parameters.
(cherry picked from commit 8c9a9dd14c)
2009-08-25 01:30:41 +02:00