X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=src%2Fface.h;h=b9ead922def0a4be19618b9d2498181b0162d154;hb=45e5ec16068aec42d4547ee5cb1871a63c6ee195;hp=276ac09f36ce3119618ba7f703ee2335404bf7aa;hpb=81fc41c2abd7430b4aef5bbf2f61a915511a59fb;p=m17n%2Fm17n-lib.git diff --git a/src/face.h b/src/face.h index 276ac09..b9ead92 100644 --- a/src/face.h +++ b/src/face.h @@ -17,7 +17,7 @@ You should have received a copy of the GNU Lesser General Public License along with the m17n library; if not, write to the Free - Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, 02111-1307, USA. */ #ifndef _M17N_FACE_H_ @@ -46,14 +46,12 @@ enum MFaceProperty MFACE_BOX, MFACE_VIDEOMODE, - /** Extention by applications. */ - MFACE_HOOK_FUNC, - MFACE_HOOK_ARG, - - /* In a realized face, this is already reflected in MFACE_SIZE, - thus is ignored. */ + /* In a realized face, this is ignored because it is already + reflected in MFACE_SIZE. */ MFACE_RATIO, + MFACE_HOOK_ARG, + MFACE_PROPERTY_MAX }; @@ -64,6 +62,8 @@ struct MFace /** Properties of the face. */ void *property[MFACE_PROPERTY_MAX]; + MFaceHookFunc hook; + /** List of frames affected by the face modification. */ MPlist *frame_list; }; @@ -80,6 +80,9 @@ struct MRealizedFace /** Properties of all stacked faces are merged into here. */ MFace face; + /** Font explicitly specified for the face (maybe NULL). */ + MFont *font; + /** From what faces this is realized. Keys are Mface and values are (MFace *). */ MPlist *base_face_list; @@ -105,6 +108,7 @@ struct MRealizedFace int ascent, descent; int space_width; + int average_width; /** Pointer to a window system dependent object. */ void *info; @@ -114,8 +118,7 @@ struct MRealizedFace extern MFace *mface__default; extern MRealizedFace *mface__realize (MFrame *frame, MFace **faces, int num, - MSymbol language, MSymbol charset, - int limitted_size); + int limitted_size, MFont *font); extern MGlyph *mface__for_chars (MSymbol script, MSymbol language, MSymbol charset, MGlyph *from_g, MGlyph *to_g,