This adds a checkbox to the debugger to allow seeing the effect pathops has on the clip. A new tab shows the C code that the pathops generate.

Once in place, this CL found a bug in the pathops code where it was not handling empty clip stack elements correctly. The Cl also has the change to SkCanvas to fix this bug.

R=robertphillips@google.com, reed@google.com

Author: caryclark@google.com

Review URL: https://codereview.chromium.org/282283002

git-svn-id: http://skia.googlecode.com/svn/trunk@14774 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/debugger/SkDebugger.h b/debugger/SkDebugger.h
index 94300d8..ffb2953 100644
--- a/debugger/SkDebugger.h
+++ b/debugger/SkDebugger.h
@@ -111,6 +111,12 @@
         }
     }
 
+    void setPathOps(bool pathOps) {
+        if (NULL != fDebugCanvas) {
+            fDebugCanvas->setAllowSimplifyClip(pathOps);
+        }
+    }
+
     void setMegaViz(bool megaViz) {
         if (NULL != fDebugCanvas) {
             fDebugCanvas->setMegaVizMode(megaViz);
@@ -126,6 +132,8 @@
     void getOverviewText(const SkTDArray<double>* typeTimes, double totTime,
                          SkString* overview, int numRuns);
 
+    void getClipStackText(SkString* clipStack);
+
 private:
     SkDebugCanvas* fDebugCanvas;
     SkPicture* fPicture;