- // 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 - 3,
- rect.x + rect.width, rect.y + rect.height);
- dc.SetPen(m_mediumShadowPen);
- dc.DrawLine(rect.x + rect.width + 1, rect.y - 3,
- rect.x + rect.width + 1, rect.y + rect.height);
- dc.DrawLine(rect.x + rect.width + 2, rect.y - 3,
- rect.x + rect.width + 2, rect.y + rect.height);
- // Top
- dc.DrawLine(rect.x + rect.width + 2, rect.y + rect.height + 2,
- rect.x - 2, rect.y + rect.height + 2);
- dc.DrawLine(rect.x + rect.width + 1, rect.y + rect.height + 1,
- rect.x - 2, rect.y + rect.height + 1);
- dc.SetPen(m_hilightPen);
- dc.DrawLine(rect.x + rect.width, rect.y + rect.height,
- rect.x - 2, rect.y + rect.height);
+ if (style != wxSB_FLAT)
+ {
+ // Draw border
+ // For wxSB_NORMAL:
+ // Have grey background, plus 3-d border -
+ // One black rectangle.
+ // Inside this, left and top sides - dark grey. Bottom and right -
+ // white.
+ // Reverse it for wxSB_RAISED
+
+ dc.SetPen((style == wxSB_RAISED) ? m_mediumShadowPen : m_hilightPen);
+
+ #ifndef __WXPM__
+
+ // Right and bottom lines
+ dc.DrawLine(rect.x + rect.width, rect.y,
+ rect.x + rect.width, rect.y + rect.height);
+ dc.DrawLine(rect.x + rect.width, rect.y + rect.height,
+ rect.x, rect.y + rect.height);
+
+ dc.SetPen((style == wxSB_RAISED) ? m_hilightPen : m_mediumShadowPen);
+
+ // Left and top 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
+
+ dc.DrawLine(rect.x + rect.width, rect.height + 2,
+ rect.x, rect.height + 2);
+ dc.DrawLine(rect.x + rect.width, rect.y,
+ rect.x + rect.width, rect.y + rect.height);
+
+ dc.SetPen((style == wxSB_RAISED) ? m_hilightPen : m_mediumShadowPen);
+ dc.DrawLine(rect.x, rect.y,
+ rect.x + rect.width, rect.y);
+ dc.DrawLine(rect.x, rect.y + rect.height,
+ rect.x, rect.y);