| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * (C) 2001 Dirk Mueller (mueller@kde.org) | 4 * (C) 2001 Dirk Mueller (mueller@kde.org) |
| 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. | 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008 Apple Inc. All rights reserved. |
| 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) | 6 * Copyright (C) 2006 Alexey Proskuryakov (ap@webkit.org) |
| 7 * (C) 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> | 7 * (C) 2007, 2008 Nikolas Zimmermann <zimmermann@kde.org> |
| 8 * | 8 * |
| 9 * Redistribution and use in source and binary forms, with or without | 9 * Redistribution and use in source and binary forms, with or without |
| 10 * modification, are permitted provided that the following conditions | 10 * modification, are permitted provided that the following conditions |
| (...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 void fireEventListeners(Event*, EventTargetData*, EventListenerVector&); | 163 void fireEventListeners(Event*, EventTargetData*, EventListenerVector&); |
| 164 void countLegacyEvents(const AtomicString& legacyTypeName, EventListenerVect
or*, EventListenerVector*); | 164 void countLegacyEvents(const AtomicString& legacyTypeName, EventListenerVect
or*, EventListenerVector*); |
| 165 | 165 |
| 166 bool clearAttributeEventListener(const AtomicString& eventType); | 166 bool clearAttributeEventListener(const AtomicString& eventType); |
| 167 | 167 |
| 168 friend class EventListenerIterator; | 168 friend class EventListenerIterator; |
| 169 }; | 169 }; |
| 170 | 170 |
| 171 class CORE_EXPORT EventTargetWithInlineData : public EventTarget { | 171 class CORE_EXPORT EventTargetWithInlineData : public EventTarget { |
| 172 protected: | 172 protected: |
| 173 virtual EventTargetData* eventTargetData() override final { return &m_eventT
argetData; } | 173 EventTargetData* eventTargetData() final { return &m_eventTargetData; } |
| 174 virtual EventTargetData& ensureEventTargetData() override final { return m_e
ventTargetData; } | 174 EventTargetData& ensureEventTargetData() final { return m_eventTargetData; } |
| 175 private: | 175 private: |
| 176 EventTargetData m_eventTargetData; | 176 EventTargetData m_eventTargetData; |
| 177 }; | 177 }; |
| 178 | 178 |
| 179 // Base class for classes that wish to inherit from RefCountedGarbageCollected (
in non-Oilpan world) and | 179 // Base class for classes that wish to inherit from RefCountedGarbageCollected (
in non-Oilpan world) and |
| 180 // EventTargetWithInlineData (in both worlds). For details about how to use this
class template, see the comments for | 180 // EventTargetWithInlineData (in both worlds). For details about how to use this
class template, see the comments for |
| 181 // EventTargetWithInlineData above. | 181 // EventTargetWithInlineData above. |
| 182 // | 182 // |
| 183 // This class template exists to circumvent Oilpan's "leftmost class rule", wher
e the Oilpan classes must come first in | 183 // This class template exists to circumvent Oilpan's "leftmost class rule", wher
e the Oilpan classes must come first in |
| 184 // the base class list to avoid memory offset adjustment. In non-Oilpan world, R
efCountedGarbageCollected<T> must come | 184 // the base class list to avoid memory offset adjustment. In non-Oilpan world, R
efCountedGarbageCollected<T> must come |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 285 #if ENABLE(OILPAN) | 285 #if ENABLE(OILPAN) |
| 286 #define DEFINE_EVENT_TARGET_REFCOUNTING(baseClass) | 286 #define DEFINE_EVENT_TARGET_REFCOUNTING(baseClass) |
| 287 #define REFCOUNTED_EVENT_TARGET(baseClass) | 287 #define REFCOUNTED_EVENT_TARGET(baseClass) |
| 288 #define REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(baseClass) | 288 #define REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(baseClass) |
| 289 #else // !ENABLE(OILPAN) | 289 #else // !ENABLE(OILPAN) |
| 290 #define DEFINE_EVENT_TARGET_REFCOUNTING(baseClass) \ | 290 #define DEFINE_EVENT_TARGET_REFCOUNTING(baseClass) \ |
| 291 public: \ | 291 public: \ |
| 292 using baseClass::ref; \ | 292 using baseClass::ref; \ |
| 293 using baseClass::deref; \ | 293 using baseClass::deref; \ |
| 294 private: \ | 294 private: \ |
| 295 virtual void refEventTarget() override final { ref(); } \ | 295 void refEventTarget() final { ref(); } \ |
| 296 virtual void derefEventTarget() override final { deref(); } \ | 296 void derefEventTarget() final { deref(); } \ |
| 297 typedef int thisIsHereToForceASemiColonAfterThisEventTargetMacro | 297 typedef int thisIsHereToForceASemiColonAfterThisEventTargetMacro |
| 298 #define REFCOUNTED_EVENT_TARGET(baseClass) DEFINE_EVENT_TARGET_REFCOUNTING(RefCo
unted<baseClass>) | 298 #define REFCOUNTED_EVENT_TARGET(baseClass) DEFINE_EVENT_TARGET_REFCOUNTING(RefCo
unted<baseClass>) |
| 299 #define REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(baseClass) DEFINE_EVENT_TARGET
_REFCOUNTING(RefCountedGarbageCollected<baseClass>) | 299 #define REFCOUNTED_GARBAGE_COLLECTED_EVENT_TARGET(baseClass) DEFINE_EVENT_TARGET
_REFCOUNTING(RefCountedGarbageCollected<baseClass>) |
| 300 #endif // ENABLE(OILPAN) | 300 #endif // ENABLE(OILPAN) |
| 301 | 301 |
| 302 #endif // EventTarget_h | 302 #endif // EventTarget_h |
| OLD | NEW |