Commit 3f2fc340 authored by Maciej Suminski's avatar Maciej Suminski
Browse files

WX_UNIT_TEXT can handle default value.

parent e2feefc0
Loading
Loading
Loading
Loading
+10 −2
Original line number Original line Diff line number Diff line
@@ -101,13 +101,15 @@ void WX_UNIT_TEXT::SetUnits( EDA_UNITS_T aUnits, bool aConvert )


void WX_UNIT_TEXT::SetValue( double aValue )
void WX_UNIT_TEXT::SetValue( double aValue )
{
{
    assert( aValue >= 0.0 );

    if( aValue >= 0.0 )
    if( aValue >= 0.0 )
    {
    {
        m_inputValue->SetValue( wxString( Double2Str( aValue ).c_str(), wxConvUTF8 ) );
        m_inputValue->SetValue( wxString( Double2Str( aValue ).c_str(), wxConvUTF8 ) );
        m_inputValue->MarkDirty();
        m_inputValue->MarkDirty();
    }
    }
    else
    {
        m_inputValue->SetValue( DEFAULT_VALUE );
    }
}
}




@@ -169,6 +171,9 @@ boost::optional<double> WX_UNIT_TEXT::GetValue() const
    wxString text = m_inputValue->GetValue();
    wxString text = m_inputValue->GetValue();
    double value;
    double value;


    if( text == DEFAULT_VALUE )
        return boost::optional<double>( -1.0 );

    if( !text.ToDouble( &value ) )
    if( !text.ToDouble( &value ) )
        return boost::optional<double>();
        return boost::optional<double>();


@@ -189,3 +194,6 @@ void WX_UNIT_TEXT::onSpinDownEvent( wxSpinEvent& aEvent )
    if( newValue >= 0.0 )
    if( newValue >= 0.0 )
        SetValue( newValue );
        SetValue( newValue );
}
}


const wxString WX_UNIT_TEXT::DEFAULT_VALUE = _( "default ");
+3 −0
Original line number Original line Diff line number Diff line
@@ -136,6 +136,9 @@ protected:


    ///> Step size (added/subtracted difference if spin buttons are used).
    ///> Step size (added/subtracted difference if spin buttons are used).
    double          m_step;
    double          m_step;

    ///> Default value (or non-specified)
    static const wxString DEFAULT_VALUE;
};
};


#endif /* WXUNITTEXT_H_ */
#endif /* WXUNITTEXT_H_ */