X-Git-Url: https://code.delx.au/gnu-emacs/blobdiff_plain/55195689333f402a498e69c813ed659c05e17c8d..204b78de1b66429250e18785a65392b5027ef103:/src/termhooks.h diff --git a/src/termhooks.h b/src/termhooks.h index 2d806c4a28..8405cac3b8 100644 --- a/src/termhooks.h +++ b/src/termhooks.h @@ -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, 2006 Free Software Foundation, Inc. This file is part of GNU Emacs. @@ -16,8 +17,8 @@ GNU General Public License for more details. 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. */ @@ -252,10 +253,11 @@ enum event_kind the wheel event occurred in. .timestamp gives a timestamp (in milliseconds) for the event. */ -#ifdef WINDOWSNT - LANGUAGE_CHANGE_EVENT, /* A LANGUAGE_CHANGE_EVENT is generated - on WINDOWSNT when the keyboard layout - or input language is changed by the +#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 @@ -276,7 +278,7 @@ enum event_kind 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". */ @@ -291,14 +293,14 @@ enum event_kind 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. @@ -324,12 +326,22 @@ enum event_kind /* 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 @@ -355,7 +367,7 @@ struct input_event 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, @@ -371,8 +383,10 @@ struct input_event 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 *)); @@ -428,3 +442,6 @@ enum { }; #endif + +/* arch-tag: 33a00ecc-52b5-4186-a410-8801ac9f087d + (do not change this comment) */