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_GUI_H_
extern MFont *mfont_copy (MFont *font);
-extern MFont *mfont_parse_name (char *name, MSymbol format);
+extern MFont *mfont_parse_name (const char *name, MSymbol format);
extern char *mfont_unparse_name (MFont *font, MSymbol format);
/* These two are obsolete (from 1.1.0). */
extern char *mfont_name (MFont *font);
-extern MFont *mfont_from_name (char *name);
+extern MFont *mfont_from_name (const char *name);
extern MSymbol Mfoundry;
extern MSymbol Mfamily;
extern MSymbol Mstyle;
extern MSymbol Mstretch;
extern MSymbol Madstyle;
+extern MSymbol Mspacing;
extern MSymbol Mregistry;
extern MSymbol Msize;
extern MSymbol Mresolution;
+extern MSymbol Mmax_advance;
+extern MSymbol Motf;
+extern MSymbol Mfontfile;
extern MSymbol Mfontconfig;
extern MFont *mfont_find (MFrame *frame, MFont *spec,
int *score, int limited_size);
-
extern MSymbol *mfont_selection_priority ();
extern int mfont_set_selection_priority (MSymbol *keys);
extern MPlist *mfont_list (MFrame *frame, MFont *font, MSymbol language,
int maxnum);
+extern MPlist *mfont_list_family_names (MFrame *frame);
+
+typedef struct MFontset MFontset;
+
+extern int mfont_check (MFrame *frame, MFontset *fontset,
+ MSymbol script, MSymbol language, MFont *font);
+
+extern int mfont_match_p (MFont *font, MFont *spec);
+
+extern MFont *mfont_open (MFrame *frame, MFont *font);
+
+extern MFont *mfont_encapsulate (MFrame *frame, MSymbol data_type, void *data);
+extern int mfont_close (MFont *font);
/* end of font module */
/*=*/
/*=*/
/*** @addtogroup m17nFontset
@{ */
-typedef struct MFontset MFontset;
-
extern MFontset *mfontset (char *name);
extern MSymbol mfontset_name (MFontset *fontset);
extern MFace *mface ();
+extern int mface_equal (MFace *face1, MFace *face2);
+
extern MFace *mface_copy (MFace *face);
extern MFace *mface_merge (MFace *dst, MFace *src);
/***en
@brief Type of hook function of face.
- The type #MFaceHookFunc is to specify the #Mhook property of a
- face. The value of the property must be function of this
- type. */
+ #MFaceHookFunc is a type of a hook function of a face. */
/***ja
@brief ¥Õ¥§¡¼¥¹¤Î¥Õ¥Ã¥¯´Ø¿ô¤Î·¿Àë¸À.
- #MFaceHookFunc ¤Ï¥Õ¥§¡¼¥¹¤Î #Mhook ¥×¥í¥Ñ¥Æ¥£¤ò»ØÄꤹ¤ë·¿¤Ç¤¢¤ë¡£
- ¤³¤Î¥×¥í¥Ñ¥Æ¥£¤ÎÃͤϡ¢¤³¤Î·¿¤Î´Ø¿ô¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¡£
- */
+ #MFaceHookFunc ¤Ï¥Õ¥§¡¼¥¹¤Î¥Õ¥Ã¥¯´Ø¿ô¤Î·¿¤Ç¤¢¤ë¡£*/
typedef void (*MFaceHookFunc) (MFace *face, void *arg, void *info);
/*=*/
extern int mface_put_prop (MFace *face, MSymbol key, void *val);
+extern MFaceHookFunc mface_get_hook (MFace *face);
+
+extern int mface_put_hook (MFace *face, MFaceHookFunc func);
+
extern void mface_update (MFrame *frame, MFace *face);
/* end of face module */
} MDrawControl;
+extern int mdraw_line_break_option;
+
/*=*/
/*** @ingroup m17nDraw */
next_from because they must be the same as the members from and
to respectively. */
/***ja ÏÀÍýŪ¤ÊÁ°¸å¤Î¥°¥ê¥Õ¤ËÂбþ¤¹¤ëʸ»ú¤ÎÈÏ°Ï¡£¥á¥ó¥Ð prev_to ¤È
- next_from ¤Ï¡¢¤½¤ì¤¾¤ì¥á¥ó¥Ð from ¤Èto
- ¤ÈƱ¤¸¤Ç¤Ê¤¯¤Æ¤Ï¤Ê¤é¤Ê¤¤¤¿¤áÉÔÍפǤ¢¤ë¡£ */
+ next_from ¤Ï¡¢¤½¤ì¤¾¤ì¥á¥ó¥Ð from ¤È to ¤ÈƱ¤¸¤Ç¤¢¤ë¤Ï¤º¤Ê¤Î¤ÇÉÔ
+ ÍפǤ¢¤ë¡£ */
int prev_from, next_to;
/***en Character ranges corresponding to visually left and right