OSDN Git Service

Please enter the commit message for your changes. Lines starting
[eos/base.git] / util / src / TclTk / blt2.5 / generic / bltPs.h
diff --git a/util/src/TclTk/blt2.5/generic/bltPs.h b/util/src/TclTk/blt2.5/generic/bltPs.h
new file mode 100644 (file)
index 0000000..54fd99c
--- /dev/null
@@ -0,0 +1,154 @@
+/*
+ * bltPs.h --
+ *
+ * Copyright 1993-1998 Lucent Technologies, Inc.
+ *
+ * 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 notice appear in all
+ * copies and that both that the copyright notice and warranty
+ * disclaimer appear in supporting documentation, and that the names
+ * of Lucent Technologies any of their entities not be used in
+ * advertising or publicity pertaining to distribution of the software
+ * without specific, written prior permission.
+ *
+ * Lucent Technologies disclaims all warranties with regard to this
+ * software, including all implied warranties of merchantability and
+ * fitness.  In no event shall Lucent Technologies be liable 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 tortuous action, arising
+ * out of or in connection with the use or performance of this
+ * software.
+ */
+
+#ifndef _BLT_PS_H
+#define _BLT_PS_H
+
+#include "bltImage.h"
+
+typedef enum {
+    PS_MODE_MONOCHROME,
+    PS_MODE_GREYSCALE,
+    PS_MODE_COLOR
+} PsColorMode;
+
+typedef struct PsTokenStruct *PsToken;
+
+struct PsTokenStruct {
+    Tcl_Interp *interp;                /* Interpreter to report errors to. */
+
+    Tk_Window tkwin;           /* Tk_Window used to get font and color
+                                * information */
+
+    Tcl_DString dString;       /* Dynamic string used to contain the
+                                * PostScript generated. */
+
+    char *fontVarName;         /* Name of a Tcl array variable to convert
+                                * X font names to PostScript fonts. */
+
+    char *colorVarName;                /* Name of a Tcl array variable to convert
+                                * X color names to PostScript. */
+
+    PsColorMode colorMode;     /* Mode: color or greyscale */
+
+#define PSTOKEN_BUFSIZ ((BUFSIZ*2)-1)
+    /*
+     * Utility space for building strings.  Currently used to create
+     * PostScript output for the "postscript" command.
+     */
+    char scratchArr[PSTOKEN_BUFSIZ+1];
+};
+
+extern PsToken Blt_GetPsToken _ANSI_ARGS_((Tcl_Interp *interp, 
+                          Tk_Window tkwin));
+
+extern void Blt_ReleasePsToken _ANSI_ARGS_((PsToken psToken));
+
+extern char *Blt_PostScriptFromToken _ANSI_ARGS_((PsToken psToken));
+extern char *Blt_ScratchBufferFromToken _ANSI_ARGS_((PsToken psToken));
+
+extern void Blt_AppendToPostScript _ANSI_ARGS_(TCL_VARARGS(PsToken, psToken));
+
+extern void Blt_FormatToPostScript _ANSI_ARGS_(TCL_VARARGS(PsToken, psToken));
+
+extern void Blt_Draw3DRectangleToPostScript _ANSI_ARGS_((PsToken psToken,
+       Tk_3DBorder border, double x, double y, int width, int height,
+       int borderWidth, int relief));
+
+extern void Blt_Fill3DRectangleToPostScript _ANSI_ARGS_((PsToken psToken,
+       Tk_3DBorder border, double x, double y, int width, int height,
+       int borderWidth, int relief));
+
+extern void Blt_BackgroundToPostScript _ANSI_ARGS_((PsToken psToken,
+       XColor *colorPtr));
+
+extern void Blt_BitmapDataToPostScript _ANSI_ARGS_((PsToken psToken,
+       Display *display, Pixmap bitmap, int width, int height));
+
+extern void Blt_ClearBackgroundToPostScript _ANSI_ARGS_((PsToken psToken));
+
+extern int Blt_ColorImageToPsData _ANSI_ARGS_((Blt_ColorImage image,
+       int nComponents, Tcl_DString * resultPtr, char *prefix));
+
+extern void Blt_ColorImageToPostScript _ANSI_ARGS_((PsToken psToken,
+       Blt_ColorImage image, double x, double y));
+
+extern void Blt_ForegroundToPostScript _ANSI_ARGS_((PsToken psToken,
+       XColor *colorPtr));
+
+extern void Blt_FontToPostScript _ANSI_ARGS_((PsToken psToken, Tk_Font font));
+
+extern void Blt_WindowToPostScript _ANSI_ARGS_((PsToken psToken,
+       Tk_Window tkwin, double x, double y));
+
+extern void Blt_LineDashesToPostScript _ANSI_ARGS_((PsToken psToken,
+       Blt_Dashes *dashesPtr));
+
+extern void Blt_LineWidthToPostScript _ANSI_ARGS_((PsToken psToken,
+       int lineWidth));
+
+extern void Blt_PathToPostScript _ANSI_ARGS_((PsToken psToken,
+       Point2D *screenPts, int nScreenPts));
+
+extern void Blt_PhotoToPostScript _ANSI_ARGS_((PsToken psToken,
+       Tk_PhotoHandle photoToken, double x, double y));
+
+extern void Blt_PolygonToPostScript _ANSI_ARGS_((PsToken psToken,
+       Point2D *screenPts, int nScreenPts));
+
+extern void Blt_LineToPostScript _ANSI_ARGS_((PsToken psToken, 
+       XPoint *pointArr, int nPoints));
+
+extern void Blt_TextToPostScript _ANSI_ARGS_((PsToken psToken, char *string,
+       TextStyle *attrPtr, double x, double y));
+
+extern void Blt_RectangleToPostScript _ANSI_ARGS_((PsToken psToken, double x,
+       double y, int width, int height));
+
+extern void Blt_RegionToPostScript _ANSI_ARGS_((PsToken psToken, double x,
+       double y, int width, int height));
+
+extern void Blt_RectanglesToPostScript _ANSI_ARGS_((PsToken psToken,
+       XRectangle *rectArr, int nRects));
+
+extern void Blt_BitmapToPostScript _ANSI_ARGS_((PsToken psToken, 
+       Display *display, Pixmap bitmap, double scaleX, double scaleY));
+
+extern void Blt_SegmentsToPostScript _ANSI_ARGS_((PsToken psToken,
+       XSegment *segArr, int nSegs));
+
+extern void Blt_StippleToPostScript _ANSI_ARGS_((PsToken psToken,
+       Display *display, Pixmap bitmap));
+
+extern void Blt_LineAttributesToPostScript _ANSI_ARGS_((PsToken psToken,
+       XColor *colorPtr, int lineWidth, Blt_Dashes *dashesPtr, int capStyle,
+       int joinStyle));
+
+extern int Blt_FileToPostScript _ANSI_ARGS_((PsToken psToken,
+       char *fileName));
+
+extern void Blt_2DSegmentsToPostScript _ANSI_ARGS_((PsToken psToken, 
+       Segment2D *segments, int nSegments));
+
+#endif /* BLT_PS_H */