Adds SkPDFResourceDict class, refactor existing code to use it.

Committed: http://code.google.com/p/skia/source/detail?r=10202

R=vandebo@chromium.org, edisonn@google.com

Author: richardlin@chromium.org

Review URL: https://chromiumcodereview.appspot.com/18977002

git-svn-id: http://skia.googlecode.com/svn/trunk@10245 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/src/pdf/SkPDFShader.cpp b/src/pdf/SkPDFShader.cpp
index a0dffb7..fec9d05 100644
--- a/src/pdf/SkPDFShader.cpp
+++ b/src/pdf/SkPDFShader.cpp
@@ -14,6 +14,7 @@
 #include "SkPDFCatalog.h"
 #include "SkPDFDevice.h"
 #include "SkPDFTypes.h"
+#include "SkPDFResourceDict.h"
 #include "SkPDFUtils.h"
 #include "SkScalar.h"
 #include "SkStream.h"
@@ -838,7 +839,8 @@
     // Put the canvas into the pattern stream (fContent).
     SkAutoTUnref<SkStream> content(pattern.content());
     setData(content.get());
-    pattern.getResources(fResources, &fResources, false);
+    SkPDFResourceDict* resourceDict = pattern.getResourceDict();
+    resourceDict->getResources(fResources, &fResources, false);
 
     insertName("Type", "Pattern");
     insertInt("PatternType", 1);
@@ -847,7 +849,7 @@
     insert("BBox", patternBBoxArray.get());
     insertScalar("XStep", patternBBox.width());
     insertScalar("YStep", patternBBox.height());
-    insert("Resources", pattern.getResourceDict());
+    insert("Resources", resourceDict);
     insert("Matrix", SkPDFUtils::MatrixToArray(finalMatrix))->unref();
 
     fState.get()->fImage.unlockPixels();