diff options
Diffstat (limited to 'nx-X11/lib/dps/dpsXpriv.h')
-rw-r--r-- | nx-X11/lib/dps/dpsXpriv.h | 187 |
1 files changed, 187 insertions, 0 deletions
diff --git a/nx-X11/lib/dps/dpsXpriv.h b/nx-X11/lib/dps/dpsXpriv.h new file mode 100644 index 000000000..56b25b757 --- /dev/null +++ b/nx-X11/lib/dps/dpsXpriv.h @@ -0,0 +1,187 @@ +/* + * dpsXpriv.h -- client lib internal impl interface for the X version + * + * (c) Copyright 1989-1994 Adobe Systems Incorporated. + * All rights reserved. + * + * Permission to use, copy, modify, distribute, and sublicense this software + * and its documentation for any purpose and without fee is hereby granted, + * provided that the above copyright notices appear in all copies and that + * both those copyright notices and this permission notice appear in + * supporting documentation and that the name of Adobe Systems Incorporated + * not be used in advertising or publicity pertaining to distribution of the + * software without specific, written prior permission. No trademark license + * to use the Adobe trademarks is hereby granted. If the Adobe trademark + * "Display PostScript"(tm) is used to describe this software, its + * functionality or for any other purpose, such use shall be limited to a + * statement that this software works in conjunction with the Display + * PostScript system. Proper trademark attribution to reflect Adobe's + * ownership of the trademark shall be given whenever any such reference to + * the Display PostScript system is made. + * + * ADOBE MAKES NO REPRESENTATIONS ABOUT THE SUITABILITY OF THE SOFTWARE FOR + * ANY PURPOSE. IT IS PROVIDED "AS IS" WITHOUT EXPRESS OR IMPLIED WARRANTY. + * ADOBE DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL + * IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NON- INFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL ADOBE BE LIABLE + * TO YOU OR ANY OTHER PARTY FOR ANY SPECIAL, INDIRECT, OR CONSEQUENTIAL + * DAMAGES OR ANY DAMAGES WHATSOEVER WHETHER IN AN ACTION OF CONTRACT, + * NEGLIGENCE, STRICT LIABILITY OR ANY OTHER ACTION ARISING OUT OF OR IN + * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. ADOBE WILL NOT + * PROVIDE ANY TRAINING OR OTHER SUPPORT FOR THE SOFTWARE. + * + * Adobe, PostScript, and Display PostScript are trademarks of Adobe Systems + * Incorporated which may be registered in certain jurisdictions + * + * Author: Adobe Systems Incorporated + */ + +#ifndef DPSXPRIVATE_H +#define DPSXPRIVATE_H + +#ifdef VMS +#include <decw$include/X.h> +#include <decw$include/Xlib.h> +#include <decw$include/Xutil.h> +#else /* VMS */ +#include <X11/X.h> +#include <X11/Xlib.h> +#include <X11/Xutil.h> +#endif /* VMS */ + +#include <DPS/XDPSlib.h> +#include "DPS/dpsclient.h" +#include "dpsprivate.h" +#include "DPS/dpsXclient.h" +#include "publictypes.h" + +/* typedefs */ + +typedef struct _t_XDPSPrivContextRec + { + Display *dpy; + Drawable drawable; + GC gc; + int x; + int y; + unsigned int eventmask; + XStandardColormap *grayramp; + XStandardColormap *ccube; + int actual; + DPSContext ctxt; /* Points back to its context */ + ContextXID cxid; + char *newObjFormat; /* This is the object format that a */ + /* new context must use for sending */ + /* BOS's to the client. If the */ + /* server and client have the same */ + /* number formats then this will be */ + /* null. */ + int secure; + } XDPSPrivContextRec, *XDPSPrivContext; + + +extern DPSProcs XDPSconvProcs; +extern DPSProcs XDPSrawProcs; +extern int XDPSQuitBlocking; + + +extern XDPSPrivContext XDPSCreatePrivContextRec ( + Display * /* dpy */, + Drawable /* drawable */, + GC /* gc */, + int /* x */, + int /* y */, + unsigned int /* eventmask */, + XStandardColormap * /* grayramp */, + XStandardColormap * /* ccube */, + int /* actual */, + int /* secure */); + + /* See if dpy supports the DPS extension. If not, return NULL. If so, + it sets up a private context object that is used for creating + contexts and spaces. */ + +extern DPSNumFormat DPSCreatePrivContext( + XDPSPrivContext /* wh */, + DPSContext /* ctxt */, + ContextPSID * /* cidP */, + SpaceXID * /* sxidP */, + boolean /* newSpace */, + DPSClientPrintProc /* printProc */); + /* returns -1 if server can't create the context */ + +extern void DPSIncludePrivContext( + XDPSPrivContext /* wh */, + DPSContext /* ctxt */, + ContextPSID /* cid */, + SpaceXID /* sxid */, + DPSClientPrintProc /* printProc */); + +extern void DPSSendPostScript( + XDPSPrivContext /* wh */, + DPSClientPrintProc /* printProc */, + ContextPSID /* cid */, + char * /* buffer */, + long int /* count */, + boolean (* /* returnControl */)(void)); + +extern void DPSSendInterrupt( + XDPSPrivContext /* wh */, + ContextPSID /* cid */, + DPSClientPrintProc /* printProc */); + +extern void DPSSendEOF( + XDPSPrivContext /* wh */, + ContextPSID /* cid */, + DPSClientPrintProc /* printProc */); + +extern void DPSSendTerminate( + XDPSPrivContext /* wh */, + ContextPSID /* cid */, + DPSClientPrintProc /* printProc */); + +extern void XDPSPrivZapDpy( + Display * /* dpy */); + +extern DPSNumFormat XDPSNumFormat (Display * /* dpy */); + + /* Determine the number format for server over the "dpy" connection. */ + +extern void XDPSSetProcs (void); + + /* Set pointers to raw and conversion context procs. */ + +extern void XDPSSetContextEncoding ( + DPSContext /* ctxt */, + DPSProgramEncoding /* progEncoding */, + DPSNameEncoding /* nameEncoding */); + + /* Sets context's program and name encodings to new values. */ + +extern void XDPSStatusEventHandler (XDPSLStatusEvent * /* event */); + + /* Is registered with Xlib and is called when a dps status event is + received. It determines what context the event belongs to and, + if that context has a status event handler, calls its handler + passing it the status type. */ + +extern void XDPSReadyEventHandler (XDPSLReadyEvent * /* event */); + + /* Is registered with Xlib and is called when a dps ready event is + received. It determines what context the event belongs to and, + if that context has a status event handler, calls its handler + passing it the ready data. */ + +extern void XDPSForceEvents (Display * /* dpy */); + + /* Forces processing of events that are pending over the 'dpy' + connection. This causes DPS events to be handled by their handlers. */ + +extern void XDPSSendUnfreeze (Display * /* dpy */, ContextXID /* cxid */); + +extern void DPSSendDestroySpace( + XDPSPrivContext /* wh */, + SpaceXID /* sxid */, + DPSClientPrintProc /* printProc */); + +#endif /* DPSXPRIVATE_H */ |