Tk_MaintainGeometry, Tk_UnmaintainGeometry - maintain geometry of one
window relative to another
SYNOPSIS
#include <tk.h>
Tk_MaintainGeometry(slave, master, x, y, width, height)
Tk_UnmaintainGeometry(slave, master)
ARGUMENTS
Tk_Window slave (in) Window whose geometry is to be con-
trolled.
Tk_Window master (in) Window relative to which slave's geome-
try will be controlled.
int x (in) Desired x-coordinate of slave in master,
measured in pixels from the inside of
master's left border to the outside of
slave's left border.
int y (in) Desired y-coordinate of slave in master,
measured in pixels from the inside of
master's top border to the outside of
slave's top border.
int width (in) Desired width for slave, in pixels.
int height (in) Desired height for slave, in pixels.
_________________________________________________________________
DESCRIPTION
Tk_MaintainGeometry and Tk_UnmaintainGeometry make it easier for geome-
try managers to deal with slaves whose masters are not their parents.
Three problems arise if the master for a slave is not its parent:
[1] The x- and y-position of the slave must be translated from the
coordinate system of the master to that of the parent before
positioning the slave.
[2] If the master window, or any of its ancestors up to the slave's
parent, is moved, then the slave must be repositioned within its
parent in order to maintain the correct position relative to the
master.
[3] If the master or one of its ancestors is mapped or unmapped,
then the slave must be mapped or unmapped to correspond.
None of these problems is an issue if the parent and master are the
same. For example, if the master or one of its ancestors is unmapped,
and height.
When a window manager relinquishes control over a window, or if it
decides that it does not want the window to appear on the screen under
any conditions, it calls Tk_UnmaintainGeometry. Tk_UnmaintainGeometry
unmaps the window and cancels any previous calls to Tk_MaintainGeometry
for the master-slave pair, so that the slave's geometry and mapped
state are no longer maintained automatically. Tk_UnmaintainGeometry
need not be called by a geometry manager if the slave, the master, or
any of the master's ancestors is destroyed: Tk will call it automati-
cally.
If Tk_MaintainGeometry is called repeatedly for the same master-slave
pair, the information from the most recent call supersedes any older
information. If Tk_UnmaintainGeometry is called for a master-slave
pair that is isn't currently managed, the call has no effect.
KEYWORDS
geometry manager, map, master, parent, position, slave, unmap
Tk 4.0 Tk_MaintainGeometry(3)
Man(1) output converted with
man2html
|