| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 2 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
| 3 * | 3 * |
| 4 * This library is free software; you can redistribute it and/or | 4 * This library is free software; you can redistribute it and/or |
| 5 * modify it under the terms of the GNU Library General Public | 5 * modify it under the terms of the GNU Library General Public |
| 6 * License as published by the Free Software Foundation; either | 6 * License as published by the Free Software Foundation; either |
| 7 * version 2 of the License, or (at your option) any later version. | 7 * version 2 of the License, or (at your option) any later version. |
| 8 * | 8 * |
| 9 * This library is distributed in the hope that it will be useful, | 9 * This library is distributed in the hope that it will be useful, |
| 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
| (...skipping 13 matching lines...) Expand all Loading... |
| 24 #include "platform/heap/Handle.h" | 24 #include "platform/heap/Handle.h" |
| 25 #include "platform/transforms/AffineTransform.h" | 25 #include "platform/transforms/AffineTransform.h" |
| 26 #include "wtf/HashSet.h" | 26 #include "wtf/HashSet.h" |
| 27 #include "wtf/Noncopyable.h" | 27 #include "wtf/Noncopyable.h" |
| 28 #include "wtf/StdLibExtras.h" | 28 #include "wtf/StdLibExtras.h" |
| 29 | 29 |
| 30 namespace blink { | 30 namespace blink { |
| 31 | 31 |
| 32 class CSSCursorImageValue; | 32 class CSSCursorImageValue; |
| 33 class SVGCursorElement; | 33 class SVGCursorElement; |
| 34 class SVGElementProxySet; |
| 34 | 35 |
| 35 class SVGElementRareData | 36 class SVGElementRareData |
| 36 : public GarbageCollectedFinalized<SVGElementRareData> { | 37 : public GarbageCollectedFinalized<SVGElementRareData> { |
| 37 WTF_MAKE_NONCOPYABLE(SVGElementRareData); | 38 WTF_MAKE_NONCOPYABLE(SVGElementRareData); |
| 38 | 39 |
| 39 public: | 40 public: |
| 40 SVGElementRareData(SVGElement* owner) | 41 SVGElementRareData(SVGElement* owner) |
| 41 : m_owner(owner), | 42 : m_owner(owner), |
| 42 m_cursorElement(nullptr), | 43 m_cursorElement(nullptr), |
| 43 m_cursorImageValue(nullptr), | 44 m_cursorImageValue(nullptr), |
| 44 m_correspondingElement(nullptr), | 45 m_correspondingElement(nullptr), |
| 45 m_instancesUpdatesBlocked(false), | 46 m_instancesUpdatesBlocked(false), |
| 46 m_useOverrideComputedStyle(false), | 47 m_useOverrideComputedStyle(false), |
| 47 m_needsOverrideComputedStyleUpdate(false), | 48 m_needsOverrideComputedStyleUpdate(false), |
| 48 m_webAnimatedAttributesDirty(false) {} | 49 m_webAnimatedAttributesDirty(false) {} |
| 49 | 50 |
| 50 SVGElementSet& outgoingReferences() { return m_outgoingReferences; } | 51 SVGElementSet& outgoingReferences() { return m_outgoingReferences; } |
| 51 const SVGElementSet& outgoingReferences() const { | 52 const SVGElementSet& outgoingReferences() const { |
| 52 return m_outgoingReferences; | 53 return m_outgoingReferences; |
| 53 } | 54 } |
| 54 SVGElementSet& incomingReferences() { return m_incomingReferences; } | 55 SVGElementSet& incomingReferences() { return m_incomingReferences; } |
| 55 const SVGElementSet& incomingReferences() const { | 56 const SVGElementSet& incomingReferences() const { |
| 56 return m_incomingReferences; | 57 return m_incomingReferences; |
| 57 } | 58 } |
| 58 | 59 |
| 60 SVGElementProxySet& ensureElementProxySet(); |
| 61 |
| 59 HeapHashSet<WeakMember<SVGElement>>& elementInstances() { | 62 HeapHashSet<WeakMember<SVGElement>>& elementInstances() { |
| 60 return m_elementInstances; | 63 return m_elementInstances; |
| 61 } | 64 } |
| 62 const HeapHashSet<WeakMember<SVGElement>>& elementInstances() const { | 65 const HeapHashSet<WeakMember<SVGElement>>& elementInstances() const { |
| 63 return m_elementInstances; | 66 return m_elementInstances; |
| 64 } | 67 } |
| 65 | 68 |
| 66 bool instanceUpdatesBlocked() const { return m_instancesUpdatesBlocked; } | 69 bool instanceUpdatesBlocked() const { return m_instancesUpdatesBlocked; } |
| 67 void setInstanceUpdatesBlocked(bool value) { | 70 void setInstanceUpdatesBlocked(bool value) { |
| 68 m_instancesUpdatesBlocked = value; | 71 m_instancesUpdatesBlocked = value; |
| (...skipping 49 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 DECLARE_TRACE(); | 121 DECLARE_TRACE(); |
| 119 void processWeakMembers(Visitor*); | 122 void processWeakMembers(Visitor*); |
| 120 | 123 |
| 121 private: | 124 private: |
| 122 Member<SVGElement> m_owner; | 125 Member<SVGElement> m_owner; |
| 123 SVGElementSet m_outgoingReferences; | 126 SVGElementSet m_outgoingReferences; |
| 124 SVGElementSet m_incomingReferences; | 127 SVGElementSet m_incomingReferences; |
| 125 HeapHashSet<WeakMember<SVGElement>> m_elementInstances; | 128 HeapHashSet<WeakMember<SVGElement>> m_elementInstances; |
| 126 WeakMember<SVGCursorElement> m_cursorElement; | 129 WeakMember<SVGCursorElement> m_cursorElement; |
| 127 WeakMember<const CSSCursorImageValue> m_cursorImageValue; | 130 WeakMember<const CSSCursorImageValue> m_cursorImageValue; |
| 131 Member<SVGElementProxySet> m_elementProxySet; |
| 128 Member<SVGElement> m_correspondingElement; | 132 Member<SVGElement> m_correspondingElement; |
| 129 bool m_instancesUpdatesBlocked : 1; | 133 bool m_instancesUpdatesBlocked : 1; |
| 130 bool m_useOverrideComputedStyle : 1; | 134 bool m_useOverrideComputedStyle : 1; |
| 131 bool m_needsOverrideComputedStyleUpdate : 1; | 135 bool m_needsOverrideComputedStyleUpdate : 1; |
| 132 bool m_webAnimatedAttributesDirty : 1; | 136 bool m_webAnimatedAttributesDirty : 1; |
| 133 HashSet<const QualifiedName*> m_webAnimatedAttributes; | 137 HashSet<const QualifiedName*> m_webAnimatedAttributes; |
| 134 Member<MutableStylePropertySet> m_animatedSMILStyleProperties; | 138 Member<MutableStylePropertySet> m_animatedSMILStyleProperties; |
| 135 RefPtr<ComputedStyle> m_overrideComputedStyle; | 139 RefPtr<ComputedStyle> m_overrideComputedStyle; |
| 136 // Used by <animateMotion> | 140 // Used by <animateMotion> |
| 137 AffineTransform m_animateMotionTransform; | 141 AffineTransform m_animateMotionTransform; |
| 138 }; | 142 }; |
| 139 | 143 |
| 140 } // namespace blink | 144 } // namespace blink |
| 141 | 145 |
| 142 #endif | 146 #endif |
| OLD | NEW |