annotate oldXMenu/XMenuInt.h @ 53333:c23cf5520cd9

(Qarrow, Qhand, Qtext, Qpointer): New variables for pointer types. (Qrelative_width, Qalign_to): Remove unused variables. (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void. (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for image maps. (x_y_to_hpos_vpos): Return glyph relative coordinates through new dx and dy args. Remove buffer_only_p arg (always 0). Simplify code accordingly. (get_glyph_string_clip_rect): Draw cursor using glyph's rather than row's ascent and height, to get sensible height on tall rows. (build_desired_tool_bar_string): Remove Qimage extern. (get_tool_bar_item): Fix call to x_y_to_hpos_vpos. (produce_image_glyph): Adjust it.ascent to minimum row ascent if image glyph is alone on the last line. (append_glyph, append_composite_glyph, produce_image_glyph) (append_stretch_glyph): Set glyph's ascent and descent. (on_hot_spot_p): New function to check if position is inside an rectangular, circular, or polygon-shaped image hot-spot, (find_hot_spot): New function to search for image hot-spot. (Flookup_image_map): New defun to search for image hot-spot. (define_frame_cursor1): New aux function to determine frame pointer. (note_mode_line_or_margin_highlight, note_mouse_highlight): Handle `pointer' text property and :pointer image property to control frame pointer shape. Detect image hot-spots for pointer and help_echo properties. Use define_frame_cursor1. (note_mouse_highlight): Use Vvoid_text_area_pointer. (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables. DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
author Kim F. Storm <storm@cua.dk>
date Sun, 28 Dec 2003 00:12:27 +0000
parents 695cf19ef79e
children f0eb34e60705 e8824c4f5f7e 375f2633d815
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
1
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
2 /* $Header: /cvsroot/emacs/emacs/oldXMenu/XMenuInt.h,v 1.2 2003/02/04 14:19:01 lektu Exp $ */
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
3 /* Copyright Massachusetts Institute of Technology 1985 */
Dave Love <fx@gnu.org>
parents:
diff changeset
4
Dave Love <fx@gnu.org>
parents:
diff changeset
5 /*
Dave Love <fx@gnu.org>
parents:
diff changeset
6 * XMenu: MIT Project Athena, X Window system menu package
Dave Love <fx@gnu.org>
parents:
diff changeset
7 *
Dave Love <fx@gnu.org>
parents:
diff changeset
8 * XMenuInternal.h - Internal menu system include file for the
Dave Love <fx@gnu.org>
parents:
diff changeset
9 * MIT Project Athena XMenu X window system
Dave Love <fx@gnu.org>
parents:
diff changeset
10 * menu package.
49600
23a1cea22d13 Trailing whitespace deleted.
Juanma Barranquero <lekktu@gmail.com>
parents: 25858
diff changeset
11 *
25858
Dave Love <fx@gnu.org>
parents:
diff changeset
12 * Author: Tony Della Fera, DEC
Dave Love <fx@gnu.org>
parents:
diff changeset
13 * October, 1985
Dave Love <fx@gnu.org>
parents:
diff changeset
14 */
Dave Love <fx@gnu.org>
parents:
diff changeset
15
Dave Love <fx@gnu.org>
parents:
diff changeset
16 #ifndef _XMenuInternal_h_
Dave Love <fx@gnu.org>
parents:
diff changeset
17 #define _XMenuInternal_h_
Dave Love <fx@gnu.org>
parents:
diff changeset
18
Dave Love <fx@gnu.org>
parents:
diff changeset
19 /* Avoid warnings about redefining NULL by including <stdio.h> first;
Dave Love <fx@gnu.org>
parents:
diff changeset
20 the other file which wants to define it (<stddef.h> on Ultrix
Dave Love <fx@gnu.org>
parents:
diff changeset
21 systems) can deal if NULL is already defined, but <stdio.h> can't. */
Dave Love <fx@gnu.org>
parents:
diff changeset
22 #include <stdio.h>
Dave Love <fx@gnu.org>
parents:
diff changeset
23 #include <X11/Xlib.h>
Dave Love <fx@gnu.org>
parents:
diff changeset
24 #include "X10.h"
Dave Love <fx@gnu.org>
parents:
diff changeset
25 #include "XMenu.h"
Dave Love <fx@gnu.org>
parents:
diff changeset
26
Dave Love <fx@gnu.org>
parents:
diff changeset
27 #define min(x, y) ((x) <= (y) ? (x) : (y))
Dave Love <fx@gnu.org>
parents:
diff changeset
28 #define max(x, y) ((x) >= (y) ? (x) : (y))
Dave Love <fx@gnu.org>
parents:
diff changeset
29 #define abs(a) ((a) < 0 ? -(a) : (a))
Dave Love <fx@gnu.org>
parents:
diff changeset
30
Dave Love <fx@gnu.org>
parents:
diff changeset
31 #define _X_FAILURE -1
Dave Love <fx@gnu.org>
parents:
diff changeset
32
Dave Love <fx@gnu.org>
parents:
diff changeset
33 #define _SUCCESS 1
Dave Love <fx@gnu.org>
parents:
diff changeset
34 #define _FAILURE -1
Dave Love <fx@gnu.org>
parents:
diff changeset
35
Dave Love <fx@gnu.org>
parents:
diff changeset
36 /*
Dave Love <fx@gnu.org>
parents:
diff changeset
37 * XMenu internal event handler variable.
Dave Love <fx@gnu.org>
parents:
diff changeset
38 */
Dave Love <fx@gnu.org>
parents:
diff changeset
39 extern int (*_XMEventHandler)();
Dave Love <fx@gnu.org>
parents:
diff changeset
40
Dave Love <fx@gnu.org>
parents:
diff changeset
41 #ifndef Pixel
Dave Love <fx@gnu.org>
parents:
diff changeset
42 #define Pixel unsigned long
Dave Love <fx@gnu.org>
parents:
diff changeset
43 #endif
Dave Love <fx@gnu.org>
parents:
diff changeset
44
Dave Love <fx@gnu.org>
parents:
diff changeset
45 /*
Dave Love <fx@gnu.org>
parents:
diff changeset
46 * Internal routine declarations.
Dave Love <fx@gnu.org>
parents:
diff changeset
47 */
Dave Love <fx@gnu.org>
parents:
diff changeset
48 int _XMWinQueInit(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
49 int _XMWinQueAddPane();
Dave Love <fx@gnu.org>
parents:
diff changeset
50 int _XMWinQueAddSelection();
Dave Love <fx@gnu.org>
parents:
diff changeset
51 int _XMWinQueFlush();
Dave Love <fx@gnu.org>
parents:
diff changeset
52 XMPane *_XMGetPanePtr();
Dave Love <fx@gnu.org>
parents:
diff changeset
53 XMSelect *_XMGetSelectionPtr();
Dave Love <fx@gnu.org>
parents:
diff changeset
54 int _XMRecomputeGlobals(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
55 int _XMRecomputePane();
Dave Love <fx@gnu.org>
parents:
diff changeset
56 int _XMRecomputeSelection();
Dave Love <fx@gnu.org>
parents:
diff changeset
57 int _XMTransToOrigin(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
58 int _XMRefreshPane(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
59 int _XMRefreshSelections(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
60 int _XMHighlightSelection(); /* No value actually returned. */
Dave Love <fx@gnu.org>
parents:
diff changeset
61
Dave Love <fx@gnu.org>
parents:
diff changeset
62 #endif
Dave Love <fx@gnu.org>
parents:
diff changeset
63 /* Don't add stuff after this #endif */
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
64
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
65 /* arch-tag: 00640af1-9386-48b5-a4be-35620b8cd3aa
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 49600
diff changeset
66 (do not change this comment) */