Listing 1. helloworld.c Program

/* General header for the motif library */
#include <Xm/Xm.h>
/* Header for the Push Button Widget */
#include <Xm/PushB.h>
/* Prototype Callback function */
void pushedButton (Widget , XtPointer , XmPushButtonCallbackStruct *);
main(int argc, char **argv)
{
   Widget topWidget, button;
    XtAppContext  app;
    topWidget = XtVaAppInitialize (&app,
     "Push", NULL, 0, &argc, argv, NULL, NULL);
    button = XmCreatePushButton(topWidget,
     "Hello World! Push me!", NULL, 0);
    /* tell Xt to manage button */
    XtManageChild(button);
    /* Add a callback to the button widget */
    XtAddCallback(button, XmNactivateCallback,
      pushedButton, NULL);
    XtRealizeWidget(topWidget); /* display widget hierarchy */
   /* enter processing loop */
   XtAppMainLoop(app);
}
void pushedButton (Widget w, XtPointer client_data, XmPushButtonCallbackStruct *cbs)
{
    printf("Hello to you too!\n");
}