b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* $Xorg: Pcl.h,v 1.3 2000/08/17 19:48:07 cpqbld Exp $ */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*******************************************************************
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync**
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *********************************************************
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** * File: Pcl.h
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** * Contents: defines and includes for the Pcl driver
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** * for a printing X server.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** * Created: 1/30/95
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync** *********************************************************
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync**
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync********************************************************************/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Hewlett-Packard Company
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 International Business Machines Corp.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Sun Microsystems, Inc.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Novell, Inc.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Digital Equipment Corp.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Fujitsu Limited
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync(c) Copyright 1996 Hitachi, Ltd.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncPermission is hereby granted, free of charge, to any person obtaining a copy
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncof this software and associated documentation files (the "Software"), to deal
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncin the Software without restriction, including without limitation the rights
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncto use, copy, modify, merge, publish, distribute, sublicense, and/or sell
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynccopies of the Software, and to permit persons to whom the Software is
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncfurnished to do so, subject to the following conditions:
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncThe above copyright notice and this permission notice shall be included in
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncall copies or substantial portions of the Software.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncCOPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncIN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncExcept as contained in this notice, the names of the copyright holders shall
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncnot be used in advertising or otherwise to promote the sale, use or other
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncdealings in this Software without prior written authorization from said
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynccopyright holders.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync*/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/* $XFree86: xc/programs/Xserver/Xprint/pcl/Pcl.h,v 1.12 2001/12/21 21:02:05 dawes Exp $ */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifdef HAVE_DIX_CONFIG_H
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <dix-config.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef _PCL_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define _PCL_H_
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <stdio.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "scrnintstr.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "PclDef.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "Pclmap.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "PclSFonts.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/extensions/Print.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/extensions/Printstr.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "regionstr.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/fonts/fontstruct.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "dixfontstr.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "gcstruct.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Some sleazes to force the XrmDB stuff into the server
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef HAVE_XPointer
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef char *XPointer;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define Status int
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define True 1
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define False 0
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "misc.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/Xfuncproto.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include <X11/Xresource.h>
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#include "attributes.h"
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * externally visible variables from PclInit.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclScreenPrivateIndex, PclWindowPrivateIndex;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclContextPrivateIndex;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclPixmapPrivateIndex;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclGCPrivateIndex;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * externally visible variables from PclAttVal.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern XpValidatePoolsRec PclValidatePoolsRec;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * This structure defines a mapping from an X colormap ID to a list of
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * print contexts which use the colormap.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _pclcontextlist {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr context;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync struct _pclcontextlist *next;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclContextList, *PclContextListPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _pclcmaptocontexts {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync long colormapId;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclContextListPtr contexts;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync struct _pclcmaptocontexts *next;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclCmapToContexts;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclCmapToContexts *colormaps;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CloseScreenProcPtr CloseScreen;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclScreenPrivRec, *PclScreenPrivPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/*
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * This structure defines a mapping from an X colormap ID to a PCL
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * palette ID.
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct _palettemap {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync long colormapId;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int paletteId;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int downloaded;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync struct _palettemap *next;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclPaletteMap, *PclPaletteMapPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *jobFileName;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *pJobFile;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pageFileName;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *pPageFile;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GC lastGC;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char *dash;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int validGC;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ClientPtr getDocClient;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int getDocBufSize;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclSoftFontInfoPtr pSoftFontInfo;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclPaletteMapPtr palettes;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int currentPalette;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nextPaletteId;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclPaletteMap staticGrayPalette;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclPaletteMap trueColorPalette;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclPaletteMap specialTrueColorPalette;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char *ctbl;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int ctbldim;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int isRaw;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifdef XP_PCL_LJ3
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned int fcount;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned int fcount_max;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *figures;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif /* XP_PCL_LJ3 */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclContextPrivRec, *PclContextPrivPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int validContext;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr context;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclWindowPrivRec, *PclWindowPrivPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long stippleFg, stippleBg;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclGCPrivRec, *PclGCPrivPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsynctypedef struct {
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr context;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *tempFileName;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *tempFile;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GC lastGC;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int validGC;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync} PclPixmapPrivRec, *PclPixmapPrivPtr;
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Defined functions
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SEND_PCL(f,c) fwrite( c, sizeof( char ), strlen( c ), f )
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SEND_PCL_COUNT(f,c,n) fwrite( c, sizeof( char ), n, f )
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef XP_PCL_LJ3
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SAVE_PCL(f,p,c) SEND_PCL(f,c)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SAVE_PCL_COUNT(f,p,c,n) SEND_PCL_COUNT(f,c,n)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MACRO_START(f,p) SEND_PCL(f, "\033&f1Y\033&f0X")
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MACRO_END(f) SEND_PCL(f, "\033&f1X")
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#else
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SAVE_PCL(f,p,c) PclSpoolFigs(p, c, strlen(c))
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define SAVE_PCL_COUNT(f,p,c,n) PclSpoolFigs(p, c, n)
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MACRO_START(f,p) p->fcount = 0
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MACRO_END(f) /* do nothing */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif /* XP_PCL_LJ3 */
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MIN(a,b) (((a)<(b))?(a):(b))
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#ifndef MAX
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#define MAX(a,b) (((a)>(b))?(a):(b))
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclArc.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyArc(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nArcs,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xArc *pArcs);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyFillArc(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nArcs,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xArc *pArcs);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclArea.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPutImage(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int depth,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int w,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int h,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int leftPad,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int format,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pImage);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern RegionPtr PclCopyArea(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pSrc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDst,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int srcx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int srcy,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int width,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int height,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int dstx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int dsty);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncRegionPtr PclCopyPlane(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pSrc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDst,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int srcx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int srcy,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int width,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int height,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int dstx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int dsty,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long plane);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclAttr.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern char *PclGetAttributes(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XPAttributes pool );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern char *PclGetOneAttribute(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XPAttributes pool,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *attr );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclAugmentAttributes(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XPAttributes pool,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *attrs );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclSetAttributes(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XPAttributes pool,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *attrs );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclColor.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclCreateDefColormap(ScreenPtr pScreen);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclCreateColormap(ColormapPtr pColor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclDestroyColormap(ColormapPtr pColor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclInstallColormap(ColormapPtr pColor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclUninstallColormap(ColormapPtr pColor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclListInstalledColormaps(ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XID *pCmapList);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclStoreColors(ColormapPtr pColor,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int ndef,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xColorItem *pdefs);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclResolveColor(unsigned short *pRed,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *pGreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *pBlue,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync VisualPtr pVisual);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclUpdateColormap(DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr gc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *outFile);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclLookUp(ColormapPtr cmap,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclContextPrivPtr cPriv,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *r,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *g,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *b);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern PclPaletteMapPtr PclFindPaletteMap(PclContextPrivPtr cPriv,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ColormapPtr cmap,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr gc);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern unsigned char *PclReadMap(char *, int *);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclCursor.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclConstrainCursor(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync BoxPtr pBox);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclCursorLimits(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CursorPtr pCursor,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync BoxPtr pHotBox,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync BoxPtr pTopLeftbox);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclDisplayCursor(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CursorPtr pCursor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclRealizeCursor(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CursorPtr pCursor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclUnrealizeCursor(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CursorPtr pCursor);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclRecolorCursor(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CursorPtr pCursor,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool displayed);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclSetCursorPosition(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool generateEvent);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclSFonts.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncPclDownloadSoftFont8(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *fp,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclSoftFontInfoPtr pSoftFontInfo,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclFontHead8Ptr pfh,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclCharDataPtr pcd,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char *code);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclDownloadSoftFont16(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *fp,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclSoftFontInfoPtr pSoftFontInfo,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclFontHead16Ptr pfh,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclCharDataPtr pcd,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char row,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned char col);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern PclSoftFontInfoPtr PclCreateSoftFontInfo(void);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclDestroySoftFontInfo(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclSoftFontInfoPtr pSoftFontInfo );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclGC.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclCreateGC(GCPtr pGC);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclDestroyGC(GCPtr pGC);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclUpdateDrawableGC(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE **outFile);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclValidateGC(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long changes,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclSetDrawablePrivateStuff(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GC gc );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclGetDrawablePrivateStuff(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GC *gc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned long *valid,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE **file );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclSetDrawablePrivateGC(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GC gc);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclComputeCompositeClip(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclInit.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclCloseScreen(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int index,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool InitializeColorPclDriver(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int ndx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int argc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char **argv);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool InitializeMonoPclDriver(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int ndx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int argc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char **argv);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool InitializeLj3PclDriver(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int ndx,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int argc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char **argv);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern XpContextPtr PclGetContextFromWindow( WindowPtr win );
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclLine.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyLine(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int mode,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nPoints,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xPoint *pPoints);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolySegment(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nSegments,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xSegment *pSegments);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclMisc.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclQueryBestSize(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int class,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync short *pwidth,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync short *pheight,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern char *GetPropString(WindowPtr pWin, char *propName);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int SystemCmd(char *cmdStr);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclGetMediumDimensions(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CARD16 *pWidth,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CARD16 *pHeight);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclGetReproducibleArea(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xRectangle *pRect);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclSendData(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FILE *outFile,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PclContextPrivPtr pConPriv,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync BoxPtr pbox,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nbox,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync double ratio);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclPixel.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyPoint(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int mode,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nPoints,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xPoint *pPoints);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPushPixels(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync PixmapPtr pBitmap,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int width,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int height,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclPixmap.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern PixmapPtr PclCreatePixmap(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pScreen,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int width,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int height,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int depth);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclDestroyPixmap(PixmapPtr pPixmap);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclPolygon.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyRectangle(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nRects,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xRectangle *pRects);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclFillPolygon(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int shape,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int mode,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nPoints,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DDXPointPtr pPoints);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyFillRect(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nRects,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync xRectangle *pRects);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclSpans.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclFillSpans(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nSpans,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DDXPointPtr pPoints,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int *pWidths,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int fSorted);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclSetSpans(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pSrc,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DDXPointPtr pPoints,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int *pWidths,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int nSpans,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int fSorted);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclText.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclPolyText8(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int count,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *string);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclPolyText16(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int count,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *string);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclImageText8(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int count,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *string);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclImageText16(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int count,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned short *string);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclImageGlyphBlt(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned int nGlyphs,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CharInfoPtr *pCharInfo,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync pointer pGlyphBase);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPolyGlyphBlt(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDrawable,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync GCPtr pGC,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync unsigned int nGlyphs,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync CharInfoPtr *pCharInfo,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync pointer pGlyphBase);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclWindow.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclCreateWindow(register WindowPtr pWin);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclDestroyWindow(WindowPtr pWin);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclMapWindow(WindowPtr pWindow);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclPositionWindow(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync register WindowPtr pWin,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int x,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int y);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclUnmapWindow(WindowPtr pWindow);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclCopyWindow(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync WindowPtr pWin,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DDXPointRec ptOldOrg,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync RegionPtr prgnSrc);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclChangeWindowAttributes(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync register WindowPtr pWin,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync register unsigned long mask);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern void PclPaintWindow(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync WindowPtr pWin,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync RegionPtr pRegion,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int what);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclFonts.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclRealizeFont(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pscr,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FontPtr pFont);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern Bool PclUnrealizeFont(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ScreenPtr pscr,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync FontPtr pFont);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync/******
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync * Functions in PclPrint.c
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ******/
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclStartJob(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool sendClientData,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ClientPtr client);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclEndJob(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool cancel);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclStartPage(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync WindowPtr pWin);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclEndPage(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync WindowPtr pWin);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclStartDoc(XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XPDocumentType type);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclEndDoc(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync Bool cancel);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclDocumentData(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync DrawablePtr pDraw,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pData,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int len_data,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pFmt,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int len_fmt,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync char *pOpt,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int len_opt,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ClientPtr client);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsyncextern int PclGetDocumentData(
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync XpContextPtr pCon,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync ClientPtr client,
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync int maxBufferSize);
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync
b8e299dddd091ae24e0c08c45d91b8f937bd14d2vboxsync#endif /* _PCL_H_ */