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

  
 
  

home | help
XmFontSelector(3X)					      XmFontSelector(3X)

NAME
     XmFontSelector - The Font Selector widget

SYNOPSIS
     #include <Xm/FontS.h>

DESCRIPTION
     The  Font Selector widget allows users to easily choose a font by selecting
     the font family and size of the font. The bold and  italic  attributes  may
     also  be  set  for  any  font for which they are available. Any font may be
     passed to the font selector by the application as the initial  value  shown
     to the user. Advanced features greatly extend the widget's functionality.

Basic Features
     The  font	selector  widget presents the user with two combination box wid-
     gets, one with a list of choices for the font family, and	the  other  with
     the choices for the font size. In addition there are two independent toggle
     buttons that allow the user to make the font bold or italic or bold/italic.
     Below  the  font  choice area is a text widget that displays sample text of
     the chosen font to the user. This text area is editable, allowing the  user
     to  add  or  remove text to see how various characters appear in the chosen
     font.  For the novice user this set of features allows access to  all stan-
     dard fonts on the system.	The font selector  dynamically	removes  choices
     that  are	inappropriate  so the user is free to play around with different
     combinations and can always be assured that once they have selected a  font
     that it will exist on the machine that the font selector is running on. For
     example  if  there  is no Times Roman 14 point font available, and the user
     selects a point size of 14, then Times Roman will not be available  in  the
     family  combination  box. Likewise, if the user had chosen Times Roman from
     the family dialog box then a size of 14 would not be  shown.  To  have  all
     choices available simply choose a size and family of Any.

Advanced Features
     For  the advanced user the font selector provides tremendous flexibility in
     font choices.  By activating the options button an additional panel of con-
     trols is presented to the user. This allows the user to gain access to non-
     XLFD fonts, control the resolutions of the fonts chosen, choose from  fixed
     or  proportional  fonts  only,  remove  the  use of font scaling, allow non
     iso8859-1 fonts to be viewed, and see the XLFD name the  font  selector  is
     constructing.

Non XLFD Fonts
     By  choosing the "Other Fonts" toggle from the option panel, the family and
     size lists, as well as the bold and italic toggles,  are  replaced  with  a
     combo box containing all non-XLFD fonts available on your system. This fea-
     ture  allows users to select non-XLFD fonts with the FontSelector. The text
     field of the combination box may be edited by the user and any  string  en-
     tered  will  be  interpreted  as  a font name. It should be noted that XLFD
     names can be typed in by hand here. This feature allows the  font	selector
     to be used to get any font on the entire system.

Resolution Control
     The  font	selector finds which of the two standard resolutions the current
     display is closest to and uses that as its default. To allow a wider  range
     of  choices a user may choose to access fonts of a different resolution, or
     both 75 and 100 dpi resolutions.

Fixed or Proportional
     In most cases the fact that a font is fixed width or proportional is of  no
     great  interest  to  the  user. But some applications require a fixed width
     font, such as terminal emulators, and most people	find  that  proportional
     fonts look better. The Font selector allows users to limit the font choices
     to fixed width or proportional or to allow both.

Font Scaling
     The  font scaling technology that is available in X11R5 uses bitmap scaling
     which, although useful in some cases, generally results in very ugly fonts.
     We noticed that users often wanted to know which fonts are scaled and which
     ones exist as hand crafted bitmaps.  To remove the scaled	fonts  from  the
     list  of  choices, toggle the "Use Font Scaling" button off.  This value is
     resource controllable and defaults to on, which uses font scaling.

Encoding
     The programmer can specify which encidings are valid selections. These  en-
     coding  choices  appear  in an option menu. The list of font choices is re-
     stricted to those which use the current selected coding.

XLFD Name Display
     Clicking the Show toggle displays the current font's XLFD name is shown  at
     the bottom of the font selector.

Normal Resources
     Name		     Class		     Type	      InitialValue
     100DPIstring	     100DPIString	     XmString	      "100 dpi"
     75DPIstring	     75DPIString	     XmString	      "75 dpi"
     anyLowerString	     AnyLowerString	     XmString	      "any"
     anyString		     AnyString		     XmString	      "Any"
     boldString 	     BoldString 	     XmString	      "Bold"
     bothString 	     BothString 	     XmString	      "Both"
     currentFont	     String		     String	      NULL
     defaultEncodingString   DefaultEncodingString   String	      "iso8859-1"
     encodingList	     EncodingList	     StringTable      "iso8859-1"
     encodingString	     EncodingString	     XmString	      "Encoding"
     familyString	     BothString 	     XmString	      "Family"
     italicString	     ItalicString	     XmString	      "Italic"
     marginHeight	     Margin		     Dimension	      0
     monoSpaceString	     MonoSpaceString	     XmString	      "Fixed Width
								       Fonts"
     optionString	     OptionString	     XmString	      "Options ..."
     otherString	     OtherString	     XmString	      "Other Fonts"
     propSpaceString	     PropSpaceString	     XmString	      "Proportional
								       Fonts"
     sampleText 	     SampleText 	     XmString	      "abcdef..."
     scalingString	     ScalingString	     XmString	      "Use Font
								       Scaling"
     showFontName	     ShowFontName	     Boolean	      False
     showNameString	     ShowNameString	     XmString	      "Show Font
								       Name"
     sizeString 	     SizeString 	     XmSring	      "Size"
     spacing		     Spacing		     Dimension	      2
     textRows		     TextRows		     Dimension	      8
     useScaling 	     Boolean		     Boolean	      True
     valueChangedCallback    Callback		     XtCallbackList   NULL
     xlfdString 	     XlfdString 	     XmString	      "Xlfd Fonts"

     All  resource  names begin with XmN and all resource class names begin with
     XmC.

