const wxRect& rect,
int flags=0);
- virtual void DrawRadioButton(wxWindow* win,
+ virtual void DrawRadioBitmap(wxWindow* win,
wxDC& dc,
const wxRect& rect,
int flags=0);
const wxRect& rect,
int flags )
{
- GtkWidget *tree = wxGTKPrivate::GetTreeWidget();
-
GdkWindow* gdk_window = wxGetGdkWindowForDC(win, dc);
wxASSERT_MSG( gdk_window,
wxT("cannot use wxRendererNative on wxDC of this type") );
- int x_diff = 0;
- if (win->GetLayoutDirection() == wxLayout_RightToLeft)
- x_diff = rect.width;
-
- GtkStateType state = GTK_STATE_NORMAL;
-
if (flags & wxCONTROL_SELECTED)
{
+ int x_diff = 0;
+ if (win->GetLayoutDirection() == wxLayout_RightToLeft)
+ x_diff = rect.width;
+
// the wxCONTROL_FOCUSED state is deduced
// directly from the m_wxwindow by GTK+
- state = GTK_STATE_SELECTED;
-
- gtk_paint_flat_box( tree->style, // win->m_widget->style,
+ gtk_paint_flat_box(wxGTKPrivate::GetTreeWidget()->style,
gdk_window,
- state,
+ GTK_STATE_SELECTED,
GTK_SHADOW_NONE,
NULL,
win->m_wxwindow,
rect.width,
rect.height );
}
- else // !wxCONTROL_SELECTED
- {
- state = GTK_STATE_NORMAL;
- }
if ((flags & wxCONTROL_CURRENT) && (flags & wxCONTROL_FOCUSED))
- {
- if (flags & wxCONTROL_SELECTED)
- state = GTK_STATE_SELECTED;
-
- gtk_paint_focus( tree->style,
- gdk_window,
- state,
- NULL,
- win->m_wxwindow,
- // Detail "treeview" causes warning with GTK+ 2.12 Clearlooks theme:
- // "... no property named `row-ending-details'"
- // Using "treeview-middle" would fix the warning, but the right
- // edge of the focus rect is not getting erased properly either.
- // Better to not specify this detail unless the drawing is fixed.
- "",
- dc.LogicalToDeviceX(rect.x),
- dc.LogicalToDeviceY(rect.y),
- rect.width,
- rect.height );
- }
+ DrawFocusRect(win, dc, rect, flags);
}
void wxRendererGTK::DrawFocusRect(wxWindow* win, wxDC& dc, const wxRect& rect, int flags)
// Draw a themed radio button
-void wxRendererGTK::DrawRadioButton(wxWindow* win, wxDC& dc, const wxRect& rect, int flags)
+void wxRendererGTK::DrawRadioBitmap(wxWindow* win, wxDC& dc, const wxRect& rect, int flags)
{
GtkWidget *button = wxGTKPrivate::GetRadioButtonWidget();