// headers
// ---------------------------------------------------------------------------
-#ifdef __GNUG__
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
#pragma implementation "dc.h"
#endif
#include "wx/icon.h"
#endif
+#include "wx/msw/private.h" // needs to be before #include <commdlg.h>
+
#include "wx/sysopt.h"
#include "wx/dcprint.h"
#include "wx/module.h"
#include <string.h>
#include <math.h>
-#include "wx/msw/private.h" // needs to be before #include <commdlg.h>
-
#if wxUSE_COMMON_DIALOGS && !defined(__WXMICROWIN__)
#include <commdlg.h>
#endif
COLORREF m_colFgOld, m_colBgOld;
bool m_changed;
+
+ DECLARE_NO_COPY_CLASS(wxColourChanger)
};
// this class saves the old stretch blit mode during its life time
const HDC m_hdc;
int m_modeOld;
+
+ DECLARE_NO_COPY_CLASS(StretchBltModeChanger)
};
// ===========================================================================
wxCoord xc, wxCoord yc)
{
#ifdef __WXWINCE__
- // FIXME: emulate Arc
+ // Slower emulation since WinCE doesn't support Pie and Arc
+ double r = sqrt( (x1-xc)*(x1-xc) + (y1-yc)*(y1-yc) );
+ double sa = acos((x1-xc)/r)/M_PI*180; // between 0 and 180
+ if( y1>yc ) sa = -sa; // below center
+ double ea = atan2(yc-y2, x2-xc)/M_PI*180;
+ DoDrawEllipticArcRot( xc-r, yc-r, 2*r, 2*r, sa, ea );
#else
#ifdef __WXMICROWIN__
void wxDC::DoDrawEllipticArc(wxCoord x,wxCoord y,wxCoord w,wxCoord h,double sa,double ea)
{
#ifdef __WXWINCE__
- // FIXME
+ DoDrawEllipticArcRot( x, y, w, h, sa, ea );
#else
#ifdef __WXMICROWIN__