| Index: gm/gammatext.cpp
|
| diff --git a/gm/gammatext.cpp b/gm/gammatext.cpp
|
| index 54b0765783866de0522cdcaafa6bf36645ef0551..b10bd1a111aaea7f00e99a17e517588bd541a5cd 100644
|
| --- a/gm/gammatext.cpp
|
| +++ b/gm/gammatext.cpp
|
| @@ -12,12 +12,6 @@
|
| #include "SkTypeface.h"
|
|
|
| static SkShader* make_heatGradient(const SkPoint pts[2]) {
|
| -#if 0 // UNUSED
|
| - const SkColor colors[] = {
|
| - SK_ColorBLACK, SK_ColorBLUE, SK_ColorCYAN, SK_ColorGREEN,
|
| - SK_ColorYELLOW, SK_ColorRED, SK_ColorWHITE
|
| - };
|
| -#endif
|
| const SkColor bw[] = { SK_ColorBLACK, SK_ColorWHITE };
|
|
|
| return SkGradientShader::CreateLinear(pts, bw, NULL,
|
| @@ -34,71 +28,6 @@ static bool setFont(SkPaint* paint, const char name[]) {
|
| return false;
|
| }
|
|
|
| -#ifdef SK_BUILD_FOR_MAC
|
| -#import <ApplicationServices/ApplicationServices.h>
|
| -#define BITMAP_INFO_RGB (kCGImageAlphaNoneSkipFirst | kCGBitmapByteOrder32Host)
|
| -
|
| -static CGContextRef makeCG(const SkImageInfo& info, const void* addr,
|
| - size_t rowBytes) {
|
| - if (kN32_SkColorType != info.colorType() || NULL == addr) {
|
| - return NULL;
|
| - }
|
| - CGColorSpaceRef space = CGColorSpaceCreateDeviceRGB();
|
| - CGContextRef cg = CGBitmapContextCreate((void*)addr, info.width(), info.height(),
|
| - 8, rowBytes, space, BITMAP_INFO_RGB);
|
| - CFRelease(space);
|
| -
|
| - CGContextSetAllowsFontSubpixelQuantization(cg, false);
|
| - CGContextSetShouldSubpixelQuantizeFonts(cg, false);
|
| -
|
| - return cg;
|
| -}
|
| -
|
| -extern CTFontRef SkTypeface_GetCTFontRef(const SkTypeface* face);
|
| -
|
| -static CGFontRef typefaceToCGFont(const SkTypeface* face) {
|
| - if (NULL == face) {
|
| - return 0;
|
| - }
|
| -
|
| - CTFontRef ct = SkTypeface_GetCTFontRef(face);
|
| - return CTFontCopyGraphicsFont(ct, NULL);
|
| -}
|
| -
|
| -static void cgSetPaintForText(CGContextRef cg, const SkPaint& paint) {
|
| - SkColor c = paint.getColor();
|
| - CGFloat rgba[] = {
|
| - SkColorGetB(c) / 255.0f,
|
| - SkColorGetG(c) / 255.0f,
|
| - SkColorGetR(c) / 255.0f,
|
| - SkColorGetA(c) / 255.0f,
|
| - };
|
| - CGContextSetRGBFillColor(cg, rgba[0], rgba[1], rgba[2], rgba[3]);
|
| -
|
| - CGContextSetTextDrawingMode(cg, kCGTextFill);
|
| - CGContextSetFont(cg, typefaceToCGFont(paint.getTypeface()));
|
| - CGContextSetFontSize(cg, SkScalarToFloat(paint.getTextSize()));
|
| -
|
| - CGContextSetAllowsFontSubpixelPositioning(cg, paint.isSubpixelText());
|
| - CGContextSetShouldSubpixelPositionFonts(cg, paint.isSubpixelText());
|
| -
|
| - CGContextSetShouldAntialias(cg, paint.isAntiAlias());
|
| - CGContextSetShouldSmoothFonts(cg, paint.isLCDRenderText());
|
| -}
|
| -
|
| -static void cgDrawText(CGContextRef cg, const void* text, size_t len,
|
| - float x, float y, const SkPaint& paint) {
|
| - if (cg) {
|
| - cgSetPaintForText(cg, paint);
|
| -
|
| - uint16_t glyphs[200];
|
| - int count = paint.textToGlyphs(text, len, glyphs);
|
| -
|
| - CGContextShowGlyphsAtPoint(cg, x, y, glyphs, count);
|
| - }
|
| -}
|
| -#endif
|
| -
|
| /**
|
| Test a set of clipping problems discovered while writing blitAntiRect,
|
| and test all the code paths through the clipping blitters.
|
| @@ -109,28 +38,18 @@ static void cgDrawText(CGContextRef cg, const void* text, size_t len,
|
| #define HEIGHT 480
|
|
|
| class GammaTextGM : public skiagm::GM {
|
| -public:
|
| - GammaTextGM() {
|
| -
|
| - }
|
| -
|
| protected:
|
| - virtual SkString onShortName() {
|
| + SkString onShortName() SK_OVERRIDE {
|
| return SkString("gammatext");
|
| }
|
|
|
| - virtual SkISize onISize() {
|
| + SkISize onISize() SK_OVERRIDE {
|
| return SkISize::Make(1024, HEIGHT);
|
| }
|
|
|
| static void drawGrad(SkCanvas* canvas) {
|
| SkPoint pts[] = { { 0, 0 }, { 0, SkIntToScalar(HEIGHT) } };
|
| -#if 0
|
| - const SkColor colors[] = { SK_ColorBLACK, SK_ColorWHITE };
|
| - SkShader* s = SkGradientShader::CreateLinear(pts, colors, NULL, 2, SkShader::kClamp_TileMode);
|
| -#else
|
| SkShader* s = make_heatGradient(pts);
|
| -#endif
|
|
|
| canvas->clear(SK_ColorRED);
|
| SkPaint paint;
|
| @@ -139,19 +58,7 @@ protected:
|
| canvas->drawRect(r, paint);
|
| }
|
|
|
| - virtual void onDraw(SkCanvas* canvas) {
|
| -#ifdef SK_BUILD_FOR_MAC
|
| - CGContextRef cg = 0;
|
| - {
|
| - SkImageInfo info;
|
| - size_t rowBytes;
|
| - const void* addr = canvas->peekPixels(&info, &rowBytes);
|
| - if (addr) {
|
| - cg = makeCG(info, addr, rowBytes);
|
| - }
|
| - }
|
| -#endif
|
| -
|
| + void onDraw(SkCanvas* canvas) SK_OVERRIDE {
|
| drawGrad(canvas);
|
|
|
| const SkColor fg[] = {
|
| @@ -177,23 +84,11 @@ protected:
|
| SkScalar y = SkIntToScalar(40);
|
| SkScalar stopy = SkIntToScalar(HEIGHT);
|
| while (y < stopy) {
|
| - if (true) {
|
| - canvas->drawText(text, len, x, y, paint);
|
| - }
|
| -#ifdef SK_BUILD_FOR_MAC
|
| - else {
|
| - cgDrawText(cg, text, len, SkScalarToFloat(x),
|
| - static_cast<float>(HEIGHT) - SkScalarToFloat(y),
|
| - paint);
|
| - }
|
| -#endif
|
| + canvas->drawText(text, len, x, y, paint);
|
| y += paint.getTextSize() * 2;
|
| }
|
| x += SkIntToScalar(1024) / SK_ARRAY_COUNT(fg);
|
| }
|
| -#ifdef SK_BUILD_FOR_MAC
|
| - CGContextRelease(cg);
|
| -#endif
|
| }
|
|
|
| private:
|
| @@ -242,28 +137,28 @@ public:
|
| }
|
| }
|
|
|
| - virtual ~GammaShaderTextGM() {
|
| + virtual ~GammaShaderTextGM() SK_OVERRIDE {
|
| for (size_t i = 0; i < SK_ARRAY_COUNT(fShaders); ++i) {
|
| SkSafeUnref(fShaders[i]);
|
| }
|
| }
|
|
|
| protected:
|
| - virtual SkString onShortName() {
|
| + SkString onShortName() SK_OVERRIDE {
|
| return SkString("gammagradienttext");
|
| }
|
|
|
| - virtual SkISize onISize() {
|
| + SkISize onISize() SK_OVERRIDE {
|
| return SkISize::Make(300, 300);
|
| }
|
|
|
| - virtual void onOnceBeforeDraw() {
|
| + void onOnceBeforeDraw() SK_OVERRIDE {
|
| for (size_t i = 0; i < SK_ARRAY_COUNT(fShaders); ++i) {
|
| fShaders[i] = make_gradient(fColors[i]);
|
| }
|
| }
|
|
|
| - virtual void onDraw(SkCanvas* canvas) {
|
| + void onDraw(SkCanvas* canvas) SK_OVERRIDE {
|
| SkPaint paint;
|
| paint.setAntiAlias(true);
|
| paint.setLCDRenderText(true);
|
|
|