Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(273)

Side by Side Diff: src/pdf/SkPDFTypes.cpp

Issue 18585002: Implemented transparent gradients (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Addresses more stylistic issues. Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 1
2 /* 2 /*
3 * Copyright 2011 Google Inc. 3 * Copyright 2011 Google Inc.
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 8
9 9
10 #include "SkPDFCatalog.h" 10 #include "SkPDFCatalog.h"
(...skipping 481 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 SkPDFName* SkPDFDict::Iter::next(SkPDFObject** value) { 492 SkPDFName* SkPDFDict::Iter::next(SkPDFObject** value) {
493 if (fIter != fStop) { 493 if (fIter != fStop) {
494 const Rec* cur = fIter; 494 const Rec* cur = fIter;
495 fIter++; 495 fIter++;
496 *value = cur->value; 496 *value = cur->value;
497 return cur->key; 497 return cur->key;
498 } 498 }
499 *value = NULL; 499 *value = NULL;
500 return NULL; 500 return NULL;
501 } 501 }
502
503 ///////////////////////////////////////////////////////////////////////////////
504 SkPDFObject* SkPDFResourceDict::insertResource(
505 SkPDFName* type, SkPDFName* key, SkPDFObject* value) {
506 SkPDFDict* typeDict = getResourceTypeDict(type);
507 typeDict->insert(key, value);
508 return value;
509 }
510
511 SkPDFObject* SkPDFResourceDict::insertResource(
512 const char type[], const char key[], SkPDFObject* value) {
513 return insertResource(new SkPDFName(type), new SkPDFName(key), value);
vandebo (ex-Chrome) 2013/07/09 17:47:44 SkNew should be used for new uses of "new"
ducky 2013/07/10 21:42:26 Ok. I've changed it for this file. Does this apply
vandebo (ex-Chrome) 2013/07/11 22:22:23 All new uses
514 }
515
516 SkPDFObject* SkPDFResourceDict::insertResourceAsRef(
517 const char type[], const char key[], SkPDFObject* value) {
518 SkAutoTUnref<SkPDFObjRef> ref( new SkPDFObjRef(value));
519 insertResource(new SkPDFName(type), new SkPDFName(key), ref);
520 fResources.add(value);
521
522 return value;
523 }
524
525 void SkPDFResourceDict::getResources(
526 const SkTSet<SkPDFObject*>& knownResourceObjects,
527 SkTSet<SkPDFObject*>* newResourceObjects) {
528 GetResourcesHelper(&fResources.toArray(),
529 knownResourceObjects,
530 newResourceObjects);
531 }
532
533 SkPDFDict* SkPDFResourceDict::getResourceTypeDict(SkPDFName* type) {
534 for (int i = 0; i < fTypes.count(); i++) {
535 if (*(fTypes[i].key) == *type) {
536 return fTypes[i].value;
537 }
538 }
539
540 // If not found, create a new record.
541 struct DictRec* newEntry = fTypes.append();
542 newEntry->key = type;
543 SkAutoTUnref<SkPDFDict> newDict(new SkPDFDict());
544 newEntry->value = newDict;
545 insert(type, newDict); // ref counting handled in SkPDFDict::insert
546 return newDict.get();
547 }
OLDNEW
« src/pdf/SkPDFTypes.h ('K') | « src/pdf/SkPDFTypes.h ('k') | src/pdf/SkPDFUtils.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698