diff options
Diffstat (limited to 'nx-X11/programs/Xserver/iplan2p4/iplscrinit.c')
-rw-r--r-- | nx-X11/programs/Xserver/iplan2p4/iplscrinit.c | 233 |
1 files changed, 0 insertions, 233 deletions
diff --git a/nx-X11/programs/Xserver/iplan2p4/iplscrinit.c b/nx-X11/programs/Xserver/iplan2p4/iplscrinit.c deleted file mode 100644 index 073e7b9a4..000000000 --- a/nx-X11/programs/Xserver/iplan2p4/iplscrinit.c +++ /dev/null @@ -1,233 +0,0 @@ -/* $XFree86: xc/programs/Xserver/iplan2p4/iplscrinit.c,v 3.2 1998/06/27 12:55:03 hohndel Exp $ */ -/************************************************************ -Copyright 1987 by Sun Microsystems, Inc. Mountain View, CA. - - All Rights Reserved - -Permission to use, copy, modify, and distribute this -software and its documentation for any purpose and without -fee is hereby granted, provided that the above copyright no- -tice appear in all copies and that both that copyright no- -tice and this permission notice appear in supporting docu- -mentation, and that the names of Sun or X Consortium -not be used in advertising or publicity pertaining to -distribution of the software without specific prior -written permission. Sun and X Consortium make no -representations about the suitability of this software for -any purpose. It is provided "as is" without any express or -implied warranty. - -SUN DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, -INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FIT- -NESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SUN BE LI- -ABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR -ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR -PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH -THE USE OR PERFORMANCE OF THIS SOFTWARE. - -********************************************************/ -/* $XConsortium: iplscrinit.c,v 5.32 94/04/17 20:29:00 dpw Exp $ */ - -/* Modified nov 94 by Martin Schaller (Martin_Schaller@maus.r.de) for use with -interleaved planes */ - -#ifdef HAVE_DIX_CONFIG_H -#include <dix-config.h> -#endif - -#include <X11/X.h> -#include <X11/Xmd.h> -#include "servermd.h" -#include "scrnintstr.h" -#include "pixmapstr.h" -#include "resource.h" -#include "colormap.h" -#include "colormapst.h" -#include "ipl.h" -#include "mi.h" -#include "mistruct.h" -#include "dix.h" -#include "mibstore.h" - - -BSFuncRec iplBSFuncRec = { - iplSaveAreas, - iplRestoreAreas, - (BackingStoreSetClipmaskRgnProcPtr) 0, - (BackingStoreGetImagePixmapProcPtr) 0, - (BackingStoreGetSpansPixmapProcPtr) 0, -}; - -Bool -iplCloseScreen (index, pScreen) - int index; - ScreenPtr pScreen; -{ - int d; - DepthPtr depths = pScreen->allowedDepths; - - for (d = 0; d < pScreen->numDepths; d++) - xfree (depths[d].vids); - xfree (depths); - xfree (pScreen->visuals); -#ifdef CFB_NEED_SCREEN_PRIVATE - xfree (pScreen->devPrivates[iplScreenPrivateIndex].ptr); -#else - xfree (pScreen->devPrivate); -#endif - return TRUE; -} - -Bool -iplSetupScreen(pScreen, pbits, xsize, ysize, dpix, dpiy, width) - register ScreenPtr pScreen; - pointer pbits; /* pointer to screen bitmap */ - int xsize, ysize; /* in pixels */ - int dpix, dpiy; /* dots per inch */ - int width; /* pixel width of frame buffer */ -{ - int i; - extern RegionPtr (*iplPuntCopyPlane)(); - - if (!iplAllocatePrivates(pScreen, (int *) 0, (int *) 0)) - return FALSE; - pScreen->defColormap = FakeClientID(0); - /* let CreateDefColormap do whatever it wants for pixels */ - pScreen->blackPixel = pScreen->whitePixel = (Pixel) 0; - pScreen->QueryBestSize = mfbQueryBestSize; - /* SaveScreen */ - pScreen->GetImage = iplGetImage; - pScreen->GetSpans = iplGetSpans; - pScreen->CreateWindow = iplCreateWindow; - pScreen->DestroyWindow = iplDestroyWindow; - pScreen->PositionWindow = iplPositionWindow; - pScreen->ChangeWindowAttributes = iplChangeWindowAttributes; - pScreen->RealizeWindow = iplMapWindow; - pScreen->UnrealizeWindow = iplUnmapWindow; - pScreen->PaintWindowBackground = iplPaintWindow; - pScreen->PaintWindowBorder = iplPaintWindow; - pScreen->CopyWindow = iplCopyWindow; - pScreen->CreatePixmap = iplCreatePixmap; - pScreen->DestroyPixmap = iplDestroyPixmap; - pScreen->RealizeFont = mfbRealizeFont; - pScreen->UnrealizeFont = mfbUnrealizeFont; - pScreen->CreateGC = iplCreateGC; - pScreen->CreateColormap = iplInitializeColormap; - pScreen->DestroyColormap = (void (*)())NoopDDA; - pScreen->InstallColormap = iplInstallColormap; - pScreen->UninstallColormap = iplUninstallColormap; - pScreen->ListInstalledColormaps = iplListInstalledColormaps; - pScreen->StoreColors = (void (*)())NoopDDA; - pScreen->ResolveColor = iplResolveColor; - pScreen->BitmapToRegion = mfbPixmapToRegion; - - mfbRegisterCopyPlaneProc (pScreen, iplCopyPlane); - return TRUE; -} - -#ifdef CFB_NEED_SCREEN_PRIVATE -Bool -iplCreateScreenResources(pScreen) - ScreenPtr pScreen; -{ - Bool retval; - - pointer oldDevPrivate = pScreen->devPrivate; - pScreen->devPrivate = pScreen->devPrivates[iplScreenPrivateIndex].ptr; - retval = miCreateScreenResources(pScreen); - pScreen->devPrivates[iplScreenPrivateIndex].ptr = pScreen->devPrivate; - pScreen->devPrivate = oldDevPrivate; - return retval; -} -#endif - -Bool -iplFinishScreenInit(pScreen, pbits, xsize, ysize, dpix, dpiy, width) - register ScreenPtr pScreen; - pointer pbits; /* pointer to screen bitmap */ - int xsize, ysize; /* in pixels */ - int dpix, dpiy; /* dots per inch */ - int width; /* pixel width of frame buffer */ -{ - int i, j; -#ifdef CFB_NEED_SCREEN_PRIVATE - pointer oldDevPrivate; -#endif - VisualPtr visuals; - DepthPtr depths; - int nvisuals; - int ndepths; - int rootdepth; - VisualID defaultVisual; - - rootdepth = 0; - if (!iplInitVisuals (&visuals, &depths, &nvisuals, &ndepths, &rootdepth, - &defaultVisual,((unsigned long)1<<(INTER_PLANES-1)), 8)) - return FALSE; -#ifdef CFB_NEED_SCREEN_PRIVATE - oldDevPrivate = pScreen->devPrivate; -#endif - if (! miScreenInit(pScreen, pbits, xsize, ysize, dpix, dpiy, width, - rootdepth, ndepths, depths, - defaultVisual, nvisuals, visuals)) - return FALSE; - /* overwrite miCloseScreen with our own */ - pScreen->CloseScreen = iplCloseScreen; -#ifdef CFB_NEED_SCREEN_PRIVATE - pScreen->CreateScreenResources = iplCreateScreenResources; - pScreen->devPrivates[iplScreenPrivateIndex].ptr = pScreen->devPrivate; - pScreen->devPrivate = oldDevPrivate; -#endif - pScreen->BackingStoreFuncs = iplBSFuncRec; - pScreen->GetScreenPixmap = iplGetScreenPixmap; - pScreen->SetScreenPixmap = iplSetScreenPixmap; - return TRUE; -} - -/* dts * (inch/dot) * (25.4 mm / inch) = mm */ -Bool -iplScreenInit(pScreen, pbits, xsize, ysize, dpix, dpiy, width) - register ScreenPtr pScreen; - pointer pbits; /* pointer to screen bitmap */ - int xsize, ysize; /* in pixels */ - int dpix, dpiy; /* dots per inch */ - int width; /* pixel width of frame buffer */ -{ - if (!iplSetupScreen(pScreen, pbits, xsize, ysize, dpix, dpiy, width)) - return FALSE; - if (!iplFinishScreenInit(pScreen, pbits, xsize, ysize, dpix, dpiy, width)) - return FALSE; -#if INTER_PLANES == 2 -/* This shouldn't be necessary */ - PixmapWidthPaddingInfo[2].padPixelsLog2 = 4; - PixmapWidthPaddingInfo[2].padRoundUp = 15; - PixmapWidthPaddingInfo[2].padBytesLog2 = 2; -#endif - return TRUE; -} - -PixmapPtr -iplGetScreenPixmap(pScreen) - ScreenPtr pScreen; -{ -#ifdef CFB_NEED_SCREEN_PRIVATE - return (PixmapPtr)(pScreen->devPrivates[iplScreenPrivateIndex].ptr); -#else - return (PixmapPtr)(pScreen->devPrivate.ptr); -#endif -} - -void -iplSetScreenPixmap(pPix) - PixmapPtr pPix; -{ -#ifdef CFB_NEED_SCREEN_PRIVATE - if (pPix) - pPix->drawable.pScreen->devPrivates[iplScreenPrivateIndex].ptr = - (pointer)pPix; -#else - if (pPix) - pPix->drawable.pScreen->devPrivate.ptr = (pointer)pPix; -#endif -} |