/* Interface definitions for display code.
- Copyright (C) 1985, 1993 Free Software Foundation, Inc.
+ Copyright (C) 1985, 1993, 1994 Free Software Foundation, Inc.
This file is part of GNU Emacs.
along with GNU Emacs; see the file COPYING. If not, write to
the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
+#ifndef _DISPEXTERN_H_
+#define _DISPEXTERN_H_
+
/* Nonzero means last display completed and cursor is really at
cursX, cursY. Zero means it was preempted. */
extern int display_completed;
#ifdef HAVE_X_WINDOWS
#include <X11/Xlib.h>
+#endif
+
+#ifdef MSDOS
+#include "msdos.h"
+#endif
+#ifdef HAVE_NTGUI
+#include "win32.h"
+#endif
+
+#ifdef HAVE_FACES
struct face
{
/* If this is non-zero, it is a GC we can use without modification
to represent this face. */
GC gc;
-
- /* If we have ever called get_cached_face on this face structure,
- here is the index in face_vector of the face it returned. It
- might not be valid any more, but it's a good place to start
- looking; get_cached_face tries to use this to avoid searching
- all of face_vector. */
- int cached_index;
/* Pixel value for foreground color. */
- int foreground;
+ EMACS_UINT foreground;
/* Pixel value for background color. */
- int background;
+ EMACS_UINT background;
/* Font used for this face. */
XFontStruct *font;
#define FACE_STIPPLE(f) ((f)->stipple)
#define FACE_UNDERLINE_P(f) ((f)->underline)
-#else /* Not X */
+#else /* not HAVE_FACES */
typedef int FACE;
#define FACE_HIGHLIGHT(f) ((f) & 0x1)
#define FACE_UNDERLINE(f) ((f) & 0x2)
-#endif /* Not X */
+
+#endif /* not HAVE_FACES */
/* This structure is used for the actual display of text on a frame.
and should be deleted. */
int *bufp;
-#ifdef HAVE_X_WINDOWS
+#ifdef HAVE_WINDOW_SYSTEM
/* Pixel position of top left corner of line. */
short *top_left_x;
short *top_left_y;
/* Largest font ascent on this line. */
short *max_ascent;
-#endif /* HAVE_X_WINDOWS */
+#endif /* HAVE_WINDOW_SYSTEM */
/* Mapping of coordinate pairs to buffer positions.
This field holds a vector indexed by row number.
extern void get_display_line ();
extern Lisp_Object sit_for ();
+
+#endif /* not _DISPEXTERN_H_ */