diff options
author | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-04-15 15:48:36 +0000 |
---|---|---|
committer | commit-bot@chromium.org <commit-bot@chromium.org@2bbb7eff-a529-9590-31e7-b0007b416f81> | 2014-04-15 15:48:36 +0000 |
commit | 73cb15351f33459e0c861a96135c634dec77ef9d (patch) | |
tree | cf521a48286c5cd88354056e65a933cc63f8fbe1 /gm/drawlooper.cpp | |
parent | beb8b3a4da83ce30e313e72ae0e444870acecb7e (diff) |
Make sure SkDrawLooper objects can only be allocated on the heap.
Make constructors of SkLayerDrawLooper and SkBlurDrawLooper non-public.
Remove addLayer* methods from SkLayerDrawLooper. SkLayerDrawLooper::Builder is
used to create new objects.
Provide factory method for creating SkBlurDrawLooper.
BUG=2141
R=scroggo@google.com, reed@google.com, djsollen@google.com
Author: dominikg@chromium.org
Review URL: https://codereview.chromium.org/232913003
git-svn-id: http://skia.googlecode.com/svn/trunk@14200 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'gm/drawlooper.cpp')
-rw-r--r-- | gm/drawlooper.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/gm/drawlooper.cpp b/gm/drawlooper.cpp index 678d2ad35f..d3a4475442 100644 --- a/gm/drawlooper.cpp +++ b/gm/drawlooper.cpp @@ -72,7 +72,7 @@ private: { 0x88000000, SkPaint::kFill_Style, 0, SkIntToScalar(10), SkIntToScalar(3) } }; - fLooper = new SkLayerDrawLooper; + SkLayerDrawLooper::Builder looperBuilder; SkLayerDrawLooper::LayerInfo info; info.fPaintBits = SkLayerDrawLooper::kStyle_Bit | SkLayerDrawLooper::kMaskFilter_Bit; @@ -80,7 +80,7 @@ private: for (size_t i = 0; i < SK_ARRAY_COUNT(gParams); i++) { info.fOffset.set(gParams[i].fOffset, gParams[i].fOffset); - SkPaint* paint = fLooper->addLayer(info); + SkPaint* paint = looperBuilder.addLayer(info); paint->setColor(gParams[i].fColor); paint->setStyle(gParams[i].fStyle); paint->setStrokeWidth(gParams[i].fWidth); @@ -90,6 +90,7 @@ private: paint->setMaskFilter(mf)->unref(); } } + fLooper = looperBuilder.detachLooper(); } typedef GM INHERITED; |