Mercurial > emacs
comparison src/termhooks.h @ 485:8c615e453683
*** empty log message ***
author | Jim Blandy <jimb@redhat.com> |
---|---|
date | Mon, 13 Jan 1992 21:48:08 +0000 |
parents | 1ad871406b12 |
children | 70b112526394 |
comparison
equal
deleted
inserted
replaced
484:3165b2697c78 | 485:8c615e453683 |
---|---|
43 extern int (*update_end_hook) (); | 43 extern int (*update_end_hook) (); |
44 extern int (*set_terminal_window_hook) (); | 44 extern int (*set_terminal_window_hook) (); |
45 | 45 |
46 extern int (*read_socket_hook) (); | 46 extern int (*read_socket_hook) (); |
47 | 47 |
48 /* Hook for Emacs to call to tell the window-system-specific code to | 48 /* Return the current position of the mouse. This should clear |
49 enable/disable low-level tracking. The value of ENABLE tells the | 49 mouse_moved until the next motion event arrives. */ |
50 window system event handler whether it should notice or ignore | 50 extern void (*mouse_position_hook) ( /* SCREEN_PTR *s, |
51 subsequent mouse movement and mouse button releases. | 51 Lisp_Object *x, |
52 Lisp_Object *y, | |
53 Lisp_Object *time */ ); | |
52 | 54 |
53 If this is 0, Emacs should assume that there is no mouse (or at | 55 /* The window system handling code should set this if the mouse has |
54 least no mouse tracking) available. | 56 moved since the last call to the mouse_position_hook. Calling that |
55 | 57 hook should clear this. */ |
56 If called with ENABLE non-zero, the window system event handler | 58 extern int mouse_moved; |
57 should call set_pointer_loc with the new mouse co-ordinates | |
58 whenever the mouse moves, and enqueue a mouse button event for | |
59 button releases as well as button presses. | |
60 | |
61 If called with ENABLE zero, the window system event handler should | |
62 ignore mouse movement events, and not enqueue events for mouse | |
63 button releases. */ | |
64 extern int (*mouse_tracking_enable_hook) ( /* int ENABLE */ ); | |
65 | 59 |
66 /* When a screen's focus redirection is changed, this hook tells the | 60 /* When a screen's focus redirection is changed, this hook tells the |
67 window system code to re-decide where to put the highlight. Under | 61 window system code to re-decide where to put the highlight. Under |
68 X, this means that the system lies about where the focus is. */ | 62 X, this means that Emacs lies about where the focus is. */ |
69 extern void (*screen_rehighlight_hook) ( /* void */ ); | 63 extern void (*screen_rehighlight_hook) ( /* void */ ); |
70 | 64 |
71 /* If nonzero, send all terminal output characters to this stream also. */ | 65 /* If nonzero, send all terminal output characters to this stream also. */ |
72 | |
73 extern FILE *termscript; | 66 extern FILE *termscript; |
74 | 67 |
75 #ifdef XINT | |
76 /* Expedient hack: only provide the below definitions to files that | 68 /* Expedient hack: only provide the below definitions to files that |
77 are prepared to handle lispy things. XINT is defined iff lisp.h | 69 are prepared to handle lispy things. XINT is defined iff lisp.h |
78 has been included in the file before this file. */ | 70 has been included before this file. */ |
71 #ifdef XINT | |
79 | 72 |
80 /* The keyboard input buffer is an array of these structures. Each one | 73 /* The keyboard input buffer is an array of these structures. Each one |
81 represents some sort of input event - a keystroke, a mouse click, or | 74 represents some sort of input event - a keystroke, a mouse click, or |
82 a window system event. These get turned into their lispy forms when | 75 a window system event. These get turned into their lispy forms when |
83 they are removed from the event queue. */ | 76 they are removed from the event queue. */ |
91 ascii_keystroke, /* The ASCII code is in .code. | 84 ascii_keystroke, /* The ASCII code is in .code. |
92 .screen is the screen in which the key | 85 .screen is the screen in which the key |
93 was typed. | 86 was typed. |
94 Note that this includes meta-keys, and | 87 Note that this includes meta-keys, and |
95 the modifiers field of the event | 88 the modifiers field of the event |
96 is unused. */ | 89 is unused. |
97 | 90 .timestamp gives a timestamp (in |
91 milliseconds) for the keystroke. */ | |
98 non_ascii_keystroke, /* .code is a number identifying the | 92 non_ascii_keystroke, /* .code is a number identifying the |
99 function key. A code N represents | 93 function key. A code N represents |
100 a key whose name is | 94 a key whose name is |
101 function_key_names[N]; function_key_names | 95 function_key_names[N]; function_key_names |
102 is a table in keyboard.c to which you | 96 is a table in keyboard.c to which you |
103 should feel free to add missing keys. | 97 should feel free to add missing keys. |
104 .modifiers holds the state of the | 98 .modifiers holds the state of the |
105 modifier keys. | 99 modifier keys. |
106 .screen is the screen in which the key | 100 .screen is the screen in which the key |
107 was typed. */ | 101 was typed. |
102 .timestamp gives a timestamp (in | |
103 milliseconds) for the keystroke. */ | |
108 mouse_click, /* The button number is in .code. | 104 mouse_click, /* The button number is in .code. |
109 .modifiers holds the state of the | 105 .modifiers holds the state of the |
110 modifier keys. | 106 modifier keys. |
111 .x and .y give the mouse position, | 107 .x and .y give the mouse position, |
112 in pixels, within the window. | 108 in pixels, within the window. |