SkAutoCanvasRestore Reference

Automatic Canvas Restore

Class SkAutoCanvasRestore

Stack helper class calls SkCanvas::restoreToCount when SkAutoCanvasRestore goes out of scope. Use this to guarantee that the canvas is restored to a known state.

Overview

Topic Description
Constructors functions that construct SkAutoCanvasRestore
Functions global and class member functions

Constructor

SkAutoCanvasRestore can be constructed or initialized by these functions, including C++ class constructors.

Topic Description
SkAutoCanvasRestore(SkCanvas* canvas, bool doSave) preserves Canvas save count
~SkAutoCanvasRestore() restores Canvas to saved state

Member Function

SkAutoCanvasRestore member functions read and modify the structure properties.

Topic Description
restore restores Canvas to saved state

SkAutoCanvasRestore

SkAutoCanvasRestore(SkCanvas* canvas, bool doSave)

Preserves Canvas save count. Optionally saves Canvas Clip and Canvas Matrix.

Parameters

canvas Canvas to guard
doSave call SkCanvas::save()

Return Value

utility to restore Canvas state on destructor

Example

See Also

SkCanvas::save SkCanvas::restore


~SkAutoCanvasRestore

~SkAutoCanvasRestore()

Restores Canvas to saved state. Destructor is called when container goes out of scope.

See Also

SkCanvas::save SkCanvas::restore


restore

void restore()

Restores Canvas to saved state immediately. Subsequent calls and ~SkAutoCanvasRestore have no effect.

Example

#### Example Output ~~~~ saveCanvas: false before restore: 2 saveCanvas: false after restore: 2 saveCanvas: true before restore: 2 saveCanvas: true after restore: 2 saveCanvas: false before restore: 2 saveCanvas: false after restore: 1 saveCanvas: true before restore: 2 saveCanvas: true after restore: 1 final count: 1 ~~~~

See Also

SkCanvas::save SkCanvas::restore