summaryrefslogtreecommitdiff
path: root/src/msdos.h
diff options
context:
space:
mode:
authorEli Zaretskii <eliz@gnu.org>1999-12-28 15:56:29 +0000
committerEli Zaretskii <eliz@gnu.org>1999-12-28 15:56:29 +0000
commitadb9900f35b2f0b64a039af7fba2d295fc1ad6b5 (patch)
tree45239044d8807403ebaae211a3af27154f03e995 /src/msdos.h
parent0d43b60dfed8ebc1a6ae9598a89b24470da0b46a (diff)
downloademacs-adb9900f35b2f0b64a039af7fba2d295fc1ad6b5.tar.gz
(struct display_info): New.
(struct x_output): Add the display_info member. (FRAME_X_DISPLAY_INFO): New macro.
Diffstat (limited to 'src/msdos.h')
-rw-r--r--src/msdos.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/msdos.h b/src/msdos.h
index 87e88dda475..97253fc8359 100644
--- a/src/msdos.h
+++ b/src/msdos.h
@@ -55,6 +55,33 @@ typedef int XRectangle;
#define PIX_TYPE int
#define XDISPLAY
+/* A stripped version of struct x_display_info in xterm.h, which see. */
+struct display_info
+{
+ /* These variables describe the range of text currently shown in its
+ mouse-face, together with the window they apply to. As long as
+ the mouse stays within this range, we need not redraw anything on
+ its account. Rows and columns are glyph matrix positions in
+ MOUSE_FACE_WINDOW. */
+ int mouse_face_beg_row, mouse_face_beg_col;
+ int mouse_face_end_row, mouse_face_end_col;
+ int mouse_face_past_end;
+ Lisp_Object mouse_face_window;
+ int mouse_face_face_id;
+
+ /* 1 if a mouse motion event came and we didn't handle it right away because
+ gc was in progress. */
+ int mouse_face_deferred_gc;
+
+ /* FRAME and X, Y position of mouse when last checked for
+ highlighting. X and Y can be negative or out of range for the frame. */
+ struct frame *mouse_face_mouse_frame;
+ int mouse_face_mouse_x, mouse_face_mouse_y;
+
+ /* Nonzero means defer mouse-motion highlighting. */
+ int mouse_face_defer;
+};
+
/* This is a cut-down version of the one in xterm.h, which see. */
struct x_output
{
@@ -66,6 +93,7 @@ struct x_output
XFontStruct *font; /* used in x-popup-menu (xmenu.c) */
Window busy_window; /* currently unused (but maybe some day) */
unsigned busy_p : 1; /* ditto */
+ struct display_info display_info; /* used for drawing mouse highlight */
};
extern struct x_output the_only_x_display;
@@ -74,6 +102,7 @@ extern struct x_output the_only_x_display;
#define FRAME_FOREGROUND_PIXEL(f) (the_only_x_display.foreground_pixel)
#define FRAME_BACKGROUND_PIXEL(f) (the_only_x_display.background_pixel)
#define FRAME_FONT(f) (the_only_x_display.font)
+#define FRAME_X_DISPLAY_INFO(f) (&the_only_x_display.display_info)
/* Prototypes. */