- if ( m_headerWin )
- {
-#if defined( __WXMAC__ ) && wxOSX_USE_COCOA_OR_CARBON
- SInt32 h;
- GetThemeMetric( kThemeMetricListHeaderHeight, &h );
-#else
- // we use 'g' to get the descent, too
- int w, h, d;
- m_headerWin->GetTextExtent(wxT("Hg"), &w, &h, &d);
- h += d + 2 * HEADER_OFFSET_Y + EXTRA_HEIGHT;
-#endif
-
- // only update if changed
- if ( h != m_headerHeight )
- {
- m_headerHeight = h;
-
- if ( HasHeader() )
- ResizeReportView(true);
- else //why is this needed if it doesn't have a header?
- m_headerWin->SetSize(m_headerWin->GetSize().x, m_headerHeight);
- }
- }
-}
+ bool needs_header = HasHeader();
+ bool has_header = (m_headerWin != NULL);
+
+ if (needs_header == has_header)
+ return;