xtcaseproc(2) hpux man page | unix.com

Query: xtcaseproc

OS: hpux

Section: 2

Format: Original Unix Latex Style Formatted with HTML and a Horizontal Scroll Bar

XtCaseProc()															      XtCaseProc()

Name
  XtCaseProc - interface definition for procedure to convert the case of keysyms.

Synopsis
  typedef void (*XtCaseProc) (Display*, KeySym, KeySym *, KeySym *);
	 Display *display
	 KeySym  keysym;
	 KeySym  *lower_return;
	 KeySym  *upper_return;

Inputs
  display     Provides the display connection for which the conversion is required.

  keysym      Specifies the keysym to convert.

Outputs
  lower_return
	      Returns the lowercase equivalent for keysym.

  upper_return
	      Returns the uppercase equivalent for keysym.

Description
  An  XtCaseProc  is a case converter procedure registered with XtRegisterCaseConverter(), and invoked by XtConvertCase() and by the Transla-
  tion Manager in order to obtain the uppercase and lowercase versions of a keysym.  It should store the upper and  lower  case  versions  of
  keysym  at the addresses specified by lower_return and upper_return.	If there is no case distinction, it should store keysym at both loca-
  tions.

Usage
  You should only need to write a case converter procedure if you are working with non-standard keysyms.

Example
  The default case converter from the R4 Intrinsics is as follows:

     /* ARGSUSED */
     void _XtConvertCase(dpy, sym, lower, upper)
	 Display *dpy;
	 KeySym sym;
	 KeySym *lower;
	 KeySym *upper;
     {
	 *lower = sym;
	 *upper = sym;
	 switch(sym >> 8) {
	     case 0:
		 if ((sym >= XK_A) && (sym <= XK_Z))
		     *lower += (XK_a - XK_A);
		 else if ((sym >= XK_a) && (sym <= XK_z))
		     *upper -= (XK_a - XK_A);
		 else if ((sym >= XK_Agrave) && (sym <= XK_Odiaeresis))
		     *lower += (XK_agrave - XK_Agrave);
		 else if ((sym >= XK_agrave) && (sym <= XK_odiaeresis))
		     *upper -= (XK_agrave - XK_Agrave);
		 else if ((sym >= XK_Ooblique) && (sym <= XK_Thorn))
		     *lower += (XK_oslash - XK_Ooblique);
		 else if ((sym >= XK_oslash) && (sym <= XK_thorn))
		     *upper -= (XK_oslash - XK_Ooblique);
		 break;
	     default:
		 /* XXX do all other sets */
		 break;
	 }
     }

See Also
  XtConvertCase(1), XtGetKeysymTable(1), XtKeysymToKeycodeList(1), XtRegisterCaseConverter(1), XtSetKeyTranslator(1), XtTranslateKeycode(1).

Xt - Keyboard Handling														      XtCaseProc()
Related Man Pages
xtregistercaseconverter(3xt) - redhat
xtsetkeytranslator(3xt) - redhat
xtconvertcase(3) - debian
xtsetkeytranslator(3) - debian
xtconvertcase(3) - x11r4
Similar Topics in the Unix Linux Community
Conversion to uppercase - tr
how to convert from upper to lower case
Convert lowercase to upper case based on certain conditions
awk and tr troubles
Trying to test for both upper and lower case directories