Staged removal of SkPicture-derived classes

This CL removes the SkPicture-derived classes (with a flag to keeps clients working). In the process it also lightens the recording factory function so it is no longer ref counted).

The only interesting bits are in SkPicture* and Sk*Picture.*

R=reed@google.com

Author: robertphillips@google.com

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

git-svn-id: http://skia.googlecode.com/svn/trunk@14251 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gm/gmmain.cpp b/gm/gmmain.cpp
index 438c739..f8e55e1 100644
--- a/gm/gmmain.cpp
+++ b/gm/gmmain.cpp
@@ -1014,20 +1014,20 @@
         int width = SkScalarCeilToInt(SkScalarMul(SkIntToScalar(gm->getISize().width()), scale));
         int height = SkScalarCeilToInt(SkScalarMul(SkIntToScalar(gm->getISize().height()), scale));
 
-        SkAutoTUnref<SkPictureFactory> factory;
+        SkAutoTDelete<SkBBHFactory> factory;
         if (kTileGrid_BbhType == bbhType) {
-            SkTileGridPicture::TileGridInfo info;
+            SkTileGridFactory::TileGridInfo info;
             info.fMargin.setEmpty();
             info.fOffset.setZero();
             info.fTileInterval.set(16, 16);
-            factory.reset(SkNEW_ARGS(SkTileGridPictureFactory, (info)));
+            factory.reset(SkNEW_ARGS(SkTileGridFactory, (info)));
         } else if (kQuadTree_BbhType == bbhType) {
-            factory.reset(SkNEW(SkQuadTreePictureFactory));
+            factory.reset(SkNEW(SkQuadTreeFactory));
         } else if (kRTree_BbhType == bbhType) {
-            factory.reset(SkNEW(SkRTreePictureFactory));
+            factory.reset(SkNEW(SkRTreeFactory));
         }
-        SkPictureRecorder recorder(factory);
-        SkCanvas* cv = recorder.beginRecording(width, height, recordFlags);
+        SkPictureRecorder recorder;
+        SkCanvas* cv = recorder.beginRecording(width, height, factory.get(), recordFlags);
         cv->scale(scale, scale);
         invokeGM(gm, cv, false, false);
         return recorder.endRecording();