xmfontlist(3)
NAME
XmFontList -- Data type for a font list
SYNOPSIS
#include <Xm/Xm.h>
DESCRIPTION
XmFontList is the data type for a font list. A font list consists of font list entries. Each entry contains a font or a font set (a group of fonts) and is identified with a tag, which is optional. If this tag is NULL, the tag is set to XmFONTLIST_DEFAULT_TAG.
The value of XmFONTLIST_DEFAULT_TAG is XmFONTLIST_DEFAULT_TAG_STRING.
- When a compound string is displayed, the font list element tag of the
compound string segment is matched with a font list entry tag in the
font list and the matching font list entry is used to display the compound string. A font list entry is chosen as follows:
- o The first font list entry whose tag matches the tag of the com
pound string segment is used.
- o If no match has been found and if the tag of the compound string
segment is XmFONTLIST_DEFAULT_TAG, the first font list entry whose tag matches the tag that would result from creating an entry with XmSTRING_DEFAULT_CHARSET is used. For example, if creating an entry with XmSTRING_DEFAULT_CHARSET would result in the tag ISO8859-1, the compound string segment tag XmFONTLIST_DEFAULT_TAG matches the font list entry tag ISO8859-1.
- o If no match has been found and if the tag of the compound string
segment matches the tag that would result from creating a segment with XmSTRING_DEFAULT_CHARSET, the first font list entry whose tag is XmFONTLIST_DEFAULT_TAG is used.
- o If no match has been found, the first entry in the font list is
used.
- The font list interface consists of the routines listed in Related Information.
- Font lists are specified in resource files with the following syntax:
- resource_spec: font_entry [, font_entry ]+
- The resource value string consists of one or more font list entries separated by commas. Each font_entry identifies a font or font set and an optional font list entry tag. A tag specified for a single font follows the font name and is separated by = (equals sign); otherwise, in a font set the tag is separated by a colon. The colon is required whether a tag is specified or not. A font entry uses the following syntax to specify a single font:
- font_name [ '=' tag ]
- For example, the following entry specifies a 10 point Times Italic font without a font list entry tag;
- *fontList: -Adobe-Times-Medium-I-Normal--10*
- A font entry containing a font set is similar, except a semicolon separates multiple font names and the specification ends with a colon followed by an optional tag:
- font_name [ ';' font_name ]+ ':' [ tag ]
- A font_name is an X Logical Font Description (XLFD) string and tag is any set of characters from ISO646IRV except space, comma, colon, equal sign and semicolon. Following is an example of a font set entry. It consists of three fonts (except for charsets), and an explicit font list entry tag.
- *fontList: -Adobe-Courier-Bold-R-Normal--25-180-100-100-M-150;-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-240;-JIS-Fixed-Medium-R-Normal--26-180-100-100-C-120:MY_TAG
- Note that the XmRenderTable is another data type that can be used for font lists. Refer to the XmRenderTable(3) for details.
RELATED
- XmFontListAdd(3), XmFontListAppendEntry(3), XmFontListCopy(3), XmFontListCreate(3), XmFontListEntryCreate(3), XmFontListEntryFree(3), XmFontListEntryGetFont(3), XmFontListEntryGetTag(3), XmFontListEntryLoad(3), XmFontListFree(3), XmFontListFreeFontContext(3), XmFontListGetNextFont(3), XmFontListInitFontContext(3), XmFontListNextEntry(3), XmFontListRemoveEntry(3), XmRenderTable(3), and XmString(3).