Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XtMakGReq(Xt) — OpenDesktop Software Development System 3.0.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought


 XtMakeGeometryRequest(Xt)      6 January 1993      XtMakeGeometryRequest(Xt)
                          X Version 11 (Release 5)


 Name

    XtMakeGeometryRequest - make geometry manager request

 Syntax


    XtGeometryResult XtMakeGeometryRequest(w, request, reply_return)
    Widget w;
    XtWidgetGeometry *request;
    XtWidgetGeometry *reply_return;

    XtGeometryResult XtMakeResizeRequest(w, width, height, width_return,
                                         height_return)
    Widget w;
    Dimension width, height;
    Dimension *width_return, *height_return


 Arguments

    replyreturn
              Returns the allowed widget size or may be NULL if the
              requesting widget is not interested in handling XtGeometryAl-
              most.

    request   Specifies the desired widget geometry (size, position, border
              width, and stacking order).

    w         Specifies the widget that is making the request.

    widthreturn,
    heightreturn
              Return the allowed widget width and height.

 Description

    Depending on the condition, XtMakeGeometryRequest performs the following:

    +  If the widget is unmanaged or the widget's parent is not realized, it
       makes the changes and returns XtGeometryYes.

    +  If the parent is not a subclass of compositeWidgetClass or the
       parent's geometry_manager is NULL, it issues an error.

    +  If the widget's being_destroyed field is True, it returns
       XtGeometryNo.

    +  If the widget x, y, width, height and border_width fields are all
       equal to the requested values, it returns XtGeometryYes; otherwise, it
       calls the parent's geometry_manager procedure with the given parame-
       ters.

    +  If the parent's geometry manager returns XtGeometryYes and if
       XtCWQueryOnly is not set in the request_mode and if the widget is
       realized, XtMakeGeometryRequest calls the XConfigureWindow Xlib func-
       tion to reconfigure the widget's window (set its size, location, and
       stacking order as appropriate).

    +  If the geometry manager returns XtGeometryDone, the change has been
       approved and actually has been done.  In this case, XtMakeGeometry-
       Request does no configuring and returns XtGeometryYes.  XtMake-
       GeometryRequest never returns XtGeometryDone.

    Otherwise, XtMakeGeometryRequest returns the resulting value from the
    parent's geometry manager.

    Children of primitive widgets are always unmanaged; thus, XtMake-
    GeometryRequest always returns XtGeometryYes when called by a child of a
    primitive widget.

    The XtMakeResizeRequest function, a simple interface to XtMake-
    GeometryRequest, creates a XtWidgetGeometry structure and specifies that
    width and height should change.  The geometry manager is free to modify
    any of the other window attributes (position or stacking order) to
    satisfy the resize request.  If the return value is XtGeometryAlmost,
    widthreturn and heightreturn contain a compromise width and height. If
    these are acceptable, the widget should immediately make an XtMakeResiz-
    eRequest and request that the compromise width and height be applied.  If
    the widget is not interested in XtGeometryAlmost replies, it can pass
    NULL for widthreturn and heightreturn.

 See also

    XtConfigureWidget(Xt) and XtQueryGeometry(Xt).

    X Toolkit Intrinsics - C Language Interface
    Xlib - C Language X Interface


Typewritten Software • bear@typewritten.org • Edmonds, WA 98026