Chromium Code Reviews| Index: Source/core/events/RelatedEvent.h |
| diff --git a/Source/core/events/RelatedEvent.h b/Source/core/events/RelatedEvent.h |
| new file mode 100644 |
| index 0000000000000000000000000000000000000000..50dd7b2ae4c8f4a6a41720cb9fe95174450714fd |
| --- /dev/null |
| +++ b/Source/core/events/RelatedEvent.h |
| @@ -0,0 +1,50 @@ |
| +// Copyright 2014 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef RelatedEvent_h |
| +#define RelatedEvent_h |
| + |
| +#include "core/events/Event.h" |
| + |
| +namespace WebCore { |
| + |
| +struct RelatedEventInit : public EventInit { |
| + RelatedEventInit(); |
| + RefPtr<EventTarget> relatedTarget; |
| +}; |
| + |
| +class RelatedEvent FINAL : public Event { |
| +public: |
| + static PassRefPtr<RelatedEvent> create() |
| + { |
| + return adoptRef(new RelatedEvent); |
| + } |
| + |
| + static PassRefPtr<RelatedEvent> create(const AtomicString& eventType); |
| + static PassRefPtr<RelatedEvent> create(const AtomicString& eventType, const RelatedEventInit&); |
| + |
| + virtual ~RelatedEvent() { } |
|
Inactive
2014/07/16 20:07:25
nit: should probably be in the cpp.
pals
2014/07/17 15:35:46
Done.
|
| + |
| + EventTarget* relatedTarget() const { return m_relatedTarget.get(); } |
| + EventTarget* relatedTarget(bool& isNull) const { isNull = !m_relatedTarget; return m_relatedTarget.get(); } |
|
Inactive
2014/07/16 20:07:25
nit: This isNull argument doesn't make much sense
pals
2014/07/17 15:35:47
Done.
|
| + void setRelatedTarget(PassRefPtr<EventTarget> relatedTarget) { m_relatedTarget = relatedTarget; } |
| + |
| + |
| + virtual const AtomicString& interfaceName() const OVERRIDE { return EventNames::RelatedEvent; } |
| + virtual bool isRelatedEvent() const OVERRIDE { return true; } |
| + |
| +protected: |
| + RelatedEvent(); |
| + RelatedEvent(const AtomicString& type); |
|
Inactive
2014/07/16 20:07:25
nit: explicit
pals
2014/07/17 15:35:47
Done.
|
| + RelatedEvent(const AtomicString& type, const RelatedEventInit&); |
| + |
| +private: |
| + RefPtr<EventTarget> m_relatedTarget; |
| +}; |
| + |
| +DEFINE_EVENT_TYPE_CASTS(RelatedEvent); |
| + |
| +} // namespace WebCore |
| + |
| +#endif // RelatedEvent_h |