Added virtual wxPGProperty::ValueToString(). In derived property classes, now it must be implemented instead of GetValueAsString (assertion failure is raised at run-time if you fail to do so). This change is needed to properly support wxEVT_PG_CHANGING for nested composite string properties. wxPGProperty::GenerateComposedValue() partially updated to support this.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56363 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -513,16 +513,29 @@ wxArrayDoubleProperty::~wxArrayDoubleProperty () { }
|
||||
|
||||
void wxArrayDoubleProperty::OnSetValue()
|
||||
{
|
||||
// Generate cached display string, to optimize grid drawing
|
||||
GenerateValueAsString( m_display, m_precision, true );
|
||||
}
|
||||
|
||||
wxString wxArrayDoubleProperty::GetValueAsString( int arg_flags ) const
|
||||
wxString wxArrayDoubleProperty::ValueToString( wxVariant& value,
|
||||
int argFlags ) const
|
||||
{
|
||||
if ( !(arg_flags & wxPG_FULL_VALUE ))
|
||||
return m_display;
|
||||
|
||||
wxString s;
|
||||
GenerateValueAsString(s,-1,false);
|
||||
|
||||
if ( argFlags & wxPG_FULL_VALUE )
|
||||
{
|
||||
GenerateValueAsString(s,-1,false);
|
||||
}
|
||||
else
|
||||
{
|
||||
//
|
||||
// Display cached string only if value truly matches m_value
|
||||
if ( value.GetData() == m_value.GetData() )
|
||||
return m_display;
|
||||
else
|
||||
GenerateValueAsString( s, m_precision, true );
|
||||
}
|
||||
|
||||
return s;
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user