Tk_GeometryRequest(3) Tk Tk_GeometryRequest(3)
_________________________________________________________________
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
ConfigureNotify 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
information 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
Page 1 (printed 2/26/99)
Tk_GeometryRequest(3) Tk Tk_GeometryRequest(3)
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
outermost 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
Page 2 (printed 2/26/99)