[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/src/macgui.h
From: |
YAMAMOTO Mitsuharu |
Subject: |
[Emacs-diffs] Changes to emacs/src/macgui.h |
Date: |
Thu, 22 Dec 2005 08:17:02 +0000 |
Index: emacs/src/macgui.h
diff -u emacs/src/macgui.h:1.26 emacs/src/macgui.h:1.27
--- emacs/src/macgui.h:1.26 Sun Nov 13 05:46:17 2005
+++ emacs/src/macgui.h Thu Dec 22 08:17:01 2005
@@ -109,7 +109,6 @@
#if 0
unsigned short attributes; /* per char flags (not predefined) */
#endif
- unsigned valid_p : 1;
} XCharStruct;
#define STORE_XCHARSTRUCT(xcs, w, bds) \
@@ -117,8 +116,19 @@
(xcs).lbearing = (bds).left, \
(xcs).rbearing = (bds).right, \
(xcs).ascent = -(bds).top, \
- (xcs).descent = (bds).bottom, \
- (xcs).valid_p = 1)
+ (xcs).descent = (bds).bottom)
+
+typedef struct
+{
+ char valid_bits[0x100 / 8];
+ XCharStruct per_char[0x100];
+} XCharStructRow;
+
+#define XCHARSTRUCTROW_CHAR_VALID_P(row, byte2) \
+ ((row)->valid_bits[(byte2) / 8] & (1 << (byte2) % 8))
+
+#define XCHARSTRUCTROW_SET_CHAR_VALID(row, byte2) \
+ ((row)->valid_bits[(byte2) / 8] |= (1 << (byte2) % 8))
struct MacFontStruct {
char *full_name;
@@ -157,7 +167,10 @@
#endif /* 0 */
XCharStruct min_bounds; /* minimum bounds over all existing char */
XCharStruct max_bounds; /* maximum bounds over all existing char */
- XCharStruct *per_char; /* first_char to last_char information */
+ union {
+ XCharStruct *per_char; /* first_char to last_char information */
+ XCharStructRow **rows; /* first row to last row information */
+ } bounds;
int ascent; /* logical extent above baseline for spacing */
int descent; /* logical decent below baseline for spacing */
};
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/src/macgui.h,
YAMAMOTO Mitsuharu <=