diff options
| author | Kenichi Handa | 2004-01-23 08:48:19 +0000 |
|---|---|---|
| committer | Kenichi Handa | 2004-01-23 08:48:19 +0000 |
| commit | 28d0edc75d24e83ceb395ffe7b028ff01f480e04 (patch) | |
| tree | 0c27f28581ad45f154a0894ebf3ff538b6c5959d /src | |
| parent | 993651d1a07fc61db10b29d47417c4d99dfc1ff1 (diff) | |
| download | emacs-28d0edc75d24e83ceb395ffe7b028ff01f480e04.tar.gz emacs-28d0edc75d24e83ceb395ffe7b028ff01f480e04.zip | |
(COMPOSITION_DECODE_RULE): New arg xoff and yoff.
(struct composition): New member lbearing and rbearing.
Diffstat (limited to 'src')
| -rw-r--r-- | src/composite.h | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/src/composite.h b/src/composite.h index 287a3e35c80..d8c1fed4332 100644 --- a/src/composite.h +++ b/src/composite.h | |||
| @@ -127,13 +127,19 @@ extern Lisp_Object composition_temp; | |||
| 127 | ->contents[(n) * 2 - 1]) | 127 | ->contents[(n) * 2 - 1]) |
| 128 | 128 | ||
| 129 | /* Decode encoded composition rule RULE_CODE into GREF (global | 129 | /* Decode encoded composition rule RULE_CODE into GREF (global |
| 130 | reference point code) and NREF (new reference point code). Don't | 130 | reference point code), NREF (new reference point code), XOFF |
| 131 | check RULE_CODE, always set GREF and NREF to valid values. */ | 131 | (horizontal offset) YOFF (vertical offset). Don't check RULE_CODE, |
| 132 | #define COMPOSITION_DECODE_RULE(rule_code, gref, nref) \ | 132 | always set GREF and NREF to valid values. By side effect, |
| 133 | do { \ | 133 | RULE_CODE is modified. */ |
| 134 | gref = (rule_code) / 12; \ | 134 | |
| 135 | if (gref > 12) gref = 11; \ | 135 | #define COMPOSITION_DECODE_RULE(rule_code, gref, nref, xoff, yoff) \ |
| 136 | nref = (rule_code) % 12; \ | 136 | do { \ |
| 137 | xoff = (rule_code) >> 16; \ | ||
| 138 | yoff = ((rule_code) >> 8) & 0xFF; \ | ||
| 139 | rule_code &= 0xFF; \ | ||
| 140 | gref = (rule_code) / 12; \ | ||
| 141 | if (gref > 12) gref = 11; \ | ||
| 142 | nref = (rule_code) % 12; \ | ||
| 137 | } while (0) | 143 | } while (0) |
| 138 | 144 | ||
| 139 | /* Return encoded composition rule for the pair of global reference | 145 | /* Return encoded composition rule for the pair of global reference |
| @@ -160,6 +166,8 @@ struct composition { | |||
| 160 | /* Width, ascent, and descent pixels of the composition. */ | 166 | /* Width, ascent, and descent pixels of the composition. */ |
| 161 | short pixel_width, ascent, descent; | 167 | short pixel_width, ascent, descent; |
| 162 | 168 | ||
| 169 | short lbearing, rbearing; | ||
| 170 | |||
| 163 | /* How many columns the overall glyphs occupy on the screen. This | 171 | /* How many columns the overall glyphs occupy on the screen. This |
| 164 | gives an approximate value for column calculation in | 172 | gives an approximate value for column calculation in |
| 165 | Fcurrent_column, and etc. */ | 173 | Fcurrent_column, and etc. */ |