Added ctor to SkClipStack and isEmpty method
http://codereview.appspot.com/6444048/
git-svn-id: http://skia.googlecode.com/svn/trunk@4787 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/core/SkClipStack.cpp b/src/core/SkClipStack.cpp
index 7857bdf..673981b 100644
--- a/src/core/SkClipStack.cpp
+++ b/src/core/SkClipStack.cpp
@@ -375,6 +375,12 @@
*this = b;
}
+SkClipStack::SkClipStack(const SkRect& r) : fDeque(sizeof(Rec)) {
+ if (!r.isEmpty()) {
+ this->clipDevRect(r, SkRegion::kReplace_Op, false);
+ }
+}
+
SkClipStack::~SkClipStack() {
reset();
}
@@ -545,6 +551,16 @@
((Rec*) fDeque.back())->updateBound(rec);
}
+bool SkClipStack::isWideOpen() const {
+ if (0 == fDeque.count()) {
+ return true;
+ }
+
+ const Rec* back = (const Rec*) fDeque.back();
+ return kInsideOut_BoundsType == back->fFiniteBoundType &&
+ back->fFiniteBound.isEmpty();
+}
+
///////////////////////////////////////////////////////////////////////////////
SkClipStack::Iter::Iter() : fStack(NULL) {