| Index: include/core/SkCanvas.h
|
| diff --git a/include/core/SkCanvas.h b/include/core/SkCanvas.h
|
| index 773df89d789843ee4ef5b042403c57136afb94e6..50d319c7721f56ce5f4c240290ac1f40f578fe3b 100644
|
| --- a/include/core/SkCanvas.h
|
| +++ b/include/core/SkCanvas.h
|
| @@ -358,7 +358,7 @@
|
| by calls to save/restore.
|
| @return The value to pass to restoreToCount() to balance this save()
|
| */
|
| - virtual int save(SaveFlags flags = kMatrixClip_SaveFlag);
|
| + int save(SaveFlags flags = kMatrixClip_SaveFlag);
|
|
|
| /** This behaves the same as save(), but in addition it allocates an
|
| offscreen bitmap. All drawing calls are directed there, and only when
|
| @@ -373,8 +373,8 @@
|
| @param flags LayerFlags
|
| @return The value to pass to restoreToCount() to balance this save()
|
| */
|
| - virtual int saveLayer(const SkRect* bounds, const SkPaint* paint,
|
| - SaveFlags flags = kARGB_ClipLayer_SaveFlag);
|
| + int saveLayer(const SkRect* bounds, const SkPaint* paint,
|
| + SaveFlags flags = kARGB_ClipLayer_SaveFlag);
|
|
|
| /** This behaves the same as save(), but in addition it allocates an
|
| offscreen bitmap. All drawing calls are directed there, and only when
|
| @@ -396,7 +396,7 @@
|
| call.
|
| It is an error to call restore() more times than save() was called.
|
| */
|
| - virtual void restore();
|
| + void restore();
|
|
|
| /** Returns the number of matrix/clip states on the SkCanvas' private stack.
|
| This will equal # save() calls - # restore() calls + 1. The save count on
|
| @@ -1178,6 +1178,14 @@
|
| // default impl defers to its device
|
| virtual const void* onPeekPixels(SkImageInfo*, size_t* rowBytes);
|
|
|
| + // Subclass save/restore notifiers. These are called *before* updating the canvas state.
|
| + // Overriders should call the corresponding INHERITED method up the inheritance chain.
|
| + // For onSaveLayer(), returning false suppresses full layer allocation (and forces
|
| + // the base impl to only perform a state save + bounds clip).
|
| + virtual void onSave(SaveFlags);
|
| + virtual bool onSaveLayer(const SkRect*, const SkPaint*, SaveFlags);
|
| + virtual void onRestore();
|
| +
|
| virtual void onDrawDRRect(const SkRRect&, const SkRRect&, const SkPaint&);
|
|
|
| enum ClipEdgeStyle {
|
| @@ -1277,7 +1285,7 @@
|
| const SkRect& dst, const SkPaint* paint);
|
| void internalDrawPaint(const SkPaint& paint);
|
| int internalSaveLayer(const SkRect* bounds, const SkPaint* paint,
|
| - SaveFlags, bool justForImageFilter);
|
| + SaveFlags, bool justForImageFilter, bool skipLayer);
|
| void internalDrawDevice(SkBaseDevice*, int x, int y, const SkPaint*);
|
|
|
| // shared by save() and saveLayer()
|
|
|