+#if wxCHECK_VERSION_FULL(2, 7, 0, 1)
+ int numColumns = GetColumnCount();
+ for ( int i = 0; i < numColumns && x < w; i++ )
+ {
+ if (!IsColumnShown (i)) continue; // do next column if not shown
+
+ wxHeaderButtonParams params;
+
+ // TODO: columnInfo should have label colours...
+ params.m_labelColour = wxSystemSettings::GetColour( wxSYS_COLOUR_WINDOWTEXT );
+ params.m_labelFont = GetFont();
+
+ wxTreeListColumnInfo& column = GetColumn(i);
+ int wCol = column.GetWidth();
+ int flags = 0;
+ wxRect rect(x, 0, wCol, h);
+ x += wCol;
+
+ if ( i == m_hotTrackCol)
+ flags |= wxCONTROL_CURRENT;
+
+ params.m_labelText = column.GetText();
+ params.m_labelAlignment = column.GetAlignment();
+
+ int image = column.GetImage();
+ wxImageList* imageList = m_owner->GetImageList();
+ if ((image != -1) && imageList)
+ params.m_labelBitmap = imageList->GetBitmap(image);
+
+ wxRendererNative::Get().DrawHeaderButton(this, dc, rect, flags,
+ wxHDR_SORT_ICON_NONE, ¶ms);
+ }
+
+ if (x < w) {
+ wxRect rect(x, 0, w-x, h);
+ wxRendererNative::Get().DrawHeaderButton(this, dc, rect);
+ }
+
+#else // not 2.7.0.1+
+
+ dc.SetFont( GetFont() );
+