]> code.delx.au - gnu-emacs/blobdiff - src/termhooks.h
(Fsignal): Handle case that backtrace_list is null.
[gnu-emacs] / src / termhooks.h
index e3277e566086b1c399c93d585e3dbd5d64b889c2..48d66d390ebef52e8f7e9151ad5c27e46efa3041 100644 (file)
@@ -22,6 +22,9 @@ Boston, MA 02111-1307, USA.  */
 \f
 /* Miscellanea.   */
 
+struct glyph;
+struct frame;
+
 /* If nonzero, send all terminal output characters to this stream also.  */
 extern FILE *termscript;
 
@@ -32,7 +35,7 @@ extern FILE *termscript;
 \f
 /* Text display hooks.  */
 
-extern void (*cursor_to_hook) P_ ((int, int));
+extern void (*cursor_to_hook) P_ ((int vpos, int hpos));
 extern void (*raw_cursor_to_hook) P_ ((int, int));
 
 extern void (*clear_to_end_hook) P_ ((void));
@@ -41,11 +44,11 @@ extern void (*clear_end_of_line_hook) P_ ((int));
 
 extern void (*ins_del_lines_hook) P_ ((int, int));
 
-extern void (*change_line_highlight_hook) P_ ((int, int, int));
+extern void (*change_line_highlight_hook) P_ ((int, int, int, int));
 extern void (*reassert_line_highlight_hook) P_ ((int, int));
 
-extern void (*insert_glyphs_hook) P_ ((GLYPH *, int));
-extern void (*write_glyphs_hook) P_ ((GLYPH *, int));
+extern void (*insert_glyphs_hook) P_ ((struct glyph *s, int n));
+extern void (*write_glyphs_hook) P_ ((struct glyph *s, int n));
 extern void (*delete_glyphs_hook) P_ ((int));
 
 extern void (*ring_bell_hook) P_ ((void));
@@ -65,7 +68,11 @@ enum scroll_bar_part {
   scroll_bar_handle,
   scroll_bar_below_handle,
   scroll_bar_up_arrow,
-  scroll_bar_down_arrow
+  scroll_bar_down_arrow,
+  scroll_bar_to_top,
+  scroll_bar_to_bottom,
+  scroll_bar_end_scroll,
+  scroll_bar_move_ratio
 };
 
 /* Return the current position of the mouse.
@@ -282,7 +289,7 @@ enum event_kind
                                   (Only the toolkit version uses these.)  */
   iconify_event,               /* An X client iconified this window.  */
   deiconify_event,             /* An X client deiconified this window.  */
-  menu_bar_activate_event,       /* A button press in the menu bar
+  menu_bar_activate_event,      /* A button press in the menu bar
                                   (toolkit version only).  */
   drag_n_drop,                 /* A drag-n-drop event is generated when
                                   files selected outside of Emacs are dropped
@@ -297,9 +304,21 @@ enum event_kind
                                   the filenames of the dropped files.
                                   .timestamp gives a timestamp (in
                                   milliseconds) for the click.  */
-  user_signal                  /* A user signal.
-                                  .code is a number identifying it,
-                                  index into lispy_user_signals.  */
+  user_signal,                  /* A user signal.
+                                   .code is a number identifying it,
+                                   index into lispy_user_signals.  */
+
+  /* Currently only returned when the mouse enters a tool-bar item that
+     has a help string.  Member frame_or_window of the input_event is
+     a cons cell whose car is the tool-bar's frame and whose cdr is the
+     help string.  */
+  HELP_EVENT,
+
+  TOOL_BAR_EVENT,
+
+  /* Queued from XTread_socket on FocusIn events.  Translated into
+     `switch-frame' events in kbd_buffer_get_event, if necessary.  */
+  FOCUS_IN_EVENT
 };
 
 /* If a struct input_event has a kind which is selection_request_event
@@ -348,9 +367,6 @@ extern int (*read_socket_hook) P_ ((int, struct input_event *, int, int));
 /* Called when a frame's display becomes entirely up to date.  */
 extern void (*frame_up_to_date_hook) P_ ((struct frame *));
 \f
-/* This is used in keyboard.c, to tell how many buttons we will need
-   to track the positions of.  */
-#define NUM_MOUSE_BUTTONS (5)
 
 /* Bits in the modifiers member of the input_event structure.
    Note that reorder_modifiers assumes that the bits are in canonical