X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/6e76b35d73fb5a043fd39af266bd452a6e20a861..2d73b710e1fb5d1e99b4bdbcbdbf301d3bce1bc2:/include/wx/dc.h diff --git a/include/wx/dc.h b/include/wx/dc.h index cb7d80bd14..f805dd61ac 100644 --- a/include/wx/dc.h +++ b/include/wx/dc.h @@ -29,6 +29,7 @@ #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; @@ -210,10 +211,10 @@ public: wxCoord xoffset = 0, wxCoord yoffset = 0, int fillStyle = wxODDEVEN_RULE); - void DrawPolyPolygon(int n, int start[], wxPoint points[], + void DrawPolyPolygon(int n, int count[], wxPoint points[], wxCoord xoffset = 0, wxCoord yoffset = 0, int fillStyle = wxODDEVEN_RULE) - { DoDrawPolyPolygon(n, start, points, xoffset, yoffset, fillStyle); } + { DoDrawPolyPolygon(n, count, points, xoffset, yoffset, fillStyle); } void DrawRectangle(wxCoord x, wxCoord y, wxCoord width, wxCoord height) { DoDrawRectangle(x, y, width, height); } @@ -427,6 +428,11 @@ public: 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 // ------------------- @@ -590,7 +596,6 @@ public: // ------------------ // 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, @@ -639,7 +644,6 @@ public: if (w) *w = ww; if (h) *h = hh; } -#endif // !Win16 protected: // the pure virtual functions which should be implemented by wxDC @@ -689,7 +693,7 @@ protected: virtual void DoDrawPolygon(int n, wxPoint points[], wxCoord xoffset, wxCoord yoffset, int fillStyle = wxODDEVEN_RULE) = 0; - virtual void DoDrawPolyPolygon(int n, int start[], wxPoint points[], + virtual void DoDrawPolyPolygon(int n, int count[], wxPoint points[], wxCoord xoffset, wxCoord yoffset, int fillStyle); @@ -734,7 +738,9 @@ protected: 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