mirror of
https://github.com/Ardour/ardour.git
synced 2025-12-15 19:16:40 +01:00
merge with master and fix 4 conflicts by hand
This commit is contained in:
commit
8c9749e42f
19 changed files with 137 additions and 29 deletions
|
|
@ -169,7 +169,7 @@ MIDIControllable::control_to_midi (float val)
|
|||
|
||||
float control_min = controllable->lower ();
|
||||
float control_max = controllable->upper ();
|
||||
const float control_range = control_max - control_min;
|
||||
float control_range = control_max - control_min;
|
||||
|
||||
if (controllable->is_toggle()) {
|
||||
if (val >= (control_min + (control_range/2.0f))) {
|
||||
|
|
@ -177,6 +177,14 @@ MIDIControllable::control_to_midi (float val)
|
|||
} else {
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
AutomationControl *actl = dynamic_cast<AutomationControl*> (controllable);
|
||||
if (actl) {
|
||||
control_min = actl->internal_to_interface(control_min);
|
||||
control_max = actl->internal_to_interface(control_max);
|
||||
control_range = control_max - control_min;
|
||||
val = actl->internal_to_interface(val);
|
||||
}
|
||||
}
|
||||
|
||||
return (val - control_min) / control_range * max_value_for_type ();
|
||||
|
|
@ -198,8 +206,17 @@ MIDIControllable::midi_to_control (int val)
|
|||
|
||||
float control_min = controllable->lower ();
|
||||
float control_max = controllable->upper ();
|
||||
const float control_range = control_max - control_min;
|
||||
float control_range = control_max - control_min;
|
||||
|
||||
AutomationControl *actl = dynamic_cast<AutomationControl*> (controllable);
|
||||
if (actl) {
|
||||
if (fv == 0.f) return control_min;
|
||||
if (fv == 1.f) return control_max;
|
||||
control_min = actl->internal_to_interface(control_min);
|
||||
control_max = actl->internal_to_interface(control_max);
|
||||
control_range = control_max - control_min;
|
||||
return actl->interface_to_internal((fv * control_range) + control_min);
|
||||
}
|
||||
return (fv * control_range) + control_min;
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue