/** Update and save the crossfader's parameters from the dialog's widgets. **/ void DlgPrefCrossfader::slotUpdateXFader() { m_transform = 1. + ((double) SliderXFader->value() / SliderXFader->maximum() * MIXXX_XFADER_STEEPNESS_COEFF); m_cal = EngineXfader::getCalibration(m_transform); QString QS_transform = QString::number(m_transform); config->set(ConfigKey(CONFIG_KEY, "xFaderMode"), ConfigValue(m_xFaderMode)); config->set(ConfigKey(CONFIG_KEY, "xFaderCurve"), ConfigValue(QS_transform)); //config->set(ConfigKey(CONFIG_KEY, "xFaderCalibration"), ConfigValue(m_cal)); //FIXME: m_cal is a double - be forewarned config->set(ConfigKey(CONFIG_KEY, "xFaderReverse"), ConfigValue(checkBoxReverse->isChecked() ? 1 : 0)); drawXfaderDisplay(); }
// Update and save the crossfader's parameters from the dialog's widgets. void DlgPrefCrossfader::slotUpdateXFader() { // m_transform is in the range of 1 to 1000 while 50 % slider results // to ~2, which represents a medium rounded fader curve. m_transform = RescalerUtils::linearToOneByX( SliderXFader->value(), SliderXFader->minimum(), SliderXFader->maximum(), EngineXfader::kTransformMax) - 1 + EngineXfader::kTransformMin; m_cal = EngineXfader::getPowerCalibration(m_transform); m_config->set(ConfigKey(EngineXfader::kXfaderConfigKey, "xFaderMode"), ConfigValue(m_xFaderMode)); m_config->set(ConfigKey(EngineXfader::kXfaderConfigKey, "xFaderCurve"), ConfigValue(QString::number(m_transform))); m_config->set(ConfigKey(EngineXfader::kXfaderConfigKey, "xFaderReverse"), ConfigValue(checkBoxReverse->isChecked() ? 1 : 0)); drawXfaderDisplay(); }