+ // we don't need to refresh the fields whose width didn't change, so find
+ // the first field whose width did change and refresh starting from it
+ size_t field;
+ if ( m_bSameWidthForAllPanes )
+ {
+ // hence all fields widths have changed
+ field = 0;
+ }
+ else
+ {
+ for ( field = 0; field < m_panes.GetCount(); field++ )
+ {
+ if ( m_panes[field].nWidth < 0 )
+ {
+ // var width field
+ break;
+ }
+ }
+ }
+
+ if ( field < m_panes.GetCount() )
+ {
+ // call this before invalidating the old widths as we want to use them,
+ // not the new ones
+ wxRect rect = DoGetFieldRect(field);
+
+ // invalidate the widths, we'll have to recalc them
+ m_widthsAbs.Empty();