Annotation of researchv9/X11/src/X.V11R1/lib/oldXtk/Geometry.c, revision 1.1

1.1     ! root        1: /* $Header: Geometry.c,v 1.1 87/09/11 07:57:54 toddb Exp $ */
        !             2: #ifndef lint
        !             3: static char *sccsid = "@(#)Geometry.c  1.7     2/25/87";
        !             4: #endif lint
        !             5: 
        !             6: /*
        !             7:  * Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
        !             8:  * 
        !             9:  *                         All Rights Reserved
        !            10:  * 
        !            11:  * Permission to use, copy, modify, and distribute this software and its 
        !            12:  * documentation for any purpose and without fee is hereby granted, 
        !            13:  * provided that the above copyright notice appear in all copies and that
        !            14:  * both that copyright notice and this permission notice appear in 
        !            15:  * supporting documentation, and that the name of Digital Equipment
        !            16:  * Corporation not be used in advertising or publicity pertaining to
        !            17:  * distribution of the software without specific, written prior permission.  
        !            18:  * 
        !            19:  * 
        !            20:  * DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
        !            21:  * ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
        !            22:  * DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
        !            23:  * ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
        !            24:  * WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
        !            25:  * ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
        !            26:  * SOFTWARE.
        !            27:  */
        !            28: 
        !            29: 
        !            30: /* File: Geometry.c */
        !            31: 
        !            32: #include "Xlib.h"
        !            33: #include "Intrinsic.h"
        !            34: 
        !            35: /* Private  Definitions */
        !            36: 
        !            37: static XContext geometryContext;
        !            38: 
        !            39: static Boolean initialized = FALSE;
        !            40: 
        !            41: extern void GeometryInitialize()
        !            42: {
        !            43:     if (initialized)
        !            44:        return;
        !            45:     initialized = TRUE;
        !            46: 
        !            47:     geometryContext = XUniqueContext();
        !            48: }
        !            49: 
        !            50: /* Public routines */
        !            51: 
        !            52: /*
        !            53:  * The "normal" case is for the geometry manager to be associated with a
        !            54:  * windows parent. This code currently looks for an association on the passed
        !            55:  * window then it's parent. In the real version of this code the request
        !            56:  * should propagate up the tree. Note that parent windows may not be in the
        !            57:  * requesting windows address space and the propagation will require a server
        !            58:  * dialog.
        !            59:  */
        !            60: 
        !            61: XtGeometryReturnCode XtMakeGeometryRequest
        !            62:                             (dpy, window, request, requestBox, replyBox)
        !            63:     Display            *dpy;
        !            64:     Window                     window;
        !            65:     XtGeometryRequest   request;
        !            66:     WindowBox          *requestBox, *replyBox;
        !            67: {
        !            68:     XtGeometryHandler proc;
        !            69:     int error;
        !            70: 
        !            71:     error  = XFindContext (dpy, window, geometryContext, (caddr_t *) &proc);
        !            72:     if (error == XCNOENT)
        !            73:        return(XtgeometryNoManager);
        !            74:     return ((*(proc)) (dpy, window, request, requestBox, replyBox));
        !            75: }
        !            76: 
        !            77: /*
        !            78:  * Register a geometry routine with the toolkit dispatcher.
        !            79:  */
        !            80: 
        !            81: XtStatus XtSetGeometryHandler (dpy, w, proc)
        !            82:     Display          *dpy;
        !            83:     Window           w;
        !            84:     XtGeometryHandler proc;
        !            85: {
        !            86:     return (XSaveContext (dpy, w, geometryContext, (caddr_t) proc));
        !            87: }
        !            88: 
        !            89: /*
        !            90:  * Return the geometry procedure associated with a widget.
        !            91:  */
        !            92: 
        !            93: XtStatus XtGetGeometryHandler (dpy, w, proc)
        !            94:     Display          *dpy;
        !            95:     Window           w;
        !            96:     XtGeometryHandler *proc;
        !            97: {
        !            98:     return (XFindContext(dpy, w, geometryContext, (caddr_t *) proc));
        !            99: }
        !           100: 
        !           101: /*
        !           102:  * Delete the geometry routine's entry in the toolkit dispatcher.
        !           103:  */
        !           104: 
        !           105: XtStatus XtClearGeometryHandler (dpy, w)
        !           106: Display *dpy;
        !           107: Window w;
        !           108: {
        !           109:     return(XDeleteContext (dpy, w, geometryContext));
        !           110: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.