summaryrefslogtreecommitdiff
path: root/xts5/Xt6/ShellWidget/ShellWidget.m
diff options
context:
space:
mode:
Diffstat (limited to 'xts5/Xt6/ShellWidget/ShellWidget.m')
-rw-r--r--xts5/Xt6/ShellWidget/ShellWidget.m1025
1 files changed, 1025 insertions, 0 deletions
diff --git a/xts5/Xt6/ShellWidget/ShellWidget.m b/xts5/Xt6/ShellWidget/ShellWidget.m
new file mode 100644
index 00000000..9f2b5d00
--- /dev/null
+++ b/xts5/Xt6/ShellWidget/ShellWidget.m
@@ -0,0 +1,1025 @@
+Copyright (c) 2005 X.Org Foundation LLC
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+$Header: /cvs/xtest/xtest/xts5/tset/Xt6/ShellWidget/ShellWidget.m,v 1.1 2005-02-12 14:38:14 anderson Exp $
+
+Copyright (c) Applied Testing and Technology, Inc. 1993, 1994, 1995
+Copyright (c) 88open Consortium, Ltd. 1990, 1991, 1992, 1993
+All Rights Reserved.
+
+>>#
+>># Project: VSW5
+>>#
+>># File: tset/Xt6/ShellWidget/ShellWidget.m
+>>#
+>># Description:
+>># Tests for ShellWidget
+>>#
+>># Modifications:
+>># $Log: wdgtshll.m,v $
+>># Revision 1.1 2005-02-12 14:38:14 anderson
+>># Initial revision
+>>#
+>># Revision 8.0 1998/12/23 23:36:39 mar
+>># Branch point for Release 5.0.2
+>>#
+>># Revision 7.0 1998/10/30 22:59:31 mar
+>># Branch point for Release 5.0.2b1
+>>#
+>># Revision 6.0 1998/03/02 05:27:48 tbr
+>># Branch point for Release 5.0.1
+>>#
+>># Revision 5.0 1998/01/26 03:24:22 tbr
+>># Branch point for Release 5.0.1b1
+>>#
+>># Revision 4.1 1997/01/22 22:38:22 andy
+>># Removed use of Athena widgets
+>>#
+>># Revision 4.0 1995/12/15 09:16:46 tbr
+>># Branch point for Release 5.0.0
+>>#
+>># Revision 3.1 1995/12/15 01:20:48 andy
+>># Prepare for GA Release
+>>#
+>>EXTERN
+#include <X11/IntrinsicP.h>
+#include <X11/ConstrainP.h>
+#include <X11/CoreP.h>
+#include <X11/ShellP.h>
+
+XtAppContext app_ctext;
+Widget topLevel, panedw, boxw1, boxw2;
+Widget labelw, rowcolw, click_quit;
+
+/*used for assignments to solicit compiler failures due to type mismatches*/
+WidgetClass myWidgetClass, *pmyWidgetClass;
+String myString, *pmyString;
+Cardinal myCardinal, *pmyCardinal;
+Boolean myBoolean, *pmyBoolean;
+XtProc myXtProc, *pmyXtProc;
+long mylong, *pmylong;
+XrmQuark myXrmQuark, *pmyXrmQuark;
+XtWidgetClassProc myXtWidgetClassProc, *pmyXtWidgetClassProc;
+XtEnum myXtEnum, *pmyXtEnum;
+XtInitProc myXtInitProc, *pmyXtInitProc;
+XtArgsProc myXtArgsProc, *pmyXtArgsProc;
+XtRealizeProc myXtRealizeProc, *pmyXtRealizeProc;
+XtActionList myXtActionList, *pmyXtActionList;
+XtResourceList myXtResourceList, *pmyXtResourceList;
+XrmClass myXrmClass, *pmyXrmClass;
+XtWidgetProc myXtWidgetProc, *pmyXtWidgetProc;
+XtExposeProc myXtExposeProc, *pmyXtExposeProc;
+XtSetValuesFunc myXtSetValuesFunc, *pmyXtSetValuesFunc;
+XtArgsFunc myXtArgsFunc, *pmyXtArgsFunc;
+XtAlmostProc myXtAlmostProc, *pmyXtAlmostProc;
+XtArgsProc myXtArgsProc, *pmyXtArgsProc;
+XtAcceptFocusProc myXtAcceptFocusProc, *pmyXtAcceptFocusProc;
+XtVersionType myXtVersionType, *pmyXtVersionType;
+XtPointer myXtPointer, *pmyXtPointer;
+XtGeometryHandler myXtGeometryHandler, *pmyXtGeometryHandler;
+XtStringProc myXtStringProc, *pmyXtStringProc;
+Window myWindow, *pmyWindow;
+WidgetList myWidgetList, *pmyWidgetList;
+Widget myWidget, *pmyWidget;
+XrmName myXrmName, *pmyXrmName;
+XtCallbackList myXtCallbackList, *pmyXtCallbackList;
+Dimension myDimension, *pmyDimension;
+XtEventTable myXtEventTable, *pmyXtEventTable;
+XtTMRec myXtTMRec, *pmyXtTMRec;
+XtTranslations myXtTranslations, *pmyXtTranslations;
+Pixel myPixel, *pmyPixel;
+Pixmap myPixmap, *pmyPixmap;
+Colormap myColormap, *pmyColormap;
+Screen *pmyScreen;
+char *pmychar, **ppmychar;
+int myint, *pmyint;
+long mylong, *pmylong;
+Atom myAtom, *pmyAtom;
+XWMHints myXWMHints, *pmyXWMHints;
+XtGrabKind myXtGrabKind, *pmyXtGrabKind;
+XtOrderProc myXtOrderProc, *pmyXtOrderProc;
+XtCreatePopupChildProc myXtCreatePopupChildProc, *pmyXtCreatePopupChildProc;
+Visual *pmyVisual;
+extern void xt_whandler();
+>>TITLE ShellWidget Xt6
+>>ASSERTION Good A
+The class structure for shell widgets ShellClassPart
+shall be defined and contain the fields listed in
+section 6.1 of the Specification.
+>>CODE
+ShellClassPart testStruct;
+
+ check_size("ShellClassPart.extension", "XtPointer", sizeof(testStruct.extension), sizeof(XtPointer));
+ myXtPointer = testStruct.extension;
+ pmyXtPointer = &testStruct.extension;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The extension structure for shell widgets
+ShellClassExtensionRec shall be defined and contain
+the fields listed in section 6.1 of the Specification.
+>>CODE
+ShellClassExtensionRec testStruct;
+
+ check_size("ShellClassExtensionRec.next_extension", "XtPointer", sizeof(testStruct.next_extension), sizeof(XtPointer));
+ myXtPointer = testStruct.next_extension;
+ pmyXtPointer = &testStruct.next_extension;
+
+ check_size("ShellClassExtensionRec.record_type", "XrmQuark", sizeof(testStruct.record_type), sizeof(XrmQuark));
+ myXrmQuark = testStruct.record_type;
+ pmyXrmQuark = &testStruct.record_type;
+
+ check_size("ShellClassExtensionRec.version", "long", sizeof(testStruct.version), sizeof(long));
+ mylong = testStruct.version;
+ pmylong = &testStruct.version;
+
+ check_size("ShellClassExtensionRec.record_size", "Cardinal", sizeof(testStruct.record_size), sizeof(Cardinal));
+ myCardinal = testStruct.record_size;
+ pmyCardinal = &testStruct.record_size;
+
+ check_size("ShellClassExtensionRec.root_geometry_manager", "XtGeometryHandler", sizeof(testStruct.root_geometry_manager), sizeof(XtGeometryHandler));
+ myXtGeometryHandler = testStruct.root_geometry_manager;
+ pmyXtGeometryHandler = &testStruct.root_geometry_manager;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The class record structure for shell widgets
+ShellClassRec shall be defined and contain the fields
+listed in section 6.1 of the Specification.
+>>CODE
+ShellClassRec testStruct;
+
+ check_size("ShellClassRec.core_class.superclass", "WidgetClass", sizeof(testStruct.core_class.superclass), sizeof(WidgetClass));
+ myWidgetClass = testStruct.core_class.superclass;
+ pmyWidgetClass = &testStruct.core_class.superclass;
+
+ check_size("ShellClassRec.core_class.class_name", "String", sizeof(testStruct.core_class.class_name), sizeof(String));
+ myString = testStruct.core_class.class_name;
+ pmyString = &testStruct.core_class.class_name;
+
+ check_size("ShellClassRec.core_class.widget_size", "Cardinal", sizeof(testStruct.core_class.widget_size), sizeof(Cardinal));
+ myCardinal = testStruct.core_class.widget_size;
+ pmyCardinal = &testStruct.core_class.widget_size;
+
+ check_size("ShellClassRec.core_class.class_initialize", "XtProc", sizeof(testStruct.core_class.class_initialize), sizeof(XtProc));
+ myXtProc = testStruct.core_class.class_initialize;
+ pmyXtProc = &testStruct.core_class.class_initialize;
+
+ check_size("ShellClassRec.core_class.class_part_initialize", "XtWidgetClassProc", sizeof(testStruct.core_class.class_part_initialize), sizeof(XtWidgetClassProc));
+ myXtWidgetClassProc = testStruct.core_class.class_part_initialize;
+ pmyXtWidgetClassProc = &testStruct.core_class.class_part_initialize;
+
+ check_size("ShellClassRec.core_class.class_inited", "XtEnum", sizeof(testStruct.core_class.class_inited), sizeof(XtEnum));
+ myXtEnum = testStruct.core_class.class_inited;
+ pmyXtEnum = &testStruct.core_class.class_inited;
+
+ check_size("ShellClassRec.core_class.initialize", "XtInitProc", sizeof(testStruct.core_class.initialize), sizeof(XtInitProc));
+ myXtInitProc = testStruct.core_class.initialize;
+ pmyXtInitProc = &testStruct.core_class.initialize;
+
+ check_size("ShellClassRec.core_class.initialize_hook", "XtArgsProc", sizeof(testStruct.core_class.initialize_hook), sizeof(XtArgsProc));
+ myXtArgsProc = testStruct.core_class.initialize_hook;
+ pmyXtArgsProc = &testStruct.core_class.initialize_hook;
+
+ check_size("ShellClassRec.core_class.realize", "XtRealizeProc", sizeof(testStruct.core_class.realize), sizeof(XtRealizeProc));
+ myXtRealizeProc = testStruct.core_class.realize;
+ pmyXtRealizeProc = &testStruct.core_class.realize;
+
+ check_size("ShellClassRec.core_class.actions", "XtActionList", sizeof(testStruct.core_class.actions), sizeof(XtActionList));
+ myXtActionList = testStruct.core_class.actions;
+ pmyXtActionList = &testStruct.core_class.actions;
+
+ check_size("ShellClassRec.core_class.num_actions", "Cardinal", sizeof(testStruct.core_class.num_actions), sizeof(Cardinal));
+ myCardinal = testStruct.core_class.num_actions;
+ pmyCardinal = &testStruct.core_class.num_actions;
+
+ check_size("ShellClassRec.core_class.resources", "XtResourceList", sizeof(testStruct.core_class.resources), sizeof(XtResourceList));
+ myXtResourceList = testStruct.core_class.resources;
+ pmyXtResourceList = &testStruct.core_class.resources;
+
+ check_size("ShellClassRec.core_class.num_resources", "Cardinal", sizeof(testStruct.core_class.num_resources), sizeof(Cardinal));
+ myCardinal = testStruct.core_class.num_resources;
+ pmyCardinal = &testStruct.core_class.num_resources;
+
+ check_size("ShellClassRec.core_class.xrm_class", "XrmClass", sizeof(testStruct.core_class.xrm_class), sizeof(XrmClass));
+ myXrmClass = testStruct.core_class.xrm_class;
+ pmyXrmClass = &testStruct.core_class.xrm_class;
+
+ check_size("ShellClassRec.core_class.compress_motion", "Boolean", sizeof(testStruct.core_class.compress_motion), sizeof(Boolean));
+ myBoolean = testStruct.core_class.compress_motion;
+ pmyBoolean = &testStruct.core_class.compress_motion;
+
+ check_size("ShellClassRec.core_class.compress_exposure", "XtEnum", sizeof(testStruct.core_class.compress_exposure), sizeof(XtEnum));
+ myXtEnum = testStruct.core_class.compress_exposure;
+ pmyXtEnum = &testStruct.core_class.compress_exposure;
+
+ check_size("ShellClassRec.core_class.compress_enterleave", "Boolean", sizeof(testStruct.core_class.compress_enterleave), sizeof(Boolean));
+ myBoolean = testStruct.core_class.compress_enterleave;
+ pmyBoolean = &testStruct.core_class.compress_enterleave;
+
+ check_size("ShellClassRec.core_class.visible_interest", "Boolean", sizeof(testStruct.core_class.visible_interest), sizeof(Boolean));
+ myBoolean = testStruct.core_class.visible_interest;
+ pmyBoolean = &testStruct.core_class.visible_interest;
+
+ check_size("ShellClassRec.core_class.destroy", "XtWidgetProc", sizeof(testStruct.core_class.destroy), sizeof(XtWidgetProc));
+ myXtWidgetProc = testStruct.core_class.destroy;
+ pmyXtWidgetProc = &testStruct.core_class.destroy;
+
+ check_size("ShellClassRec.core_class.resize", "XtWidgetProc", sizeof(testStruct.core_class.resize), sizeof(XtWidgetProc));
+ myXtWidgetProc = testStruct.core_class.resize;
+ pmyXtWidgetProc = &testStruct.core_class.resize;
+
+ check_size("ShellClassRec.core_class.expose", "XtExposeProc", sizeof(testStruct.core_class.expose), sizeof(XtExposeProc));
+ myXtExposeProc = testStruct.core_class.expose;
+ pmyXtExposeProc = &testStruct.core_class.expose;
+
+ check_size("ShellClassRec.core_class.set_values", "XtSetValuesFunc", sizeof(testStruct.core_class.set_values), sizeof(XtSetValuesFunc));
+ myXtSetValuesFunc = testStruct.core_class.set_values;
+ pmyXtSetValuesFunc = &testStruct.core_class.set_values;
+
+ check_size("ShellClassRec.core_class.set_values_hook", "XtArgsFunc", sizeof(testStruct.core_class.set_values_hook), sizeof(XtArgsFunc));
+ myXtArgsFunc = testStruct.core_class.set_values_hook;
+ pmyXtArgsFunc = &testStruct.core_class.set_values_hook;
+
+ check_size("ShellClassRec.core_class.set_values_almost", "XtAlmostProc", sizeof(testStruct.core_class.set_values_almost), sizeof(XtAlmostProc));
+ myXtAlmostProc = testStruct.core_class.set_values_almost;
+ pmyXtAlmostProc = &testStruct.core_class.set_values_almost;
+
+ check_size("ShellClassRec.core_class.get_values_hook", "XtArgsProc", sizeof(testStruct.core_class.get_values_hook), sizeof(XtArgsProc));
+ myXtArgsProc = testStruct.core_class.get_values_hook;
+ pmyXtArgsProc = &testStruct.core_class.get_values_hook;
+
+ check_size("ShellClassRec.core_class.accept_focus", "XtAcceptFocusProc", sizeof(testStruct.core_class.accept_focus), sizeof(XtAcceptFocusProc));
+ myXtAcceptFocusProc = testStruct.core_class.accept_focus;
+ pmyXtAcceptFocusProc = &testStruct.core_class.accept_focus;
+
+ check_size("ShellClassRec.core_class.version", "XtVersionType", sizeof(testStruct.core_class.version), sizeof(XtVersionType));
+ myXtVersionType = testStruct.core_class.version;
+ pmyXtVersionType = &testStruct.core_class.version;
+
+ check_size("ShellClassRec.core_class.callback_private", "XtPointer", sizeof(testStruct.core_class.callback_private), sizeof(XtPointer));
+ myXtPointer = testStruct.core_class.callback_private;
+ pmyXtPointer = &testStruct.core_class.callback_private;
+
+ check_size("ShellClassRec.core_class.tm_table", "String", sizeof(testStruct.core_class.tm_table), sizeof(String));
+ myString = testStruct.core_class.tm_table;
+ pmyString = &testStruct.core_class.tm_table;
+
+ check_size("ShellClassRec.core_class.query_geometry", "XtGeometryHandler", sizeof(testStruct.core_class.query_geometry), sizeof(XtGeometryHandler));
+ myXtGeometryHandler = testStruct.core_class.query_geometry;
+ pmyXtGeometryHandler = &testStruct.core_class.query_geometry;
+
+ check_size("ShellClassRec.core_class.display_accelerator", "XtStringProc", sizeof(testStruct.core_class.display_accelerator), sizeof(XtStringProc));
+ myXtStringProc = testStruct.core_class.display_accelerator;
+ pmyXtStringProc = &testStruct.core_class.display_accelerator;
+
+ check_size("ShellClassRec.core_class.extension", "XtPointer", sizeof(testStruct.core_class.extension), sizeof(XtPointer));
+ myXtPointer = testStruct.core_class.extension;
+ pmyXtPointer = &testStruct.core_class.extension;
+
+ check_size("ShellClassRec.composite_class.geometry_manager", "XtGeometryHandler", sizeof(testStruct.composite_class.geometry_manager), sizeof(XtGeometryHandler));
+ myXtGeometryHandler = testStruct.composite_class.geometry_manager;
+ pmyXtGeometryHandler = &testStruct.composite_class.geometry_manager;
+
+ check_size("ShellClassRec.composite_class.change_managed", "XtWidgetProc", sizeof(testStruct.composite_class.change_managed), sizeof(XtWidgetProc));
+ myXtWidgetProc = testStruct.composite_class.change_managed;
+ pmyXtWidgetProc = &testStruct.composite_class.change_managed;
+
+ check_size("ShellClassRec.composite_class.insert_child", "XtWidgetProc", sizeof(testStruct.composite_class.insert_child), sizeof(XtWidgetProc));
+ myXtWidgetProc = testStruct.composite_class.insert_child;
+ pmyXtWidgetProc = &testStruct.composite_class.insert_child;
+
+ check_size("ShellClassRec.composite_class.delete_child", "XtWidgetProc", sizeof(testStruct.composite_class.delete_child), sizeof(XtWidgetProc));
+ myXtWidgetProc = testStruct.composite_class.delete_child;
+ pmyXtWidgetProc = &testStruct.composite_class.delete_child;
+
+ check_size("ShellClassRec.composite_class.extension", "XtPointer", sizeof(testStruct.composite_class.extension), sizeof(XtPointer));
+ myXtPointer = testStruct.composite_class.extension;
+ pmyXtPointer = &testStruct.composite_class.extension;
+
+ check_size("ShellClassRec.shell_class.extension", "XtPointer", sizeof(testStruct.shell_class.extension), sizeof(XtPointer));
+ myXtPointer = testStruct.shell_class.extension;
+ pmyXtPointer = &testStruct.shell_class.extension;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The class record for shell widgets shellClassRec shall
+exist and be an instance of the ShellClassRec
+structure.
+>>CODE
+
+ check_size("shellClassRec.core_class.superclass", "WidgetClass", sizeof(shellClassRec.core_class.superclass), sizeof(WidgetClass));
+ myWidgetClass = shellClassRec.core_class.superclass;
+ pmyWidgetClass = &shellClassRec.core_class.superclass;
+
+ check_size("shellClassRec.core_class.class_name", "String", sizeof(shellClassRec.core_class.class_name), sizeof(String));
+ myString = shellClassRec.core_class.class_name;
+ pmyString = &shellClassRec.core_class.class_name;
+
+ check_size("shellClassRec.core_class.widget_size", "Cardinal", sizeof(shellClassRec.core_class.widget_size), sizeof(Cardinal));
+ myCardinal = shellClassRec.core_class.widget_size;
+ pmyCardinal = &shellClassRec.core_class.widget_size;
+
+ check_size("shellClassRec.core_class.class_initialize", "XtProc", sizeof(shellClassRec.core_class.class_initialize), sizeof(XtProc));
+ myXtProc = shellClassRec.core_class.class_initialize;
+ pmyXtProc = &shellClassRec.core_class.class_initialize;
+
+ check_size("shellClassRec.core_class.class_part_initialize", "XtWidgetClassProc", sizeof(shellClassRec.core_class.class_part_initialize), sizeof(XtWidgetClassProc));
+ myXtWidgetClassProc = shellClassRec.core_class.class_part_initialize;
+ pmyXtWidgetClassProc = &shellClassRec.core_class.class_part_initialize;
+
+ check_size("shellClassRec.core_class.class_inited", "XtEnum", sizeof(shellClassRec.core_class.class_inited), sizeof(XtEnum));
+ myXtEnum = shellClassRec.core_class.class_inited;
+ pmyXtEnum = &shellClassRec.core_class.class_inited;
+
+ check_size("shellClassRec.core_class.initialize", "XtInitProc", sizeof(shellClassRec.core_class.initialize), sizeof(XtInitProc));
+ myXtInitProc = shellClassRec.core_class.initialize;
+ pmyXtInitProc = &shellClassRec.core_class.initialize;
+
+ check_size("shellClassRec.core_class.initialize_hook", "XtArgsProc", sizeof(shellClassRec.core_class.initialize_hook), sizeof(XtArgsProc));
+ myXtArgsProc = shellClassRec.core_class.initialize_hook;
+ pmyXtArgsProc = &shellClassRec.core_class.initialize_hook;
+
+ check_size("shellClassRec.core_class.realize", "XtRealizeProc", sizeof(shellClassRec.core_class.realize), sizeof(XtRealizeProc));
+ myXtRealizeProc = shellClassRec.core_class.realize;
+ pmyXtRealizeProc = &shellClassRec.core_class.realize;
+
+ check_size("shellClassRec.core_class.actions", "XtActionList", sizeof(shellClassRec.core_class.actions), sizeof(XtActionList));
+ myXtActionList = shellClassRec.core_class.actions;
+ pmyXtActionList = &shellClassRec.core_class.actions;
+
+ check_size("shellClassRec.core_class.num_actions", "Cardinal", sizeof(shellClassRec.core_class.num_actions), sizeof(Cardinal));
+ myCardinal = shellClassRec.core_class.num_actions;
+ pmyCardinal = &shellClassRec.core_class.num_actions;
+
+ check_size("shellClassRec.core_class.resources", "XtResourceList", sizeof(shellClassRec.core_class.resources), sizeof(XtResourceList));
+ myXtResourceList = shellClassRec.core_class.resources;
+ pmyXtResourceList = &shellClassRec.core_class.resources;
+
+ check_size("shellClassRec.core_class.num_resources", "Cardinal", sizeof(shellClassRec.core_class.num_resources), sizeof(Cardinal));
+ myCardinal = shellClassRec.core_class.num_resources;
+ pmyCardinal = &shellClassRec.core_class.num_resources;
+
+ check_size("shellClassRec.core_class.xrm_class", "XrmClass", sizeof(shellClassRec.core_class.xrm_class), sizeof(XrmClass));
+ myXrmClass = shellClassRec.core_class.xrm_class;
+ pmyXrmClass = &shellClassRec.core_class.xrm_class;
+
+ check_size("shellClassRec.core_class.compress_motion", "Boolean", sizeof(shellClassRec.core_class.compress_motion), sizeof(Boolean));
+ myBoolean = shellClassRec.core_class.compress_motion;
+ pmyBoolean = &shellClassRec.core_class.compress_motion;
+
+ check_size("shellClassRec.core_class.compress_exposure", "XtEnum", sizeof(shellClassRec.core_class.compress_exposure), sizeof(XtEnum));
+ myXtEnum = shellClassRec.core_class.compress_exposure;
+ pmyXtEnum = &shellClassRec.core_class.compress_exposure;
+
+ check_size("shellClassRec.core_class.compress_enterleave", "Boolean", sizeof(shellClassRec.core_class.compress_enterleave), sizeof(Boolean));
+ myBoolean = shellClassRec.core_class.compress_enterleave;
+ pmyBoolean = &shellClassRec.core_class.compress_enterleave;
+
+ check_size("shellClassRec.core_class.visible_interest", "Boolean", sizeof(shellClassRec.core_class.visible_interest), sizeof(Boolean));
+ myBoolean = shellClassRec.core_class.visible_interest;
+ pmyBoolean = &shellClassRec.core_class.visible_interest;
+
+ check_size("shellClassRec.core_class.destroy", "XtWidgetProc", sizeof(shellClassRec.core_class.destroy), sizeof(XtWidgetProc));
+ myXtWidgetProc = shellClassRec.core_class.destroy;
+ pmyXtWidgetProc = &shellClassRec.core_class.destroy;
+
+ check_size("shellClassRec.core_class.resize", "XtWidgetProc", sizeof(shellClassRec.core_class.resize), sizeof(XtWidgetProc));
+ myXtWidgetProc = shellClassRec.core_class.resize;
+ pmyXtWidgetProc = &shellClassRec.core_class.resize;
+
+ check_size("shellClassRec.core_class.expose", "XtExposeProc", sizeof(shellClassRec.core_class.expose), sizeof(XtExposeProc));
+ myXtExposeProc = shellClassRec.core_class.expose;
+ pmyXtExposeProc = &shellClassRec.core_class.expose;
+
+ check_size("shellClassRec.core_class.set_values", "XtSetValuesFunc", sizeof(shellClassRec.core_class.set_values), sizeof(XtSetValuesFunc));
+ myXtSetValuesFunc = shellClassRec.core_class.set_values;
+ pmyXtSetValuesFunc = &shellClassRec.core_class.set_values;
+
+ check_size("shellClassRec.core_class.set_values_hook", "XtArgsFunc", sizeof(shellClassRec.core_class.set_values_hook), sizeof(XtArgsFunc));
+ myXtArgsFunc = shellClassRec.core_class.set_values_hook;
+ pmyXtArgsFunc = &shellClassRec.core_class.set_values_hook;
+
+ check_size("shellClassRec.core_class.set_values_almost", "XtAlmostProc", sizeof(shellClassRec.core_class.set_values_almost), sizeof(XtAlmostProc));
+ myXtAlmostProc = shellClassRec.core_class.set_values_almost;
+ pmyXtAlmostProc = &shellClassRec.core_class.set_values_almost;
+
+ check_size("shellClassRec.core_class.get_values_hook", "XtArgsProc", sizeof(shellClassRec.core_class.get_values_hook), sizeof(XtArgsProc));
+ myXtArgsProc = shellClassRec.core_class.get_values_hook;
+ pmyXtArgsProc = &shellClassRec.core_class.get_values_hook;
+
+ check_size("shellClassRec.core_class.accept_focus", "XtAcceptFocusProc", sizeof(shellClassRec.core_class.accept_focus), sizeof(XtAcceptFocusProc));
+ myXtAcceptFocusProc = shellClassRec.core_class.accept_focus;
+ pmyXtAcceptFocusProc = &shellClassRec.core_class.accept_focus;
+
+ check_size("shellClassRec.core_class.version", "XtVersionType", sizeof(shellClassRec.core_class.version), sizeof(XtVersionType));
+ myXtVersionType = shellClassRec.core_class.version;
+ pmyXtVersionType = &shellClassRec.core_class.version;
+
+ check_size("shellClassRec.core_class.callback_private", "XtPointer", sizeof(shellClassRec.core_class.callback_private), sizeof(XtPointer));
+ myXtPointer = shellClassRec.core_class.callback_private;
+ pmyXtPointer = &shellClassRec.core_class.callback_private;
+
+ check_size("shellClassRec.core_class.tm_table", "String", sizeof(shellClassRec.core_class.tm_table), sizeof(String));
+ myString = shellClassRec.core_class.tm_table;
+ pmyString = &shellClassRec.core_class.tm_table;
+
+ check_size("shellClassRec.core_class.query_geometry", "XtGeometryHandler", sizeof(shellClassRec.core_class.query_geometry), sizeof(XtGeometryHandler));
+ myXtGeometryHandler = shellClassRec.core_class.query_geometry;
+ pmyXtGeometryHandler = &shellClassRec.core_class.query_geometry;
+
+ check_size("shellClassRec.core_class.display_accelerator", "XtStringProc", sizeof(shellClassRec.core_class.display_accelerator), sizeof(XtStringProc));
+ myXtStringProc = shellClassRec.core_class.display_accelerator;
+ pmyXtStringProc = &shellClassRec.core_class.display_accelerator;
+
+ check_size("shellClassRec.core_class.extension", "XtPointer", sizeof(shellClassRec.core_class.extension), sizeof(XtPointer));
+ myXtPointer = shellClassRec.core_class.extension;
+ pmyXtPointer = &shellClassRec.core_class.extension;
+
+ check_size("shellClassRec.composite_class.geometry_manager", "XtGeometryHandler", sizeof(shellClassRec.composite_class.geometry_manager), sizeof(XtGeometryHandler));
+ myXtGeometryHandler = shellClassRec.composite_class.geometry_manager;
+ pmyXtGeometryHandler = &shellClassRec.composite_class.geometry_manager;
+
+ check_size("shellClassRec.composite_class.change_managed", "XtWidgetProc", sizeof(shellClassRec.composite_class.change_managed), sizeof(XtWidgetProc));
+ myXtWidgetProc = shellClassRec.composite_class.change_managed;
+ pmyXtWidgetProc = &shellClassRec.composite_class.change_managed;
+
+ check_size("shellClassRec.composite_class.insert_child", "XtWidgetProc", sizeof(shellClassRec.composite_class.insert_child), sizeof(XtWidgetProc));
+ myXtWidgetProc = shellClassRec.composite_class.insert_child;
+ pmyXtWidgetProc = &shellClassRec.composite_class.insert_child;
+
+ check_size("shellClassRec.composite_class.delete_child", "XtWidgetProc", sizeof(shellClassRec.composite_class.delete_child), sizeof(XtWidgetProc));
+ myXtWidgetProc = shellClassRec.composite_class.delete_child;
+ pmyXtWidgetProc = &shellClassRec.composite_class.delete_child;
+
+ check_size("shellClassRec.composite_class.extension", "XtPointer", sizeof(shellClassRec.composite_class.extension), sizeof(XtPointer));
+ myXtPointer = shellClassRec.composite_class.extension;
+ pmyXtPointer = &shellClassRec.composite_class.extension;
+
+ check_size("shellClassRec.shell_class.extension", "XtPointer", sizeof(shellClassRec.shell_class.extension), sizeof(XtPointer));
+ myXtPointer = shellClassRec.shell_class.extension;
+ pmyXtPointer = &shellClassRec.shell_class.extension;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The class pointer for shell widgets shellWidgetClass
+shall exist and point to the shell class record.
+>>CODE
+
+ tet_infoline("TEST: shellClass");
+ if (shellWidgetClass != (WidgetClass)&shellClassRec) {
+ sprintf(ebuf, "ERROR: shellWidgetClass does not point to shellClassRec");
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The type ShellWidgetClass shall be defined as a
+pointer to a shell widget class structure.
+>>CODE
+ShellWidgetClass testvar;
+XtPointer testvar2;
+
+ /* this will not build if the define is not correct*/
+ tet_infoline("TEST: ShellWidgetClass");
+ testvar = &shellClassRec;
+ testvar2 = testvar->core_class.superclass;
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The instance structure for shell widgets ShellPart
+shall be defined and contain the fields listed in
+section 6.1.2 of the Specification.
+>>CODE
+ShellPart testStruct;
+
+ check_size("ShellPart.geometry", "String", sizeof(testStruct.geometry), sizeof(String));
+ myString = testStruct.geometry;
+ pmyString = &testStruct.geometry;
+
+ check_size("ShellPart.create_popup_child_proc", "XtCreatePopupChildProc", sizeof(testStruct.create_popup_child_proc), sizeof(XtCreatePopupChildProc));
+ myXtCreatePopupChildProc = testStruct.create_popup_child_proc;
+ pmyXtCreatePopupChildProc = &testStruct.create_popup_child_proc;
+
+ check_size("ShellPart.grab_kind", "XtGrabKind", sizeof(testStruct.grab_kind), sizeof(XtGrabKind));
+ myXtGrabKind = testStruct.grab_kind;
+ pmyXtGrabKind = &testStruct.grab_kind;
+
+ check_size("ShellPart.popped_up", "Boolean", sizeof(testStruct.popped_up), sizeof(Boolean));
+ myBoolean = testStruct.popped_up;
+ pmyBoolean = &testStruct.popped_up;
+
+ check_size("ShellPart.allow_shell_resize", "Boolean", sizeof(testStruct.allow_shell_resize), sizeof(Boolean));
+ myBoolean = testStruct.allow_shell_resize;
+ pmyBoolean = &testStruct.allow_shell_resize;
+
+ check_size("ShellPart.client_specified", "Boolean", sizeof(testStruct.client_specified), sizeof(Boolean));
+ myBoolean = testStruct.client_specified;
+ pmyBoolean = &testStruct.client_specified;
+
+ check_size("ShellPart.save_under", "Boolean", sizeof(testStruct.save_under), sizeof(Boolean));
+ myBoolean = testStruct.save_under;
+ pmyBoolean = &testStruct.save_under;
+
+ check_size("ShellPart.override_redirect", "Boolean", sizeof(testStruct.override_redirect), sizeof(Boolean));
+ myBoolean = testStruct.override_redirect;
+ pmyBoolean = &testStruct.override_redirect;
+
+ check_size("ShellPart.popup_callback", "XtCallbackList", sizeof(testStruct.popup_callback), sizeof(XtCallbackList));
+ myXtCallbackList = testStruct.popup_callback;
+ pmyXtCallbackList = &testStruct.popup_callback;
+
+ check_size("ShellPart.popdown_callback", "XtCallbackList", sizeof(testStruct.popdown_callback), sizeof(XtCallbackList));
+ myXtCallbackList = testStruct.popdown_callback;
+ pmyXtCallbackList = &testStruct.popdown_callback;
+
+ check_size("ShellPart.visual", "Visual *", sizeof(testStruct.visual), sizeof(Visual *));
+ pmyVisual = testStruct.visual;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The instance record structure for shell widgets
+ShellRec shall be defined and contain the fields
+listed in section 6.1.2 of the Specification.
+>>CODE
+ShellRec testStruct;
+
+ check_size("ShellRec.core.self", "Widget", sizeof(testStruct.core.self), sizeof(Widget));
+ myWidget = testStruct.core.self;
+ pmyWidget = &testStruct.core.self;
+
+ check_size("ShellRec.core.widget_class", "WidgetClass", sizeof(testStruct.core.widget_class), sizeof(WidgetClass));
+ myWidgetClass = testStruct.core.widget_class;
+ pmyWidgetClass = &testStruct.core.widget_class;
+
+ check_size("ShellRec.core.parent", "Widget", sizeof(testStruct.core.parent), sizeof(Widget));
+ myWidget = testStruct.core.parent;
+ pmyWidget = &testStruct.core.parent;
+
+ check_size("ShellRec.core.xrm_name", "XrmName", sizeof(testStruct.core.xrm_name), sizeof(XrmName));
+ myXrmName = testStruct.core.xrm_name;
+ pmyXrmName = &testStruct.core.xrm_name;
+
+ check_size("ShellRec.core.being_destroyed", "Boolean", sizeof(testStruct.core.being_destroyed), sizeof(Boolean));
+ myBoolean = testStruct.core.being_destroyed;
+ pmyBoolean = &testStruct.core.being_destroyed;
+
+ check_size("ShellRec.core.destroy_callbacks", "XtCallbackList", sizeof(testStruct.core.destroy_callbacks), sizeof(XtCallbackList));
+ myXtCallbackList = testStruct.core.destroy_callbacks;
+ pmyXtCallbackList = &testStruct.core.destroy_callbacks;
+
+ check_size("ShellRec.core.constraints", "XtPointer", sizeof(testStruct.core.constraints), sizeof(XtPointer));
+ myXtPointer = testStruct.core.constraints;
+ pmyXtPointer = &testStruct.core.constraints;
+
+ check_size("ShellRec.core.border_width", "Dimension", sizeof(testStruct.core.border_width), sizeof(Dimension));
+ myDimension = testStruct.core.border_width;
+ pmyDimension = &testStruct.core.border_width;
+
+ check_size("ShellRec.core.managed", "Boolean", sizeof(testStruct.core.managed), sizeof(Boolean));
+ myBoolean = testStruct.core.managed;
+ pmyBoolean = &testStruct.core.managed;
+
+ check_size("ShellRec.core.sensitive", "Boolean", sizeof(testStruct.core.sensitive), sizeof(Boolean));
+ myBoolean = testStruct.core.sensitive;
+ pmyBoolean = &testStruct.core.sensitive;
+
+ check_size("ShellRec.core.ancestor_sensitive", "Boolean", sizeof(testStruct.core.ancestor_sensitive), sizeof(Boolean));
+ myBoolean = testStruct.core.ancestor_sensitive;
+ pmyBoolean = &testStruct.core.ancestor_sensitive;
+
+ check_size("ShellRec.core.event_table", "XtEventTable", sizeof(testStruct.core.event_table), sizeof(XtEventTable));
+ myXtEventTable = testStruct.core.event_table;
+ pmyXtEventTable = &testStruct.core.event_table;
+
+ check_size("ShellRec.core.tm", "XtTMRec", sizeof(testStruct.core.tm), sizeof(XtTMRec));
+ myXtTMRec = testStruct.core.tm;
+ pmyXtTMRec = &testStruct.core.tm;
+
+ check_size("ShellRec.core.accelerators", "XtTranslations", sizeof(testStruct.core.accelerators), sizeof(XtTranslations));
+ myXtTranslations = testStruct.core.accelerators;
+ pmyXtTranslations = &testStruct.core.accelerators;
+
+ check_size("ShellRec.core.border_pixel", "Pixel", sizeof(testStruct.core.border_pixel), sizeof(Pixel));
+ myPixel = testStruct.core.border_pixel;
+ pmyPixel = &testStruct.core.border_pixel;
+
+ check_size("ShellRec.core.border_pixmap", "Pixmap", sizeof(testStruct.core.border_pixmap), sizeof(Pixmap));
+ myPixmap = testStruct.core.border_pixmap;
+ pmyPixmap = &testStruct.core.border_pixmap;
+
+ check_size("ShellRec.core.popup_list", "WidgetList", sizeof(testStruct.core.popup_list), sizeof(WidgetList));
+ myWidgetList = testStruct.core.popup_list;
+ pmyWidgetList = &testStruct.core.popup_list;
+
+ check_size("ShellRec.core.num_popups", "Cardinal", sizeof(testStruct.core.num_popups), sizeof(Cardinal));
+ myCardinal = testStruct.core.num_popups;
+ pmyCardinal = &testStruct.core.num_popups;
+
+ check_size("ShellRec.core.name", "String", sizeof(testStruct.core.name), sizeof(String));
+ myString = testStruct.core.name;
+ pmyString = &testStruct.core.name;
+
+ check_size("ShellRec.core.screen", "Screen *", sizeof(testStruct.core.screen), sizeof(Screen *));
+ pmyScreen = testStruct.core.screen;
+
+ check_size("ShellRec.core.colormap", "Colormap", sizeof(testStruct.core.colormap), sizeof(Colormap));
+ myColormap = testStruct.core.colormap;
+ pmyColormap = &testStruct.core.colormap;
+
+ check_size("ShellRec.core.window", "Window", sizeof(testStruct.core.window), sizeof(Window));
+ myWindow = testStruct.core.window;
+ pmyWindow = &testStruct.core.window;
+
+ check_size("ShellRec.core.depth", "Cardinal", sizeof(testStruct.core.depth), sizeof(Cardinal));
+ myCardinal = testStruct.core.depth;
+ pmyCardinal = &testStruct.core.depth;
+
+ check_size("ShellRec.core.background_pixel", "Pixel", sizeof(testStruct.core.background_pixel), sizeof(Pixel));
+ myPixel = testStruct.core.background_pixel;
+ pmyPixel = &testStruct.core.background_pixel;
+
+ check_size("ShellRec.core.background_pixmap", "Pixmap", sizeof(testStruct.core.background_pixmap), sizeof(Pixmap));
+ myPixmap = testStruct.core.background_pixmap;
+ pmyPixmap = &testStruct.core.background_pixmap;
+
+ check_size("ShellRec.core.visible", "Boolean", sizeof(testStruct.core.visible), sizeof(Boolean));
+ myBoolean = testStruct.core.visible;
+ pmyBoolean = &testStruct.core.visible;
+
+ check_size("ShellRec.core.mapped_when_managed", "Boolean", sizeof(testStruct.core.mapped_when_managed), sizeof(Boolean));
+ myBoolean = testStruct.core.mapped_when_managed;
+ pmyBoolean = &testStruct.core.mapped_when_managed;
+
+ check_size("ShellRec.composite.children", "WidgetList", sizeof(testStruct.composite.children), sizeof(WidgetList));
+ myWidgetList = testStruct.composite.children;
+ pmyWidgetList = &testStruct.composite.children;
+
+ check_size("ShellRec.composite.num_children", "Cardinal", sizeof(testStruct.composite.num_children), sizeof(Cardinal));
+ myCardinal = testStruct.composite.num_children;
+ pmyCardinal = &testStruct.composite.num_children;
+
+ check_size("ShellRec.composite.num_slots", "Cardinal", sizeof(testStruct.composite.num_slots), sizeof(Cardinal));
+ myCardinal = testStruct.composite.num_slots;
+ pmyCardinal = &testStruct.composite.num_slots;
+
+ check_size("ShellRec.composite.insert_position", "XtOrderProc", sizeof(testStruct.composite.insert_position), sizeof(XtOrderProc));
+ myXtOrderProc = testStruct.composite.insert_position;
+ pmyXtOrderProc = &testStruct.composite.insert_position;
+
+ check_size("ShellRec.shell.geometry", "String", sizeof(testStruct.shell.geometry), sizeof(String));
+ myString = testStruct.shell.geometry;
+ pmyString = &testStruct.shell.geometry;
+
+ check_size("ShellRec.shell.create_popup_child_proc", "XtCreatePopupChildProc", sizeof(testStruct.shell.create_popup_child_proc), sizeof(XtCreatePopupChildProc));
+ myXtCreatePopupChildProc = testStruct.shell.create_popup_child_proc;
+ pmyXtCreatePopupChildProc = &testStruct.shell.create_popup_child_proc;
+
+ check_size("ShellRec.shell.grab_kind", "XtGrabKind", sizeof(testStruct.shell.grab_kind), sizeof(XtGrabKind));
+ myXtGrabKind = testStruct.shell.grab_kind;
+ pmyXtGrabKind = &testStruct.shell.grab_kind;
+
+ check_size("ShellRec.shell.spring_loaded", "Boolean", sizeof(testStruct.shell.spring_loaded), sizeof(Boolean));
+ myBoolean = testStruct.shell.spring_loaded;
+ pmyBoolean = &testStruct.shell.spring_loaded;
+
+ check_size("ShellRec.shell.popped_up", "Boolean", sizeof(testStruct.shell.popped_up), sizeof(Boolean));
+ myBoolean = testStruct.shell.popped_up;
+ pmyBoolean = &testStruct.shell.popped_up;
+
+ check_size("ShellRec.shell.allow_shell_resize", "Boolean", sizeof(testStruct.shell.allow_shell_resize), sizeof(Boolean));
+ myBoolean = testStruct.shell.allow_shell_resize;
+ pmyBoolean = &testStruct.shell.allow_shell_resize;
+
+ check_size("ShellRec.shell.client_specified", "Boolean", sizeof(testStruct.shell.client_specified), sizeof(Boolean));
+ myBoolean = testStruct.shell.client_specified;
+ pmyBoolean = &testStruct.shell.client_specified;
+
+ check_size("ShellRec.shell.save_under", "Boolean", sizeof(testStruct.shell.save_under), sizeof(Boolean));
+ myBoolean = testStruct.shell.save_under;
+ pmyBoolean = &testStruct.shell.save_under;
+
+ check_size("ShellRec.shell.override_redirect", "Boolean", sizeof(testStruct.shell.override_redirect), sizeof(Boolean));
+ myBoolean = testStruct.shell.override_redirect;
+ pmyBoolean = &testStruct.shell.override_redirect;
+
+ check_size("ShellRec.shell.popup_callback", "XtCallbackList", sizeof(testStruct.shell.popup_callback), sizeof(XtCallbackList));
+ myXtCallbackList = testStruct.shell.popup_callback;
+ pmyXtCallbackList = &testStruct.shell.popup_callback;
+
+ check_size("ShellRec.shell.popdown_callback", "XtCallbackList", sizeof(testStruct.shell.popdown_callback), sizeof(XtCallbackList));
+ myXtCallbackList = testStruct.shell.popdown_callback;
+ pmyXtCallbackList = &testStruct.shell.popdown_callback;
+
+ check_size("ShellRec.shell.visual", "Visual *", sizeof(testStruct.shell.visual), sizeof(Visual *));
+ pmyVisual = testStruct.shell.visual;
+
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+The type ShellWidget shall be defined as a pointer to
+a shell widget instance.
+>>CODE
+ShellRec testwid;
+ShellWidget testvar;
+XtPointer testvar2;
+
+ /* this will not build if the define is not correct*/
+ tet_infoline("TEST: ShellWidget");
+ /*doesn't matter where we point, just testing syntax*/
+ testvar = &testwid;
+ testvar2 = testvar->shell.visual;
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+Shell widgets shall be a subclass of composite widgets
+>>CODE
+Widget testwidget;
+
+ tet_infoline("PREP: Initialize toolkit, Open display and Create topLevel root widget");
+ topLevel = (Widget) avs_xt_init("Hshell10", NULL, 0);
+ trace("Set up the XtToolkitError handler");
+ app_ctext = XtWidgetToApplicationContext(topLevel) ;
+ XtAppSetErrorMsgHandler(app_ctext, xt_handler);
+ XtAppSetWarningMsgHandler(app_ctext, xt_whandler);
+ tet_infoline("PREP: Create fresh widget");
+ testwidget = XtCreateWidget("ApTest", shellWidgetClass, topLevel, NULL, 0);
+ tet_infoline("TEST: shell superclass is composite");
+ if (shellClassRec.core_class.superclass != compositeWidgetClass) {
+ tet_infoline("ERROR: superclass is not composite");
+ tet_result(TET_FAIL);
+ }
+ tet_result(TET_PASS);
+>>ASSERTION Good A
+ShellRec shall be initialized to the default values
+specified in sections 3.4.1, 3.4.2 and 6.1.4 of the
+Specification on creation of a new shell widget
+instance.
+>>CODE
+ShellWidget testwidget;
+/* Conversion arguments and results */
+Boolean status;
+Display *display;
+XrmValue args[2];
+Cardinal num_args;
+XrmValue fromVal;
+XrmValue toVal;
+Boolean closure;
+XtPointer *closure_ret = (XtPointer *) &closure;
+/* String to Pixel specific */
+Screen *screen;
+Colormap colormap;
+char *pixstr = "XtDefaultForeground";
+char *pixstr2 = "XtDefaultBackground";
+Pixel res;
+
+ tet_infoline("PREP: Initialize toolkit, Open display and Create topLevel root widget");
+ topLevel = (Widget) avs_xt_init("Hshell11", NULL, 0);
+ trace("Set up the XtToolkitError handler");
+ app_ctext = XtWidgetToApplicationContext(topLevel) ;
+ XtAppSetErrorMsgHandler(app_ctext, xt_handler);
+ XtAppSetWarningMsgHandler(app_ctext, xt_whandler);
+ tet_infoline("PREP: Create fresh widget");
+ testwidget = (ShellWidget)XtCreateWidget("ApTest", shellWidgetClass, topLevel, NULL, 0);
+ tet_infoline("TEST: core.self");
+ if (testwidget->core.self != (Widget)testwidget) {
+ tet_infoline("ERROR: self member is not address of widget structure");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.widget_class");
+ if (testwidget->core.widget_class != shellWidgetClass) {
+ tet_infoline("ERROR: widget_class member is not shellWidgetClass");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.parent");
+ if (testwidget->core.parent != topLevel) {
+ tet_infoline("ERROR: parent member is not address of parent widget structure");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.being_destroyed");
+ if (testwidget->core.being_destroyed != topLevel->core.being_destroyed) {
+ sprintf(ebuf, "ERROR: Expected being_destroyed of %#x, is %#x", topLevel->core.being_destroyed, testwidget->core.being_destroyed);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.destroy_callbacks");
+ if (testwidget->core.destroy_callbacks != NULL) {
+ tet_infoline("ERROR: destroy_callbacks member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.constraints");
+ if (testwidget->core.constraints != NULL) {
+ tet_infoline("ERROR: constraints member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.x");
+ if (testwidget->core.x != 0) {
+ sprintf(ebuf, "ERROR: x member is %d, expected 0", testwidget->core.x);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.y");
+ if (testwidget->core.y != 0) {
+ sprintf(ebuf, "ERROR: y member is %d, expected 0", testwidget->core.y);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.width");
+ if (testwidget->core.width != 0) {
+ sprintf(ebuf, "ERROR: width member is %d, expected 0", testwidget->core.width);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.height");
+ if (testwidget->core.height != 0) {
+ sprintf(ebuf, "ERROR: height member is %d, expected 0", testwidget->core.height);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.border_width");
+ if (testwidget->core.border_width != 1) {
+ sprintf(ebuf, "ERROR: border_width member is %d, expected 1", testwidget->core.border_width);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.managed");
+ if (testwidget->core.managed != False) {
+ sprintf(ebuf, "ERROR: managed member is %d, expected False", testwidget->core.managed);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.sensitive");
+ if (testwidget->core.sensitive != True) {
+ sprintf(ebuf, "ERROR: sensitive member is %d, expected True", testwidget->core.sensitive);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.ancestor_sensitive");
+ if (testwidget->core.ancestor_sensitive != (topLevel->core.sensitive & topLevel->core.ancestor_sensitive)) {
+ sprintf(ebuf, "ERROR: Expected ancestor_sensitive of %#x, is %#x", (topLevel->core.sensitive & topLevel->core.ancestor_sensitive), testwidget->core.ancestor_sensitive);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.accelerators");
+ if (testwidget->core.accelerators != NULL) {
+ tet_infoline("ERROR: accelerators member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.border_pixel");
+ fromVal.addr = pixstr;
+ fromVal.size = strlen(pixstr)+1;
+ toVal.addr = (XtPointer) &res;
+ toVal.size = sizeof(Pixel);
+ status = XtConvertAndStore((Widget)testwidget, XtRString, &fromVal, XtRPixel, &toVal);
+ if (testwidget->core.border_pixel != res) {
+ tet_infoline("ERROR: border_pixel member is not XtDefaultForeground");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.border_pixmap");
+ if (testwidget->core.border_pixmap != XtUnspecifiedPixmap) {
+ sprintf(ebuf, "ERROR: border_pixmap member is %d, expected XtUnspecifiedPixmap", testwidget->core.border_pixmap);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.popup_list");
+ if (testwidget->core.popup_list != NULL) {
+ tet_infoline("ERROR: popup_list member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.num_popups");
+ if (testwidget->core.num_popups != 0) {
+ sprintf(ebuf, "ERROR: num_popups member is %d, expected 0", testwidget->core.num_popups);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.screen");
+ if (testwidget->core.screen != topLevel->core.screen) {
+ sprintf(ebuf, "ERROR: Expected screen of %#x, is %#x", topLevel->core.screen, testwidget->core.screen);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.name");
+ if (strcmp(testwidget->core.name, "ApTest") != 0) {
+ sprintf(ebuf, "ERROR: Expected name of %s, is %s", "ApTest", testwidget->core.name);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.colormap");
+ if (testwidget->core.colormap != topLevel->core.colormap) {
+ sprintf(ebuf, "ERROR: Expected colormap of %#x, is %#x", topLevel->core.colormap, testwidget->core.colormap);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.window");
+ if (testwidget->core.window != NULL) {
+ tet_infoline("ERROR: window member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.depth");
+ if (testwidget->core.depth != topLevel->core.depth) {
+ sprintf(ebuf, "ERROR: Expected depth of %#x, is %#x", topLevel->core.depth, testwidget->core.depth);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.background_pixel");
+ fromVal.addr = pixstr2;
+ fromVal.size = strlen(pixstr2)+1;
+ toVal.addr = (XtPointer) &res;
+ toVal.size = sizeof(Pixel);
+ status = XtConvertAndStore((Widget)testwidget, XtRString, &fromVal, XtRPixel, &toVal);
+ if (testwidget->core.background_pixel != res) {
+ tet_infoline("ERROR: background_pixel member is not XtDefaultBackground");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.background_pixmap");
+ if (testwidget->core.background_pixmap != XtUnspecifiedPixmap) {
+ tet_infoline("ERROR: background_pixmap member is not XtUnspecifiedPixmap");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.visible");
+ if (testwidget->core.visible != True) {
+ sprintf(ebuf, "ERROR: visible member is %d, expected True", testwidget->core.visible);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: core.mapped_when_managed");
+ if (testwidget->core.mapped_when_managed != True) {
+ sprintf(ebuf, "ERROR: mapped_when_managed member is %d, expected True", testwidget->core.mapped_when_managed);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: composite.children");
+ if (testwidget->composite.children != NULL) {
+ tet_infoline("ERROR: children member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: composite.num_children");
+ if (testwidget->composite.num_children != 0) {
+ sprintf(ebuf, "ERROR: num_children member is %d, expected 0", testwidget->composite.num_children);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: composite.num_slots");
+ if (testwidget->composite.num_slots != 0) {
+ sprintf(ebuf, "ERROR: num_slots member is %d, expected 0", testwidget->composite.num_slots);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.geometry");
+ if (testwidget->shell.geometry != NULL) {
+ tet_infoline("ERROR: geometry member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.create_popup_child_proc");
+ if (testwidget->shell.create_popup_child_proc != NULL) {
+ tet_infoline("ERROR: create_popup_child_proc member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.popped_up");
+ if (testwidget->shell.popped_up != False) {
+ sprintf(ebuf, "ERROR: popped_up member is %d, expected False", testwidget->shell.popped_up);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.allow_shell_resize");
+ if (testwidget->shell.allow_shell_resize != False) {
+ sprintf(ebuf, "ERROR: allow_shell_resize member is %d, expected False", testwidget->shell.allow_shell_resize);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.save_under");
+ if (testwidget->shell.save_under != False) {
+ sprintf(ebuf, "ERROR: save_under member is %d, expected False", testwidget->shell.save_under);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.override_redirect");
+ if (testwidget->shell.override_redirect != False) {
+ sprintf(ebuf, "ERROR: override_redirect member is %d, expected False", testwidget->shell.override_redirect);
+ tet_infoline(ebuf);
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.popup_callback");
+ if (testwidget->shell.popup_callback != NULL) {
+ tet_infoline("ERROR: popup_callback member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_infoline("TEST: shell.popdown_callback");
+ if (testwidget->shell.popdown_callback != NULL) {
+ tet_infoline("ERROR: popdown_callback member is not NULL");
+ tet_result(TET_FAIL);
+ }
+ tet_result(TET_PASS);