Blame include/X11/Xmu/WidgetNode.h

Packit Service 2b1f13
/*
Packit Service 2b1f13
Packit Service 2b1f13
Copyright 1990, 1998  The Open Group
Packit Service 2b1f13
Packit Service 2b1f13
Permission to use, copy, modify, distribute, and sell this software and its
Packit Service 2b1f13
documentation for any purpose is hereby granted without fee, provided that
Packit Service 2b1f13
the above copyright notice appear in all copies and that both that
Packit Service 2b1f13
copyright notice and this permission notice appear in supporting
Packit Service 2b1f13
documentation.
Packit Service 2b1f13
Packit Service 2b1f13
The above copyright notice and this permission notice shall be included in
Packit Service 2b1f13
all copies or substantial portions of the Software.
Packit Service 2b1f13
Packit Service 2b1f13
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
Packit Service 2b1f13
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
Packit Service 2b1f13
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
Packit Service 2b1f13
OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
Packit Service 2b1f13
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
Packit Service 2b1f13
CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Packit Service 2b1f13
Packit Service 2b1f13
Except as contained in this notice, the name of The Open Group shall not be
Packit Service 2b1f13
used in advertising or otherwise to promote the sale, use or other dealings
Packit Service 2b1f13
in this Software without prior written authorization from The Open Group.
Packit Service 2b1f13
Packit Service 2b1f13
*/
Packit Service 2b1f13
Packit Service 2b1f13
/*
Packit Service 2b1f13
 * Author:  Jim Fulton, MIT X Consortium
Packit Service 2b1f13
 */
Packit Service 2b1f13
Packit Service 2b1f13
#ifndef _XmuWidgetNode_h
Packit Service 2b1f13
#define _XmuWidgetNode_h
Packit Service 2b1f13
Packit Service 2b1f13
#include <X11/Intrinsic.h>
Packit Service 2b1f13
#include <X11/Xfuncproto.h>
Packit Service 2b1f13
Packit Service 2b1f13
/*
Packit Service 2b1f13
 * This is usually initialized by setting the first two fields and letting
Packit Service 2b1f13
 * rest be implicitly nulled (by genlist.sh, for example)
Packit Service 2b1f13
 */
Packit Service 2b1f13
typedef struct _XmuWidgetNode {
Packit Service 2b1f13
    char *label;			/* mixed case name */
Packit Service 2b1f13
    WidgetClass *widget_class_ptr;	/* addr of widget class */
Packit Service 2b1f13
    struct _XmuWidgetNode *superclass;	/* superclass of widget_class */
Packit Service 2b1f13
    struct _XmuWidgetNode *children, *siblings;	/* subclass links */
Packit Service 2b1f13
    char *lowered_label;		/* lowercase version of label */
Packit Service 2b1f13
    char *lowered_classname;		/* lowercase version of class_name */
Packit Service 2b1f13
    Bool have_resources;		/* resources have been fetched */
Packit Service 2b1f13
    XtResourceList resources;		/* extracted resource database */
Packit Service 2b1f13
    struct _XmuWidgetNode **resourcewn;	/* where resources come from */
Packit Service 2b1f13
    Cardinal nresources;		/* number of resources */
Packit Service 2b1f13
    XtResourceList constraints;		/* extracted constraint resources */
Packit Service 2b1f13
    struct _XmuWidgetNode **constraintwn;  /* where constraints come from */
Packit Service 2b1f13
    Cardinal nconstraints;		/* number of constraint resources */
Packit Service 2b1f13
    XtPointer data;			/* extra data */
Packit Service 2b1f13
} XmuWidgetNode;
Packit Service 2b1f13
Packit Service 2b1f13
#define XmuWnClass(wn) ((wn)->widget_class_ptr[0])
Packit Service 2b1f13
#define XmuWnClassname(wn) (XmuWnClass(wn)->core_class.class_name)
Packit Service 2b1f13
#define XmuWnSuperclass(wn) ((XmuWnClass(wn))->core_class.superclass)
Packit Service 2b1f13
Packit Service 2b1f13
					/* external interfaces */
Packit Service 2b1f13
_XFUNCPROTOBEGIN
Packit Service 2b1f13
Packit Service 2b1f13
void XmuWnInitializeNodes
Packit Service 2b1f13
(
Packit Service 2b1f13
 XmuWidgetNode		*nodearray,
Packit Service 2b1f13
 int			nnodes
Packit Service 2b1f13
 );
Packit Service 2b1f13
Packit Service 2b1f13
void XmuWnFetchResources
Packit Service 2b1f13
(
Packit Service 2b1f13
 XmuWidgetNode		*node,
Packit Service 2b1f13
 Widget			toplevel,
Packit Service 2b1f13
 XmuWidgetNode		*topnode
Packit Service 2b1f13
 );
Packit Service 2b1f13
Packit Service 2b1f13
int XmuWnCountOwnedResources
Packit Service 2b1f13
(
Packit Service 2b1f13
 XmuWidgetNode		*node,
Packit Service 2b1f13
 XmuWidgetNode		*ownernode,
Packit Service 2b1f13
 Bool			constraints
Packit Service 2b1f13
 );
Packit Service 2b1f13
Packit Service 2b1f13
XmuWidgetNode *XmuWnNameToNode
Packit Service 2b1f13
(
Packit Service 2b1f13
 XmuWidgetNode		*nodelist,
Packit Service 2b1f13
 int			nnodes,
Packit Service 2b1f13
 _Xconst char		*name
Packit Service 2b1f13
 );
Packit Service 2b1f13
Packit Service 2b1f13
_XFUNCPROTOEND
Packit Service 2b1f13
Packit Service 2b1f13
#endif /* _XmuWidgetNode_h */
Packit Service 2b1f13