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.
SkAutoCanvasRestore can be constructed or initialized by these functions, including C++ class constructors.
SkAutoCanvasRestore member functions read and modify the structure properties.
Preserves Canvas save count. Optionally saves Canvas Clip and Canvas Matrix.
utility to restore Canvas state on destructor
SkCanvas::save SkCanvas::restore
Restores Canvas to saved state. Destructor is called when container goes out of scope.
SkCanvas::save SkCanvas::restore
Restores Canvas to saved state immediately. Subsequent calls and ~SkAutoCanvasRestore have no effect.
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
SkCanvas::save SkCanvas::restore