diff options
author | Walter Harms <wharms@bfs.de> | 2023-05-12 23:03:32 +0200 |
---|---|---|
committer | Walter Harms <wharms@bfs.de> | 2023-05-12 23:03:32 +0200 |
commit | 2f99a415913b6be4ed2955a3e30694c2216aafbd (patch) | |
tree | f7edfa31d631eaa30bd5258d40c1b3902c13239f /examples/list.c | |
parent | 324358180ddeaae482c5f66bb5647a4918710296 (diff) | |
download | xorg-lib-libXaw-2f99a415913b6be4ed2955a3e30694c2216aafbd.tar.gz |
add examples
provide some examples to support the documentation
Diffstat (limited to 'examples/list.c')
-rw-r--r-- | examples/list.c | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/examples/list.c b/examples/list.c new file mode 100644 index 0000000..8296059 --- /dev/null +++ b/examples/list.c @@ -0,0 +1,52 @@ +#include <stdlib.h> +#include <stdio.h> +#include <StringDefs.h> +#include <Xaw/Box.h> +#include <Xaw/List.h> +#include <Xaw/Viewport.h> +#include <Xaw/Command.h> + +void quit_CB(Widget w, XtPointer closure, XtPointer call_data) +{ + Widget lst=closure; + XawListReturnStruct *ret; + + ret=XawListShowCurrent(lst); + + if (ret->string[0] != 0) + printf("selected:%s\n",ret->string); + + XtAppSetExitFlag(XtWidgetToApplicationContext(w)); +} + +int main(int argc, char **argv) +{ + Widget toplevel,box,list,cmd,view; + XtAppContext app_con; + toplevel = XtAppInitialize(&app_con, "Hello", NULL, 0, + &argc, argv, NULL, + NULL, 0); + char *items[]={ "the ","quick","brown", "fox ", + "jumps","Over","the","lazy","dog", + NULL}; + + box = XtCreateManagedWidget("box", boxWidgetClass, toplevel, NULL, 0); + cmd=XtCreateManagedWidget("exit", commandWidgetClass, box, NULL, 0); + + view=XtVaCreateManagedWidget("viewport", viewportWidgetClass, box, + XtNallowVert, 1, + XtNforceBars,1, + NULL); + + list= XtVaCreateManagedWidget("listbox", listWidgetClass,view, + XtNlist,items, + XtNdefaultColumns,1, + XtNnumberStrings,4, + XtNforceColumns,1, + NULL); + XawListChange(list,items,0,0,0); + XtAddCallback(cmd, XtNcallback, quit_CB , list); + XtRealizeWidget(toplevel); + XtAppMainLoop(app_con); + exit(0); +} |