Mercurial > emacs
diff src/termhooks.h @ 88155:d7ddb3e565de
sync with trunk
author | Henrik Enberg <henrik.enberg@telia.com> |
---|---|
date | Mon, 16 Jan 2006 00:03:54 +0000 |
parents | 23a1cea22d13 |
children |
line wrap: on
line diff
--- a/src/termhooks.h Sun Jan 15 23:02:10 2006 +0000 +++ b/src/termhooks.h Mon Jan 16 00:03:54 2006 +0000 @@ -1,6 +1,7 @@ /* Hooks by which low level terminal operations can be made to call other routines. - Copyright (C) 1985, 1986, 1993, 1994 Free Software Foundation, Inc. + Copyright (C) 1985, 1986, 1993, 1994, 2002, 2003, 2004, + 2005 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -16,8 +17,8 @@ You should have received a copy of the GNU General Public License along with GNU Emacs; see the file COPYING. If not, write to -the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ +the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +Boston, MA 02110-1301, USA. */ /* Miscellanea. */ @@ -240,28 +241,23 @@ the mouse click occurred in. .timestamp gives a timestamp (in milliseconds) for the click. */ -#if defined(WINDOWSNT) || defined(MAC_OSX) - MOUSE_WHEEL_EVENT, /* A mouse-wheel event is generated - on WINDOWSNT or MAC_OSX by a - wheel on a mouse (e.g., MS Intellimouse). - The event contains a delta that corresponds - to the amount and direction that the wheel - is rotated. This delta is typically - used to implement a scroll or zoom. - .code gives the delta. - .modifiers holds the state of the - modifier keys. + WHEEL_EVENT, /* A wheel event is generated by a + wheel on a mouse (e.g., MS + Intellimouse). + .modifiers holds the rotate + direction (up or down), and the + state of the modifier keys. .x and .y give the mouse position, in characters, within the window. .frame_or_window gives the frame the wheel event occurred in. .timestamp gives a timestamp (in - milliseconds) for the wheel event. */ -#endif -#ifdef WINDOWSNT - LANGUAGE_CHANGE_EVENT, /* A LANGUAGE_CHANGE_EVENT is generated - on WINDOWSNT when the keyboard layout - or input language is changed by the + milliseconds) for the event. */ +#if defined (WINDOWSNT) || defined (MAC_OS) + LANGUAGE_CHANGE_EVENT, /* A LANGUAGE_CHANGE_EVENT is + generated on WINDOWSNT or Mac OS + when the keyboard layout or input + language is changed by the user. */ #endif SCROLL_BAR_CLICK_EVENT, /* .code gives the number of the mouse button @@ -282,7 +278,7 @@ by MS-Windows scroll bar controls. */ #endif SELECTION_REQUEST_EVENT, /* Another X client wants a selection from us. - See `struct selection_event'. */ + See `struct selection_input_event'. */ SELECTION_CLEAR_EVENT, /* Another X client cleared our selection. */ BUFFER_SWITCH_EVENT, /* A process filter has switched buffers. */ DELETE_WINDOW_EVENT, /* An X client said "delete this window". */ @@ -297,14 +293,14 @@ DRAG_N_DROP_EVENT, /* A drag-n-drop event is generated when files selected outside of Emacs are dropped onto an Emacs window. - Currently used only on Windows NT. .modifiers holds the state of the modifier keys. .x and .y give the mouse position, in characters, within the window. - .frame_or_window is a cons of the frame - in which the drop was made and a list of - the filenames of the dropped files. + .frame_or_window is the frame in + which the drop was made. + .arg is a platform-dependent + representation of the dropped items. .timestamp gives a timestamp (in milliseconds) for the click. */ USER_SIGNAL_EVENT, /* A user signal. @@ -330,12 +326,22 @@ /* Queued from XTread_socket when session manager sends save yourself before shutdown. */ - SAVE_SESSION_EVENT + SAVE_SESSION_EVENT, + +#ifdef MAC_OS + /* Generated when an Apple event, a HICommand event, or a Services + menu event is received and the corresponding handler is + registered. Members `x' and `y' are for the event class and ID + symbols, respectively. Member `code' points to the Apple event + descriptor. Parameters for Non-Apple events are converted to + those in Apple events. */ + MAC_APPLE_EVENT +#endif }; /* If a struct input_event has a kind which is SELECTION_REQUEST_EVENT or SELECTION_CLEAR_EVENT, then its contents are really described - by `struct selection_event'; see xterm.h. */ + by `struct selection_input_event'; see xterm.h. */ /* The keyboard input buffer is an array of these structures. Each one represents some sort of input event - a keystroke, a mouse click, or @@ -361,7 +367,7 @@ unsigned long timestamp; /* This is padding just to put the frame_or_window field - past the size of struct selection_event. */ + past the size of struct selection_input_event. */ int *padding[2]; /* This field is copied into a vector while the event is in the queue, @@ -377,8 +383,10 @@ Lisp_Object arg; }; +#define EVENT_INIT(event) bzero (&(event), sizeof (struct input_event)) + /* Called to read input events. */ -extern int (*read_socket_hook) P_ ((int, struct input_event *, int, int)); +extern int (*read_socket_hook) P_ ((int, int, struct input_event *)); /* Called when a frame's display becomes entirely up to date. */ extern void (*frame_up_to_date_hook) P_ ((struct frame *)); @@ -434,3 +442,6 @@ }; #endif + +/* arch-tag: 33a00ecc-52b5-4186-a410-8801ac9f087d + (do not change this comment) */