cdk_display man page on IRIX

Man page or keyword search:  
man Server   31559 pages
apropos Keyword Search (all sections)
Output format
IRIX logo
[printable version]

cdk_display(3X)					  cdk_display(3X)

NAME
	  Cdk - Curses Development Kit Display Capabilities.

SYNOPSIS
       Cdk  has	 a number of pre-defined display types which need
       explaining. This manual page will explain all of the  dis
       play  types and how to use them. The following lists which
       display types will be outlined in this manual page.

	How To Use Colors

	How To Use Different Character Attributes

	How To Justify Strings

	How To Use Special Drawing Characters

DESCRIPTION
       Cdk has special formatting commands which can be	 included
       in any string which add highlights, justification, or even
       colors to a basic string. This manual  page  outlines  and
       demonstrates how they work.

       How To Use Colors
	  Cdk  has  the	 capability  to	 display colors in almost
	  every string type displayed in a Cdk widget. To turn on
	  colors,  the	function  initCDKColor	has to be called.
	  When this function is called 64 color	 pairs	are  cre
	  ated.	 Normally  the	color  pairs are accessed via the
	  COLOR_PAIR macro. You can still do this, but creating a
	  string  with	multiple  colors gets terribly difficult.
	  That is why the color commands were created. The  color
	  setting  are stored directly in the string and when the
	  widget is created or activated, the string is converted
	  to  take advantage of any color commands in the string.
	  To turn on a color pair insert </XX> into  the  string;
	  where XX is a numeric value from 0 to 64.  Color pair 0
	  is the standard default color pair for the  screen.  To
	  turn	off  a	color  pair  use the format command <!XX>
	  where XX is a numeric value from 0 to 64. The following
	  code	segment	 demonstrates  the  use of the color com
	  mands.

		 ----------------------------------------
	  #include <cdk.h>

	  void main()
	  {
	     CDKSCREEN	 *cdkscreen;
	     CDKLABEL	 *demo;
	     WINDOW	 *screen;
	     char	 *mesg[4];

	     /* Initialize the Cdk screen.   */
	     screen = initscr();
	     cdkscreen = initCDKScreen (screen);

	     /* Set the labels up.	*/
	     mesg[0] = "</1>This line should have a yellow foreground and a blue background.<!1>";
	     mesg[1] = "</2>This line should have a white  foreground and a blue background.<!2>";
	     mesg[2] = "</3>This line should have a yellow foreground and a red	 background.<!3>";
	     mesg[3] = "<C>This line should be set to whatever the screen default is.";

	     /* Declare the labels.	*/
	     demo   = newCDKLabel (cdkscreen, CENTER, CENTER, mesg, 4, TRUE, TRUE);

	     /* Draw the label		*/
	     drawCDKLabel (demo, TRUE);
	     waitCDKLabel (demo, ' ');

	     /* Clean up	   */
	     destroyCDKLabel (demo);
	     destroyCDKScreen (cdkscreen);
	     endCDK();
	     exit (0);
	  }
		 ----------------------------------------
	  This example uses the color pair 5 (which is	white  on
	  blue) for the label to the entry widget.

       How To Use Different Character Attributes
	  Cdk  also  provides attribute commands which allow dif
	  ferent character attributes to be displayed  in  a  Cdk
	  widget. To use a character attribute the format command
	  is </X> where X is one of several  command  characters.
	  To  turn a attribute off use the command <!X>. The fol
	  lowing table outlines the command characters	and  what
	  they mean.

	     Command_Character	    Character_Attribute
	     B			    Bold
	     U			    Underline
	     K			    Blink
	     R			    Reverse
	     S			    Standout
	     D			    Dim
	     N			    Normal

	  The  following  code	segment	 demonstrates  the use of
	  character display attributes.
		 ----------------------------------------
	  #include <cdk.h>

	  void main()
	  {
	     CDKSCREEN	 *cdkscreen;
	     CDKLABEL	 *demo;
	     WINDOW *screen;
	     char	 *mesg[4];

	     /* Initialize the Cdk screen.   */
	     screen = initscr();
	     cdkscreen = initCDKScreen (screen);

	     /* Set the labels up.	*/
	     mesg[0] = "</B/1>This line should have a yellow foreground and a blue background.<!1>";
	     mesg[1] = "</U/2>This line should have a white  foreground and a blue background.<!2>";
	     mesg[2] = "</K/3>This line should have a yellow foreground and a red  background.<!3>";
	     mesg[3] = "<C>This line should be set to whatever the screen default is.";

	     /* Declare the labels.	*/
	     demo   = newCDKLabel (cdkscreen, CENTER, CENTER, mesg, 4, TRUE, TRUE);

	     /* Draw the label		*/
	     drawCDKLabel (demo, TRUE);
	     waitCDKLabel (demo, ' ');

	     /* Clean up	   */
	     destroyCDKLabel (demo);
	     destroyCDKScreen (cdkscreen);
	     endCDK();
	     exit (0);
	  }
		 ----------------------------------------
	  Notice that color commands and format commands  can  be
	  mixed	 inside the same format marker. The above example
	  underlines the label marker, which also sets color pair
	  number 5.

       How To Justify Strings
	  Justification commands can left justify, right justify,
	  or center a string of text. To use a justification for
	  mat  in a string the command <X> is used. The following
	  table lists all of the format commands available.

	     Justification_Command    Action.
	     <L>		      Left Justified. Default if not stated.
	     <C>		      Centered text.
	     <R>		      Right justified.
	     <I=X>		      Indent the line X characters.
	     <B=X>		      Bullet. X is the bullet string to use.
	     <F=X>		      Links in a file where X is the filename.
				      Currently only works with the viewer
				      widget.

	  The following code segment demonstrates how to use  the
	  justification commands in a Cdk widget.
		 ----------------------------------------
	  #include <cdk.h>

	  void main()
	  {
	     CDKSCREEN	 *cdkscreen;
	     CDKLABEL	 *demo;
	     WINDOW *screen;
	     char	 *mesg[4];

	     /* Initialize the Cdk screen.   */
	     screen = initscr();
	     cdkscreen = initCDKScreen (screen);

	     /* Set the labels up.	*/
	     mesg[0] = "<R></B/1>This line should have a yellow foreground and a blue background.<!1>";
	     mesg[1] = "</U/2>This line should have a white  foreground and a blue background.<!2>";
	     mesg[2] = "<B=+>This is a bullet.";
	     mesg[3] = "<I=10>This is indented 10 characters.";
	     mesg[4] = "<C>This line should be set to whatever the screen default is.";

	     /* Declare the labels.	*/
	     demo   = newCDKLabel (cdkscreen, CENTER, CENTER, mesg, 5, TRUE, TRUE);

	     /* Draw the label		*/
	     drawCDKLabel (demo, TRUE);
	     waitCDKLabel (demo, ' ');

	     /* Clean up	   */
	     destroyCDKLabel (demo);
	     destroyCDKScreen (cdkscreen);
	     endCDK();
	     exit (0);
	  }
		 ----------------------------------------
	  The  bullet  format  command	can  take either a single
	  character or a string.  The bullet  in  the  the  above
	  example would look like
	     + This is a bullet.
	  but if we were to use the following command instead
			 <B=***>This is a bullet.
	  it would look like
	     *** This is a bullet.

	  The  only restriction that a format command has is that
	  it must be at the beginning of the string.

       How To Use Special Drawing Characters
	  Cdk has a set of special drawing characters  which  can
	  be inserted into any ASCII file. In order to use a spe
	  cial character the format command <#XXX> is  used.  The
	  following table lists all of the special character com
	  mands available.

	     Special_Character	 Character
	     <#UL>		 Upper Left Corner
	     <#UR>		 Upper Right Corner
	     <#LL>		 Lower Left Corner
	     <#LR>		 Lower Right Corner
	     <#LT>		 Left Tee
	     <#RT>		 Right Tee
	     <#TT>		 Top Tee
	     <#BT>		 Bottom Tee
	     <#HL>		 Horizontal Line
	     <#VL>		 Vertical Line
	     <#PL>		 Plus Sign
	     <#PM>		 Plus/Minus Sign
	     <#DG>		 Degree Sign
	     <#CB>		 Checker Board
	     <#DI>		 Diamond
	     <#BU>		 Bullet

	  The character formats can be repeated using an optional
	  numeric  repeat value.  To repeat a character add (XXX)
	  to the end of the character format. The following exam
	  ple, draws 10 horizontal lines.

	  <#HL(10)>

	  The  following  code segment draws a box within a label
	  window.
		 ----------------------------------------
	  #include "cdk.h"

	  void main()
	  {
	     /* Declare variables. */
	     CDKSCREEN	 *cdkscreen;
	     CDKLABEL	 *demo;
	     WINDOW	 *cursesWin;
	     char	 *mesg[4];

	     /* Set up CDK	   */
	     cursesWin = initscr();
	     cdkscreen = initCDKScreen (cursesWin);

	     /* Start CDK Colors	*/
	     initCDKColor();

	     /* Set the labels up. */
	     mesg[0] = "<C><#UL><#HL(25)><#UR>";
	     mesg[1] = "<C><#VL></R>This text should be boxed.<!R><#VL>";
	     mesg[2] = "<C><#LL><#HL(25)><#LR>";
	     mesg[3] = "<C>While this is not.";

	     /* Declare the labels.	*/
	     demo   = newCDKLabel (cdkscreen, CENTER, CENTER, mesg, 4, TRUE, TRUE);

	     /* Is the label NULL???	*/
	     if (demo == (CDKLABEL *)NULL)
	     {
		/* Clean up the memory. */
		destroyCDKScreen (cdkscreen);

		/* End curses...	*/
		endCDK();

		/* Spit out a message.	*/
		printf ("Oops. Can't seem to create the label. Is the window too small?0);
		exit (1);
	     }

	     /* Draw the CDK screen.	*/
	     refreshCDKScreen (cdkscreen);
	     waitCDKLabel (demo, ' ');

	     /* Clean up	   */
	     destroyCDKLabel (demo);
	     destroyCDKScreen (cdkscreen);
	     delwin (cursesWin);
	     endCDK();
	     exit (0);
	  }
		 ----------------------------------------

	  Notice that drawn text can also be justified.

SEE ALSO
       cdk(3X), cdk_binding(3X), cdk_screen(3X)

NOTES
       The header file <cdk.h> automatically includes the  header
       files   <curses.h>,   <stdlib.h>,  <string.h>,  <ctype.h>,
       <unistd.h>,  <dirent.h>,	 <time.h>,  <errno.h>,	 <pwd.h>,
       <grp.h>,	 <sys/stat.h>, and <sys/types.h>.  The <curses.h>
       header file includes <stdio.h> and <unctrl.h>.

			   05 Dec 1995		  cdk_display(3X)
[top]

List of man pages available for IRIX

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net