Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XmRenderTable(3)	   Library Functions Manual	      XmRenderTable(3)

NAME
       XmRenderTable --	Data type for a	render table

SYNOPSIS
       #include	<Xm/Xm.h>
       XmRenderTable

DESCRIPTION
       XmRenderTable is	the data type for a render table, which	contains a ta-
       ble  of	renditions (XmRenditions). Each	rendition consists of a	set of
       attributes for rendering	text, including	a  font	 or  fontset,  colors,
       tabs, and lines.	 Each rendition	is identified with a tag.

       When  a	compound  string is displayed, for each	segment	in the string,
       the rendition used to render that string	is formed as follows.  If  the
       segment	has  at	 least	one rendition begin tag	or if the list of tags
       formed by accumulating from previous segments the rendition begin  tags
       and  removing  the  rendition  end  tags	 is  not empty,	these tags are
       matched with renditions in the render table.  The  effective  rendition
       used  to	render the segment is formed by	successively merging each ren-
       dition found into the current rendition	with  non-XmAS_IS  (XmUNSPECI-
       FIED_PIXEL  for	color resources) values	for resources in the rendition
       to be merged, thus replacing the	corresponding values of	the  resources
       in the current rendition. Finally, if the resulting rendition still has
       resources  with	unspecified  values  and  the  segment has a locale or
       charset tag (these are optional and mutually  exclusive)	 this  tag  is
       matched with a rendition	in the render table, and the missing rendition
       values are filled in from that entry.

       If  no  matching	rendition is found for a particular tag, then the XmN-
       noRenditionCallback of the XmDisplay object is called  and  the	render
       table is	searched again for that	tag.

       If the resulting	rendition does not specify a font or fontset, then for
       segments	 whose	text  type is XmCHARSET_TEXT, the render table will be
       searched	for a rendition	tagged with XmFONTLIST_DEFAULT_TAG, and	 if  a
       matching	 rendition is found, it	will be	merged into the	current	rendi-
       tion. If	the resulting rendition	contains no font or fontset, the  XmN-
       noFontCallback  will be called with the default rendition and ""	as the
       font name. If no	rendition matches or no	font was found after the call-
       back, then the first rendition in the render table will be merged  into
       the  current  rendition.	 If this rendition still has no	font, then the
       segment will not	be rendered and	a warning will be emitted.

       For segments whose text type is	XmMULTIBYTE_TEXT  or  XmWIDECHAR_TEXT,
       the  render  table  will	 be  searched for a rendition tagged with _MO-
       TIF_DEFAULT_LOCALE, and,	if a matching rendition	is found, it  will  be
       merged  into the	current	rendition. If the resulting rendition contains
       no font,	the XmNnoFontCallback will be called with the  default	rendi-
       tion  and  ""  as the font name.	 An application	can have this callback
       attempt to remedy this problem by calling XmRenditionUpdate on the  in-
       put rendition to	provide	a font for the widget to use. This may be done
       by either providing an alternative font name to be loaded using the Xm-
       NfontName  and XmNfontType resources or with an already loaded font us-
       ing the XmNfont resource.  If no	rendition matches or no	font was found
       after the callback, then	the segment will not be	rendered and a warning
       will be issued.

       Render tables are specified in resource files with the  following  syn-
       tax:

       resource_spec: [	tag [, tag ]* ]

       where  tag  is some string suitable for the XmNtag resource of a	rendi-
       tion.

       If no tags are specified, then a	render table will be created  that  is
       either  empty  or  contains  only  a rendition with a tag of _MOTIF_DE-
       FAULT_LOCALE.

       Specific	values for specific rendition resources	 are  specified	 using
       the following syntax:

       resource_spec [*|.] rendition[*|.] resource_name: value

       where:

       resource_spec
		 Specifies the render table.

       rendition Is either the class Rendition or a tag.

       resource_name
		 Is either the class or	name of	a particular resource.

       value	 Is the	specification of the value to be set.

       Any resource line that consists of just a resource name or class	compo-
       nent  with  no  rendition component or loose binding will be assumed to
       specify resource	values for  a  rendition  with	a  tag	of  _MOTIF_DE-
       FAULT_LOCALE.  In  effect, this creates a default rendition in much the
       same way	that specifying	no fontlist tag	for a fontlist resource	causes
       the fontlist created to contain an  entry  tagged  with	XmFONTLIST_DE-
       FAULT_TAG:

       resource_spec.resource_name: value

       For example, the	following would	set the	XmNrenderTable resource	of la-
       bel1  to	a render table consisting of three renditions tagged with _MO-
       TIF_DEFAULT_LOCALE, bold, and oblique, with values for resources	set as
       described in the	resource specifications.

       *label1.renderTable: bold, oblique
       *label1.renderTable.bold.renditionForeground: Green
       *label1.renderTable.bold.fontName: *-*-*-bold-*-iso8859-1
       *label1.renderTable.bold.fontType: FONT_IS_FONT
       *label1.renderTable.oblique.renditionBackground:	Red
       *label1.renderTable.oblique.fontName: *-*-*-italic-*-iso8859-1
       *label1.renderTable.oblique.fontType: FONT_IS_FONT
       *label1.renderTable.oblique.underlineType: AS_IS
       *label1.renderTable.fontName: fixed
       *label1.renderTable.fontType: FONT_IS_FONT
       *label1.renderTable.renditionForegound: black
       *label1.renderTable*tabList: 1in, +1.5in, +3in

RELATED
       XmRenderTableAddRenditions(3), XmRenderTableCopy(3),  XmRenderTableCvt-
       FromProp(3),  XmRenderTableCvtToProp(3),	 XmRenderTableFree(3),	XmRen-
       derTableGetRendition(3),	    XmRenderTableGetRenditions(3),	XmRen-
       derTableGetTags(3),  XmRenderTableRemoveRenditions(3),  XmRendition(3),
       and XmString(3).

							      XmRenderTable(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=XmRenderTable&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help