mirror of
https://github.com/UpsilonNumworks/Upsilon.git
synced 2026-01-19 00:37:25 +01:00
[apps/shared] Templatize FloatParameterController to handle float/double
parameters. Fix bug: when entering "e^234" as a parameter of a model keeping floats, the FloatParameterController would accept the number (because e^234 is defined in double) and store an undefined value in the model (because e^234 is undefined in float).
This commit is contained in:
@@ -6,7 +6,7 @@ using namespace Poincare;
|
||||
namespace Shared {
|
||||
|
||||
RangeParameterController::RangeParameterController(Responder * parentResponder, InputEventHandlerDelegate * inputEventHandlerDelegate, InteractiveCurveViewRange * interactiveRange) :
|
||||
FloatParameterController(parentResponder),
|
||||
FloatParameterController<float>(parentResponder),
|
||||
m_interactiveRange(interactiveRange),
|
||||
m_xRangeCells{},
|
||||
m_yRangeCells{},
|
||||
@@ -79,14 +79,14 @@ bool RangeParameterController::handleEvent(Ion::Events::Event event) {
|
||||
return FloatParameterController::handleEvent(event);
|
||||
}
|
||||
|
||||
double RangeParameterController::parameterAtIndex(int parameterIndex) {
|
||||
float RangeParameterController::parameterAtIndex(int parameterIndex) {
|
||||
ParameterGetterPointer getters[k_numberOfTextCell] = {&InteractiveCurveViewRange::xMin,
|
||||
&InteractiveCurveViewRange::xMax, &InteractiveCurveViewRange::yMin, &InteractiveCurveViewRange::yMax};
|
||||
int index = parameterIndex > 2 ? parameterIndex - 1 : parameterIndex;
|
||||
return (m_interactiveRange->*getters[index])();
|
||||
}
|
||||
|
||||
bool RangeParameterController::setParameterAtIndex(int parameterIndex, double f) {
|
||||
bool RangeParameterController::setParameterAtIndex(int parameterIndex, float f) {
|
||||
ParameterSetterPointer setters[k_numberOfTextCell] = {&InteractiveCurveViewRange::setXMin,
|
||||
&InteractiveCurveViewRange::setXMax, &InteractiveCurveViewRange::setYMin, &InteractiveCurveViewRange::setYMax};
|
||||
int index = parameterIndex > 2 ? parameterIndex - 1 : parameterIndex;
|
||||
|
||||
Reference in New Issue
Block a user