diff options
| author | Jim Blandy | 1992-01-28 17:22:57 +0000 |
|---|---|---|
| committer | Jim Blandy | 1992-01-28 17:22:57 +0000 |
| commit | 284f4730f4ba5148bdb88537d22059cd66ce1536 (patch) | |
| tree | 25c3005405757bb8c459bf16fd24b229f788b527 /src/keyboard.h | |
| parent | 6bbbd9b0eeac2e41c7bce72e80e77dafe81e71b3 (diff) | |
| download | emacs-284f4730f4ba5148bdb88537d22059cd66ce1536.tar.gz emacs-284f4730f4ba5148bdb88537d22059cd66ce1536.zip | |
Initial revision
Diffstat (limited to 'src/keyboard.h')
| -rw-r--r-- | src/keyboard.h | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/src/keyboard.h b/src/keyboard.h new file mode 100644 index 00000000000..a1b00ba94cf --- /dev/null +++ b/src/keyboard.h | |||
| @@ -0,0 +1,68 @@ | |||
| 1 | /* Declarations useful when processing input. | ||
| 2 | Copyright (C) 1985, 1986, 1987 Free Software Foundation, Inc. | ||
| 3 | |||
| 4 | This file is part of GNU Emacs. | ||
| 5 | |||
| 6 | GNU Emacs is free software; you can redistribute it and/or modify | ||
| 7 | it under the terms of the GNU General Public License as published by | ||
| 8 | the Free Software Foundation; either version 1, or (at your option) | ||
| 9 | any later version. | ||
| 10 | |||
| 11 | GNU Emacs is distributed in the hope that it will be useful, | ||
| 12 | but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
| 13 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
| 14 | GNU General Public License for more details. | ||
| 15 | |||
| 16 | You should have received a copy of the GNU General Public License | ||
| 17 | along with GNU Emacs; see the file COPYING. If not, write to | ||
| 18 | the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ | ||
| 19 | |||
| 20 | /* Total number of times read_char has returned. */ | ||
| 21 | extern int num_input_chars; | ||
| 22 | |||
| 23 | /* Nonzero means polling for input is temporarily suppresed. */ | ||
| 24 | extern int poll_suppress_count; | ||
| 25 | |||
| 26 | /* Keymap mapping ASCII function key sequences onto their preferred forms. | ||
| 27 | Initialized by the terminal-specific lisp files. */ | ||
| 28 | extern Lisp_Object Vfunction_key_map; | ||
| 29 | |||
| 30 | |||
| 31 | /* Macros for dealing with lispy events. */ | ||
| 32 | |||
| 33 | /* True iff EVENT has data fields describing it (i.e. a mouse click). */ | ||
| 34 | #define EVENT_HAS_PARAMETERS(event) \ | ||
| 35 | (XTYPE (event) == Lisp_Cons && Flength (event) == 5) | ||
| 36 | |||
| 37 | /* Access the components of composite events. */ | ||
| 38 | #define EVENT_HEAD(event) (Fnth (0, (event))) | ||
| 39 | #define EVENT_WINDOW(event) (Fnth (1, (event))) | ||
| 40 | #define EVENT_BUFFER_POSN(event) (Fnth (2, (event))) | ||
| 41 | #define EVENT_SCROLLBAR_BUTTON EVENT_BUFFER_POSN | ||
| 42 | #define EVENT_WINDOW_POSN(event) (Fnth (3, (event))) | ||
| 43 | #define EVENT_TIMESTAMP(event) (Fnth (4, (event))) | ||
| 44 | |||
| 45 | /* Some of the event heads. */ | ||
| 46 | extern Lisp_Object Qvscrollbar_part, Qvslider_part; | ||
| 47 | extern Lisp_Object Qvthumbup_part, Qvthumbdown_part; | ||
| 48 | extern Lisp_Object Qhscrollbar_part, Qhslider_part; | ||
| 49 | extern Lisp_Object Qhthumbleft_part, Qhthumbright_part; | ||
| 50 | |||
| 51 | /* Properties on event heads. */ | ||
| 52 | extern Lisp_Object Qevent_kind, Qevent_unmodified; | ||
| 53 | |||
| 54 | /* Getting an unmodified version of an event head. */ | ||
| 55 | #define EVENT_HEAD_UNMODIFIED(event_head) \ | ||
| 56 | (Fget ((event_head), Qevent_unmodified)) | ||
| 57 | |||
| 58 | /* The values of Qevent_kind properties. */ | ||
| 59 | extern Lisp_Object Qfunction_key, Qmouse_click, Qmouse_movement; | ||
| 60 | extern Lisp_Object Qscrollbar_click; | ||
| 61 | |||
| 62 | /* Getting the kind of an event head. */ | ||
| 63 | #define EVENT_HEAD_KIND(event_head) \ | ||
| 64 | (Fget ((event_head), Qevent_kind)) | ||
| 65 | |||
| 66 | /* Symbols to use for non-text mouse positions. */ | ||
| 67 | extern Lisp_Object Qmode_line, Qvertical_split; | ||
| 68 | |||