Check for valid input in min/max/step fields (#1270)
This commit is contained in:
parent
2104059f72
commit
4c8e1cb5f0
@ -9,6 +9,9 @@
|
||||
|
||||
namespace CalculatorApp::ViewModel
|
||||
{
|
||||
|
||||
inline constexpr int DefaultMinMaxRange = 10;
|
||||
|
||||
public
|
||||
value struct VariableChangedEventArgs sealed
|
||||
{
|
||||
@ -40,6 +43,12 @@ public
|
||||
{
|
||||
if (m_variable->Min != value)
|
||||
{
|
||||
if (value >= m_variable->Max)
|
||||
{
|
||||
m_variable->Max = value + DefaultMinMaxRange;
|
||||
RaisePropertyChanged("Max");
|
||||
}
|
||||
|
||||
m_variable->Min = value;
|
||||
RaisePropertyChanged("Min");
|
||||
}
|
||||
@ -72,6 +81,12 @@ public
|
||||
{
|
||||
if (m_variable->Max != value)
|
||||
{
|
||||
if (value <= m_variable->Min)
|
||||
{
|
||||
m_variable->Min = value - DefaultMinMaxRange;
|
||||
RaisePropertyChanged("Min");
|
||||
}
|
||||
|
||||
m_variable->Max = value;
|
||||
RaisePropertyChanged("Max");
|
||||
}
|
||||
|
@ -402,6 +402,7 @@ void EquationInputArea::SubmitTextbox(TextBox ^ sender)
|
||||
else if (sender->Name == "MinTextBox")
|
||||
{
|
||||
val = validateDouble(sender->Text, variableViewModel->Min);
|
||||
|
||||
variableViewModel->Min = val;
|
||||
TraceLogger::GetInstance()->LogVariableSettingsChanged(L"MinTextBox");
|
||||
}
|
||||
@ -414,6 +415,13 @@ void EquationInputArea::SubmitTextbox(TextBox ^ sender)
|
||||
else if (sender->Name == "StepTextBox")
|
||||
{
|
||||
val = validateDouble(sender->Text, variableViewModel->Step);
|
||||
|
||||
// Don't allow a value less than or equal to 0 as the step
|
||||
if (val <= 0)
|
||||
{
|
||||
val = variableViewModel->Step;
|
||||
}
|
||||
|
||||
variableViewModel->Step = val;
|
||||
TraceLogger::GetInstance()->LogVariableSettingsChanged(L"StepTextBox");
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user