annotate src/dispextern.h @ 18989:6253a99afd95

(rmail-pop-password-error): New variable. (rmail-insert-inbox-text): If there's an error getting mail from the POP server, and the error matches rmail-pop-password-error or we prompted for the POP password, assume that the password is incorrect and erase it so that the user will be prompted again the next time he gets mail.
author Richard M. Stallman <rms@gnu.org>
date Fri, 25 Jul 1997 22:08:24 +0000
parents 118cff7e4bca
children fb4c986db0e2
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
1 /* Interface definitions for display code.
7307
cd81dba38a49 Update copyright.
Karl Heuer <kwzh@gnu.org>
parents: 6658
diff changeset
2 Copyright (C) 1985, 1993, 1994 Free Software Foundation, Inc.
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
3
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
4 This file is part of GNU Emacs.
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
5
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
6 GNU Emacs is free software; you can redistribute it and/or modify
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
7 it under the terms of the GNU General Public License as published by
732
a8d94735277e *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 485
diff changeset
8 the Free Software Foundation; either version 2, or (at your option)
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
9 any later version.
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
10
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
11 GNU Emacs is distributed in the hope that it will be useful,
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
12 but WITHOUT ANY WARRANTY; without even the implied warranty of
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
14 GNU General Public License for more details.
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
15
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
16 You should have received a copy of the GNU General Public License
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
17 along with GNU Emacs; see the file COPYING. If not, write to
14186
ee40177f6c68 Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents: 13407
diff changeset
18 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
ee40177f6c68 Update FSF's address in the preamble.
Erik Naggum <erik@naggum.no>
parents: 13407
diff changeset
19 Boston, MA 02111-1307, USA. */
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
20
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
21 #ifndef _DISPEXTERN_H_
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
22 #define _DISPEXTERN_H_
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
23
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
24 /* Nonzero means last display completed and cursor is really at
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
25 cursX, cursY. Zero means it was preempted. */
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
26 extern int display_completed;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
27
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
28 #ifdef HAVE_X_WINDOWS
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
29 #include <X11/Xlib.h>
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
30 #endif
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
31
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
32 #ifdef MSDOS
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
33 #include "msdos.h"
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
34 #endif
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
35
13407
5ebb99bc06bb [HAVE_NTGUI]: Include win32.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 9572
diff changeset
36 #ifdef HAVE_NTGUI
16887
dd6cbc8b53e8 Use new name w32gui.h
Geoff Voelker <voelker@cs.washington.edu>
parents: 16051
diff changeset
37 #include "w32gui.h"
13407
5ebb99bc06bb [HAVE_NTGUI]: Include win32.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 9572
diff changeset
38 #endif
5ebb99bc06bb [HAVE_NTGUI]: Include win32.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 9572
diff changeset
39
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
40 #ifdef HAVE_FACES
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
41 struct face
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
42 {
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
43 /* If this is non-zero, it is a GC we can use without modification
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
44 to represent this face. Used only for ASCII characters. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
45 GC gc;
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
46
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
47 /* GC used for non-ASCII characters. */
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
48 GC non_ascii_gc;
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
49
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
50 /* Pixel value for foreground color. */
8821
041e02e09745 (struct face): Use EMACS_UINT.
Richard M. Stallman <rms@gnu.org>
parents: 7307
diff changeset
51 EMACS_UINT foreground;
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
52
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
53 /* Pixel value for background color. */
8821
041e02e09745 (struct face): Use EMACS_UINT.
Richard M. Stallman <rms@gnu.org>
parents: 7307
diff changeset
54 EMACS_UINT background;
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
55
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
56 /* Font used for this face. If any fontset is set for this face,
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
57 this points to a `font' slot of the struct `font_info' for an
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
58 ASCII font of the fontset. In that case, we should not call
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
59 XFreeFont on it because the font may still be used somewhere
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
60 else. */
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
61 XFontStruct *font;
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
62
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
63 /* Fontset ID if any fontset is set for this face, else -1. */
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
64 int fontset;
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
65
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
66 /* Background stipple or bitmap used for this face. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
67 Pixmap stipple;
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
68
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
69 /* Pixmap_depth. */
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
70 unsigned int pixmap_w, pixmap_h;
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
71
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
72 /* Whether or not to underline text in this face. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
73 char underline;
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
74 };
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
75
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
76 /* Let's stop using this and get rid of it. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
77 typedef struct face *FACE;
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
78
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
79 #define NORMAL_FACE ((struct face *) 0)
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
80
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
81 #define FACE_HAS_GC(f) ((f)->gc)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
82 #define FACE_GC(f) ((f)->gc)
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
83 #define FACE_NON_ASCII_GC(f) ((f)->non_ascii_gc)
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
84 #define FACE_FOREGROUND(f) ((f)->foreground)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
85 #define FACE_BACKGROUND(f) ((f)->background)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
86 #define FACE_FONT(f) ((f)->font)
17028
118cff7e4bca (struct face): New members `non_ascii_gc' and
Karl Heuer <kwzh@gnu.org>
parents: 16887
diff changeset
87 #define FACE_FONTSET(f) ((f)->fontset)
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
88 #define FACE_STIPPLE(f) ((f)->stipple)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
89 #define FACE_UNDERLINE_P(f) ((f)->underline)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
90
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
91 #else /* not HAVE_FACES */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
92
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
93 typedef int FACE;
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
94
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
95 #define NORMAL_FACE 0x0
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
96 #define HIGHLIGHT_FACE 0x1
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
97 #define UNDERLINE_FACE 0x2
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
98 #define HIGHLIGHT_UNDERLINE_FACE 0x3
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
99
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
100 #define FACE_HIGHLIGHT(f) ((f) & 0x1)
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
101 #define FACE_UNDERLINE(f) ((f) & 0x2)
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
102
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
103 #endif /* not HAVE_FACES */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
104
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
105
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
106 /* This structure is used for the actual display of text on a frame.
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
107
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
108 There are two instantiations of it: the glyphs currently displayed,
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
109 and the glyphs we desire to display. The latter object is generated
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
110 from buffers being displayed. */
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
111
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
112 struct frame_glyphs
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
113 {
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
114 struct frame *frame; /* Frame these glyphs belong to. */
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
115 int height;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
116 int width;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
117
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
118 /* Contents of the frame.
485
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
119 glyphs[V][H] is the glyph at position V, H.
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
120 Note that glyphs[V][-1],
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
121 glyphs[V][used[V]],
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
122 and glyphs[V][frame_width] are always '\0'. */
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
123 GLYPH **glyphs;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
124 /* long vector from which the strings in `glyphs' are taken. */
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
125 GLYPH *total_contents;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
126
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
127 /* When representing a desired frame,
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
128 enable[n] == 0 means that line n is same as current frame.
1649
c3225b867171 * dispextern.h (struct frame_glyphs): Doc fix.
Jim Blandy <jimb@redhat.com>
parents: 1510
diff changeset
129 Between updates, all lines should be disabled.
764
bb24f1180bb6 entered into RCS
Jim Blandy <jimb@redhat.com>
parents: 732
diff changeset
130 When representing current frame contents,
485
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
131 enable[n] == 0 means that line n is blank. */
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
132 char *enable;
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
133
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
134 /* Everything on line n after column used[n] is considered blank. */
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
135 int *used;
8c615e453683 *** empty log message ***
Jim Blandy <jimb@redhat.com>
parents: 328
diff changeset
136
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
137 /* highlight[n] != 0 iff line n is highlighted. */
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
138 char *highlight;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
139
6658
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
140 /* Buffer offset of this line's first char.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
141 This is not really implemented, and cannot be,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
142 and should be deleted. */
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
143 int *bufp;
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
144
13407
5ebb99bc06bb [HAVE_NTGUI]: Include win32.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 9572
diff changeset
145 #ifdef HAVE_WINDOW_SYSTEM
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
146 /* Pixel position of top left corner of line. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
147 short *top_left_x;
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
148 short *top_left_y;
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
149
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
150 /* Pixel width of line. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
151 short *pix_width;
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
152
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
153 /* Pixel height of line. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
154 short *pix_height;
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
155
2395
aec61f55a84d (struct face): New fields pixmap_h, pixmap_w.
Richard M. Stallman <rms@gnu.org>
parents: 1780
diff changeset
156 /* Largest font ascent on this line. */
1409
7fd1c810daca * dispextern.h: New element of frame structure `max_ascent'.
Joseph Arceneaux <jla@gnu.org>
parents: 764
diff changeset
157 short *max_ascent;
13407
5ebb99bc06bb [HAVE_NTGUI]: Include win32.h.
Geoff Voelker <voelker@cs.washington.edu>
parents: 9572
diff changeset
158 #endif /* HAVE_WINDOW_SYSTEM */
6570
2c6d3ba470bb (struct frame_glyphs): New fields charstarts and total_charstarts.
Richard M. Stallman <rms@gnu.org>
parents: 3883
diff changeset
159
6658
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
160 /* Mapping of coordinate pairs to buffer positions.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
161 This field holds a vector indexed by row number.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
162 Its elements are vectors indexed by column number.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
163 Each element of these vectors is a buffer position, 0, or -1.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
164
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
165 For a column where the image of a text character starts,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
166 the element value is the buffer position of that character.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
167 When a window's screen line starts in mid character,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
168 the element for the line's first column (at the window's left margin)
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
169 is that character's position.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
170 For successive columns within a multicolumn character,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
171 the element is -1.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
172 For the column just beyond the last glyph on a line,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
173 the element is the buffer position of the end of the line.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
174 For following columns within the same window, the element is 0.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
175 For rows past the end of the accessible buffer text,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
176 the window's first column has ZV and other columns have 0.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
177
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
178 Mode lines and vertical separator lines have 0.
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
179
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
180 The column of a window's left margin
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
181 always has a positive value (a buffer position), not 0 or -1,
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
182 for each line in that window's interior. */
bf03765f6989 Comment changes.
Richard M. Stallman <rms@gnu.org>
parents: 6570
diff changeset
183
6570
2c6d3ba470bb (struct frame_glyphs): New fields charstarts and total_charstarts.
Richard M. Stallman <rms@gnu.org>
parents: 3883
diff changeset
184 int **charstarts;
2c6d3ba470bb (struct frame_glyphs): New fields charstarts and total_charstarts.
Richard M. Stallman <rms@gnu.org>
parents: 3883
diff changeset
185
2c6d3ba470bb (struct frame_glyphs): New fields charstarts and total_charstarts.
Richard M. Stallman <rms@gnu.org>
parents: 3883
diff changeset
186 /* This holds all the space in the subvectors of the charstarts field. */
2c6d3ba470bb (struct frame_glyphs): New fields charstarts and total_charstarts.
Richard M. Stallman <rms@gnu.org>
parents: 3883
diff changeset
187 int *total_charstarts;
247
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
188 };
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
189
8b9aa51c8a69 Initial revision
Jim Blandy <jimb@redhat.com>
parents:
diff changeset
190 extern void get_display_line ();
1510
2fd5263590ea * dispextern.h (sit_for): Declare this extern.
Jim Blandy <jimb@redhat.com>
parents: 1409
diff changeset
191 extern Lisp_Object sit_for ();
9572
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
192
b36d5e88cccc *** empty log message ***
Morten Welinder <terra@diku.dk>
parents: 9568
diff changeset
193 #endif /* not _DISPEXTERN_H_ */