| 26 * POSSIBILITY OF SUCH DAMAGE. |
26 * POSSIBILITY OF SUCH DAMAGE. |
| 27 */ |
27 */ |
| 28 |
28 |
| 29 #import "EventData.h" |
29 #import "EventData.h" |
| 30 |
30 |
| |
31 #import <objc/runtime.h> |
| |
32 |
| |
33 |
| 31 @implementation EventData |
34 @implementation EventData |
| 32 |
35 |
| 33 - (EventData*)init:(ui_callback)cb userdata:(void*)userdata { |
36 - (EventData*)init:(ui_callback)cb userdata:(void*)userdata { |
| 34 _callback = cb; |
37 _callback = cb; |
| 35 _userdata = userdata; |
38 _userdata = userdata; |
| 36 return self; |
39 return self; |
| 37 } |
40 } |
| 38 |
41 |
| 39 - (void)handleEvent:(id)sender { |
42 - (void)handleEvent:(id)sender { |
| 40 if(self.callback) { |
43 if(_callback) { |
| 41 UiEvent event; |
44 UiEvent event; |
| 42 event.obj = self.obj; |
45 event.obj = self.obj; |
| 43 event.window = event.obj->window; |
46 event.window = event.obj->window; |
| 44 event.document = event.obj->ctx->document; |
47 event.document = event.obj->ctx->document; |
| 45 event.eventdata = self.data; |
48 event.eventdata = self.data; |
| 46 event.intval = self.value; |
49 event.intval = self.value; |
| 47 self.callback(&event, self.userdata); |
50 self.callback(&event, self.userdata); |
| 48 } |
51 } |
| 49 } |
52 } |
| 50 |
53 |
| |
54 - (void)handleEventWithEventData:(id)sender { |
| |
55 UiEvent event; |
| |
56 event.obj = self.obj; |
| |
57 event.window = event.obj->window; |
| |
58 event.document = event.obj->ctx->document; |
| |
59 event.eventdata = NULL; |
| |
60 event.intval = 0; |
| |
61 if(_get_eventdata) { |
| |
62 _get_eventdata(sender, _var, &event.eventdata, &event.intval); |
| |
63 } |
| |
64 if(self.callback) { |
| |
65 self.callback(&event, self.userdata); |
| |
66 } |
| |
67 } |
| 51 |
68 |
| 52 @end |
69 @end |