#include "wx/pen.h"
#include "wx/palette.h"
#include "wx/list.h" // we use wxList in inline functions
+#include "wx/dynarray.h"
class WXDLLEXPORT wxDC;
class WXDLLEXPORT wxDCBase;
wxCoord xoffset = 0, wxCoord yoffset = 0,
int fillStyle = wxODDEVEN_RULE);
+ void DrawPolyPolygon(int n, int count[], wxPoint points[],
+ wxCoord xoffset = 0, wxCoord yoffset = 0,
+ int fillStyle = wxODDEVEN_RULE)
+ { DoDrawPolyPolygon(n, count, points, xoffset, yoffset, fillStyle); }
+
void DrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height)
{ DoDrawRectangle(x, y, width, height); }
void DrawRectangle(const wxPoint& pt, const wxSize& sz)
wxCoord *heightLine = NULL,
wxFont *font = NULL);
+ // Measure cumulative width of text after each character
+ bool GetPartialTextExtents(const wxString& text, wxArrayInt& widths) const
+ { return DoGetPartialTextExtents(text, widths); }
+
+
// size and resolution
// -------------------
// ------------------
// for compatibility with the old code when wxCoord was long everywhere
-#ifndef __WIN16__
void GetTextExtent(const wxString& string,
long *x, long *y,
long *descent = NULL,
if (w) *w = ww;
if (h) *h = hh;
}
-#endif // !Win16
protected:
// the pure virtual functions which should be implemented by wxDC
virtual void DoDrawPolygon(int n, wxPoint points[],
wxCoord xoffset, wxCoord yoffset,
int fillStyle = wxODDEVEN_RULE) = 0;
+ virtual void DoDrawPolyPolygon(int n, int count[], wxPoint points[],
+ wxCoord xoffset, wxCoord yoffset,
+ int fillStyle);
virtual void DoSetClippingRegionAsRegion(const wxRegion& region) = 0;
virtual void DoSetClippingRegion(wxCoord x, wxCoord y,
wxCoord *descent = NULL,
wxCoord *externalLeading = NULL,
wxFont *theFont = NULL) const = 0;
-
+
+ virtual bool DoGetPartialTextExtents(const wxString& text, wxArrayInt& widths) const;
+
#if wxUSE_SPLINES
virtual void DoDrawSpline(wxList *points);
#endif