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:
· The first font list entry whose tag matches the tag of the
compound string segment is used.
· 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.
· 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.
· 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).
XmFontList(library call)