+ // Use DrawDropArrow on transparent background.
+
+ wxColour magic(255,0,255);
+ wxBrush magicBrush(magic);
+ r.x = -(borderX/2);
+ r.y = -(borderY/2);
+
+ dc.SetBrush( magicBrush );
+ dc.SetPen( *wxTRANSPARENT_PEN );
+ dc.DrawRectangle(0,0,bw,bh);
+ renderer.DrawDropArrow(this, dc, r);
+ dc.SelectObject( wxNullBitmap );
+ wxMask *mask = new wxMask( bmp, magic );
+ bmp.SetMask( mask );
+
+ dc.SelectObject(bmpSel);
+
+ dc.SetBrush( magicBrush );
+ dc.SetPen( *wxTRANSPARENT_PEN );
+ dc.DrawRectangle(0,0,bw,bh);
+ renderer.DrawDropArrow(this, dc, r, wxCONTROL_PRESSED);
+ dc.SelectObject( wxNullBitmap );
+ mask = new wxMask( bmpSel, magic );
+ bmpSel.SetMask( mask );
+ }
+ else
+ {
+ // Use DrawComboBoxDropButton for the entire button
+ // (also render extra "hot" button state).
+
+ renderer.DrawComboBoxDropButton(this, dc, r);