Hi Geoff,
Found some time to work on the X32 again.
I made a small mod to the code that will select the appropriate fader bank on the X32 when a channel is selected on reaper.
For example,
If I select any channels on reaper between 1 and 16, the X32 will automatically select X32 channel bank 1.
If I select any channels on reaper between 17 and 32, the X32 will automatically select X32 channel bank 2.
etc ... in banks of 16 channels.
Thus any channel selected in Repear will automatically select the approprite channel bank on the X32.
Old Code:
Code:
void OSC_IntFeedbackProcessor::ForceValue(map<string, string> &properties, double value)
{
lastDoubleValue_ = value;
if (surface_->IsX32() && oscAddress_.find("/-stat/selidx") != string::npos)
{
if (value != 0.0)
surface_->SendOSCMessage(this, "/-stat/selidx", widget_->GetChannelNumber() - 1);
}
else
surface_->SendOSCMessage(this, oscAddress_, (int)value);
}
New channel banking code:
Code:
void OSC_IntFeedbackProcessor::ForceValue(map<string, string> &properties, double value)
{
lastDoubleValue_ = value;
if (surface_->IsX32() && oscAddress_.find("/-stat/selidx") != string::npos)
{
if (value != 0.0)
{
surface_->SendOSCMessage(this, "/-stat/selidx", widget_->GetChannelNumber() -1);
surface_->SendOSCMessage(this, "/-stat/chfaderbank", (widget_->GetChannelNumber() -1) / 16);
}
}
else
surface_->SendOSCMessage(this, oscAddress_, (int)value);
}
Could you add this to the next build?