OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006, 2008, 2009 Apple Inc. All rights reserved. | 2 * Copyright (C) 2006, 2008, 2009 Apple Inc. 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 |
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
12 * Library General Public License for more details. | 12 * Library General Public License for more details. |
13 * | 13 * |
14 * You should have received a copy of the GNU Library General Public License | 14 * You should have received a copy of the GNU Library General Public License |
15 * along with this library; see the file COPYING.LIB. If not, write to | 15 * along with this library; see the file COPYING.LIB. If not, write to |
16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, | 16 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, |
17 * Boston, MA 02110-1301, USA. | 17 * Boston, MA 02110-1301, USA. |
18 * | 18 * |
19 */ | 19 */ |
20 | 20 |
21 #ifndef SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ | 21 #ifndef SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ |
22 #define SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ | 22 #define SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ |
23 | 23 |
24 #include "sky/engine/wtf/RefCounted.h" | 24 #include "sky/engine/wtf/RefCounted.h" |
25 | 25 |
| 26 typedef struct _Dart_WeakReferenceSet* Dart_WeakReferenceSet; |
| 27 |
26 namespace blink { | 28 namespace blink { |
27 | 29 class DartGCVisitor; |
28 class Event; | 30 class Event; |
29 class ExecutionContext; | 31 class ExecutionContext; |
30 | 32 |
31 class EventListener : public RefCounted<EventListener> { | 33 class EventListener : public RefCounted<EventListener> { |
32 public: | 34 public: |
33 virtual ~EventListener() { } | 35 virtual ~EventListener() { } |
34 virtual bool operator==(const EventListener&) = 0; | 36 virtual bool operator==(const EventListener&) = 0; |
35 virtual void handleEvent(ExecutionContext*, Event*) = 0; | 37 virtual void handleEvent(ExecutionContext*, Event*) = 0; |
36 | 38 |
| 39 virtual void AcceptDartGCVisitor(DartGCVisitor& visitor) const = 0; |
| 40 |
| 41 |
37 protected: | 42 protected: |
38 explicit EventListener() | 43 explicit EventListener() |
39 { | 44 { |
40 } | 45 } |
41 }; | 46 }; |
42 | 47 |
43 } | 48 } |
44 | 49 |
45 #endif // SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ | 50 #endif // SKY_ENGINE_CORE_EVENTS_EVENTLISTENER_H_ |
OLD | NEW |