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 28 SkDrawClip::SkDrawClip() : rect(NULL), path(NULL) { 29 } 30 31 bool SkDrawClip::draw(SkAnimateMaker& maker ) { 32 if (rect != NULL) 33 maker.fCanvas->clipRect(rect->fRect); 34 else { 35 SkASSERT(path != NULL); 36 maker.fCanvas->clipPath(path->fPath); 37 } 38 return false; 39 } 40