summaryrefslogtreecommitdiff
path: root/libs/evoral
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2016-03-28 21:42:46 +0200
committerRobin Gareus <robin@gareus.org>2016-03-28 21:42:46 +0200
commit2972fe0fc2b3aaf6c1b010a9376086d5b2ba7cd1 (patch)
tree09b91081fe7dfc6c993b3cf0d38cb16832c73993 /libs/evoral
parente063e4bf1de2d523f70b7a42950653c06ad6a02a (diff)
leave a ToDo note
Diffstat (limited to 'libs/evoral')
-rw-r--r--libs/evoral/src/ControlList.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/libs/evoral/src/ControlList.cpp b/libs/evoral/src/ControlList.cpp
index 2690a64426..2a013f2669 100644
--- a/libs/evoral/src/ControlList.cpp
+++ b/libs/evoral/src/ControlList.cpp
@@ -1660,6 +1660,12 @@ ControlList::paste (const ControlList& alist, double pos, float /*times*/)
if (alist.parameter() != parameter()) {
const ParameterDescriptor& src_desc = alist.descriptor();
+ // This does not work for logscale and will probably also not do
+ // the right thing for integer_step and sr_dependent parameters.
+ //
+ // TODO various flags from from ARDOUR::ParameterDescriptor
+ // to Evoral::ParameterDescriptor
+
value -= src_desc.lower; // translate to 0-relative
value /= (src_desc.upper - src_desc.lower); // normalize range
value *= (_desc.upper - _desc.lower); // scale to our range