Mercurial > hg > xemacs-beta
comparison src/event-Xt.c @ 960:5b372a329b97
[xemacs-hg @ 2002-08-12 08:00:01 by michaels]
2002-08-02 Marcus Crestani <crestani@informatik.uni-tuebingen.de>
Additions for USE_KKCC:
* tooltalk.c: Add dumpable-flag to tooltalk_message and
tooltalk_pattern.
* ui-gtk.c: Add dumpable-flag to emacs_ffi and emacs_gtk_object.
Add description for emacs_gtk_boxed.
2002-08-12 Mike Sperber <mike@xemacs.org>
* event-Xt.c (x_to_emacs_keysym):
(enqueue_focus_event): Properly initialize event type for USE_KKCC
(due to suggestions from David Bush <David.Bush@intel.com>).
author | michaels |
---|---|
date | Mon, 12 Aug 2002 08:00:07 +0000 |
parents | 345b7d75cab4 |
children | 8401dcd2d43a |
comparison
equal
deleted
inserted
replaced
959:87e011e66a78 | 960:5b372a329b97 |
---|---|
1068 while ((ch = Lstream_get_ichar (istr)) != EOF) | 1068 while ((ch = Lstream_get_ichar (istr)) != EOF) |
1069 { | 1069 { |
1070 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); | 1070 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); |
1071 Lisp_Event *ev = XEVENT (emacs_event); | 1071 Lisp_Event *ev = XEVENT (emacs_event); |
1072 ev->channel = DEVICE_CONSOLE (d); | 1072 ev->channel = DEVICE_CONSOLE (d); |
1073 ev->timestamp = event->time; | |
1073 ev->event_type = key_press_event; | 1074 ev->event_type = key_press_event; |
1074 ev->timestamp = event->time; | |
1075 #ifdef USE_KKCC | 1075 #ifdef USE_KKCC |
1076 SET_KEY_DATA_MODIFIERS (XKEY_DATA (emacs_event), 0); | 1076 XSET_EVENT_TYPE (emacs_event, key_press_event); |
1077 SET_KEY_DATA_KEYSYM (XKEY_DATA (emacs_event), make_char (ch)); | 1077 XSET_KEY_DATA_MODIFIERS (XEVENT_DATA (emacs_event), 0); |
1078 XSET_KEY_DATA_KEYSYM (XEVENT_DATA (emacs_event), make_char (ch)); | |
1078 #else | 1079 #else |
1079 ev->event.key.modifiers = 0; | 1080 ev->event.key.modifiers = 0; |
1080 ev->event.key.keysym = make_char (ch); | 1081 ev->event.key.keysym = make_char (ch); |
1081 #endif | 1082 #endif |
1082 enqueue_Xt_dispatch_event (emacs_event); | 1083 enqueue_Xt_dispatch_event (emacs_event); |
1682 void | 1683 void |
1683 enqueue_focus_event (Widget wants_it, Lisp_Object frame, int in_p) | 1684 enqueue_focus_event (Widget wants_it, Lisp_Object frame, int in_p) |
1684 { | 1685 { |
1685 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); | 1686 Lisp_Object emacs_event = Fmake_event (Qnil, Qnil); |
1686 Lisp_Event *ev = XEVENT (emacs_event); | 1687 Lisp_Event *ev = XEVENT (emacs_event); |
1688 XEvent *x_event; | |
1689 | |
1690 ev->event_type = magic_event; | |
1691 | |
1687 #ifdef USE_KKCC | 1692 #ifdef USE_KKCC |
1688 XEvent *x_event = &XMAGIC_DATA_X_EVENT(EVENT_DATA(ev)); | 1693 XSET_EVENT_TYPE (emacs_event, magic_event); |
1694 x_event = &XMAGIC_DATA_X_EVENT (EVENT_DATA (ev)); | |
1689 #else /* not USE_KKCC */ | 1695 #else /* not USE_KKCC */ |
1690 XEvent *x_event = &ev->event.magic.underlying_x_event; | 1696 x_event = &ev->event.magic.underlying_x_event; |
1691 #endif /* not USE_KKCC */ | 1697 #endif /* not USE_KKCC */ |
1692 | 1698 |
1693 x_event->type = in_p ? FocusIn : FocusOut; | 1699 x_event->type = in_p ? FocusIn : FocusOut; |
1694 x_event->xfocus.window = XtWindow (wants_it); | 1700 x_event->xfocus.window = XtWindow (wants_it); |
1695 | 1701 |
1696 #ifdef USE_KKCC | 1702 #ifdef USE_KKCC |
1697 SET_EVENT_CHANNEL(ev, frame); | 1703 SET_EVENT_CHANNEL (ev, frame); |
1698 /* SET_EVENT_TYPE(ev, magic_event); */ | |
1699 #else /* not USE_KKCC */ | 1704 #else /* not USE_KKCC */ |
1700 ev->channel = frame; | 1705 ev->channel = frame; |
1701 ev->event_type = magic_event; | |
1702 #endif /* not USE_KKCC */ | 1706 #endif /* not USE_KKCC */ |
1703 | 1707 |
1704 enqueue_Xt_dispatch_event (emacs_event); | 1708 enqueue_Xt_dispatch_event (emacs_event); |
1705 } | 1709 } |
1706 | 1710 |