Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ XtMakGReq(3Xt) — Dell System V Release 4 Issue 2.2

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

XtConfigureWidget(3Xt)

XtQueryGeometery(3Xt)



XtMakeGeometryRequest(3Xt)  X Version 11(Release 3)  XtMakeGeometryRequest(3Xt)


NAME
      XtMakeGeometryRequest, XtMakeResizeRequest - 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
      reply_return
                Returns the allowed widget size or may be NULL if the
                requesting widget is not interested in handling
                XtGeometryAlmost.

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

      w         Specifies the widget that is making the request.

      width_return
      height_return
                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
           parameters.

      ⊕    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
           function to reconfigure the widget's window (set its size, location,


10/89                                                                    Page 1







XtMakeGeometryRequest(3Xt)  X Version 11(Release 3)  XtMakeGeometryRequest(3Xt)


           and stacking order as appropriate).

      ⊕    If the geometry manager returns XtGeometryDone, the change has been
           approved and actually has been done.  In this case,
           XtMakeGeometryRequest does no configuring and returns XtGeometryYes.
           XtMakeGeometryRequest never returns XtGeometryDone.

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

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

      The XtMakeResizeRequest function, a simple interface to
      XtMakeGeometryRequest, 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,
      width_return and height_return contain a compromise width and height.  If
      these are acceptable, the widget should immediately make an
      XtMakeResizeRequest and request that the compromise width and height be
      applied.  If the widget is not interested in XtGeometryAlmost replies, it
      can pass NULL for width_return and height_return.

SEE ALSO
      XtConfigureWidget(3Xt), XtQueryGeometery(3Xt)
      X Toolkit Intrinsics - C Language Interface
      Xlib - C Language X Interface

























Page 2                                                                    10/89





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