tk4.2 C API - GeomReq






NAME

     Tk_GeometryRequest, Tk_SetInternalBorder -  specify  desired
     geometry or internal border for a window


SYNOPSIS

     #include <tk.h>

     Tk_GeometryRequest(tkwin, reqWidth, reqHeight)

     Tk_SetInternalBorder(tkwin, width)


ARGUMENTS

     Tk_Window    tkwin        (in)      Window     for     which
                                         geometry     is    being
                                         requested.

     int          reqWidth     (in)      Desired width for tkwin,
                                         in pixel units.

     int          reqHeight    (in)      Desired    height    for
                                         tkwin, in pixel units.

     int          width        (in)      Space   to   leave   for
                                         internal    border   for
                                         tkwin, in pixel units.





DESCRIPTION

     Tk_GeometryRequest is called by widget code to indicate  its
     preference  for  the dimensions of a particular window.  The
     arguments to Tk_GeometryRequest are made  available  to  the
     geometry  manager  for the window, which then decides on the
     actual geometry for the window.  Although geometry  managers
     generally     try    to    satisfy    requests    made    to
     Tk_GeometryRequest, there is no  guarantee  that  this  will
     always  be  possible.   Widget code should not assume that a
     geometry request will be satisfied until it receives a  Con-
     figureNotify  event  indicating that the geometry change has
     occurred.  Widget code should  never  call  procedures  like
     Tk_ResizeWindow   directly.    Instead,   it  should  invoke
     Tk_GeometryRequest and leave the final geometry decisions to
     the geometry manager.

     If tkwin is a top-level window, then the  geometry  informa-
     tion will be passed to the window manager using the standard
     ICCCM protocol.

     Tk_SetInternalBorder is called by widget  code  to  indicate
     that the widget has an internal border.  This means that the
     widget draws a decorative border inside the  window  instead
     of  using  the standard X borders, which are external to the
     window's area.  For example, internal borders  are  used  to
     draw  3-D  effects.  Width specifies the width of the border
     in pixels.  Geometry managers will use this  information  to
     avoid  placing  any children of tkwin overlapping the outer-
     most width pixels of tkwin's area.

     The information specified in calls to Tk_GeometryRequest and
     Tk_SetInternalBorder  can  be  retrieved  using  the  macros
     Tk_ReqWidth, Tk_ReqHeight, and Tk_InternalBorderWidth.   See
     the Tk_WindowId manual entry for details.



KEYWORDS

     geometry, request