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

Side by Side Diff: Source/core/svg/graphics/filters/SVGFEImage.h

Issue 23685007: Have SVGURIReference API deal with Document references, not pointers (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 3 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 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org> 2 * Copyright (C) 2004, 2005, 2006, 2007 Nikolas Zimmermann <zimmermann@kde.org>
3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org> 3 * Copyright (C) 2004, 2005 Rob Buis <buis@kde.org>
4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org> 4 * Copyright (C) 2005 Eric Seidel <eric@webkit.org>
5 * Copyright (C) 2010 Dirk Schulze <krit@webkit.org> 5 * Copyright (C) 2010 Dirk Schulze <krit@webkit.org>
6 * Copyright (C) 2013 Google Inc. All rights reserved. 6 * Copyright (C) 2013 Google Inc. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 18 matching lines...) Expand all
29 29
30 namespace WebCore { 30 namespace WebCore {
31 31
32 class Document; 32 class Document;
33 class Image; 33 class Image;
34 class RenderObject; 34 class RenderObject;
35 35
36 class FEImage : public FilterEffect { 36 class FEImage : public FilterEffect {
37 public: 37 public:
38 static PassRefPtr<FEImage> createWithImage(Filter*, PassRefPtr<Image>, const SVGPreserveAspectRatio&); 38 static PassRefPtr<FEImage> createWithImage(Filter*, PassRefPtr<Image>, const SVGPreserveAspectRatio&);
39 static PassRefPtr<FEImage> createWithIRIReference(Filter*, Document*, const String&, const SVGPreserveAspectRatio&); 39 static PassRefPtr<FEImage> createWithIRIReference(Filter*, Document&, const String&, const SVGPreserveAspectRatio&);
40 40
41 virtual void determineAbsolutePaintRect(); 41 virtual void determineAbsolutePaintRect();
42 42
43 virtual FilterEffectType filterEffectType() const { return FilterEffectTypeI mage; } 43 virtual FilterEffectType filterEffectType() const { return FilterEffectTypeI mage; }
44 44
45 virtual TextStream& externalRepresentation(TextStream&, int indention) const ; 45 virtual TextStream& externalRepresentation(TextStream&, int indention) const ;
46 virtual PassRefPtr<SkImageFilter> createImageFilter(SkiaImageFilterBuilder*) OVERRIDE; 46 virtual PassRefPtr<SkImageFilter> createImageFilter(SkiaImageFilterBuilder*) OVERRIDE;
47 47
48 private: 48 private:
49 virtual ~FEImage() { } 49 virtual ~FEImage() { }
50 FEImage(Filter*, PassRefPtr<Image>, const SVGPreserveAspectRatio&); 50 FEImage(Filter*, PassRefPtr<Image>, const SVGPreserveAspectRatio&);
51 FEImage(Filter*, Document*, const String&, const SVGPreserveAspectRatio&); 51 FEImage(Filter*, Document&, const String&, const SVGPreserveAspectRatio&);
52 RenderObject* referencedRenderer() const; 52 RenderObject* referencedRenderer() const;
53 53
54 virtual void applySoftware() OVERRIDE; 54 virtual void applySoftware() OVERRIDE;
55 55
56 RefPtr<Image> m_image; 56 RefPtr<Image> m_image;
57 57
58 // m_document will never be a dangling reference. See https://bugs.webkit.or g/show_bug.cgi?id=99243 58 // m_document will never be a dangling reference. See https://bugs.webkit.or g/show_bug.cgi?id=99243
59 Document* m_document; 59 Document* m_document;
60 String m_href; 60 String m_href;
61 SVGPreserveAspectRatio m_preserveAspectRatio; 61 SVGPreserveAspectRatio m_preserveAspectRatio;
62 }; 62 };
63 63
64 } // namespace WebCore 64 } // namespace WebCore
65 65
66 #endif // SVGFEImage_h 66 #endif // SVGFEImage_h
OLDNEW
« no previous file with comments | « Source/core/svg/animation/SVGSMILElement.cpp ('k') | Source/core/svg/graphics/filters/SVGFEImage.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698