[comp.windows.x.motif] option desc, motif label, labeString, help !

hajadi@goofy.csd.sgi.com (Ivan Hajadi) (04/17/91)

/* 
 *  xappinit.c
 *
 *  Example program to show how to use XtAppInitialize instead of the
 *  convenient routine XtInitialize.  It also shows how to use fallback
 *  resources, and option description record.
 *
 *  If the program cannot find /usr/lib/X11/app-defaults/Foo resource
 *  file, then it will use what ever specified in fallback_resources.
 *  Usually this fallback resource list contains crucial resource values
 *  that are needed to run the program successfully.
 * 
 *  Options describes the form of command line option that this program
 *  can handle.  See p. 340 Vol One of the O'Reilly book for more
 *  examples.
 *  This program has this syntax: xappinit -labelString "<something>".
 *
 *  Ivan M. Hajadi, Silicon Graphics, Inc., 15-April-91
 */


#include <Xm/Xm.h>
#include <Xm/Label.h>

/* resources to use when there is no app-defaults file */

static char *fallback_resources[] = {
  "Foo*fontList: -adobe-helvetica-bold-r-normal--*-80-*-*-*-*-iso*-*",
  /*
  "Foo*XmLabel.labelString: This is Motif label widget (no app-defaults)",
  */
  NULL
};

/* define command line option and resource file option */

static XrmOptionDescRec options[] =
{
  {"-labelString", "*label.labelString", XrmoptionSepArg, NULL}
};

/* Application context takes care of the book-keeping necessary to */
/* maintain one or more connections to X servers.  Every application */
/* must have at least one (default) application context.  Application */
/* context is an opaque type, that is passed to other Xt functions. */

XtAppContext app_context;

main(unsigned int argc, char **argv)
{
  Widget toplevel, w;

  /* Convenient routine is XtInitialize */
  toplevel = XtAppInitialize(
		&app_context		/* returns application context */,
	        "Foo"			/* application class */, 
		options			/* command line option table */,
		XtNumber(options)	/* number of options */,
		&argc,
		argv,
		fallback_resources	/* resources to use when there is
					   no app-defaults file */,
		NULL			/* argument list used to override
					   default values */,
		0);

  w = XtCreateManagedWidget("label", xmLabelWidgetClass, toplevel, NULL, 0);

  XtRealizeWidget(toplevel);

  /* Convenient function is XtMainLoop */
  XtAppMainLoop(app_context);
}
--

    Ivan M. Hajadi,                      Widget - any small, unspecified
    hajadi@csd.sgi.com                            gadget or device (Webster)