8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync/***********************************************************
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncCopyright 1987, 1998 The Open Group
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncPermission to use, copy, modify, distribute, and sell this software and its
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncdocumentation for any purpose is hereby granted without fee, provided that
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncthe above copyright notice appear in all copies and that both that
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsynccopyright notice and this permission notice appear in supporting
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncdocumentation.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncThe above copyright notice and this permission notice shall be included in
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncall copies or substantial portions of the Software.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncExcept as contained in this notice, the name of The Open Group shall not be
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncused in advertising or otherwise to promote the sale, use or other dealings
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncin this Software without prior written authorization from The Open Group.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncCopyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync All Rights Reserved
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncPermission to use, copy, modify, and distribute this software and its
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncdocumentation for any purpose and without fee is hereby granted,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncprovided that the above copyright notice appear in all copies and that
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncboth that copyright notice and this permission notice appear in
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncsupporting documentation, and that the name of Digital not be
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncused in advertising or publicity pertaining to distribution of the
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncsoftware without specific, written prior permission.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncDIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncDIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncWHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncSOFTWARE.
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync******************************************************************/
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#ifndef WINDOW_H
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define WINDOW_H
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#include "misc.h"
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#include "region.h"
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#include "screenint.h"
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#include <X11/Xproto.h>
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define TOTALLY_OBSCURED 0
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define UNOBSCURED 1
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define OBSCURED 2
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define VisibilityNotViewable 3
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync/* return values for tree-walking callback procedures */
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define WT_STOPWALKING 0
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define WT_WALKCHILDREN 1
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define WT_DONTWALKCHILDREN 2
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define WT_NOMATCH 3
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define NullWindow ((WindowPtr) 0)
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync/* Forward declaration, we can't include input.h here */
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncstruct _DeviceIntRec;
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncstruct _Cursor;
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsynctypedef struct _BackingStore *BackingStorePtr;
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsynctypedef struct _Window *WindowPtr;
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsynctypedef int (*VisitWindowProcPtr)(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync pointer /*data*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int TraverseTree(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync VisitWindowProcPtr /*func*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync pointer /*data*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int WalkTree(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ScreenPtr /*pScreen*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync VisitWindowProcPtr /*func*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync pointer /*data*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT Bool CreateRootWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ScreenPtr /*pScreen*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void InitRootWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsynctypedef WindowPtr (* RealChildHeadProc) (WindowPtr pWin);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void RegisterRealChildHeadProc (RealChildHeadProc proc);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT WindowPtr RealChildHead(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT WindowPtr CreateWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync Window /*wid*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pParent*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*x*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*y*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync unsigned int /*w*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync unsigned int /*h*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync unsigned int /*bw*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync unsigned int /*class*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync Mask /*vmask*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync XID* /*vlist*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*depth*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync VisualID /*visual*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int* /*error*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int DeleteWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync pointer /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync XID /*wid*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int DestroySubwindows(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync/* Quartz support on Mac OS X uses the HIToolbox
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync framework whose ChangeWindowAttributes function conflicts here. */
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#ifdef __APPLE__
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define ChangeWindowAttributes Darwin_X_ChangeWindowAttributes
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#endif
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int ChangeWindowAttributes(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync Mask /*vmask*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync XID* /*vlist*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int ChangeWindowDeviceCursor(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync struct _DeviceIntRec* /*pDev*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync struct _Cursor* /*pCursor*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT struct _Cursor* WindowGetDeviceCursor(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync struct _DeviceIntRec* /*pDev*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync/* Quartz support on Mac OS X uses the HIToolbox
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync framework whose GetWindowAttributes function conflicts here. */
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#ifdef __APPLE__
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#define GetWindowAttributes(w,c,x) Darwin_X_GetWindowAttributes(w,c,x)
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern void Darwin_X_GetWindowAttributes(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#else
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void GetWindowAttributes(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#endif
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync xGetWindowAttributesReply* /* wa */);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void GravityTranslate(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*x*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*y*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*oldx*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*oldy*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dw*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dh*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync unsigned /*gravity*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int* /*destx*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int* /*desty*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int ConfigureWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync Mask /*mask*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync XID* /*vlist*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int CirculateWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pParent*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*direction*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int ReparentWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pParent*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*x*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*y*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int MapWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void MapSubwindows(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pParent*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int UnmapWindow(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync Bool /*fromConfigure*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void UnmapSubwindows(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void HandleSaveSet(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr /*client*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT Bool PointInWindowIsVisible(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*x*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*y*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT RegionPtr NotClippedByChildren(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void SendVisibilityNotify(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int dixSaveScreens(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync ClientPtr client,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int on,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int mode);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT int SaveScreens(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int on,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int mode);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT WindowPtr FindWindowWithOptional(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*w*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void CheckWindowOptionalNeed(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*w*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT Bool MakeWindowOptional(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT WindowPtr MoveWindowInStack(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pNextSib*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void SetWinSize(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void SetBorderSize(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void ResizeChildrenWinSize(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /*pWin*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dx*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dy*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dw*/,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /*dh*/);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void ShapeExtensionInit(void);
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void SendShapeNotify(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /* pWin */,
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync int /* which */ );
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT RegionPtr CreateBoundingShape(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /* pWin */ );
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT RegionPtr CreateClipShape(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /* pWin */ );
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void DisableMapUnmapEvents(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /* pWin */ );
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsyncextern _X_EXPORT void EnableMapUnmapEvents(
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync WindowPtr /* pWin */ );
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync
8c3d541c7ee7442f570b22eca3d82808b35b0385vboxsync#endif /* WINDOW_H */