- // Left and top grey lines
- dc.DrawLine(rect.x, rect.y + rect.height,
- rect.x, rect.y);
- dc.DrawLine(rect.x, rect.y,
- rect.x + rect.width, rect.y);
-#else
- // Right
- dc.DrawLine(rect.x + rect.width, rect.y,
- rect.x + rect.width, rect.y + rect.height + 2);
- dc.SetPen(m_mediumShadowPen);
- dc.DrawLine(rect.x + rect.width + 1, rect.y,
- rect.x + rect.width + 1, rect.y + rect.height + 2);
- dc.DrawLine(rect.x + rect.width + 2, rect.y,
- rect.x + rect.width + 2, rect.y + rect.height + 2);
- // Top
- dc.DrawLine(rect.x + rect.width + 2, rect.y,
- rect.x - 2, rect.y);
- dc.DrawLine(rect.x + rect.width + 1, rect.y - 1,
- rect.x - 2, rect.y - 1);
- dc.SetPen(m_hilightPen);
- dc.DrawLine(rect.x + rect.width, rect.y - 2,
- rect.x - 2, rect.y - 2);
+#ifdef __WXGTK20__
+ // Draw grip first
+ if ( ShowsSizeGrip() )
+ {
+ const wxRect& rc = GetSizeGripRect();
+ GdkWindowEdge edge =
+ GetLayoutDirection() == wxLayout_RightToLeft ? GDK_WINDOW_EDGE_SOUTH_WEST :
+ GDK_WINDOW_EDGE_SOUTH_EAST;
+ gtk_paint_resize_grip( m_widget->style,
+ GTKGetDrawingWindow(),
+ (GtkStateType) GTK_WIDGET_STATE (m_widget),
+ NULL,
+ m_widget,
+ "statusbar",
+ edge,
+ rc.x, rc.y, rc.width, rc.height );
+ }
+#endif // __WXGTK20__