diff options
Diffstat (limited to 'src/gpu/text/GrTextContext.h')
-rw-r--r-- | src/gpu/text/GrTextContext.h | 40 |
1 files changed, 13 insertions, 27 deletions
diff --git a/src/gpu/text/GrTextContext.h b/src/gpu/text/GrTextContext.h index 206b34a403..3de2ae2416 100644 --- a/src/gpu/text/GrTextContext.h +++ b/src/gpu/text/GrTextContext.h @@ -26,45 +26,31 @@ class SkTextBlob; */ class GrTextContext { public: - virtual ~GrTextContext(); - - void drawText(GrDrawContext* dc, - const GrClip&, const GrPaint&, const SkPaint&, - const SkMatrix& viewMatrix, const char text[], size_t byteLength, SkScalar x, - SkScalar y, const SkIRect& clipBounds); - void drawPosText(GrDrawContext* dc, - const GrClip&, const GrPaint&, const SkPaint&, - const SkMatrix& viewMatrix, - const char text[], size_t byteLength, - const SkScalar pos[], int scalarsPerPosition, - const SkPoint& offset, const SkIRect& clipBounds); + virtual ~GrTextContext() {} + + virtual void drawText(GrDrawContext* dc, + const GrClip&, const GrPaint&, const SkPaint&, + const SkMatrix& viewMatrix, const char text[], size_t byteLength, + SkScalar x, SkScalar y, const SkIRect& clipBounds) = 0; + virtual void drawPosText(GrDrawContext* dc, + const GrClip&, const GrPaint&, const SkPaint&, + const SkMatrix& viewMatrix, + const char text[], size_t byteLength, + const SkScalar pos[], int scalarsPerPosition, + const SkPoint& offset, const SkIRect& clipBounds) = 0; virtual void drawTextBlob(GrDrawContext* dc, const GrClip&, const SkPaint&, const SkMatrix& viewMatrix, const SkTextBlob*, SkScalar x, SkScalar y, - SkDrawFilter*, const SkIRect& clipBounds); + SkDrawFilter*, const SkIRect& clipBounds) = 0; static bool ShouldDisableLCD(const SkPaint& paint); protected: - GrTextContext* fFallbackTextContext; GrContext* fContext; SkSurfaceProps fSurfaceProps; GrTextContext(GrContext*, const SkSurfaceProps&); - virtual bool canDraw(const SkPaint&, const SkMatrix& viewMatrix) = 0; - - virtual void onDrawText(GrDrawContext*, const GrClip&, - const GrPaint&, const SkPaint&, - const SkMatrix& viewMatrix, const char text[], size_t byteLength, - SkScalar x, SkScalar y, const SkIRect& clipBounds) = 0; - virtual void onDrawPosText(GrDrawContext*, const GrClip&, - const GrPaint&, const SkPaint&, - const SkMatrix& viewMatrix, - const char text[], size_t byteLength, - const SkScalar pos[], int scalarsPerPosition, - const SkPoint& offset, const SkIRect& clipBounds) = 0; - static GrFontScaler* GetGrFontScaler(SkGlyphCache* cache); static uint32_t FilterTextFlags(const SkSurfaceProps& surfaceProps, const SkPaint& paint); |