/* * Motif * * Copyright (c) 1987-2012, The Open Group. All rights reserved. * * These libraries and programs are free software; you can * redistribute them and/or modify them under the terms of the GNU * Lesser General Public License as published by the Free Software * Foundation; either version 2 of the License, or (at your option) * any later version. * * These libraries and programs are distributed in the hope that * they will be useful, but WITHOUT ANY WARRANTY; without even the * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the GNU Lesser General Public License for more * details. * * You should have received a copy of the GNU Lesser General Public * License along with these librararies and programs; if not, write * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth * Floor, Boston, MA 02110-1301 USA */ /* * HISTORY */ #ifdef REV_INFO #ifndef lint static char rcsid[] = "$XConsortium: AutoWrappers.c /main/11 1995/07/14 11:29:16 drk $" #endif #endif #include #include "mvslib.h" #include "xislib.h" #include "Automation.h" #include #include #include extern MvsWidgetInfoRecord *Shell_info; Boolean HaveScrolledWindow = False; /* Variable to note creation of Scrolled Window for ClickKey events with Clip Winodw */ static Widget CreateWidget( Widget p, char *name, ArgList args, Cardinal n, MvsWidgetClassInfo *class); static Widget CreateWidget( Widget p, char *name, ArgList args, Cardinal n, MvsWidgetClassInfo *class ) { MvsWidgetInfoRecord *w_info = NULL; MvsWidgetInfoRecord *widget_info = NULL; w_info = mvsWidgetToWidgetInfo(p); if (w_info == NULL) AutoMessage(_AutoMessages[WARNMSG7]); widget_info = mvsCreateWidget(class, w_info, name, DontUseCommonArgs, args, n, NULL); return(widget_info->widget); } Widget ArrowButtonCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmArrowButtonWidgetClass)); } Widget ArrowButtonGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmArrowButtonGadgetClass)); } Widget BulletinBoardCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmBulletinBoardWidgetClass)); } Widget BulletinBoardDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmBulletinBoardDialogWidgetClass)); } Widget CascadeButtonCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmCascadeButtonWidgetClass)); } Widget CascadeButtonGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmCascadeButtonGadgetClass)); } Widget ComboBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmComboBoxWidgetClass)); } Widget DropDownComboBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmDropDownComboBoxWidgetClass)); } Widget DropDownListComboBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmDropDownListComboBoxWidgetClass)); } Widget NotebookCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmNotebookWidgetClass)); } Widget SpinBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmSpinBoxWidgetClass)); } Widget ContainerCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmContainerWidgetClass)); } Widget IconGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmIconGadgetClass)); } Widget CommandCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmCommandWidgetClass)); } Widget DialogShellCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmDialogShellWidgetClass)); } Widget DrawingAreaCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmDrawingAreaWidgetClass)); } Widget DrawnButtonCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmDrawnButtonWidgetClass)); } Widget ErrorDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmErrorDialogWidgetClass)); } Widget FileSelectionBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmFileSelectionBoxWidgetClass)); } Widget FileSelectionDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmFileSelectionDialogWidgetClass)); } Widget FormCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmFormWidgetClass)); } Widget FormDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmFormDialogWidgetClass)); } Widget FrameCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmFrameWidgetClass)); } Widget InformationDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmInformationDialogWidgetClass)); } Widget LabelCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmLabelWidgetClass)); } Widget LabelGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmLabelGadgetClass)); } Widget ListCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmListWidgetClass)); } Widget MainWindowCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmMainWindowWidgetClass)); } Widget MenuBarCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmMenuBarWidgetClass)); } Widget MenuShellCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmMenuShellWidgetClass)); } Widget MessageBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmMessageBoxWidgetClass)); } Widget MessageDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmMessageDialogWidgetClass)); } Widget OptionMenuCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmOptionMenuWidgetClass)); } Widget PanedWindowCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPanedWindowWidgetClass)); } Widget PopupMenuCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPopupMenuWidgetClass)); } Widget PromptDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPromptDialogWidgetClass)); } Widget PulldownMenuCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPulldownMenuWidgetClass)); } Widget PushButtonCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPushButtonWidgetClass)); } Widget PushButtonGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmPushButtonGadgetClass)); } Widget QuestionDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmQuestionDialogWidgetClass)); } Widget RadioBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmRadioBoxWidgetClass)); } Widget RowColumnCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmRowColumnWidgetClass)); } Widget ScaleCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmScaleWidgetClass)); } Widget ScrollBarCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmScrollBarWidgetClass)); } Widget ScrolledListCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmScrolledListWidgetClass)); } Widget ScrolledTextCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmScrolledTextWidgetClass)); } Widget ScrolledWindowCreate( Widget p, char *name, ArgList args, Cardinal n ) { HaveScrolledWindow = True; return(CreateWidget(p, name, args, n, iXmScrolledWindowWidgetClass)); } Widget SelectionBoxCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmSelectionBoxWidgetClass)); } Widget SelectionDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmSelectionDialogWidgetClass)); } Widget SeparatorCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmSeparatorWidgetClass)); } Widget SeparatorGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmSeparatorGadgetClass)); } Widget TemplateDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmTemplateDialogWidgetClass)); } Widget TextCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmTextWidgetClass)); } Widget TextFieldCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmTextFieldWidgetClass)); } Widget ToggleButtonCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmToggleButtonWidgetClass)); } Widget ToggleButtonGadgetCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmToggleButtonGadgetClass)); } Widget WarningDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmWarningDialogWidgetClass)); } Widget WorkingDialogCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmWorkingDialogWidgetClass)); } Widget WorkAreaCreate( Widget p, char *name, ArgList args, Cardinal n ) { return(CreateWidget(p, name, args, n, iXmWorkAreaWidgetClass)); } Widget PopupShellCreate( String name, WidgetClass widget_class, Widget parent, ArgList args, Cardinal num_args ) { MvsWidgetInfoRecord *w_info = NULL; MvsWidgetInfoRecord *widget_info = NULL; w_info = mvsWidgetToWidgetInfo(parent); if (w_info == NULL) AutoMessage(_AutoMessages[WARNMSG8]); widget_info = mvsCreateWidget(iXmPopupShellWidgetClass, w_info, name, DontUseCommonArgs, args, num_args, widget_class); return(widget_info->widget); } Widget AppShellCreate( String app_name, String app_class, WidgetClass widget_class, Display *display_in, ArgList args, Cardinal num_args ) { MvsWidgetInfoRecord *widget_info = NULL; MvsWidgetInfoRecord *mvsRootWidgetInfo2 = NULL; mvsRootWidgetInfo2 = mvsInitRootWidgetInfo(); widget_info = mvsCreateWidget(iXmApplicationShellWidgetClass, mvsRootWidgetInfo2, app_name, DontUseCommonArgs, args, num_args, widget_class); return(widget_info->widget); } void AppMainLoop( XtAppContext app ) { /* Only will be called if CommonPause does not clean up */ AutoParseAndGenerateCommands(); AutoExit(); } void SetValues( register Widget w, ArgList args, Cardinal num_args ) { MvsWidgetInfoRecord *w_info = NULL; w_info = mvsWidgetToWidgetInfo(w); if (w_info == NULL && w == NULL) AutoMessage(_AutoMessages[WARNMSG9]); if (w != NULL && w_info == NULL) { XtSetValues(w, args, num_args); xisProcessObjects(); xisUpdateObjectAttributes(); } else mvsSetValues(w_info, args, num_args); } void DestroyWidget( Widget widget ) { WidgetClass widget_class, parent_class; Widget parent; MvsWidgetInfoRecord *w_info = NULL; /* if widget is a XmSeparatorGadget and the parent * is a XmScale, do nothing - we never saved info * about the XmSeparatorGadget children beause we don't * need to */ widget_class = XtClass(widget); parent = XtParent(widget); parent_class = XtClass(parent); if (((strcmp (widget_class->core_class.class_name, "XmSeparatorGadget")) != 0) && ((strcmp (parent_class->core_class.class_name, "XmScale")) != 0)) { w_info = mvsWidgetToWidgetInfo(widget); if (w_info == NULL) AutoMessage(_AutoMessages[WARNMSG10]); mvsDestroyWidget(w_info, DontCheckCallbacks); } else return; }