|
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 |
/* $XConsortium: PrimitiveP.h /main/10 1996/03/28 15:59:54 daniel $ */
|
|
Packit |
b099d7 |
/* (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
|
|
Packit |
b099d7 |
/* (c) Copyright 1989, 1990 DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. */
|
|
Packit |
b099d7 |
/* (c) Copyright 1988 MASSACHUSETTS INSTITUTE OF TECHNOLOGY */
|
|
Packit |
b099d7 |
#ifndef _XmPrimitiveP_h
|
|
Packit |
b099d7 |
#define _XmPrimitiveP_h
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifndef _XmNO_BC_INCL
|
|
Packit |
b099d7 |
#define _XmNO_BC_INCL
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#include <Xm/XmP.h>
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
extern "C" {
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* Access Macros */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define Prim_ShadowThickness(w) (((XmPrimitiveWidget)(w))->primitive.shadow_thickness)
|
|
Packit |
b099d7 |
#define Prim_HaveTraversal(w) (((XmPrimitiveWidget)(w))->primitive.have_traversal)
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define PCEPTR(wc) ((XmPrimitiveClassExt *)(&(((XmPrimitiveWidgetClass)(wc))->primitive_class.extension)))
|
|
Packit |
b099d7 |
#define _XmGetPrimitiveClassExtPtr(wc, owner) \
|
|
Packit |
b099d7 |
((*PCEPTR(wc) && (((*PCEPTR(wc))->record_type) == owner))\
|
|
Packit |
b099d7 |
? PCEPTR(wc) \
|
|
Packit |
b099d7 |
:((XmPrimitiveClassExt *) _XmGetClassExtensionPtr(((XmGenericClassExt *)PCEPTR(wc)), owner)))
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#define XmPrimitiveClassExtVersion 1L
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmPrimitiveClassExtRec{
|
|
Packit |
b099d7 |
XtPointer next_extension;
|
|
Packit |
b099d7 |
XrmQuark record_type;
|
|
Packit |
b099d7 |
long version;
|
|
Packit |
b099d7 |
Cardinal record_size;
|
|
Packit |
b099d7 |
XmWidgetBaselineProc widget_baseline;
|
|
Packit |
b099d7 |
XmWidgetDisplayRectProc widget_display_rect;
|
|
Packit |
b099d7 |
XmWidgetMarginsProc widget_margins;
|
|
Packit |
b099d7 |
} XmPrimitiveClassExtRec, *XmPrimitiveClassExt;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmPrimitiveClassPart
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
XtWidgetProc border_highlight;
|
|
Packit |
b099d7 |
XtWidgetProc border_unhighlight;
|
|
Packit |
b099d7 |
String translations;
|
|
Packit |
b099d7 |
XtActionProc arm_and_activate;
|
|
Packit |
b099d7 |
XmSyntheticResource * syn_resources;
|
|
Packit |
b099d7 |
int num_syn_resources;
|
|
Packit |
b099d7 |
XtPointer extension;
|
|
Packit |
b099d7 |
} XmPrimitiveClassPart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmPrimitiveClassRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
CoreClassPart core_class;
|
|
Packit |
b099d7 |
XmPrimitiveClassPart primitive_class;
|
|
Packit |
b099d7 |
} XmPrimitiveClassRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
externalref XmPrimitiveClassRec xmPrimitiveClassRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* The Primitive instance record */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmPrimitivePart
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
Pixel foreground;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Dimension shadow_thickness;
|
|
Packit |
b099d7 |
Pixel top_shadow_color;
|
|
Packit |
b099d7 |
Pixmap top_shadow_pixmap;
|
|
Packit |
b099d7 |
Pixel bottom_shadow_color;
|
|
Packit |
b099d7 |
Pixmap bottom_shadow_pixmap;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Dimension highlight_thickness;
|
|
Packit |
b099d7 |
Pixel highlight_color;
|
|
Packit |
b099d7 |
Pixmap highlight_pixmap;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtCallbackList help_callback;
|
|
Packit |
b099d7 |
XtPointer user_data;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Boolean traversal_on;
|
|
Packit |
b099d7 |
Boolean highlight_on_enter;
|
|
Packit |
b099d7 |
Boolean have_traversal;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
unsigned char unit_type;
|
|
Packit |
b099d7 |
XmNavigationType navigation_type;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
Boolean highlight_drawn;
|
|
Packit |
b099d7 |
Boolean highlighted;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
GC highlight_GC;
|
|
Packit |
b099d7 |
GC top_shadow_GC;
|
|
Packit |
b099d7 |
GC bottom_shadow_GC;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
/* New fields in Motif 2.0 */
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifndef XM_PART_BC
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XtCallbackList convert_callback; /* Selection convert callback */
|
|
Packit |
b099d7 |
XtCallbackList popup_handler_callback;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
XmDirection layout_direction;
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
#ifdef OM22_COMPATIBILITY
|
|
Packit |
b099d7 |
XmString tool_tip_string;
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
} XmPrimitivePart;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef XM_PART_BC
|
|
Packit |
b099d7 |
extern XmDirection XmPrimLayoutDir ;
|
|
Packit |
b099d7 |
#define XmPrim_layout_direction(w) (XmPrimLayoutDir)
|
|
Packit |
b099d7 |
#else
|
|
Packit |
b099d7 |
#define XmPrim_layout_direction(w) ((w)->primitive.layout_direction)
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
typedef struct _XmPrimitiveRec
|
|
Packit |
b099d7 |
{
|
|
Packit |
b099d7 |
CorePart core;
|
|
Packit |
b099d7 |
XmPrimitivePart primitive;
|
|
Packit |
b099d7 |
} XmPrimitiveRec;
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#ifdef __cplusplus
|
|
Packit |
b099d7 |
} /* Close scope of 'extern "C"' declaration which encloses file. */
|
|
Packit |
b099d7 |
#endif
|
|
Packit |
b099d7 |
|
|
Packit |
b099d7 |
#endif /* _XmPrimitiveP_h */
|
|
Packit |
b099d7 |
/* DON'T ADD ANYTHING AFTER THIS #endif */
|