From 8a80463476543a7df7990390a82ab19517fbf583 Mon Sep 17 00:00:00 2001 From: Damjan Adamic Date: Mon, 3 Nov 2014 22:15:05 +0100 Subject: [PATCH] Re #1783: NOT curves removed from inputs (for non ARM platforms) --- companion/src/helpers.cpp | 10 ++++++---- companion/src/helpers.h | 5 +++-- companion/src/modeledit/expodialog.cpp | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/companion/src/helpers.cpp b/companion/src/helpers.cpp index c4769835d..f55237aff 100644 --- a/companion/src/helpers.cpp +++ b/companion/src/helpers.cpp @@ -273,11 +273,13 @@ void CurveGroup::update() if (lastType != curve.type) { lastType = curve.type; curveValueCB->clear(); - for (int i=-numcurves; i<=numcurves; i++) { - curveValueCB->addItem(CurveReference(CurveReference::CURVE_REF_CUSTOM, i).toString()); + for (int i= ((flags & HIDE_NEGATIVE_CURVES) ? 0 : -numcurves); i<=numcurves; i++) { + curveValueCB->addItem(CurveReference(CurveReference::CURVE_REF_CUSTOM, i).toString(), i); + if (i == curve.value) { + curveValueCB->setCurrentIndex(curveValueCB->count() - 1); + } } } - curveValueCB->setCurrentIndex(curve.value+numcurves); break; } default: @@ -344,7 +346,7 @@ void CurveGroup::valuesChanged() curve = CurveReference(CurveReference::CURVE_REF_FUNC, curveValueCB->currentIndex()); break; case 3: - curve = CurveReference(CurveReference::CURVE_REF_CUSTOM, curveValueCB->currentIndex() - GetCurrentFirmware()->getCapability(NumCurves)); + curve = CurveReference(CurveReference::CURVE_REF_CUSTOM, curveValueCB->itemData(curveValueCB->currentIndex()).toInt()); break; } diff --git a/companion/src/helpers.h b/companion/src/helpers.h index 32ef60171..6c73b5eaf 100644 --- a/companion/src/helpers.h +++ b/companion/src/helpers.h @@ -57,8 +57,9 @@ class GVarGroup: public QObject { bool lock; }; -#define HIDE_DIFF 1 -#define HIDE_EXPO 2 +#define HIDE_DIFF 0x01 +#define HIDE_EXPO 0x02 +#define HIDE_NEGATIVE_CURVES 0x04 class CurveGroup : public QObject { diff --git a/companion/src/modeledit/expodialog.cpp b/companion/src/modeledit/expodialog.cpp index 9932d3d2d..a9afaba3d 100644 --- a/companion/src/modeledit/expodialog.cpp +++ b/companion/src/modeledit/expodialog.cpp @@ -31,7 +31,7 @@ ExpoDialog::ExpoDialog(QWidget *parent, ModelData & model, ExpoData *expoData, G ui->offsetCB->hide(); } - curveGroup = new CurveGroup(ui->curveTypeCB, ui->curveGVarCB, ui->curveValueCB, ui->curveValueSB, ed->curve, firmware->getCapability(HasInputDiff) ? 0 : HIDE_DIFF); + curveGroup = new CurveGroup(ui->curveTypeCB, ui->curveGVarCB, ui->curveValueCB, ui->curveValueSB, ed->curve, firmware->getCapability(HasInputDiff) ? 0 : (HIDE_DIFF | HIDE_NEGATIVE_CURVES)); populateSwitchCB(ui->switchesCB, ed->swtch, generalSettings, MixesContext);