Mercurial > hg > xemacs-beta
comparison src/event-Xt.c @ 424:11054d720c21 r21-2-20
Import from CVS: tag r21-2-20
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:26:11 +0200 |
parents | 95016f13131a |
children |
comparison
equal
deleted
inserted
replaced
423:28d9c139be4c | 424:11054d720c21 |
---|---|
1567 case PropertyNotify: | 1567 case PropertyNotify: |
1568 x_handle_property_notify (&event->xproperty); | 1568 x_handle_property_notify (&event->xproperty); |
1569 break; | 1569 break; |
1570 | 1570 |
1571 case Expose: | 1571 case Expose: |
1572 x_redraw_exposed_area (f, event->xexpose.x, event->xexpose.y, | 1572 if (!check_for_ignored_expose (f, event->xexpose.x, event->xexpose.y, |
1573 event->xexpose.width, event->xexpose.height); | 1573 event->xexpose.width, event->xexpose.height) |
1574 && | |
1575 !find_matching_subwindow (f, event->xexpose.x, event->xexpose.y, | |
1576 event->xexpose.width, event->xexpose.height)) | |
1577 x_redraw_exposed_area (f, event->xexpose.x, event->xexpose.y, | |
1578 event->xexpose.width, event->xexpose.height); | |
1574 break; | 1579 break; |
1575 | 1580 |
1576 case GraphicsExpose: /* This occurs when an XCopyArea's source area was | 1581 case GraphicsExpose: /* This occurs when an XCopyArea's source area was |
1577 obscured or not available. */ | 1582 obscured or not available. */ |
1578 x_redraw_exposed_area (f, event->xexpose.x, event->xexpose.y, | 1583 x_redraw_exposed_area (f, event->xexpose.x, event->xexpose.y, |
1661 static int timeout_id_tick; | 1666 static int timeout_id_tick; |
1662 | 1667 |
1663 /* Xt interval id's might not fit into an int (they're pointers, as it | 1668 /* Xt interval id's might not fit into an int (they're pointers, as it |
1664 happens), so we need to provide a conversion list. */ | 1669 happens), so we need to provide a conversion list. */ |
1665 | 1670 |
1666 struct Xt_timeout | 1671 static struct Xt_timeout |
1667 { | 1672 { |
1668 int id; | 1673 int id; |
1669 XtIntervalId interval_id; | 1674 XtIntervalId interval_id; |
1670 struct Xt_timeout *next; | 1675 struct Xt_timeout *next; |
1671 } *pending_timeouts, *completed_timeouts; | 1676 } *pending_timeouts, *completed_timeouts; |
1672 | 1677 |
1673 struct Xt_timeout_blocktype | 1678 static struct Xt_timeout_blocktype |
1674 { | 1679 { |
1675 Blocktype_declare (struct Xt_timeout); | 1680 Blocktype_declare (struct Xt_timeout); |
1676 } *the_Xt_timeout_blocktype; | 1681 } *the_Xt_timeout_blocktype; |
1677 | 1682 |
1678 /* called by XtAppNextEvent() */ | 1683 /* called by XtAppNextEvent() */ |
2916 defsymbol (&Qkey_mapping, "key-mapping"); | 2921 defsymbol (&Qkey_mapping, "key-mapping"); |
2917 defsymbol (&Qsans_modifiers, "sans-modifiers"); | 2922 defsymbol (&Qsans_modifiers, "sans-modifiers"); |
2918 } | 2923 } |
2919 | 2924 |
2920 void | 2925 void |
2921 vars_of_event_Xt (void) | 2926 reinit_vars_of_event_Xt (void) |
2922 { | 2927 { |
2923 dispatch_event_queue = Qnil; | |
2924 staticpro (&dispatch_event_queue); | |
2925 dispatch_event_queue_tail = Qnil; | |
2926 | |
2927 /* this function only makes safe calls */ | |
2928 init_what_input_once (); | |
2929 | |
2930 Xt_event_stream = xnew (struct event_stream); | 2928 Xt_event_stream = xnew (struct event_stream); |
2931 Xt_event_stream->event_pending_p = emacs_Xt_event_pending_p; | 2929 Xt_event_stream->event_pending_p = emacs_Xt_event_pending_p; |
2932 Xt_event_stream->next_event_cb = emacs_Xt_next_event; | 2930 Xt_event_stream->next_event_cb = emacs_Xt_next_event; |
2933 Xt_event_stream->handle_magic_event_cb = emacs_Xt_handle_magic_event; | 2931 Xt_event_stream->handle_magic_event_cb = emacs_Xt_handle_magic_event; |
2934 Xt_event_stream->add_timeout_cb = emacs_Xt_add_timeout; | 2932 Xt_event_stream->add_timeout_cb = emacs_Xt_add_timeout; |
2939 Xt_event_stream->unselect_process_cb = emacs_Xt_unselect_process; | 2937 Xt_event_stream->unselect_process_cb = emacs_Xt_unselect_process; |
2940 Xt_event_stream->quit_p_cb = emacs_Xt_quit_p; | 2938 Xt_event_stream->quit_p_cb = emacs_Xt_quit_p; |
2941 Xt_event_stream->create_stream_pair_cb = emacs_Xt_create_stream_pair; | 2939 Xt_event_stream->create_stream_pair_cb = emacs_Xt_create_stream_pair; |
2942 Xt_event_stream->delete_stream_pair_cb = emacs_Xt_delete_stream_pair; | 2940 Xt_event_stream->delete_stream_pair_cb = emacs_Xt_delete_stream_pair; |
2943 | 2941 |
2942 the_Xt_timeout_blocktype = Blocktype_new (struct Xt_timeout_blocktype); | |
2943 | |
2944 last_quit_check_signal_tick_count = 0; | |
2945 | |
2946 /* this function only makes safe calls */ | |
2947 init_what_input_once (); | |
2948 } | |
2949 | |
2950 void | |
2951 vars_of_event_Xt (void) | |
2952 { | |
2953 reinit_vars_of_event_Xt (); | |
2954 | |
2955 dispatch_event_queue = Qnil; | |
2956 staticpro (&dispatch_event_queue); | |
2957 dispatch_event_queue_tail = Qnil; | |
2958 pdump_wire (&dispatch_event_queue_tail); | |
2959 | |
2944 DEFVAR_BOOL ("modifier-keys-are-sticky", &modifier_keys_are_sticky /* | 2960 DEFVAR_BOOL ("modifier-keys-are-sticky", &modifier_keys_are_sticky /* |
2945 *Non-nil makes modifier keys sticky. | 2961 *Non-nil makes modifier keys sticky. |
2946 This means that you can release the modifier key before pressing down | 2962 This means that you can release the modifier key before pressing down |
2947 the key that you wish to be modified. Although this is non-standard | 2963 the key that you wish to be modified. Although this is non-standard |
2948 behavior, it is recommended because it reduces the strain on your hand, | 2964 behavior, it is recommended because it reduces the strain on your hand, |
2964 1 == non-verbose output | 2980 1 == non-verbose output |
2965 2 == verbose output | 2981 2 == verbose output |
2966 */ ); | 2982 */ ); |
2967 x_debug_events = 0; | 2983 x_debug_events = 0; |
2968 #endif | 2984 #endif |
2969 | |
2970 the_Xt_timeout_blocktype = Blocktype_new (struct Xt_timeout_blocktype); | |
2971 | |
2972 last_quit_check_signal_tick_count = 0; | |
2973 } | 2985 } |
2974 | 2986 |
2975 /* This mess is a hack that patches the shell widget to treat visual inheritance | 2987 /* This mess is a hack that patches the shell widget to treat visual inheritance |
2976 the same as colormap and depth inheritance */ | 2988 the same as colormap and depth inheritance */ |
2977 | 2989 |