OLD | NEW |
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 20 matching lines...) Expand all Loading... |
31 namespace blink { | 31 namespace blink { |
32 | 32 |
33 class Image; | 33 class Image; |
34 class LayoutObject; | 34 class LayoutObject; |
35 | 35 |
36 class FEImage final : public FilterEffect { | 36 class FEImage final : public FilterEffect { |
37 public: | 37 public: |
38 static FEImage* createWithImage(Filter*, PassRefPtr<Image>, SVGPreserveAspec
tRatio*); | 38 static FEImage* createWithImage(Filter*, PassRefPtr<Image>, SVGPreserveAspec
tRatio*); |
39 static FEImage* createWithIRIReference(Filter*, TreeScope&, const String&, S
VGPreserveAspectRatio*); | 39 static FEImage* createWithIRIReference(Filter*, TreeScope&, const String&, S
VGPreserveAspectRatio*); |
40 | 40 |
41 FloatRect determineAbsolutePaintRect(const FloatRect& requestedRect) const o
verride; | |
42 | |
43 FilterEffectType getFilterEffectType() const override { return FilterEffectT
ypeImage; } | |
44 | |
45 // feImage does not perform color interpolation of any kind, so doesn't | 41 // feImage does not perform color interpolation of any kind, so doesn't |
46 // depend on the value of color-interpolation-filters. | 42 // depend on the value of color-interpolation-filters. |
47 void setOperatingColorSpace(ColorSpace) override { } | 43 void setOperatingColorSpace(ColorSpace) override { } |
48 | 44 |
49 TextStream& externalRepresentation(TextStream&, int indention) const overrid
e; | 45 TextStream& externalRepresentation(TextStream&, int indention) const overrid
e; |
50 sk_sp<SkImageFilter> createImageFilter() override; | |
51 | 46 |
52 DECLARE_VIRTUAL_TRACE(); | 47 DECLARE_VIRTUAL_TRACE(); |
53 | 48 |
54 private: | 49 private: |
55 ~FEImage() override {} | 50 ~FEImage() override {} |
56 FEImage(Filter*, PassRefPtr<Image>, SVGPreserveAspectRatio*); | 51 FEImage(Filter*, PassRefPtr<Image>, SVGPreserveAspectRatio*); |
57 FEImage(Filter*, TreeScope&, const String&, SVGPreserveAspectRatio*); | 52 FEImage(Filter*, TreeScope&, const String&, SVGPreserveAspectRatio*); |
58 LayoutObject* referencedLayoutObject() const; | 53 LayoutObject* referencedLayoutObject() const; |
59 | 54 |
| 55 FilterEffectType getFilterEffectType() const override { return FilterEffectT
ypeImage; } |
| 56 |
| 57 FloatRect mapInputs(const FloatRect&) const override; |
| 58 |
| 59 sk_sp<SkImageFilter> createImageFilter() override; |
60 sk_sp<SkImageFilter> createImageFilterForLayoutObject(const LayoutObject&); | 60 sk_sp<SkImageFilter> createImageFilterForLayoutObject(const LayoutObject&); |
61 | 61 |
62 RefPtr<Image> m_image; | 62 RefPtr<Image> m_image; |
63 | 63 |
64 // m_treeScope will never be a dangling reference. See https://bugs.webkit.o
rg/show_bug.cgi?id=99243 | 64 // m_treeScope will never be a dangling reference. See https://bugs.webkit.o
rg/show_bug.cgi?id=99243 |
65 Member<TreeScope> m_treeScope; | 65 Member<TreeScope> m_treeScope; |
66 String m_href; | 66 String m_href; |
67 Member<SVGPreserveAspectRatio> m_preserveAspectRatio; | 67 Member<SVGPreserveAspectRatio> m_preserveAspectRatio; |
68 }; | 68 }; |
69 | 69 |
70 } // namespace blink | 70 } // namespace blink |
71 | 71 |
72 #endif // SVGFEImage_h | 72 #endif // SVGFEImage_h |
OLD | NEW |