Mercurial > hg > xemacs-beta
comparison src/events.c @ 5140:e5380fdaf8f1
merge
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 13 Mar 2010 05:38:34 -0600 |
parents | a48ef26d87ee 2a462149bd6a |
children | 186aebf7f6c6 |
comparison
equal
deleted
inserted
replaced
5139:a48ef26d87ee | 5140:e5380fdaf8f1 |
---|---|
210 { XD_END } | 210 { XD_END } |
211 }; | 211 }; |
212 | 212 |
213 #ifdef EVENT_DATA_AS_OBJECTS | 213 #ifdef EVENT_DATA_AS_OBJECTS |
214 | 214 |
215 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("key-data", key_data, | 215 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("key-data", key_data, |
216 0, /*dumpable-flag*/ | 216 0, internal_object_printer, 0, 0, 0, |
217 0, 0, 0, 0, 0, | 217 key_data_description, |
218 key_data_description, | 218 Lisp_Key_Data); |
219 Lisp_Key_Data); | 219 |
220 | 220 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("button-data", button_data, |
221 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("button-data", button_data, | 221 0, internal_object_printer, 0, 0, 0, |
222 0, /*dumpable-flag*/ | 222 button_data_description, |
223 0, 0, 0, 0, 0, | 223 Lisp_Button_Data); |
224 button_data_description, | 224 |
225 Lisp_Button_Data); | 225 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("motion-data", motion_data, |
226 | 226 0, internal_object_printer, 0, 0, 0, |
227 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("motion-data", motion_data, | 227 motion_data_description, |
228 0, /*dumpable-flag*/ | 228 Lisp_Motion_Data); |
229 0, 0, 0, 0, 0, | 229 |
230 motion_data_description, | 230 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("process-data", process_data, |
231 Lisp_Motion_Data); | 231 0, internal_object_printer, 0, 0, 0, |
232 | 232 process_data_description, |
233 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("process-data", process_data, | 233 Lisp_Process_Data); |
234 0, /*dumpable-flag*/ | 234 |
235 0, 0, 0, 0, 0, | 235 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("timeout-data", timeout_data, |
236 process_data_description, | 236 0, internal_object_printer, 0, 0, 0, |
237 Lisp_Process_Data); | 237 timeout_data_description, |
238 | 238 Lisp_Timeout_Data); |
239 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("timeout-data", timeout_data, | 239 |
240 0, /*dumpable-flag*/ | 240 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("eval-data", eval_data, |
241 0, 0, 0, 0, 0, | 241 0, internal_object_printer, 0, 0, 0, |
242 timeout_data_description, | 242 eval_data_description, |
243 Lisp_Timeout_Data); | 243 Lisp_Eval_Data); |
244 | 244 |
245 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("eval-data", eval_data, | 245 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("misc-user-data", misc_user_data, |
246 0, /*dumpable-flag*/ | 246 0, internal_object_printer, 0, 0, 0, |
247 0, 0, 0, 0, 0, | 247 misc_user_data_description, |
248 eval_data_description, | 248 Lisp_Misc_User_Data); |
249 Lisp_Eval_Data); | 249 |
250 | 250 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("magic-eval-data", magic_eval_data, |
251 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("misc-user-data", misc_user_data, | 251 0, internal_object_printer, 0, 0, 0, |
252 0, /*dumpable-flag*/ | 252 magic_eval_data_description, |
253 0, 0, 0, 0, 0, | 253 Lisp_Magic_Eval_Data); |
254 misc_user_data_description, | 254 |
255 Lisp_Misc_User_Data); | 255 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("magic-data", magic_data, |
256 | 256 0, internal_object_printer, 0, 0, 0, |
257 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("magic-eval-data", magic_eval_data, | 257 magic_data_description, |
258 0, /*dumpable-flag*/ | 258 Lisp_Magic_Data); |
259 0, 0, 0, 0, 0, | |
260 magic_eval_data_description, | |
261 Lisp_Magic_Eval_Data); | |
262 | |
263 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("magic-data", magic_data, | |
264 0, /*dumpable-flag*/ | |
265 0, 0, 0, 0, 0, | |
266 magic_data_description, | |
267 Lisp_Magic_Data); | |
268 | 259 |
269 #endif /* EVENT_DATA_AS_OBJECTS */ | 260 #endif /* EVENT_DATA_AS_OBJECTS */ |
270 | 261 |
271 static Lisp_Object | 262 static Lisp_Object |
272 mark_event (Lisp_Object obj) | 263 mark_event (Lisp_Object obj) |
505 } | 496 } |
506 | 497 |
507 return 0; /* unreached */ | 498 return 0; /* unreached */ |
508 } | 499 } |
509 | 500 |
510 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("event", event, | 501 DEFINE_NODUMP_FROB_BLOCK_LISP_OBJECT ("event", event, |
511 0, /*dumpable-flag*/ | 502 mark_event, print_event, 0, |
512 mark_event, print_event, 0, event_equal, | 503 event_equal, event_hash, |
513 event_hash, event_description, | 504 event_description, |
514 Lisp_Event); | 505 Lisp_Event); |
515 | 506 |
516 DEFUN ("make-event", Fmake_event, 0, 2, 0, /* | 507 DEFUN ("make-event", Fmake_event, 0, 2, 0, /* |
517 Return a new event of type TYPE, with properties described by PLIST. | 508 Return a new event of type TYPE, with properties described by PLIST. |
518 | 509 |
519 TYPE is a symbol, either `empty', `key-press', `button-press', | 510 TYPE is a symbol, either `empty', `key-press', `button-press', |
2554 /************************************************************************/ | 2545 /************************************************************************/ |
2555 | 2546 |
2556 void | 2547 void |
2557 syms_of_events (void) | 2548 syms_of_events (void) |
2558 { | 2549 { |
2559 INIT_LRECORD_IMPLEMENTATION (event); | 2550 INIT_LISP_OBJECT (event); |
2560 #ifdef EVENT_DATA_AS_OBJECTS | 2551 #ifdef EVENT_DATA_AS_OBJECTS |
2561 INIT_LRECORD_IMPLEMENTATION (key_data); | 2552 INIT_LISP_OBJECT (key_data); |
2562 INIT_LRECORD_IMPLEMENTATION (button_data); | 2553 INIT_LISP_OBJECT (button_data); |
2563 INIT_LRECORD_IMPLEMENTATION (motion_data); | 2554 INIT_LISP_OBJECT (motion_data); |
2564 INIT_LRECORD_IMPLEMENTATION (process_data); | 2555 INIT_LISP_OBJECT (process_data); |
2565 INIT_LRECORD_IMPLEMENTATION (timeout_data); | 2556 INIT_LISP_OBJECT (timeout_data); |
2566 INIT_LRECORD_IMPLEMENTATION (eval_data); | 2557 INIT_LISP_OBJECT (eval_data); |
2567 INIT_LRECORD_IMPLEMENTATION (misc_user_data); | 2558 INIT_LISP_OBJECT (misc_user_data); |
2568 INIT_LRECORD_IMPLEMENTATION (magic_eval_data); | 2559 INIT_LISP_OBJECT (magic_eval_data); |
2569 INIT_LRECORD_IMPLEMENTATION (magic_data); | 2560 INIT_LISP_OBJECT (magic_data); |
2570 #endif /* EVENT_DATA_AS_OBJECTS */ | 2561 #endif /* EVENT_DATA_AS_OBJECTS */ |
2571 | 2562 |
2572 DEFSUBR (Fcharacter_to_event); | 2563 DEFSUBR (Fcharacter_to_event); |
2573 DEFSUBR (Fevent_to_character); | 2564 DEFSUBR (Fevent_to_character); |
2574 | 2565 |