-
-
Notifications
You must be signed in to change notification settings - Fork 21
Closed
Labels
Description
Experiments showed a somewhat strange behavior when it comes to setting track pan (via CSurf_OnPanChangeEx) to a value which is very close to center (0.01 ... so not many decimal places). After doing this, GetTrackUIVolPan still reports 0.0. Interestingly, this happens only with extensions, not in ReaScript (Lua). As always, I use Rust for the extension, but floating point numbers are the same as with C++ so this shouldn't matter.
Lua:
track = reaper.GetSelectedTrack(0, 0);
reaper.CSurf_OnPanChangeEx(track, 0.0, false, false);
ret, vol, panBefore = reaper.GetTrackUIVolPan(track);
reaper.CSurf_OnPanChangeEx(track, 0.01, false, false);
ret, vol, panAfter = reaper.GetTrackUIVolPan(track);Rust:
// Given
reaper.csurf_on_pan_change_ex(track, Absolute(ReaperPanValue::new(0.0)), DenyGang);
let pan_before = reaper.get_track_ui_vol_pan(track)?.pan;
assert_eq!(pan_before.get(), 0.0);
// When
reaper.csurf_on_pan_change_ex(track, Absolute(ReaperPanValue::new(0.01)), DenyGang);
// Then
let pan_after = reaper.get_track_ui_vol_pan(track)?.pan;
assert_eq!(pan_after.get(), 0.0);Reactions are currently unavailable