1 /* $Header: /cvsroot/lesstif/lesstif/test/Xm/textf/test15.c,v 1.1 2002/05/13 18:23:45 dannybackx Exp $ */
2
3 #include <stdlib.h>
4 #include <stdio.h>
5 #include <Xm/RowColumn.h>
6 #include <Xm/TextF.h>
7 #include <Xm/ToggleB.h>
8
9
Doit(Widget w,XtPointer client,XtPointer call)10 void Doit(Widget w, XtPointer client, XtPointer call)
11 {
12 char *s = (char *)client;
13 String v = NULL;
14 short rows;
15
16 fprintf(stderr, "Callback %s, widget value '%s'\n", s, XmTextFieldGetString(w));
17
18 XtVaGetValues(w,
19 XmNvalue, &v,
20 XmNrows, &rows,
21 NULL);
22
23 fprintf(stderr, "GetValues => value '%s', rows %d\n", v, rows);
24 XtFree(v);
25 }
26
change(Widget w,XtPointer client,XtPointer call)27 void change(Widget w, XtPointer client, XtPointer call)
28 {
29 Widget t = (Widget)client;
30 XmToggleButtonCallbackStruct *cbp = (XmToggleButtonCallbackStruct*)call;
31
32 fprintf(stderr, "Setting text sensitive to %d\n", cbp->set);
33 XtSetSensitive(t, cbp->set);
34 }
35
36 char *fallback[] = {
37 "*text*blinkRate: 500",
38 "*text.value: abc",
39 "*.geometrySlop: 2",
40 NULL
41 };
42
43 int
main(int argc,char ** argv)44 main(int argc, char **argv)
45 {
46 Widget toplevel, text, rc, toggle;
47 XtAppContext app;
48
49 XtSetLanguageProc(NULL, NULL, NULL);
50
51 toplevel = XtVaAppInitialize(&app,"Label",NULL,0,&argc,argv, fallback, NULL);
52
53 rc = XtVaCreateManagedWidget("rc", xmRowColumnWidgetClass, toplevel,
54 NULL);
55
56 toggle = XtVaCreateManagedWidget("sensitive", xmToggleButtonWidgetClass,
57 rc,
58 XmNset, True,
59 NULL);
60
61 text = XtVaCreateManagedWidget("text", xmTextFieldWidgetClass, rc,
62 XmNrows, 10,
63 NULL);
64
65 XtAddCallback(toggle, XmNvalueChangedCallback, change, (XtPointer)text);
66 /* XtAddCallback(toggle, XmNvalueChangedCallback, Doit, XmNvalueChangedCallback); */
67
68 XtAddCallback(text, XmNmodifyVerifyCallback, Doit, XmNmodifyVerifyCallback);
69 XtAddCallback(text, XmNactivateCallback, Doit, XmNactivateCallback);
70 XtAddCallback(text, XmNlosingFocusCallback, Doit, XmNlosingFocusCallback);
71 XtAddCallback(text, XmNfocusCallback, Doit, XmNfocusCallback);
72
73 XtRealizeWidget(toplevel);
74
75
76 {
77 static XtWidgetGeometry Expected[] = {
78 CWWidth | CWHeight , 56, 72, 144, 63, 0,0,0, /* rc */
79 CWWidth | CWHeight | CWX | CWY, 3, 3, 138, 23, 0,0,0, /* sensitive */
80 CWWidth | CWHeight | CWX | CWY, 3, 29, 138, 31, 0,0,0, /* text */
81 };
82 PrintDetails(toplevel,Expected);
83 };
84 LessTifTestMainLoop(toplevel);
85
86 exit(0);
87 }
88