Tk_GeometryRequest(3) Tk Library Procedures Tk_GeometryRequest(3)
____________________________________________________________________________
NAME
Tk_GeometryRequest, Tk_SetMinimumRequestSize, Tk_SetInternalBorder,
Tk_SetInternalBorderEx - specify desired geometry or internal border
for a window
SYNOPSIS
#include <tk.h> Tk_GeometryRequest(
tkwin, reqWidth, reqHeight)
Tk_SetMinimumRequestSize(
tkwin, minWidth, minHeight)
Tk_SetInternalBorder(
tkwin, width)
Tk_SetInternalBorderEx(
tkwin, left, right, top, bottom)
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
minWidth (in) Desired minimum requested width
for
tkwin, in pixel units.
int
minHeight (in) Desired minimum requested height
for
tkwin, in pixel units.
int
width (in) Space to leave for internal
border for
tkwin, in pixel units.
int
left (in) Space to leave for left side of
internal border for
tkwin, in
pixel units.
int
right (in) Space to leave for right side of
internal border for
tkwin, in
pixel units.
int
top (in) Space to leave for top side of
internal border for
tkwin, in
pixel units.
int
bottom (in) Space to leave for bottom side of
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 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.
Tk_SetInternalBorderEx works like
Tk_SetInternalBorder but lets you
specify different widths for different sides of the window.
Tk_SetMinimumRequestSize is called by widget code to indicate that a
geometry manager should request at least this size for the widget.
This allows a widget to have some control over its size when a
propagating geometry manager is used inside it.
The information specified in calls to
Tk_GeometryRequest,
Tk_SetMinimumRequestSize,
Tk_SetInternalBorder and
Tk_SetInternalBorderEx can be retrieved using the macros
Tk_ReqWidth,
Tk_ReqHeight,
Tk_MinReqWidth,
Tk_MinReqHeight,
Tk_MinReqWidth,
Tk_InternalBorderLeft,
Tk_InternalBorderRight,
Tk_InternalBorderTop and
Tk_InternalBorderBottom. See the
Tk_WindowId manual entry for
details.
KEYWORDS
geometry, request
Tk 8.4 Tk_GeometryRequest(3)