mirror of
https://github.com/cookiengineer/audacity
synced 2025-08-11 17:41:15 +02:00
further constraints, against negative pasted frequencies that wxValidator doesn't prevent
This commit is contained in:
parent
1589720d93
commit
588d2976b0
@ -576,19 +576,15 @@ void ChangePitchDialog::OnText_FromFrequency(wxCommandEvent & WXUNUSED(event))
|
|||||||
|
|
||||||
if (m_pTextCtrl_FromFrequency) {
|
if (m_pTextCtrl_FromFrequency) {
|
||||||
wxString str = m_pTextCtrl_FromFrequency->GetValue();
|
wxString str = m_pTextCtrl_FromFrequency->GetValue();
|
||||||
// Empty string causes unpredictable results with ToDouble() and later calculations.
|
|
||||||
if (str.IsEmpty())
|
|
||||||
{
|
|
||||||
this->FindWindow(wxID_OK)->Disable();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
double newDouble;
|
double newDouble;
|
||||||
str.ToDouble(&newDouble);
|
str.ToDouble(&newDouble);
|
||||||
// Zero frequency makes no sense, but user might still be editing,
|
// Empty string causes unpredictable results with ToDouble() and later calculations.
|
||||||
|
// Non-positive frequency makes no sense, but user might still be editing,
|
||||||
// so it's not an error, but we do not want to update the values/controls.
|
// so it's not an error, but we do not want to update the values/controls.
|
||||||
if (newDouble == 0.0)
|
if (str.IsEmpty() || (newDouble <= 0.0) )
|
||||||
{
|
{
|
||||||
this->FindWindow(wxID_OK)->Disable();
|
this->FindWindow(wxID_OK)->Disable();
|
||||||
|
this->FindWindow(ID_EFFECT_PREVIEW)->Disable();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
m_FromFrequency = newDouble;
|
m_FromFrequency = newDouble;
|
||||||
@ -614,19 +610,15 @@ void ChangePitchDialog::OnText_ToFrequency(wxCommandEvent & WXUNUSED(event))
|
|||||||
|
|
||||||
if (m_pTextCtrl_ToFrequency) {
|
if (m_pTextCtrl_ToFrequency) {
|
||||||
wxString str = m_pTextCtrl_ToFrequency->GetValue();
|
wxString str = m_pTextCtrl_ToFrequency->GetValue();
|
||||||
// Empty string causes unpredictable results with ToDouble() and later calculations.
|
|
||||||
if (str.IsEmpty())
|
|
||||||
{
|
|
||||||
this->FindWindow(wxID_OK)->Disable();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
double newDouble;
|
double newDouble;
|
||||||
str.ToDouble(&newDouble);
|
str.ToDouble(&newDouble);
|
||||||
// Zero frequency makes no sense, but user might still be editing,
|
// Empty string causes unpredictable results with ToDouble() and later calculations.
|
||||||
|
// Non-positive frequency makes no sense, but user might still be editing,
|
||||||
// so it's not an error, but we do not want to update the values/controls.
|
// so it's not an error, but we do not want to update the values/controls.
|
||||||
if (newDouble == 0.0)
|
if (str.IsEmpty() || (newDouble <= 0.0) )
|
||||||
{
|
{
|
||||||
this->FindWindow(wxID_OK)->Disable();
|
this->FindWindow(wxID_OK)->Disable();
|
||||||
|
this->FindWindow(ID_EFFECT_PREVIEW)->Disable();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
m_ToFrequency = newDouble;
|
m_ToFrequency = newDouble;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user