<HTML><HEAD><TITLE>Library Procedures - Tk_WindowId manual page</TITLE></HEAD><BODY> <H3><A NAME="M2">NAME</A></H3> Tk_WindowId, Tk_Parent, Tk_Display, Tk_DisplayName, Tk_ScreenNumber, Tk_Screen, Tk_X, Tk_Y, Tk_Width, Tk_Height, Tk_Changes, Tk_Attributes, Tk_IsMapped, Tk_IsTopLevel, Tk_ReqWidth, Tk_ReqHeight, Tk_InternalBorderWidth, Tk_Visual, Tk_Depth, Tk_Colormap - retrieve information from Tk's local data structure <H3><A NAME="M3">SYNOPSIS</A></H3> <B>#include <tk.h></B><BR> Window<BR> <B>Tk_WindowId</B>(<I>tkwin</I>)<BR> Tk_Window<BR> <B>Tk_Parent</B>(<I>tkwin</I>)<BR> Display *<BR> <B>Tk_Display</B>(<I>tkwin</I>)<BR> char *<BR> <B>Tk_DisplayName</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_ScreenNumber</B>(<I>tkwin</I>)<BR> Screen *<BR> <B>Tk_Screen</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_X</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_Y</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_Width</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_Height</B>(<I>tkwin</I>)<BR> XWindowChanges *<BR> <B>Tk_Changes</B>(<I>tkwin</I>)<BR> XSetWindowAttributes *<BR> <B>Tk_Attributes</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_IsMapped</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_IsTopLevel</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_ReqWidth</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_ReqHeight</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_InternalBorderWidth</B>(<I>tkwin</I>)<BR> Visual *<BR> <B>Tk_Visual</B>(<I>tkwin</I>)<BR> int<BR> <B>Tk_Depth</B>(<I>tkwin</I>)<BR> Colormap<BR> <B>Tk_Colormap</B>(<I>tkwin</I>)<BR> <H3><A NAME="M4">ARGUMENTS</A></H3> <DL> <P><DT>Tk_Window <B>tkwin</B> (in)<DD> Token for window. <P></DL> <H3><A NAME="M5">DESCRIPTION</A></H3> <B>Tk_WindowID</B> and the other names listed above are all macros that return fields from Tk's local data structure for <I>tkwin</I>. None of these macros requires any interaction with the server; it is safe to assume that all are fast. <P> <B>Tk_WindowId</B> returns the X identifier for <I>tkwin</I>, or <B>NULL</B> if no X window has been created for <I>tkwin</I> yet. <P> <B>Tk_Parent</B> returns Tk's token for the logical parent of <I>tkwin</I>. The parent is the token that was specified when <I>tkwin</I> was created, or NULL for main windows. <P> <B>Tk_Display</B> returns a pointer to the Xlib display structure corresponding to <I>tkwin</I>. <B>Tk_DisplayName</B> returns an ASCII string identifying <I>tkwin</I>'s display. <B>Tk_ScreenNumber</B> returns the index of <I>tkwin</I>'s screen among all the screens of <I>tkwin</I>'s display. <B>Tk_Screen</B> returns a pointer to the Xlib structure corresponding to <I>tkwin</I>'s screen. <P> <B>Tk_X</B>, <B>Tk_Y</B>, <B>Tk_Width</B>, and <B>Tk_Height</B> return information about <I>tkwin's</I> location within its parent and its size. The location information refers to the upper-left pixel in the window, or its border if there is one. The width and height information refers to the interior size of the window, not including any border. <B>Tk_Changes</B> returns a pointer to a structure containing all of the above information plus a few other fields. <B>Tk_Attributes</B> returns a pointer to an XSetWindowAttributes structure describing all of the attributes of the <I>tkwin</I>'s window, such as background pixmap, event mask, and so on (Tk keeps track of all this information as it is changed by the application). Note: it is essential that applications use Tk procedures like <B><A HREF="../TkLib/ConfigWind.htm">Tk_ResizeWindow</A></B> instead of X procedures like <B>XResizeWindow</B>, so that Tk can keep its data structures up-to-date. <P> <B>Tk_IsMapped</B> returns a non-zero value if <I>tkwin</I> is mapped and zero if <I>tkwin</I> isn't mapped. <P> <B>Tk_IsTopLevel</B> returns a non-zero value if <I>tkwin</I> is a top-level window (its X parent is the root window of the screen) and zero if <I>tkwin</I> isn't a top-level window. <P> <B>Tk_ReqWidth</B> and <B>Tk_ReqHeight</B> return information about the window's requested size. These values correspond to the last call to <B><A HREF="../TkLib/GeomReq.htm">Tk_GeometryRequest</A></B> for <I>tkwin</I>. <P> <B>Tk_InternalBorderWidth</B> returns the width of internal border that has been requested for <I>tkwin</I>, or 0 if no internal border was requested. The return value is simply the last value passed to <B><A HREF="../TkLib/GeomReq.htm">Tk_SetInternalBorder</A></B> for <I>tkwin</I>. <P> <B>Tk_Visual</B>, <B>Tk_Depth</B>, and <B>Tk_Colormap</B> return information about the visual characteristics of a window. <B>Tk_Visual</B> returns the visual type for the window, <B>Tk_Depth</B> returns the number of bits per pixel, and <B>Tk_Colormap</B> returns the current colormap for the window. The visual characteristics are normally set from the defaults for the window's screen, but they may be overridden by calling <B><A HREF="../TkLib/SetVisual.htm">Tk_SetWindowVisual</A></B>. <H3><A NAME="M6">KEYWORDS</A></H3> <A href="../Keywords/A.htm#attributes">attributes</A>, <A href="../Keywords/C.htm#colormap">colormap</A>, <A href="../Keywords/D.htm#depth">depth</A>, <A href="../Keywords/D.htm#display">display</A>, <A href="../Keywords/H.htm#height">height</A>, <A href="../Keywords/G.htm#geometry manager">geometry manager</A>, <A href="../Keywords/I.htm#identifier">identifier</A>, <A href="../Keywords/M.htm#mapped">mapped</A>, <A href="../Keywords/R.htm#requested size">requested size</A>, <A href="../Keywords/S.htm#screen">screen</A>, <A href="../Keywords/T.htm#top-level">top-level</A>, <A href="../Keywords/V.htm#visual">visual</A>, <A href="../Keywords/W.htm#width">width</A>, <A href="../Keywords/W.htm#window">window</A>, <A href="../Keywords/X.htm#x">x</A>, <A href="../Keywords/Y.htm#y">y</A> <HR><PRE> <A HREF="../copyright.htm">Copyright</A> © 1990-1993 The Regents of the University of California. <A HREF="../copyright.htm">Copyright</A> © 1994-1997 Sun Microsystems, Inc. <A HREF="../copyright.htm">Copyright</A> © 1995-1997 Roger E. Critchlow Jr.</PRE> </BODY></HTML>