1 
2 /*
3  * Copyright 2006 The Android Open Source Project
4  *
5  * Use of this source code is governed by a BSD-style license that can be
6  * found in the LICENSE file.
7  */
8 
9 
10 #include "SkDrawClip.h"
11 #include "SkAnimateMaker.h"
12 #include "SkCanvas.h"
13 #include "SkDrawRectangle.h"
14 #include "SkDrawPath.h"
15 
16 
17 #if SK_USE_CONDENSED_INFO == 0
18 
19 const SkMemberInfo SkDrawClip::fInfo[] = {
20     SK_MEMBER(path, Path),
21     SK_MEMBER(rect, Rect)
22 };
23 
24 #endif
25 
26 DEFINE_GET_MEMBER(SkDrawClip);
27 
SkDrawClip()28 SkDrawClip::SkDrawClip() : rect(nullptr), path(nullptr) {
29 }
30 
draw(SkAnimateMaker & maker)31 bool SkDrawClip::draw(SkAnimateMaker& maker ) {
32     if (rect != nullptr)
33         maker.fCanvas->clipRect(rect->fRect);
34     else {
35         SkASSERT(path != nullptr);
36         maker.fCanvas->clipPath(path->fPath);
37     }
38     return false;
39 }
40