#ifdef wxHAS_RAW_BITMAP
#include "wx/rawbmp.h"
#endif
+#if wxUSE_GRAPHICS_CONTEXT
+#include "wx/dcgraph.h"
+#endif
#include "Platform.h"
#include "PlatWX.h"
(unsigned char)cd.GetBlue());
}
+wxColour wxColourFromCAandAlpha(const ColourAllocated& ca, int alpha) {
+ ColourDesired cd(ca.AsLong());
+ return wxColour((unsigned char)cd.GetRed(),
+ (unsigned char)cd.GetGreen(),
+ (unsigned char)cd.GetBlue(),
+ (unsigned char)alpha);
+}
+
//----------------------------------------------------------------------
Palette::Palette() {
ColourAllocated fill, int alphaFill,
ColourAllocated outline, int alphaOutline,
int /*flags*/) {
+#if wxUSE_GRAPHICS_CONTEXT
+ wxGCDC dc(*(wxMemoryDC*)hdc);
+ wxColour penColour(wxColourFromCAandAlpha(outline, alphaOutline));
+ wxColour brushColour(wxColourFromCAandAlpha(fill, alphaFill));
+ dc.SetPen(wxPen(penColour));
+ dc.SetBrush(wxBrush(brushColour));
+ dc.DrawRoundedRectangle(wxRectFromPRectangle(rc), cornerSize);
+ return;
+#else
+
#ifdef wxHAS_RAW_BITMAP
// TODO: do something with cornerSize
wxUnusedVar(alphaOutline);
RectangleDraw(rc, outline, fill);
#endif
+#endif
}
void SurfaceImpl::Ellipse(PRectangle rc, ColourAllocated fore, ColourAllocated back) {