Remove ancient trunk folder from svn repository
[synfig.git] / synfig-osx / trunk / launcher / rootless-common.h
diff --git a/synfig-osx/trunk/launcher/rootless-common.h b/synfig-osx/trunk/launcher/rootless-common.h
deleted file mode 100644 (file)
index d2aa7b3..0000000
+++ /dev/null
@@ -1,305 +0,0 @@
-/*
- * Common internal rootless definitions and code
- *
- * Greg Parker     gparker@cs.stanford.edu
- */
-
-/* Copyright (c) 2002 Apple Computer, Inc. All rights reserved.
-
-   Permission is hereby granted, free of charge, to any person
-   obtaining a copy of this software and associated documentation files
-   (the "Software"), to deal in the Software without restriction,
-   including without limitation the rights to use, copy, modify, merge,
-   publish, distribute, sublicense, and/or sell copies of the Software,
-   and to permit persons to whom the Software is furnished to do so,
-   subject to the following conditions:
-
-   The above copyright notice and this permission notice shall be
-   included in all copies or substantial portions of the Software.
-
-   THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
-   EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-   MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
-   NONINFRINGEMENT.  IN NO EVENT SHALL THE ABOVE LISTED COPYRIGHT
-   HOLDER(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
-   WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-   OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
-   DEALINGS IN THE SOFTWARE.
-
-   Except as contained in this notice, the name(s) of the above
-   copyright holders shall not be used in advertising or otherwise to
-   promote the sale, use or other dealings in this Software without
-   prior written authorization. */
-
-/* $XFree86: xc/programs/Xserver/hw/darwin/quartz/rootlessCommon.h,v 1.6 2002/07/24 05:58:33 torrey Exp $ */
-
-#ifndef _ROOTLESSCOMMON_H
-#define _ROOTLESSCOMMON_H
-
-#include "rootless.h"
-
-#include "pixmapstr.h"
-#include "windowstr.h"
-
-#ifdef RENDER
-#include "picturestr.h"
-#endif
-
-/* Debug output, or not. */
-#ifdef ROOTLESSDEBUG
-#define RL_DEBUG_MSG ErrorF
-#else
-#define RL_DEBUG_MSG(a, ...)
-#endif
-
-#undef MIN
-#define MIN(x,y) ((x) < (y) ? (x) : (y))
-#undef MAX
-#define MAX(x,y) ((x) > (y) ? (x) : (y))
-
-/* Global variables */
-extern int rootlessGCPrivateIndex;
-extern int rootlessScreenPrivateIndex;
-extern int rootlessWindowPrivateIndex;
-extern int rootlessNoDRIDrawing;
-
-/* RootlessGCRec: private per-gc data */
-typedef struct {
-    GCFuncs *originalFuncs;
-    GCOps *originalOps;
-} RootlessGCRec;
-
-/* RootlessWindowRec: private per-window data */
-typedef struct RootlessWindowRec {
-    int x, y;
-    unsigned int width, height;
-    unsigned int borderWidth;
-    int level;
-
-    xp_window_id wid;
-    WindowPtr win;
-
-    /* Valid when locked (i.e. is_drawing is set) */
-    void *data;
-    unsigned int rowbytes;
-
-    PixmapPtr pixmap;
-    PixmapPtr oldPixmap;
-
-    unsigned long unrealize_time;      /* in seconds */
-
-    unsigned int is_drawing :1;
-    unsigned int is_update_disabled :1;
-    unsigned int is_reorder_pending :1;
-    unsigned int is_offscreen :1;
-    unsigned int is_obscured :1;
-} RootlessWindowRec;
-
-/* RootlessScreenRec: per-screen private data */
-typedef struct {
-    ScreenPtr pScreen;
-
-    CreateScreenResourcesProcPtr CreateScreenResources;
-    CloseScreenProcPtr CloseScreen;
-
-    CreateWindowProcPtr CreateWindow;
-    DestroyWindowProcPtr DestroyWindow;
-    RealizeWindowProcPtr RealizeWindow;
-    UnrealizeWindowProcPtr UnrealizeWindow;
-    ReparentWindowProcPtr ReparentWindow;
-    MoveWindowProcPtr MoveWindow;
-    ResizeWindowProcPtr ResizeWindow;
-    RestackWindowProcPtr RestackWindow;
-    ChangeBorderWidthProcPtr ChangeBorderWidth;
-    PositionWindowProcPtr PositionWindow;
-    ChangeWindowAttributesProcPtr ChangeWindowAttributes;
-
-    CreateGCProcPtr CreateGC;
-    PaintWindowBackgroundProcPtr PaintWindowBackground;
-    PaintWindowBorderProcPtr PaintWindowBorder;
-    CopyWindowProcPtr CopyWindow;
-    GetImageProcPtr GetImage;
-    SourceValidateProcPtr SourceValidate;
-
-    MarkOverlappedWindowsProcPtr MarkOverlappedWindows;
-    ValidateTreeProcPtr ValidateTree;
-
-#ifdef SHAPE
-    SetShapeProcPtr SetShape;
-#endif
-
-#ifdef RENDER
-    CompositeProcPtr Composite;
-    GlyphsProcPtr Glyphs;
-#endif
-
-    InstallColormapProcPtr InstallColormap;
-    UninstallColormapProcPtr UninstallColormap;
-    StoreColorsProcPtr StoreColors;
-
-    void *pixmap_data;
-    unsigned int pixmap_data_size;
-
-    ColormapPtr colormap;
-
-    void *redisplay_timer;
-    CARD32 last_redisplay;
-
-    unsigned int redisplay_timer_set :1;
-    unsigned int redisplay_queued :1;
-    unsigned int redisplay_expired :1;
-    unsigned int colormap_changed :1;
-} RootlessScreenRec;
-
-
-/* "Definition of the Porting Layer for the X11 Sample Server" says
-   unwrap and rewrap of screen functions is unnecessary, but
-   screen->CreateGC changes after a call to cfbCreateGC. */
-
-#define SCREEN_UNWRAP(screen, fn) \
-    screen->fn = SCREENREC(screen)->fn;
-
-#define SCREEN_WRAP(screen, fn) \
-    SCREENREC(screen)->fn = screen->fn; \
-    screen->fn = Rootless##fn
-
-/* Accessors for screen and window privates */
-
-#define SCREENREC(pScreen) \
-   ((RootlessScreenRec*)(pScreen)->devPrivates[rootlessScreenPrivateIndex].ptr)
-
-#define WINREC(pWin) \
-    ((RootlessWindowRec *)(pWin)->devPrivates[rootlessWindowPrivateIndex].ptr)
-
-/* BoxRec manipulators (Copied from shadowfb) */
-
-#define TRIM_BOX(box, pGC) { \
-    BoxPtr extents = &pGC->pCompositeClip->extents;\
-    if(box.x1 < extents->x1) box.x1 = extents->x1; \
-    if(box.x2 > extents->x2) box.x2 = extents->x2; \
-    if(box.y1 < extents->y1) box.y1 = extents->y1; \
-    if(box.y2 > extents->y2) box.y2 = extents->y2; \
-}
-
-#define TRANSLATE_BOX(box, pDraw) { \
-    box.x1 += pDraw->x; \
-    box.x2 += pDraw->x; \
-    box.y1 += pDraw->y; \
-    box.y2 += pDraw->y; \
-}
-
-#define TRIM_AND_TRANSLATE_BOX(box, pDraw, pGC) { \
-    TRANSLATE_BOX(box, pDraw); \
-    TRIM_BOX(box, pGC); \
-}
-
-#define BOX_NOT_EMPTY(box) \
-    (((box.x2 - box.x1) > 0) && ((box.y2 - box.y1) > 0))
-
-/* We don't want to clip windows to the edge of the screen. HUGE_ROOT
-   temporarily makes the root window really big. This is needed as a
-   wrapper around any function that calls SetWinSize or SetBorderSize
-   which clip a window against its parents, including the root. */
-
-extern RegionRec rootlessHugeRoot;
-
-#define HUGE_ROOT(pWin)                        \
-    do {                                       \
-       WindowPtr w = pWin;                     \
-       while (w->parent != NULL)               \
-           w = w->parent;                      \
-        saveRoot = w->winSize;                         \
-        w->winSize = rootlessHugeRoot;                 \
-    } while (0)
-
-#define NORMAL_ROOT(pWin)              \
-    do {                               \
-       WindowPtr w = pWin;             \
-       while (w->parent != NULL)       \
-           w = w->parent;              \
-       w->winSize = saveRoot;          \
-    } while (0)
-
-/* Returns TRUE if this window is a top-level window (i.e. child of the root)
-   The root is not a top-level window. */
-#define IsTopLevel(pWin) \
-   ((pWin) != NULL && (pWin)->parent != NULL && (pWin)->parent->parent == NULL)
-
-/* Returns TRUE if this window is a root window */
-#define IsRoot(pWin) \
-   ((pWin) == WindowTable[(pWin)->drawable.pScreen->myNum])
-
-/* Returns the top-level parent of pWindow.
-   The root is the top-level parent of itself, even though the root is
-   not otherwise considered to be a top-level window. */
-extern WindowPtr TopLevelParent (WindowPtr pWindow);
-
-/* Returns TRUE if this window is visible inside a frame (e.g. it is
-   visible and has a top-level or root parent) */
-extern Bool IsFramedWindow (WindowPtr pWin);
-
-/* Adjust base address of pixmap by DX,DY */
-extern void TranslatePixmapBase (PixmapPtr pPix, int dx, int dy);
-
-/* Prepare a window for direct access to its backing buffer. */
-extern void RootlessStartDrawing (WindowPtr pWindow);
-
-/* Mark that no more drawing operations will hit the window until ``start
-   drawing'' is issued again. */
-extern void RootlessFinishedDrawing (WindowPtr pWindow);
-
-/* Finish drawing to a window's backing buffer. */
-extern void RootlessStopDrawing (WindowPtr pWindow, Bool flush);
-
-/* Routines that cause regions to get redrawn.
-   DamageRegion and DamageRect are in global coordinates.
-   DamageBox is in window-local coordinates. */
-extern void RootlessDamageRegion (WindowPtr pWindow, RegionPtr pRegion);
-extern void RootlessDamageRect (WindowPtr pWindow, int x, int y, int w, int h);
-extern void RootlessDamageBox (WindowPtr pWindow, BoxPtr pBox);
-extern void RootlessRedisplay (WindowPtr pWindow);
-extern void RootlessRedisplayScreen (ScreenPtr pScreen);
-
-extern void RootlessQueueRedisplay (ScreenPtr pScreen);
-extern Bool RootlessMayRedisplay (ScreenPtr pScreen);
-extern void RootlessScreenExpose (ScreenPtr pScreen);
-
-/* Return the colormap currently installed on the given screen. */
-extern ColormapPtr RootlessGetColormap (ScreenPtr pScreen);
-
-/* Convert colormap to ARGB. */
-extern Bool RootlessResolveColormap (ScreenPtr pScreen, int first_color,
-                                    int n_colors, uint32_t *colors);
-
-extern void RootlessFlushWindowColormap (WindowPtr pWin);
-extern void RootlessFlushScreenColormaps (ScreenPtr pScreen);
-
-/* Move windows back to their position relative to the screen origin. */
-extern void RootlessRepositionWindow (WindowPtr pWin);
-extern void RootlessRepositionWindows (ScreenPtr pScreen);
-
-/* Move the window to it's correct place in the physical stacking order */
-extern void RootlessReorderWindow (WindowPtr pWin);
-
-/* Bit mask for alpha channel with a particular number of bits per
-   pixel. Note that we only care for 32bpp data. OS X uses planar alpha
-   for 16bpp. */
-#define RootlessAlphaMask(bpp) ((bpp) == 32 ? 0xFF000000 : 0)
-
-#ifdef RENDER
-extern void RootlessComposite(CARD8 op, PicturePtr pSrc,
-                             PicturePtr pMask, PicturePtr pDst,
-                             INT16 xSrc, INT16 ySrc,
-                             INT16 xMask, INT16 yMask,
-                             INT16 xDst, INT16 yDst,
-                             CARD16 width, CARD16 height);
-#endif
-
-extern void RootlessNativeWindowStateChanged (xp_window_id id,
-                                             unsigned int state);
-
-extern void RootlessEnableRoot (ScreenPtr pScreen);
-extern void RootlessDisableRoot (ScreenPtr pScreen);
-extern void RootlessSetWindowLevel (WindowPtr pWin, int level);
-
-#endif /* _ROOTLESSCOMMON_H */