#include "wx/mac/private.h"
#endif
-#ifdef __WXGTK__
- #include "wx/gtk/private.h"
- #include "wx/gtk/win_gtk.h"
-#endif
-
// -----------------------------------------------------------------------------
// array types
// -----------------------------------------------------------------------------
x=0;
GetVirtualSize(&w, &h);
wxRect rect( x, item->GetY()+offset, w, total_h-offset);
-#ifndef __WXGTK__
+#ifndef __WXGTK20__
dc.DrawRectangle(rect);
#else
if (!item->IsSelected())
}
else
{
- CalcScrolledPosition( rect.x, rect.y, &rect.x, &rect.y );
-
- gtk_paint_flat_box( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- GTK_SHADOW_NONE,
- NULL,
- m_wxwindow,
- "cell_even",
- rect.x, rect.y, rect.width, rect.height );
-
+ int flags = wxCONTROL_SELECTED;
+ if (m_hasFocus)
+ flags |= wxCONTROL_FOCUSED;
if ((item == m_current) && (m_hasFocus))
- gtk_paint_focus( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- NULL,
- m_wxwindow,
- "treeview",
- rect.x, rect.y, rect.width, rect.height );
+ flags |= wxCONTROL_CURRENT;
+ wxRendererNative::Get().DrawItemSelectionRect( this, dc, rect, flags );
}
#endif
}
// background colour.
wxRect rect( item->GetX() + image_w - 2, item->GetY()+offset,
item->GetWidth() - image_w + 2, total_h-offset );
-#ifndef __WXGTK__
+#ifndef __WXGTK20__
dc.DrawRectangle( rect );
#else
- CalcScrolledPosition( rect.x, rect.y, &rect.x, &rect.y );
rect.x -= 1;
rect.width += 2;
- gtk_paint_flat_box( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- GTK_SHADOW_NONE,
- NULL,
- m_wxwindow,
- "cell_even",
- rect.x, rect.y, rect.width, rect.height );
-
+ int flags = wxCONTROL_SELECTED;
+ if (m_hasFocus)
+ flags |= wxCONTROL_FOCUSED;
if ((item == m_current) && (m_hasFocus))
- gtk_paint_focus( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- NULL,
- m_wxwindow,
- "treeview",
- rect.x, rect.y, rect.width, rect.height );
-
+ flags |= wxCONTROL_CURRENT;
+ wxRendererNative::Get().DrawItemSelectionRect( this, dc, rect, flags );
#endif
}
// On GTK+ 2, drawing a 'normal' background is wrong for themes that
{
wxRect rect( item->GetX()-2, item->GetY()+offset,
item->GetWidth()+2, total_h-offset );
-#ifndef __WXGTK__
+#ifndef __WXGTK20__
dc.DrawRectangle( rect );
#else
if ( attr && attr->HasBackgroundColour() )
}
else
{
- CalcScrolledPosition( rect.x, rect.y, &rect.x, &rect.y );
rect.x -= 1;
rect.width += 2;
-
- gtk_paint_flat_box( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- GTK_SHADOW_NONE,
- NULL,
- m_wxwindow,
- "cell_even",
- rect.x, rect.y, rect.width, rect.height );
-
+
+ int flags = wxCONTROL_SELECTED;
+ if (m_hasFocus)
+ flags |= wxCONTROL_FOCUSED;
if ((item == m_current) && (m_hasFocus))
- gtk_paint_focus( m_widget->style,
- GTK_PIZZA(m_wxwindow)->bin_window,
- GTK_STATE_SELECTED,
- NULL,
- m_wxwindow,
- "treeview",
- rect.x, rect.y, rect.width, rect.height );
+ flags |= wxCONTROL_CURRENT;
+ wxRendererNative::Get().DrawItemSelectionRect( this, dc, rect, flags );
}
#endif
}