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) {