/* * Copyright 2010 Google Inc. * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #ifndef GrDefaultTextContext_DEFINED #define GrDefaultTextContext_DEFINED #include "GrBatchedTextContext.h" struct GrGpuTextVertex; class GrTextStrike; class GrDefaultTextContext: public GrBatchedTextContext { public: GrDefaultTextContext(); ~GrDefaultTextContext(); virtual void drawPackedGlyph(GrGlyph::PackedID, GrFixed left, GrFixed top, GrFontScaler*) SK_OVERRIDE; protected: virtual void flush() SK_OVERRIDE; virtual void init(GrContext* context, const GrPaint&, const GrMatrix* extMatrix) SK_OVERRIDE; virtual void finish() SK_OVERRIDE; private: GrVertexLayout fVertexLayout; GrGpuTextVertex* fVertices; GrIRect fClipRect; GrTextStrike* fStrike; GrMatrix fExtMatrix; GrMatrix fOrigViewMatrix; // restore previous viewmatrix inline void flushGlyphs(); typedef GrBatchedTextContext INHERITED; }; #endif