|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* Motif
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* Copyright (c) 1987-2012, The Open Group. All rights reserved.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are free software; you can
|
|
Packit |
b099d7 |
* redistribute them and/or modify them under the terms of the GNU
|
|
Packit |
b099d7 |
* Lesser General Public License as published by the Free Software
|
|
Packit |
b099d7 |
* Foundation; either version 2 of the License, or (at your option)
|
|
Packit |
b099d7 |
* any later version.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* These libraries and programs are distributed in the hope that
|
|
Packit |
b099d7 |
* they will be useful, but WITHOUT ANY WARRANTY; without even the
|
|
Packit |
b099d7 |
* implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
Packit |
b099d7 |
* PURPOSE. See the GNU Lesser General Public License for more
|
|
Packit |
b099d7 |
* details.
|
|
Packit |
b099d7 |
*
|
|
Packit |
b099d7 |
* You should have received a copy of the GNU Lesser General Public
|
|
Packit |
b099d7 |
* License along with these librararies and programs; if not, write
|
|
Packit |
b099d7 |
* to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
|
|
Packit |
b099d7 |
* Floor, Boston, MA 02110-1301 USA
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
/*
|
|
Packit |
b099d7 |
* HISTORY
|
|
Packit |
b099d7 |
*/
|
|
Packit |
b099d7 |
#ifdef REV_INFO
|
|
Packit |
b099d7 |
#ifndef lint
|
|
Packit |
b099d7 |
static char rcsid[] = "$XConsortium: GetClassCode.c /main/9 1995/07/14 11:16:01 drk $"
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
/***********************************************************************
|
|
Packit |
b099d7 |
@(#)GetClassCode.c 1.6.1.1 Date:1/22/91
|
|
Packit |
b099d7 |
Author: TAT
|
|
Packit |
b099d7 |
History:
|
|
Packit |
b099d7 |
05/21/90 SJS add to SCCS
|
|
Packit |
b099d7 |
06/05/90 SJS fix #define usage of DialogShell class
|
|
Packit |
b099d7 |
06/19/90 SJS add in ToggleB & ToggleBG classes
|
|
Packit |
b099d7 |
08/15/90 PSN added missing class & fixed for checking end condition
|
|
Packit |
b099d7 |
Calls:
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Summary:
|
|
Packit |
b099d7 |
Returns an integer code representation of the class that
|
|
Packit |
b099d7 |
corresponds to all the mvs class codes defined in mvslib.h.
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
INPUTS
|
|
Packit |
b099d7 |
widget - the widget to return the class code of
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
OUTPUTS
|
|
Packit |
b099d7 |
none
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
RETURNS
|
|
Packit |
b099d7 |
class code
|
|
Packit |
b099d7 |
************************************************************************/
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#include "mvslib.h"
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#include <X11/Shell.h>
|
|
Packit |
b099d7 |
#include <X11/Vendor.h>
|
|
Packit |
b099d7 |
#include <X11/Xproto.h>
|
|
Packit |
b099d7 |
#include <Xm/ArrowB.h>
|
|
Packit |
b099d7 |
#include <Xm/ArrowBG.h>
|
|
Packit |
b099d7 |
#include <Xm/BulletinB.h>
|
|
Packit |
b099d7 |
#include <Xm/CascadeB.h>
|
|
Packit |
b099d7 |
#include <Xm/CascadeBG.h>
|
|
Packit |
b099d7 |
#include <Xm/ComboBox.h>
|
|
Packit |
b099d7 |
#include <Xm/Command.h>
|
|
Packit |
b099d7 |
#include <Xm/Container.h>
|
|
Packit |
b099d7 |
#include <Xm/CutPaste.h>
|
|
Packit |
b099d7 |
#include <Xm/DialogS.h>
|
|
Packit |
b099d7 |
#include <Xm/DrawingA.h>
|
|
Packit |
b099d7 |
#include <Xm/DrawnB.h>
|
|
Packit |
b099d7 |
#include <Xm/FileSB.h>
|
|
Packit |
b099d7 |
#include <Xm/Form.h>
|
|
Packit |
b099d7 |
#include <Xm/Frame.h>
|
|
Packit |
b099d7 |
#include <Xm/IconG.h>
|
|
Packit |
b099d7 |
#include <Xm/Label.h>
|
|
Packit |
b099d7 |
#include <Xm/LabelG.h>
|
|
Packit |
b099d7 |
#include <Xm/List.h>
|
|
Packit |
b099d7 |
#include <Xm/MainW.h>
|
|
Packit |
b099d7 |
#include <Xm/MenuShell.h>
|
|
Packit |
b099d7 |
#include <Xm/MessageB.h>
|
|
Packit |
b099d7 |
#include <Xm/Notebook.h>
|
|
Packit |
b099d7 |
#include <Xm/PanedW.h>
|
|
Packit |
b099d7 |
#include <Xm/ProtocolsP.h> /* Possible non-portability */
|
|
Packit |
b099d7 |
#include <Xm/PushB.h>
|
|
Packit |
b099d7 |
#include <Xm/PushBG.h>
|
|
Packit |
b099d7 |
#include <Xm/RowColumn.h>
|
|
Packit |
b099d7 |
#include <Xm/SashP.h> /* Possible non-portability */
|
|
Packit |
b099d7 |
#include <Xm/Scale.h>
|
|
Packit |
b099d7 |
#include <Xm/ScrollBar.h>
|
|
Packit |
b099d7 |
#include <Xm/ScrolledW.h>
|
|
Packit |
b099d7 |
#include <Xm/SelectioB.h>
|
|
Packit |
b099d7 |
#include <Xm/SeparatoG.h>
|
|
Packit |
b099d7 |
#include <Xm/Separator.h>
|
|
Packit |
b099d7 |
#include <Xm/SpinB.h>
|
|
Packit |
b099d7 |
#include <Xm/Text.h>
|
|
Packit |
b099d7 |
#include <Xm/TextF.h>
|
|
Packit |
b099d7 |
#include <Xm/ToggleB.h>
|
|
Packit |
b099d7 |
#include <Xm/ToggleBG.h>
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifndef MOTIF1_1
|
|
Packit |
b099d7 |
#include <Xm/DesktopP.h>
|
|
Packit |
b099d7 |
#include <Xm/Screen.h>
|
|
Packit |
b099d7 |
#include <Xm/ShellEP.h>
|
|
Packit |
b099d7 |
#include <Xm/VendorSEP.h>
|
|
Packit |
b099d7 |
#include <Xm/TearOffBP.h>
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
#include <Xm/VendorE.h>
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* NOTE: The following list must correspond EXACTLY with the mvs class codes
|
|
Packit |
b099d7 |
in mvslib.h */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
static WidgetClass *mvsWidgetClass[] = {
|
|
Packit |
b099d7 |
/* 0 */ &vendorShellWidgetClass,
|
|
Packit |
b099d7 |
/* 1 */ &xmArrowButtonWidgetClass,
|
|
Packit |
b099d7 |
/* 2 */ &xmArrowButtonGadgetClass,
|
|
Packit |
b099d7 |
/* 3 */ &xmBulletinBoardWidgetClass,
|
|
Packit |
b099d7 |
/* 4 */ &xmCascadeButtonWidgetClass,
|
|
Packit |
b099d7 |
/* 5 */ &xmCascadeButtonGadgetClass,
|
|
Packit |
b099d7 |
/* 6 */ &xmCommandWidgetClass,
|
|
Packit |
b099d7 |
#ifdef MOTIF1_1
|
|
Packit |
b099d7 |
/* 7 */ &xmDesktopObjectClass,
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
/* 7 */ &xmDesktopClass,
|
|
Packit |
b099d7 |
#endif /* MOTIF1_1 */
|
|
Packit |
b099d7 |
/* 8 */ &xmDrawingAreaWidgetClass,
|
|
Packit |
b099d7 |
/* 9 */ &xmDrawnButtonWidgetClass,
|
|
Packit |
b099d7 |
/* 10 */ &xmDialogShellWidgetClass,
|
|
Packit |
b099d7 |
/* 11 */ &xmExtObjectClass,
|
|
Packit |
b099d7 |
/* 12 */ &xmFileSelectionBoxWidgetClass,
|
|
Packit |
b099d7 |
/* 13 */ &xmFormWidgetClass,
|
|
Packit |
b099d7 |
/* 14 */ &xmFrameWidgetClass,
|
|
Packit |
b099d7 |
/* 15 */ &xmGadgetClass,
|
|
Packit |
b099d7 |
/* 16 */ &xmLabelWidgetClass,
|
|
Packit |
b099d7 |
/* 17 */ &xmLabelGadgetClass,
|
|
Packit |
b099d7 |
/* 18 */ &xmListWidgetClass,
|
|
Packit |
b099d7 |
/* 19 */ &xmMainWindowWidgetClass,
|
|
Packit |
b099d7 |
/* 20 */ &xmManagerWidgetClass,
|
|
Packit |
b099d7 |
/* 21 */ &xmMenuShellWidgetClass,
|
|
Packit |
b099d7 |
/* 22 */ &xmMessageBoxWidgetClass,
|
|
Packit |
b099d7 |
/* 23 */ &xmPanedWindowWidgetClass,
|
|
Packit |
b099d7 |
/* 24 */ &xmPrimitiveWidgetClass,
|
|
Packit |
b099d7 |
/* 25 */ &xmProtocolObjectClass,
|
|
Packit |
b099d7 |
/* 26 */ &xmPushButtonGadgetClass,
|
|
Packit |
b099d7 |
/* 27 */ &xmRowColumnWidgetClass,
|
|
Packit |
b099d7 |
/* 28 */ &xmSashWidgetClass,
|
|
Packit |
b099d7 |
/* 29 */ &xmScaleWidgetClass,
|
|
Packit |
b099d7 |
#ifdef MOTIF1_1
|
|
Packit |
b099d7 |
/* 30 */ &xmScreenObjectClass,
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
/* 30 */ &xmScreenClass,
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
/* 31 */ &xmScrollBarWidgetClass,
|
|
Packit |
b099d7 |
/* 32 */ &xmScrolledWindowWidgetClass,
|
|
Packit |
b099d7 |
/* 33 */ &xmSelectionBoxWidgetClass,
|
|
Packit |
b099d7 |
/* 34 */ &xmSeparatorGadgetClass,
|
|
Packit |
b099d7 |
/* 35 */ &xmSeparatorWidgetClass,
|
|
Packit |
b099d7 |
/* 36 */ &xmShellExtObjectClass,
|
|
Packit |
b099d7 |
/* 37 */ &xmTextWidgetClass,
|
|
Packit |
b099d7 |
/* 38 */ &xmTextFieldWidgetClass,
|
|
Packit |
b099d7 |
/* 39 */ &xmToggleButtonWidgetClass,
|
|
Packit |
b099d7 |
/* 40 */ &xmToggleButtonGadgetClass,
|
|
Packit |
b099d7 |
/* 41 */ &xmVendorShellExtObjectClass,
|
|
Packit |
b099d7 |
/* 42 */ &applicationShellWidgetClass,
|
|
Packit |
b099d7 |
/* 43 */ &compositeWidgetClass,
|
|
Packit |
b099d7 |
/* 44 */ &coreWidgetClass,
|
|
Packit |
b099d7 |
/* 45 */ &objectClass,
|
|
Packit |
b099d7 |
/* 46 */ &overrideShellWidgetClass,
|
|
Packit |
b099d7 |
/* 47 */ &rectObjClass,
|
|
Packit |
b099d7 |
/* 48 */ &shellWidgetClass,
|
|
Packit |
b099d7 |
/* 49 */ &topLevelShellWidgetClass,
|
|
Packit |
b099d7 |
/* 50 */ &transientShellWidgetClass,
|
|
Packit |
b099d7 |
/* 51 */ &wmShellWidgetClass,
|
|
Packit |
b099d7 |
/* 52 */ &xmPushButtonWidgetClass,
|
|
Packit |
b099d7 |
#ifndef MOTIF1_1
|
|
Packit |
b099d7 |
/* 53 */ &xmTearOffButtonWidgetClass,
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
/* 53 */ &xmPushButtonWidgetClass, /* Placeholder for 1.1 */
|
|
Packit |
b099d7 |
#endif /* MOTIF1_1 */
|
|
Packit |
b099d7 |
/* 54 */ &xmComboBoxWidgetClass,
|
|
Packit |
b099d7 |
/* 55 */ &xmContainerWidgetClass,
|
|
Packit |
b099d7 |
/* 56 */ &xmIconGadgetClass,
|
|
Packit |
b099d7 |
/* 57 */ &xmNotebookWidgetClass,
|
|
Packit |
b099d7 |
/* 58 */ &xmSpinBoxWidgetClass,
|
|
Packit |
b099d7 |
/* 58 */ (WidgetClass *)NULL
|
|
Packit |
b099d7 |
};
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
int mvsGetClassCode(widget)
|
|
Packit |
b099d7 |
Widget widget;
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
int i;
|
|
Packit |
b099d7 |
WidgetClass widget_class = XtClass(widget);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
for (i=0; i
|
|
Packit |
b099d7 |
if (widget_class == *(mvsWidgetClass[i]))
|
|
Packit |
b099d7 |
break;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
return(i);
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
} /* End mvsGetClassCode() */
|