Mercurial > hg > xemacs-beta
comparison src/events.c @ 5117:3742ea8250b5 ben-lisp-object ben-lisp-object-final-ws-year-2005
Checking in final CVS version of workspace 'ben-lisp-object'
author | Ben Wing <ben@xemacs.org> |
---|---|
date | Sat, 26 Dec 2009 00:20:27 -0600 |
parents | d30cd499e445 |
children | e0db3c197671 |
comparison
equal
deleted
inserted
replaced
5116:e56f73345619 | 5117:3742ea8250b5 |
---|---|
222 { XD_END } | 222 { XD_END } |
223 }; | 223 }; |
224 | 224 |
225 #ifdef EVENT_DATA_AS_OBJECTS | 225 #ifdef EVENT_DATA_AS_OBJECTS |
226 | 226 |
227 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("key-data", key_data, | 227 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("key-data", key_data, |
228 0, /*dumpable-flag*/ | 228 0, 0, 0, 0, 0, |
229 0, 0, 0, 0, 0, | 229 key_data_description, |
230 key_data_description, | 230 Lisp_Key_Data); |
231 Lisp_Key_Data); | 231 |
232 | 232 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("button-data", button_data, |
233 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("button-data", button_data, | 233 0, 0, 0, 0, 0, |
234 0, /*dumpable-flag*/ | 234 button_data_description, |
235 0, 0, 0, 0, 0, | 235 Lisp_Button_Data); |
236 button_data_description, | 236 |
237 Lisp_Button_Data); | 237 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("motion-data", motion_data, |
238 | 238 0, 0, 0, 0, 0, |
239 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("motion-data", motion_data, | 239 motion_data_description, |
240 0, /*dumpable-flag*/ | 240 Lisp_Motion_Data); |
241 0, 0, 0, 0, 0, | 241 |
242 motion_data_description, | 242 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("process-data", process_data, |
243 Lisp_Motion_Data); | 243 0, 0, 0, 0, 0, |
244 | 244 process_data_description, |
245 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("process-data", process_data, | 245 Lisp_Process_Data); |
246 0, /*dumpable-flag*/ | 246 |
247 0, 0, 0, 0, 0, | 247 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("timeout-data", timeout_data, |
248 process_data_description, | 248 0, 0, 0, 0, 0, |
249 Lisp_Process_Data); | 249 timeout_data_description, |
250 | 250 Lisp_Timeout_Data); |
251 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("timeout-data", timeout_data, | 251 |
252 0, /*dumpable-flag*/ | 252 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("eval-data", eval_data, |
253 0, 0, 0, 0, 0, | 253 0, 0, 0, 0, 0, |
254 timeout_data_description, | 254 eval_data_description, |
255 Lisp_Timeout_Data); | 255 Lisp_Eval_Data); |
256 | 256 |
257 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("eval-data", eval_data, | 257 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("misc-user-data", misc_user_data, |
258 0, /*dumpable-flag*/ | 258 0, 0, 0, 0, 0, |
259 0, 0, 0, 0, 0, | 259 misc_user_data_description, |
260 eval_data_description, | 260 Lisp_Misc_User_Data); |
261 Lisp_Eval_Data); | 261 |
262 | 262 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("magic-eval-data", magic_eval_data, |
263 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("misc-user-data", misc_user_data, | 263 0, 0, 0, 0, 0, |
264 0, /*dumpable-flag*/ | 264 magic_eval_data_description, |
265 0, 0, 0, 0, 0, | 265 Lisp_Magic_Eval_Data); |
266 misc_user_data_description, | 266 |
267 Lisp_Misc_User_Data); | 267 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("magic-data", magic_data, |
268 | 268 0, 0, 0, 0, 0, |
269 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("magic-eval-data", magic_eval_data, | 269 magic_data_description, |
270 0, /*dumpable-flag*/ | 270 Lisp_Magic_Data); |
271 0, 0, 0, 0, 0, | |
272 magic_eval_data_description, | |
273 Lisp_Magic_Eval_Data); | |
274 | |
275 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("magic-data", magic_data, | |
276 0, /*dumpable-flag*/ | |
277 0, 0, 0, 0, 0, | |
278 magic_data_description, | |
279 Lisp_Magic_Data); | |
280 | 271 |
281 #endif /* EVENT_DATA_AS_OBJECTS */ | 272 #endif /* EVENT_DATA_AS_OBJECTS */ |
282 | 273 |
283 static Lisp_Object | 274 static Lisp_Object |
284 mark_event (Lisp_Object obj) | 275 mark_event (Lisp_Object obj) |
516 } | 507 } |
517 | 508 |
518 return 0; /* unreached */ | 509 return 0; /* unreached */ |
519 } | 510 } |
520 | 511 |
521 DEFINE_BASIC_LRECORD_IMPLEMENTATION ("event", event, | 512 DEFINE_NONDUMPABLE_BASIC_LISP_OBJECT ("event", event, |
522 0, /*dumpable-flag*/ | 513 mark_event, print_event, 0, |
523 mark_event, print_event, 0, event_equal, | 514 event_equal, event_hash, |
524 event_hash, event_description, | 515 event_description, |
525 Lisp_Event); | 516 Lisp_Event); |
526 | 517 |
527 DEFUN ("make-event", Fmake_event, 0, 2, 0, /* | 518 DEFUN ("make-event", Fmake_event, 0, 2, 0, /* |
528 Return a new event of type TYPE, with properties described by PLIST. | 519 Return a new event of type TYPE, with properties described by PLIST. |
529 | 520 |
530 TYPE is a symbol, either `empty', `key-press', `button-press', | 521 TYPE is a symbol, either `empty', `key-press', `button-press', |
2566 /************************************************************************/ | 2557 /************************************************************************/ |
2567 | 2558 |
2568 void | 2559 void |
2569 syms_of_events (void) | 2560 syms_of_events (void) |
2570 { | 2561 { |
2571 INIT_LRECORD_IMPLEMENTATION (event); | 2562 INIT_LISP_OBJECT (event); |
2572 #ifdef EVENT_DATA_AS_OBJECTS | 2563 #ifdef EVENT_DATA_AS_OBJECTS |
2573 INIT_LRECORD_IMPLEMENTATION (key_data); | 2564 INIT_LISP_OBJECT (key_data); |
2574 INIT_LRECORD_IMPLEMENTATION (button_data); | 2565 INIT_LISP_OBJECT (button_data); |
2575 INIT_LRECORD_IMPLEMENTATION (motion_data); | 2566 INIT_LISP_OBJECT (motion_data); |
2576 INIT_LRECORD_IMPLEMENTATION (process_data); | 2567 INIT_LISP_OBJECT (process_data); |
2577 INIT_LRECORD_IMPLEMENTATION (timeout_data); | 2568 INIT_LISP_OBJECT (timeout_data); |
2578 INIT_LRECORD_IMPLEMENTATION (eval_data); | 2569 INIT_LISP_OBJECT (eval_data); |
2579 INIT_LRECORD_IMPLEMENTATION (misc_user_data); | 2570 INIT_LISP_OBJECT (misc_user_data); |
2580 INIT_LRECORD_IMPLEMENTATION (magic_eval_data); | 2571 INIT_LISP_OBJECT (magic_eval_data); |
2581 INIT_LRECORD_IMPLEMENTATION (magic_data); | 2572 INIT_LISP_OBJECT (magic_data); |
2582 #endif /* EVENT_DATA_AS_OBJECTS */ | 2573 #endif /* EVENT_DATA_AS_OBJECTS */ |
2583 | 2574 |
2584 DEFSUBR (Fcharacter_to_event); | 2575 DEFSUBR (Fcharacter_to_event); |
2585 DEFSUBR (Fevent_to_character); | 2576 DEFSUBR (Fevent_to_character); |
2586 | 2577 |