Mercurial > hg > xemacs-beta
comparison src/glyphs.h @ 396:6719134a07c2 r21-2-13
Import from CVS: tag r21-2-13
author | cvs |
---|---|
date | Mon, 13 Aug 2007 11:12:05 +0200 |
parents | aabb7f5b1c81 |
children | 74fd4e045ea6 |
comparison
equal
deleted
inserted
replaced
395:de2c2a7459d2 | 396:6719134a07c2 |
---|---|
125 Lisp_Object val); | 125 Lisp_Object val); |
126 }; | 126 }; |
127 | 127 |
128 /***** Calling an image-instantiator method *****/ | 128 /***** Calling an image-instantiator method *****/ |
129 | 129 |
130 #define HAS_IIFORMAT_METH_P(mstruc, m) ((mstruc)->m##_method) | 130 #define HAS_IIFORMAT_METH_P(mstruc, m) (((mstruc)->m##_method) != 0) |
131 #define IIFORMAT_METH(mstruc, m, args) (((mstruc)->m##_method) args) | 131 #define IIFORMAT_METH(mstruc, m, args) (((mstruc)->m##_method) args) |
132 | 132 |
133 /* Call a void-returning specifier method, if it exists */ | 133 /* Call a void-returning specifier method, if it exists */ |
134 #define MAYBE_IIFORMAT_METH(mstruc, m, args) \ | 134 #define MAYBE_IIFORMAT_METH(mstruc, m, args) \ |
135 if (mstruc) \ | 135 do { \ |
136 do { \ | 136 struct image_instantiator_methods *MIM_mstruc = (mstruc); \ |
137 struct image_instantiator_methods *maybe_iiformat_meth_mstruc = (mstruc); \ | 137 if (MIM_mstruc && HAS_IIFORMAT_METH_P (MIM_mstruc, m)) \ |
138 if (HAS_IIFORMAT_METH_P (maybe_iiformat_meth_mstruc, m)) \ | 138 IIFORMAT_METH (MIM_mstruc, m, args); \ |
139 IIFORMAT_METH (maybe_iiformat_meth_mstruc, m, args); \ | 139 } while (0) |
140 } while (0) | 140 |
141 | 141 #define MAYBE_IIFORMAT_DEVMETH(device, mstruc, m, args) \ |
142 #define MAYBE_IIFORMAT_DEVMETH(device, mstruc, m, args) \ | 142 do { \ |
143 do { \ | 143 struct image_instantiator_methods *MID_mstruc = \ |
144 struct image_instantiator_methods *_mstruc = decode_ii_device (device, mstruc); \ | 144 decode_ii_device (device, mstruc); \ |
145 if (_mstruc) \ | 145 if (MID_mstruc) \ |
146 MAYBE_IIFORMAT_METH(_mstruc, m, args); \ | 146 MAYBE_IIFORMAT_METH(MID_mstruc, m, args); \ |
147 } while (0) | 147 } while (0) |
148 | 148 |
149 | 149 |
150 /* Call a specifier method, if it exists; otherwise return | 150 /* Call a specifier method, if it exists; otherwise return |
151 the specified value */ | 151 the specified value */ |