100DPSString
     The label for the 100 DPI radio button.

75DPSString
     The label for the 75 DPI radio button.

anyLowerString
     The label for the any button.

anyString
     The label for the Any button.

boldString
     The label for the Bold toggle button.

bothString
     The labels for the Both radio buttons controlling both the dpi and width of
     the fonts displayed. The same resource is used to ensure consistent labels.

currentFont
     This resource provides the main application input and output  to  the  font
     selector.	If the programmer sets the value at creation time or with XtSet-
     Values  then  the currently displayed family, size, bold and italic will be
     changed to correspond to the values shown in the current  font.  Otherwise,
     the name of the font will be shown. The Font Selector's mode will be set to
     correspond to the type of font passed.

     Note:  currentFont  must  contain	14  hyphens (-) to be considered an XLFD
     font. This resource is also used to retrieve the font the user has selected
     from the font selector. The value returned is only  valid	until  the  next
     time XtGetValues is called on this instance of the font selector widget.

defaultEncodingString
     This resource is the default selection from the Encoding options menu.

encodingList
     This  resource is the list of encodings available from the FontSelector En-
     coding options menu.

encodingString
     This resource is the default selection from the Encoding options menu.

familyString
     This resource is the default selection from the Family options menu.

isoFontsOnly
     This resource controls and maintains the state of the iso8859-1 fonts  only
     toggle button.

italicString
     This resource is the default selection from the Italic toggle button.

marginHeight
     The margin height for all subwidgets of the Font Selector.

monoSpaceString
     The label of the Fixed Width Fonts radio button.

optionString
     The label for the Options... push button.

otherString
     The label for the Other Fonts radio button.

propSpaceString
     The label for the Proportional Fonts radio button.

sampleText
     The string which appears in the sample text area.

scalingString
     The label for the Use Font Scaling toggle button.

showFontName
     This  boolean  resource  controls and maintains the state of Show Font Name
     toggle button.

showNameString
     The label of the Show Font Name toggle button.

sizeString
     The label for the Size option menu.

spacing
     The space between the toggle indicator and the toggle label.

textRows
     This resource controls the number of rows that are shown in the text widget
     that displays sample text in the currently selected font. Since this  is  a
     scrolled  text  widget it will never dynamically change size, regardless of
     the font displayed.  Unless the initial font is large this value should  be
     at least 4 or the user interaction may be poor.

useScaling
     This resource controls and maintains the state of the Use Font Scaling tog-
     gle button.

valueChangedCallback
     The list of callbacks called when the XmNcurrentFont value is changed.

xlfdString
     The label for the Xlfd Fonts radio button.

Convenience Routine

XmCreateFontSelector - Widget creation convenience routine
     Widget XmCreateFontSelector(
	  Widget parent,      /* Widget id of parent for FontSelector */
	  String name,	      /* Name of the created widget */
	  ArgList args,       /* argument list */
	  Cardinal num_args   /* number of items in argument list */
	  )

Children
     The  font	selector  is  composed of many sub-widgets. As with all widgets,
     most values passed to this widget through the argument  list   at	creation
     time  or  via  set values are passed to each of this widget's children. Get
     values requests must be made on a child by child basis. The children of the
     font selector are listed below. The documentation for each of the	children
     should be consulted for a list of resources for each child.

     XiFontSelector<named by application>

	  XiPanedtopPane

	  XmComboBoxfamilies

	  < See XmComboBox for list of children >

	  XmSeparatorseparator

	  XiComboBoxsizes

	  < See XmComboBox for list of children >

	  XmSeparatorseparator

	  XmButtonBoxboldItalicBox

	  XmToggleButtonboldButton

	  XmToggleButtonitalicButton

	  XmSeparatorseparator

	  XmToggleButtonoptionButton

	  XmSeparatorseparator

	  XmPanedmiddlePane

	  XmPanedleftPane

	  XmButtonBoxchoiceBox

	  XmToggleButtonxlfdButton

	  XmToggleButtonotherButton

	  XmSeparatorseparator

	  XmButtonBoxresolutionBox

	  XmToggleButtondpi75Button

	  XmToggleButtondpi100Button

	  XmToggleButtonanyButton

	  XmSeparatorseparator

	  XmSeparatorseparator

	  XmButtonBoxspacingBox

	  XmToggleButtonproportionalButton

	  XmToggleButtonmonoButton

	  XmToggleButtonbothButton

	  XmSeparatorseparator

	  XmButtonBoxotherChoiceBox

	  XmToggleButtonscalingButton

	  XmToggleButtonisoButton

	  XmToggleButtonshowNameButton

	  XmRowColum	  encodingOptionMenu

	  XmLabelGadget OptionLabel

	  XmCascadeButtonGadget OptionButton

	  XmMenuShell	 menuShell

	  XmRowColum	  pulldownMenu

	  <dependent on XmNencoding>

	  XmSeparatorseparator

	  XmSeparatorseparator

	  XmButtonBoxbox

	  XmScrolledWindowtextSW

	  XmScrollBarvbar

	  XmTexttext

	  XmSeparatorseparator

	  XmLabelnameLabel

	  XmSeparatorseparator

COPYRIGHT
     Copyright (c) 1992 by Integrated Computer Solutions, Inc.

							      XmFontSelector(3X)

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

home | help