OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2008 Apple Inc. All rights reserved. | 2 * Copyright (C) 2008 Apple Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions | 5 * modification, are permitted provided that the following conditions |
6 * are met: | 6 * are met: |
7 * 1. Redistributions of source code must retain the above copyright | 7 * 1. Redistributions of source code must retain the above copyright |
8 * notice, this list of conditions and the following disclaimer. | 8 * notice, this list of conditions and the following disclaimer. |
9 * 2. Redistributions in binary form must reproduce the above copyright | 9 * 2. Redistributions in binary form must reproduce the above copyright |
10 * notice, this list of conditions and the following disclaimer in the | 10 * notice, this list of conditions and the following disclaimer in the |
(...skipping 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 virtual void applyResultsToTarget() = 0; | 110 virtual void applyResultsToTarget() = 0; |
111 | 111 |
112 void connectSyncBaseConditions(); | 112 void connectSyncBaseConditions(); |
113 void connectEventBaseConditions(); | 113 void connectEventBaseConditions(); |
114 | 114 |
115 void dispatchPendingEvent(SMILEventSender*); | 115 void dispatchPendingEvent(SMILEventSender*); |
116 void dispatchRepeatEvents(unsigned); | 116 void dispatchRepeatEvents(unsigned); |
117 | 117 |
118 virtual bool isSVGDiscardElement() const { return false; } | 118 virtual bool isSVGDiscardElement() const { return false; } |
119 | 119 |
| 120 void trace(Visitor*) OVERRIDE; |
| 121 |
120 protected: | 122 protected: |
121 void addBeginTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::
Origin = SMILTimeWithOrigin::ParserOrigin); | 123 void addBeginTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::
Origin = SMILTimeWithOrigin::ParserOrigin); |
122 void addEndTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::Or
igin = SMILTimeWithOrigin::ParserOrigin); | 124 void addEndTime(SMILTime eventTime, SMILTime endTime, SMILTimeWithOrigin::Or
igin = SMILTimeWithOrigin::ParserOrigin); |
123 | 125 |
124 void setInactive() { m_activeState = Inactive; } | 126 void setInactive() { m_activeState = Inactive; } |
125 | 127 |
126 // Sub-classes may need to take action when the target is changed. | 128 // Sub-classes may need to take action when the target is changed. |
127 virtual void setTargetElement(SVGElement*); | 129 virtual void setTargetElement(SVGElement*); |
128 virtual void setAttributeName(const QualifiedName&); | 130 virtual void setAttributeName(const QualifiedName&); |
129 | 131 |
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
198 Active, | 200 Active, |
199 Frozen | 201 Frozen |
200 }; | 202 }; |
201 | 203 |
202 QualifiedName m_attributeName; | 204 QualifiedName m_attributeName; |
203 | 205 |
204 ActiveState determineActiveState(SMILTime elapsed) const; | 206 ActiveState determineActiveState(SMILTime elapsed) const; |
205 float calculateAnimationPercentAndRepeat(SMILTime elapsed, unsigned& repeat)
const; | 207 float calculateAnimationPercentAndRepeat(SMILTime elapsed, unsigned& repeat)
const; |
206 SMILTime calculateNextProgressTime(SMILTime elapsed) const; | 208 SMILTime calculateNextProgressTime(SMILTime elapsed) const; |
207 | 209 |
208 SVGElement* m_targetElement; | 210 RawPtrWillBeMember<SVGElement> m_targetElement; |
209 | 211 |
210 Vector<Condition> m_conditions; | 212 Vector<Condition> m_conditions; |
211 bool m_syncBaseConditionsConnected; | 213 bool m_syncBaseConditionsConnected; |
212 bool m_hasEndEventConditions; | 214 bool m_hasEndEventConditions; |
213 | 215 |
214 bool m_isWaitingForFirstInterval; | 216 bool m_isWaitingForFirstInterval; |
215 | 217 |
216 typedef HashSet<SVGSMILElement*> TimeDependentSet; | 218 typedef HashSet<SVGSMILElement*> TimeDependentSet; |
217 TimeDependentSet m_syncBaseDependents; | 219 TimeDependentSet m_syncBaseDependents; |
218 | 220 |
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
250 { | 252 { |
251 return node.hasTagName(SVGNames::setTag) || node.hasTagName(SVGNames::animat
eTag) || node.hasTagName(SVGNames::animateMotionTag) | 253 return node.hasTagName(SVGNames::setTag) || node.hasTagName(SVGNames::animat
eTag) || node.hasTagName(SVGNames::animateMotionTag) |
252 || node.hasTagName(SVGNames::animateTransformTag) || node.hasTagName((SV
GNames::discardTag)); | 254 || node.hasTagName(SVGNames::animateTransformTag) || node.hasTagName((SV
GNames::discardTag)); |
253 } | 255 } |
254 | 256 |
255 DEFINE_ELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGSMILElement); | 257 DEFINE_ELEMENT_TYPE_CASTS_WITH_FUNCTION(SVGSMILElement); |
256 | 258 |
257 } | 259 } |
258 | 260 |
259 #endif // SVGSMILElement_h | 261 #endif // SVGSMILElement_h |
OLD | NEW |