1 /* $Header: /cvsroot/lesstif/lesstif/test/Xm/misc/test5.c,v 1.4 2002/04/17 16:22:01 amai Exp $
2 test for M*tif to see what the compiled Resources look like */
3
4 #include <stdlib.h>
5 #include <stdio.h>
6
7 #include <Xm/Xm.h>
8 #include <Xm/ExtObjectP.h>
9 #include <Xm/DesktopP.h>
10 #include <Xm/DialogSEP.h>
11 #include <Xm/ProtocolsP.h>
12 #include <Xm/ShellEP.h>
13 #include <Xm/VendorSEP.h>
14 #ifdef LESSTIF_VERSION
15 #include <Xm/WorldP.h>
16 #endif
17 #include <Xm/DragCP.h>
18 #include <Xm/DragIconP.h>
19 #include <Xm/DropTransP.h>
20
21 #include <Xm/GadgetP.h>
22 #include <Xm/ArrowBGP.h>
23 #include <Xm/SeparatoGP.h>
24 #include <Xm/LabelGP.h>
25 #include <Xm/CascadeBGP.h>
26 #include <Xm/PushBGP.h>
27 #include <Xm/ToggleBGP.h>
28
29 #include <Xm/PrimitiveP.h>
30 #include <Xm/ArrowBP.h>
31 #include <Xm/SeparatorP.h>
32 #include <Xm/ListP.h>
33 #include <Xm/SashP.h>
34 #include <Xm/ScrollBarP.h>
35 #include <Xm/TextFP.h>
36 #include <Xm/TextP.h>
37 #include <Xm/LabelP.h>
38 #include <Xm/CascadeBP.h>
39 #include <Xm/DrawnBP.h>
40 #include <Xm/PushBP.h>
41 #include <Xm/ToggleBP.h>
42 #include <Xm/TearOffBP.h>
43
44 #include <Xm/ManagerP.h>
45 #include <Xm/BulletinBP.h>
46 #include <Xm/CommandP.h>
47 #include <Xm/DrawingAP.h>
48 #include <Xm/FileSBP.h>
49 #include <Xm/FormP.h>
50 #include <Xm/FrameP.h>
51 #include <Xm/MainWP.h>
52 #include <Xm/MessageBP.h>
53 #include <Xm/PanedWP.h>
54 #include <Xm/RowColumnP.h>
55 #include <Xm/ScaleP.h>
56 #include <Xm/ScrolledWP.h>
57 #include <Xm/SelectioBP.h>
58
59 #include <Xm/DialogSP.h>
60 #include <Xm/VendorSP.h>
61 #include <Xm/MenuShellP.h>
62
63 #include <Xm/ScreenP.h>
64 #include <Xm/DisplayP.h>
65 #include <X11/Xresource.h>
66
67 void
print_syns(char * class,XrmResource ** res,int nres)68 print_syns(char *class, XrmResource **res, int nres)
69 {
70 int i;
71
72 printf( "%s: %d\n", class, nres);
73 for (i = 0; i < nres; i++) {
74 printf(" /* %d */\n", i);
75 printf(" {\n");
76 printf("\tXmN%s, XmC%s, XmR%s,\n",
77 XrmQuarkToString((int)res[i]->xrm_name),
78 XrmQuarkToString((int)res[i]->xrm_class),
79 XrmQuarkToString((int)res[i]->xrm_type));
80 printf("\tsize: %-3d offset: %-3d\n",
81 res[i]->xrm_size, res[i]->xrm_offset);
82 printf("\tXmR%s, (XtPointer)%p\n",
83 XrmQuarkToString((int)res[i]->xrm_default_type), res[i]->xrm_default_addr);
84 printf(" },\n");
85 }
86 printf("\n");
87 }
88
89 int
main(int argc,char ** argv)90 main(int argc, char **argv)
91 {
92 XtResource *syn;
93 Widget w, toplevel, one, two;
94 XtAppContext app;
95 int nsyn;
96 Arg args[1];
97
98 one = XtAppInitialize(&app, argv[0], NULL, 0, &argc, argv, NULL, NULL, 0);
99 toplevel = XtCreateWidget("top", (WidgetClass)&xmBulletinBoardClassRec, one, NULL, 0);
100 XtSetArg(args[0], XmNrowColumnType, XmMENU_BAR);
101 two = XtCreateWidget("top", (WidgetClass)&xmRowColumnClassRec, one, args, 1);
102
103 /* ODDITIES */
104 /* MLM: FIXME -- Chris, this widget gives and XtVersion mismatch */
105 w = XtCreateWidget("one", (WidgetClass)&xmDragContextClassRec, toplevel, NULL, 0);
106 XtDestroyWidget(w);
107 syn = xmDragContextClassRec.core_class.resources;
108 nsyn = xmDragContextClassRec.core_class.num_resources;
109 print_syns("DragContext", (XrmResource **)syn, nsyn);
110
111 w = XtCreateWidget("one", (WidgetClass)&xmDragIconClassRec, toplevel, NULL, 0);
112 XtDestroyWidget(w);
113 syn = xmDragIconClassRec.rectangle_class.resources;
114 nsyn = xmDragIconClassRec.rectangle_class.num_resources;
115 print_syns("DragIcon", (XrmResource **)syn, nsyn);
116
117 w = XtCreateWidget("one", (WidgetClass)&xmDropTransferClassRec, toplevel, NULL, 0);
118 XtDestroyWidget(w);
119 syn = xmDropTransferClassRec.object_class.resources;
120 nsyn = xmDropTransferClassRec.object_class.num_resources;
121 print_syns("DropTransfer", (XrmResource **)syn, nsyn);
122
123 /* EXT OBJS */
124 w = XtCreateWidget("one", (WidgetClass)&xmExtClassRec, toplevel, NULL, 0);
125 XtDestroyWidget(w);
126 syn = xmExtClassRec.object_class.resources;
127 nsyn = xmExtClassRec.object_class.num_resources;
128 print_syns("ExtObj", (XrmResource **)syn, nsyn);
129
130 w = XtCreateWidget("one", (WidgetClass)&xmDesktopClassRec, toplevel, NULL, 0);
131 XtDestroyWidget(w);
132 syn = xmDesktopClassRec.object_class.resources;
133 nsyn = xmDesktopClassRec.object_class.num_resources;
134 print_syns("Desktop", (XrmResource **)syn, nsyn);
135
136 #if 0
137 w = XtCreateWidget("one", (WidgetClass)&xmDialogShellExtClassRec, toplevel, NULL, 0);
138 XtDestroyWidget(w);
139 syn = xmDialogShellExtClassRec.object_class.resources;
140 nsyn = xmDialogShellExtClassRec.object_class.num_resources;
141 print_syns("DialogShellExt", (XrmResource **)syn, nsyn);
142 #endif
143
144 w = XtCreateWidget("one", (WidgetClass)&xmProtocolClassRec, toplevel, NULL, 0);
145 XtDestroyWidget(w);
146 syn = xmProtocolClassRec.object_class.resources;
147 nsyn = xmProtocolClassRec.object_class.num_resources;
148 print_syns("Protocols", (XrmResource **)syn, nsyn);
149
150 #if 0
151 w = XtCreateWidget("one", (WidgetClass)&xmShellExtClassRec, toplevel, NULL, 0);
152 XtDestroyWidget(w);
153 syn = xmShellExtClassRec.object_class.resources;
154 nsyn = xmShellExtClassRec.object_class.num_resources;
155 print_syns("ShellExt", (XrmResource **)syn, nsyn);
156
157 w = XtCreateWidget("one", (WidgetClass)&xmVendorShellExtClassRec, toplevel, NULL, 0);
158 XtDestroyWidget(w);
159 syn = xmVendorShellExtClassRec.object_class.resources;
160 nsyn = xmVendorShellExtClassRec.object_class.num_resources;
161 print_syns("VendorShellExt", (XrmResource **)syn, nsyn);
162 #endif
163
164 #ifdef LESSTIF_VERSION
165 w = XtCreateWidget("one", (WidgetClass)&xmWorldClassRec, toplevel, NULL, 0);
166 XtDestroyWidget(w);
167 syn = xmWorldClassRec.object_class.resources;
168 nsyn = xmWorldClassRec.object_class.num_resources;
169 print_syns("World", (XrmResource **)syn, nsyn);
170 #endif
171
172 #if 0
173 w = XtCreateWidget("one", (WidgetClass)&xmSeparatorGCacheObjClassRec, toplevel, NULL, 0);
174 XtDestroyWidget(w);
175 syn = xmSeparatorGCacheObjClassRec.object_class.resources;
176 nsyn = xmSeparatorGCacheObjClassRec.object_class.num_resources;
177 print_syns("SeparatorGCache", (XrmResource **)syn, nsyn);
178
179 w = XtCreateWidget("one", (WidgetClass)&xmLabelGCacheObjClassRec, toplevel, NULL, 0);
180 XtDestroyWidget(w);
181 syn = xmLabelGCacheObjClassRec.object_class.resources;
182 nsyn = xmLabelGCacheObjClassRec.object_class.num_resources;
183 print_syns("LabelGCache", (XrmResource **)syn, nsyn);
184
185 w = XtCreateWidget("one", (WidgetClass)&xmCascadeButtonGCacheObjClassRec, toplevel, NULL, 0);
186 XtDestroyWidget(w);
187 syn = xmCascadeButtonGCacheObjClassRec.object_class.resources;
188 nsyn = xmCascadeButtonGCacheObjClassRec.object_class.num_resources;
189 print_syns("CascadeButtonGCache", (XrmResource **)syn, nsyn);
190
191 w = XtCreateWidget("one", (WidgetClass)&xmPushButtonGCacheObjClassRec, toplevel, NULL, 0);
192 XtDestroyWidget(w);
193 syn = xmPushButtonGCacheObjClassRec.object_class.resources;
194 nsyn = xmPushButtonGCacheObjClassRec.object_class.num_resources;
195 print_syns("PushButtonGCache", (XrmResource **)syn, nsyn);
196
197 w = XtCreateWidget("one", (WidgetClass)&xmToggleButtonGCacheObjClassRec, toplevel, NULL, 0);
198 XtDestroyWidget(w);
199 syn = xmToggleButtonGCacheObjClassRec.object_class.resources;
200 nsyn = xmToggleButtonGCacheObjClassRec.object_class.num_resources;
201 print_syns("ToggleButtonGCache", (XrmResource **)syn, nsyn);
202 #endif
203
204 /* GADGETS */
205 w = XtCreateWidget("one", (WidgetClass)&xmGadgetClassRec, toplevel, NULL, 0);
206 XtDestroyWidget(w);
207 syn = xmGadgetClassRec.rect_class.resources;
208 nsyn = xmGadgetClassRec.rect_class.num_resources;
209 print_syns("Gadget", (XrmResource **)syn, nsyn);
210
211 w = XtCreateWidget("one", (WidgetClass)&xmArrowButtonGadgetClassRec, toplevel, NULL, 0);
212 XtDestroyWidget(w);
213 syn = xmArrowButtonGadgetClassRec.rect_class.resources;
214 nsyn = xmArrowButtonGadgetClassRec.rect_class.num_resources;
215 print_syns("ArrowButtonGadget", (XrmResource **)syn, nsyn);
216
217 w = XtCreateWidget("one", (WidgetClass)&xmSeparatorGadgetClassRec, toplevel, NULL, 0);
218 XtDestroyWidget(w);
219 syn = xmSeparatorGadgetClassRec.rect_class.resources;
220 nsyn = xmSeparatorGadgetClassRec.rect_class.num_resources;
221 print_syns("SeparatorGadget", (XrmResource **)syn, nsyn);
222
223 w = XtCreateWidget("one", (WidgetClass)&xmLabelGadgetClassRec, toplevel, NULL, 0);
224 XtDestroyWidget(w);
225 syn = xmLabelGadgetClassRec.rect_class.resources;
226 nsyn = xmLabelGadgetClassRec.rect_class.num_resources;
227 print_syns("LabelGadget", (XrmResource **)syn, nsyn);
228
229 w = XtCreateWidget("one", (WidgetClass)&xmCascadeButtonGadgetClassRec, two, NULL, 0);
230 XtDestroyWidget(w);
231 syn = xmCascadeButtonGadgetClassRec.rect_class.resources;
232 nsyn = xmCascadeButtonGadgetClassRec.rect_class.num_resources;
233 print_syns("CascadeButtonGadget", (XrmResource **)syn, nsyn);
234
235 w = XtCreateWidget("one", (WidgetClass)&xmPushButtonGadgetClassRec, toplevel, NULL, 0);
236 XtDestroyWidget(w);
237 syn = xmPushButtonGadgetClassRec.rect_class.resources;
238 nsyn = xmPushButtonGadgetClassRec.rect_class.num_resources;
239 print_syns("PushButtonGadget", (XrmResource **)syn, nsyn);
240
241 w = XtCreateWidget("one", (WidgetClass)&xmToggleButtonGadgetClassRec, toplevel, NULL, 0);
242 XtDestroyWidget(w);
243 syn = xmToggleButtonGadgetClassRec.rect_class.resources;
244 nsyn = xmToggleButtonGadgetClassRec.rect_class.num_resources;
245 print_syns("ToggleButtonGadget", (XrmResource **)syn, nsyn);
246
247 /* PRIMITIVES */
248 w = XtCreateWidget("one", (WidgetClass)&xmPrimitiveClassRec, toplevel, NULL, 0);
249 XtDestroyWidget(w);
250 syn = xmPrimitiveClassRec.core_class.resources;
251 nsyn = xmPrimitiveClassRec.core_class.num_resources;
252 print_syns("Primitive", (XrmResource **)syn, nsyn);
253
254 w = XtCreateWidget("one", (WidgetClass)&xmArrowButtonClassRec, toplevel, NULL, 0);
255 XtDestroyWidget(w);
256 syn = xmArrowButtonClassRec.core_class.resources;
257 nsyn = xmArrowButtonClassRec.core_class.num_resources;
258 print_syns("ArrowButton", (XrmResource **)syn, nsyn);
259
260 w = XtCreateWidget("one", (WidgetClass)&xmSeparatorClassRec, toplevel, NULL, 0);
261 XtDestroyWidget(w);
262 syn = xmSeparatorClassRec.core_class.resources;
263 nsyn = xmSeparatorClassRec.core_class.num_resources;
264 print_syns("Separator", (XrmResource **)syn, nsyn);
265
266 w = XtCreateWidget("one", (WidgetClass)&xmListClassRec, toplevel, NULL, 0);
267 XtDestroyWidget(w);
268 syn = xmListClassRec.core_class.resources;
269 nsyn = xmListClassRec.core_class.num_resources;
270 print_syns("List", (XrmResource **)syn, nsyn);
271
272 w = XtCreateWidget("one", (WidgetClass)&xmSashClassRec, toplevel, NULL, 0);
273 XtDestroyWidget(w);
274 syn = xmSashClassRec.core_class.resources;
275 nsyn = xmSashClassRec.core_class.num_resources;
276 print_syns("Sash", (XrmResource **)syn, nsyn);
277
278 w = XtCreateWidget("one", (WidgetClass)&xmScrollBarClassRec, toplevel, NULL, 0);
279 XtDestroyWidget(w);
280 syn = xmScrollBarClassRec.core_class.resources;
281 nsyn = xmScrollBarClassRec.core_class.num_resources;
282 print_syns("ScrollBar", (XrmResource **)syn, nsyn);
283
284 #if 0
285 /* FIXME: Rob, this shouldn't dump core; it does though, in _XmFontListEntryFromTag */
286 w = XtCreateWidget("one", (WidgetClass)&xmTextFieldClassRec, toplevel, NULL, 0);
287 XtDestroyWidget(w);
288 syn = xmTextFieldClassRec.core_class.resources;
289 nsyn = xmTextFieldClassRec.core_class.num_resources;
290 print_syns("TextField", (XrmResource **)syn, nsyn);
291 #endif
292
293 w = XtCreateWidget("one", (WidgetClass)&xmTextClassRec, toplevel, NULL, 0);
294 XtDestroyWidget(w);
295 syn = xmTextClassRec.core_class.resources;
296 nsyn = xmTextClassRec.core_class.num_resources;
297 print_syns("Text", (XrmResource **)syn, nsyn);
298
299 w = XtCreateWidget("one", (WidgetClass)&xmLabelClassRec, toplevel, NULL, 0);
300 XtDestroyWidget(w);
301 syn = xmLabelClassRec.core_class.resources;
302 nsyn = xmLabelClassRec.core_class.num_resources;
303 print_syns("Label", (XrmResource **)syn, nsyn);
304
305 w = XtCreateWidget("one", (WidgetClass)&xmCascadeButtonClassRec, two, NULL, 0);
306 XtDestroyWidget(w);
307 syn = xmCascadeButtonClassRec.core_class.resources;
308 nsyn = xmCascadeButtonClassRec.core_class.num_resources;
309 print_syns("CascadeButton", (XrmResource **)syn, nsyn);
310
311 w = XtCreateWidget("one", (WidgetClass)&xmDrawnButtonClassRec, toplevel, NULL, 0);
312 XtDestroyWidget(w);
313 syn = xmDrawnButtonClassRec.core_class.resources;
314 nsyn = xmDrawnButtonClassRec.core_class.num_resources;
315 print_syns("DrawnButton", (XrmResource **)syn, nsyn);
316
317 w = XtCreateWidget("one", (WidgetClass)&xmPushButtonClassRec, toplevel, NULL, 0);
318 XtDestroyWidget(w);
319 syn = xmPushButtonClassRec.core_class.resources;
320 nsyn = xmPushButtonClassRec.core_class.num_resources;
321 print_syns("PushButton", (XrmResource **)syn, nsyn);
322
323 w = XtCreateWidget("one", (WidgetClass)&xmToggleButtonClassRec, toplevel, NULL, 0);
324 XtDestroyWidget(w);
325 syn = xmToggleButtonClassRec.core_class.resources;
326 nsyn = xmToggleButtonClassRec.core_class.num_resources;
327 print_syns("ToggleButton", (XrmResource **)syn, nsyn);
328
329 w = XtCreateWidget("one", (WidgetClass)&xmTearOffButtonClassRec, toplevel, NULL, 0);
330 XtDestroyWidget(w);
331 syn = xmTearOffButtonClassRec.core_class.resources;
332 nsyn = xmTearOffButtonClassRec.core_class.num_resources;
333 print_syns("TearOffButton", (XrmResource **)syn, nsyn);
334
335 /* MANAGERS */
336 w = XtCreateWidget("one", (WidgetClass)&xmManagerClassRec, toplevel, NULL, 0);
337 XtDestroyWidget(w);
338 syn = xmManagerClassRec.core_class.resources;
339 nsyn = xmManagerClassRec.core_class.num_resources;
340 print_syns("Manager", (XrmResource **)syn, nsyn);
341 syn = xmManagerClassRec.constraint_class.resources;
342 nsyn = xmManagerClassRec.constraint_class.num_resources;
343 print_syns("Manager Constraint", (XrmResource **)syn, nsyn);
344
345 w = XtCreateWidget("one", (WidgetClass)&xmBulletinBoardClassRec, toplevel, NULL, 0);
346 XtDestroyWidget(w);
347 syn = xmBulletinBoardClassRec.core_class.resources;
348 nsyn = xmBulletinBoardClassRec.core_class.num_resources;
349 print_syns("BulletinBoard", (XrmResource **)syn, nsyn);
350 syn = xmBulletinBoardClassRec.constraint_class.resources;
351 nsyn = xmBulletinBoardClassRec.constraint_class.num_resources;
352 print_syns("BulletinBoard Constraint", (XrmResource **)syn, nsyn);
353
354 /* Danny, this shouldn't dump core. It does, though in _XmFontListEntryFromTag */
355 w = XtCreateWidget("one", (WidgetClass)&xmCommandClassRec, toplevel, NULL, 0);
356 XtDestroyWidget(w);
357 syn = xmCommandClassRec.core_class.resources;
358 nsyn = xmCommandClassRec.core_class.num_resources;
359 print_syns("Command", (XrmResource **)syn, nsyn);
360 syn = xmCommandClassRec.constraint_class.resources;
361 nsyn = xmCommandClassRec.constraint_class.num_resources;
362 print_syns("Command Constraint", (XrmResource **)syn, nsyn);
363
364 w = XtCreateWidget("one", (WidgetClass)&xmDrawingAreaClassRec, toplevel, NULL, 0);
365 XtDestroyWidget(w);
366 syn = xmDrawingAreaClassRec.core_class.resources;
367 nsyn = xmDrawingAreaClassRec.core_class.num_resources;
368 print_syns("DrawingArea", (XrmResource **)syn, nsyn);
369 syn = xmDrawingAreaClassRec.constraint_class.resources;
370 nsyn = xmDrawingAreaClassRec.constraint_class.num_resources;
371 print_syns("DrawingArea Constraint", (XrmResource **)syn, nsyn);
372
373 /* FIXME: Mitch, this shouldn't dump core. It does though, in _XmFontListEntryFromTag.
374 * Since I (Mitch) am writing this, I'll immediate cast blame elsewhere and say
375 * this routine is broken. I'm probably wrong, though.
376 */
377 w = XtCreateWidget("one", (WidgetClass)&xmFileSelectionBoxClassRec, toplevel, NULL, 0);
378 XtDestroyWidget(w);
379 syn = xmFileSelectionBoxClassRec.core_class.resources;
380 nsyn = xmFileSelectionBoxClassRec.core_class.num_resources;
381 print_syns("FileSelectionBox", (XrmResource **)syn, nsyn);
382 syn = xmFileSelectionBoxClassRec.constraint_class.resources;
383 nsyn = xmFileSelectionBoxClassRec.constraint_class.num_resources;
384 print_syns("FileSelectionBox Constraint", (XrmResource **)syn, nsyn);
385
386 w = XtCreateWidget("one", (WidgetClass)&xmFormClassRec, toplevel, NULL, 0);
387 XtDestroyWidget(w);
388 syn = xmFormClassRec.core_class.resources;
389 nsyn = xmFormClassRec.core_class.num_resources;
390 print_syns("Form", (XrmResource **)syn, nsyn);
391 syn = xmFormClassRec.constraint_class.resources;
392 nsyn = xmFormClassRec.constraint_class.num_resources;
393 print_syns("Form Constraint", (XrmResource **)syn, nsyn);
394
395 w = XtCreateWidget("one", (WidgetClass)&xmFrameClassRec, toplevel, NULL, 0);
396 XtDestroyWidget(w);
397 syn = xmFrameClassRec.core_class.resources;
398 nsyn = xmFrameClassRec.core_class.num_resources;
399 print_syns("Frame", (XrmResource **)syn, nsyn);
400 syn = xmFrameClassRec.constraint_class.resources;
401 nsyn = xmFrameClassRec.constraint_class.num_resources;
402 print_syns("Frame Constraint", (XrmResource **)syn, nsyn);
403
404 w = XtCreateWidget("one", (WidgetClass)&xmMainWindowClassRec, toplevel, NULL, 0);
405 XtDestroyWidget(w);
406 syn = xmMainWindowClassRec.core_class.resources;
407 nsyn = xmMainWindowClassRec.core_class.num_resources;
408 print_syns("MainWindow", (XrmResource **)syn, nsyn);
409 syn = xmMainWindowClassRec.constraint_class.resources;
410 nsyn = xmMainWindowClassRec.constraint_class.num_resources;
411 print_syns("MainWindow Constraint", (XrmResource **)syn, nsyn);
412
413 w = XtCreateWidget("one", (WidgetClass)&xmMessageBoxClassRec, toplevel, NULL, 0);
414 XtDestroyWidget(w);
415 syn = xmMessageBoxClassRec.core_class.resources;
416 nsyn = xmMessageBoxClassRec.core_class.num_resources;
417 print_syns("MessageBox", (XrmResource **)syn, nsyn);
418 syn = xmMessageBoxClassRec.constraint_class.resources;
419 nsyn = xmMessageBoxClassRec.constraint_class.num_resources;
420 print_syns("MessageBox Constraint", (XrmResource **)syn, nsyn);
421
422 w = XtCreateWidget("one", (WidgetClass)&xmPanedWindowClassRec, toplevel, NULL, 0);
423 XtDestroyWidget(w);
424 syn = xmPanedWindowClassRec.core_class.resources;
425 nsyn = xmPanedWindowClassRec.core_class.num_resources;
426 print_syns("PanedWindow", (XrmResource **)syn, nsyn);
427 syn = xmPanedWindowClassRec.constraint_class.resources;
428 nsyn = xmPanedWindowClassRec.constraint_class.num_resources;
429 print_syns("PanedWindow Constraint", (XrmResource **)syn, nsyn);
430
431 w = XtCreateWidget("one", (WidgetClass)&xmRowColumnClassRec, toplevel, NULL, 0);
432 XtDestroyWidget(w);
433 syn = xmRowColumnClassRec.core_class.resources;
434 nsyn = xmRowColumnClassRec.core_class.num_resources;
435 print_syns("RowColumn", (XrmResource **)syn, nsyn);
436 syn = xmRowColumnClassRec.constraint_class.resources;
437 nsyn = xmRowColumnClassRec.constraint_class.num_resources;
438 print_syns("RowColumn Constraint", (XrmResource **)syn, nsyn);
439
440 w = XtCreateWidget("one", (WidgetClass)&xmScaleClassRec, toplevel, NULL, 0);
441 XtDestroyWidget(w);
442 syn = xmScaleClassRec.core_class.resources;
443 nsyn = xmScaleClassRec.core_class.num_resources;
444 print_syns("Scale", (XrmResource **)syn, nsyn);
445 syn = xmScaleClassRec.constraint_class.resources;
446 nsyn = xmScaleClassRec.constraint_class.num_resources;
447 print_syns("Scale Constraint", (XrmResource **)syn, nsyn);
448
449 w = XtCreateWidget("one", (WidgetClass)&xmScrolledWindowClassRec, toplevel, NULL, 0);
450 XtDestroyWidget(w);
451 syn = xmScrolledWindowClassRec.core_class.resources;
452 nsyn = xmScrolledWindowClassRec.core_class.num_resources;
453 print_syns("ScrolledWindow", (XrmResource **)syn, nsyn);
454 syn = xmScrolledWindowClassRec.constraint_class.resources;
455 nsyn = xmScrolledWindowClassRec.constraint_class.num_resources;
456 print_syns("ScrolledWindow Constraint", (XrmResource **)syn, nsyn);
457
458 w = XtCreateWidget("one", (WidgetClass)&xmSelectionBoxClassRec, toplevel, NULL, 0);
459 XtDestroyWidget(w);
460 syn = xmSelectionBoxClassRec.core_class.resources;
461 nsyn = xmSelectionBoxClassRec.core_class.num_resources;
462 print_syns("SelectionBox", (XrmResource **)syn, nsyn);
463 syn = xmSelectionBoxClassRec.constraint_class.resources;
464 nsyn = xmSelectionBoxClassRec.constraint_class.num_resources;
465 print_syns("SelectionBox Constraint", (XrmResource **)syn, nsyn);
466
467 /* SHELLS */
468 w = XtCreateWidget("one", (WidgetClass)&xmDialogShellClassRec, toplevel, NULL, 0);
469 XtDestroyWidget(w);
470 syn = xmDialogShellClassRec.core_class.resources;
471 nsyn = xmDialogShellClassRec.core_class.num_resources;
472 print_syns("DialogShell", (XrmResource **)syn, nsyn);
473
474 syn = vendorShellClassRec.core_class.resources;
475 nsyn = vendorShellClassRec.core_class.num_resources;
476 w = XtCreateWidget("one", (WidgetClass)&vendorShellClassRec, toplevel, NULL, 0);
477 XtDestroyWidget(w);
478 print_syns("VendorShell", (XrmResource **)syn, nsyn);
479
480 w = XtCreateWidget("one", (WidgetClass)&xmMenuShellClassRec, toplevel, NULL, 0);
481 XtDestroyWidget(w);
482 syn = xmMenuShellClassRec.core_class.resources;
483 nsyn = xmMenuShellClassRec.core_class.num_resources;
484 print_syns("MenuShell", (XrmResource **)syn, nsyn);
485
486 /* OTHER */
487 w = XtCreateWidget("one", (WidgetClass)&xmDisplayClassRec, toplevel, NULL, 0);
488 XtDestroyWidget(w);
489 syn = xmDisplayClassRec.core_class.resources;
490 nsyn = xmDisplayClassRec.core_class.num_resources;
491 print_syns("Display", (XrmResource **)syn, nsyn);
492
493 #if 0
494 /* OOPS: only one of these per screen */
495 w = XtCreateWidget("one", (WidgetClass)&xmScreenClassRec, toplevel, NULL, 0);
496 #else
497 w = XmGetXmScreen(XtScreen(toplevel));
498 #endif
499 syn = xmScreenClassRec.core_class.resources;
500 nsyn = xmScreenClassRec.core_class.num_resources;
501 print_syns("Screen", (XrmResource **)syn, nsyn);
502
503 exit(0);
504 }
505