summaryrefslogtreecommitdiff
path: root/Build/source/libs/xpdf/xpdf/GlobalParams.h
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/libs/xpdf/xpdf/GlobalParams.h')
-rw-r--r--Build/source/libs/xpdf/xpdf/GlobalParams.h514
1 files changed, 0 insertions, 514 deletions
diff --git a/Build/source/libs/xpdf/xpdf/GlobalParams.h b/Build/source/libs/xpdf/xpdf/GlobalParams.h
deleted file mode 100644
index cd10e76b04c..00000000000
--- a/Build/source/libs/xpdf/xpdf/GlobalParams.h
+++ /dev/null
@@ -1,514 +0,0 @@
-//========================================================================
-//
-// GlobalParams.h
-//
-// Copyright 2001-2003 Glyph & Cog, LLC
-//
-//========================================================================
-
-/* ------------------------------------------------------------------------
-* Changed by Martin Schröder <martin@pdftex.org>
-* $Id: GlobalParams.h 421 2008-04-26 21:59:55Z oneiros $
-* Changelog:
-* ------------------------------------------------------------------------
-* r151 | ms | 2007-06-25 18:53:17 +0200 (Mo, 25 Jun 2007) | 3 lines
-*
-* Merging xpdf 3.02 from HEAD into stable
-* svn merge -r149:150 --dry-run svn+ssh://svn/srv/svn/repos/pdftex/trunk/source/src/libs/xpdf .
-*
-* ------------------------------------------------------------------------
-* r38 | ms | 2005-08-21 14:00:00 +0200 (So, 21 Aug 2005) | 2 lines
-*
-* 1.30.1
-*
-* ------------------------------------------------------------------------
-* r11 | ms | 2004-09-06 14:01:00 +0200 (Mo, 06 Sep 2004) | 2 lines
-*
-* 1.20a
-*
-* ------------------------------------------------------------------------
-* r6 | ms | 2003-10-06 14:01:00 +0200 (Mo, 06 Okt 2003) | 2 lines
-*
-* released v1.11b
-*
-* ------------------------------------------------------------------------
-* r4 | ms | 2003-10-05 14:00:00 +0200 (So, 05 Okt 2003) | 2 lines
-*
-* Moved sources to src
-*
-* ------------------------------------------------------------------------
-* r1 | ms | 2003-08-02 14:00:00 +0200 (Sa, 02 Aug 2003) | 1 line
-*
-* 1.11a
-* ------------------------------------------------------------------------ */
-
-#ifndef GLOBALPARAMS_H
-#define GLOBALPARAMS_H
-
-#include <aconf.h>
-
-#ifdef USE_GCC_PRAGMAS
-#pragma interface
-#endif
-
-#include <stdio.h>
-#include "gtypes.h"
-#include "CharTypes.h"
-
-#if MULTITHREADED
-#include "GMutex.h"
-#endif
-
-class GString;
-class GList;
-class GHash;
-class NameToCharCode;
-class CharCodeToUnicode;
-class CharCodeToUnicodeCache;
-class UnicodeMap;
-class UnicodeMapCache;
-class CMap;
-class CMapCache;
-struct XpdfSecurityHandler;
-class GlobalParams;
-#ifdef WIN32
-class WinFontList;
-#endif
-
-//------------------------------------------------------------------------
-
-// The global parameters object.
-extern GlobalParams *globalParams;
-
-//------------------------------------------------------------------------
-
-enum DisplayFontParamKind {
- displayFontT1,
- displayFontTT
-};
-
-struct DisplayFontParamT1 {
- GString *fileName;
-};
-
-struct DisplayFontParamTT {
- GString *fileName;
-};
-
-class DisplayFontParam {
-public:
-
- GString *name; // font name for 8-bit fonts and named
- // CID fonts; collection name for
- // generic CID fonts
- DisplayFontParamKind kind;
- union {
- DisplayFontParamT1 t1;
- DisplayFontParamTT tt;
- };
-
- DisplayFontParam(GString *nameA, DisplayFontParamKind kindA);
- virtual ~DisplayFontParam();
-};
-
-//------------------------------------------------------------------------
-
-class PSFontParam {
-public:
-
- GString *pdfFontName; // PDF font name for 8-bit fonts and
- // named 16-bit fonts; char collection
- // name for generic 16-bit fonts
- int wMode; // writing mode (0=horiz, 1=vert) for
- // 16-bit fonts
- GString *psFontName; // PostScript font name
- GString *encoding; // encoding, for 16-bit fonts only
-
- PSFontParam(GString *pdfFontNameA, int wModeA,
- GString *psFontNameA, GString *encodingA);
- ~PSFontParam();
-};
-
-//------------------------------------------------------------------------
-
-enum PSLevel {
- psLevel1,
- psLevel1Sep,
- psLevel2,
- psLevel2Sep,
- psLevel3,
- psLevel3Sep
-};
-
-//------------------------------------------------------------------------
-
-enum EndOfLineKind {
- eolUnix, // LF
- eolDOS, // CR+LF
- eolMac // CR
-};
-
-//------------------------------------------------------------------------
-
-enum ScreenType {
- screenUnset,
- screenDispersed,
- screenClustered,
- screenStochasticClustered
-};
-
-//------------------------------------------------------------------------
-
-#ifndef PDF_PARSER_ONLY
-class KeyBinding {
-public:
-
- int code; // 0x20 .. 0xfe = ASCII,
- // >=0x10000 = special keys, mouse buttons,
- // etc. (xpdfKeyCode* symbols)
- int mods; // modifiers (xpdfKeyMod* symbols, or-ed
- // together)
- int context; // context (xpdfKeyContext* symbols, or-ed
- // together)
- GList *cmds; // list of commands [GString]
-
- KeyBinding(int codeA, int modsA, int contextA, char *cmd0);
- KeyBinding(int codeA, int modsA, int contextA, char *cmd0, char *cmd1);
- KeyBinding(int codeA, int modsA, int contextA, GList *cmdsA);
- ~KeyBinding();
-};
-
-#define xpdfKeyCodeTab 0x1000
-#define xpdfKeyCodeReturn 0x1001
-#define xpdfKeyCodeEnter 0x1002
-#define xpdfKeyCodeBackspace 0x1003
-#define xpdfKeyCodeInsert 0x1004
-#define xpdfKeyCodeDelete 0x1005
-#define xpdfKeyCodeHome 0x1006
-#define xpdfKeyCodeEnd 0x1007
-#define xpdfKeyCodePgUp 0x1008
-#define xpdfKeyCodePgDn 0x1009
-#define xpdfKeyCodeLeft 0x100a
-#define xpdfKeyCodeRight 0x100b
-#define xpdfKeyCodeUp 0x100c
-#define xpdfKeyCodeDown 0x100d
-#define xpdfKeyCodeF1 0x1100
-#define xpdfKeyCodeF35 0x1122
-#define xpdfKeyCodeMousePress1 0x2001
-#define xpdfKeyCodeMousePress2 0x2002
-#define xpdfKeyCodeMousePress3 0x2003
-#define xpdfKeyCodeMousePress4 0x2004
-#define xpdfKeyCodeMousePress5 0x2005
-#define xpdfKeyCodeMousePress6 0x2006
-#define xpdfKeyCodeMousePress7 0x2007
-#define xpdfKeyCodeMouseRelease1 0x2101
-#define xpdfKeyCodeMouseRelease2 0x2102
-#define xpdfKeyCodeMouseRelease3 0x2103
-#define xpdfKeyCodeMouseRelease4 0x2104
-#define xpdfKeyCodeMouseRelease5 0x2105
-#define xpdfKeyCodeMouseRelease6 0x2106
-#define xpdfKeyCodeMouseRelease7 0x2107
-#define xpdfKeyModNone 0
-#define xpdfKeyModShift (1 << 0)
-#define xpdfKeyModCtrl (1 << 1)
-#define xpdfKeyModAlt (1 << 2)
-#define xpdfKeyContextAny 0
-#define xpdfKeyContextFullScreen (1 << 0)
-#define xpdfKeyContextWindow (2 << 0)
-#define xpdfKeyContextContinuous (1 << 2)
-#define xpdfKeyContextSinglePage (2 << 2)
-#define xpdfKeyContextOverLink (1 << 4)
-#define xpdfKeyContextOffLink (2 << 4)
-#define xpdfKeyContextOutline (1 << 6)
-#define xpdfKeyContextMainWin (2 << 6)
-#define xpdfKeyContextScrLockOn (1 << 8)
-#define xpdfKeyContextScrLockOff (2 << 8)
-#endif
-
-//------------------------------------------------------------------------
-
-class GlobalParams {
-public:
-
- // Initialize the global parameters by attempting to read a config
- // file.
- GlobalParams(char *cfgFileName);
-
- // Initialize it without reading the config
- GlobalParams();
-
- ~GlobalParams();
-
- void setBaseDir(char *dir);
- void setupBaseFonts(char *dir);
-
-#ifndef PDF_PARSER_ONLY
- void parseLine(char *buf, GString *fileName, int line);
-#endif
-
- //----- accessors
-
- CharCode getMacRomanCharCode(char *charName);
-
- GString *getBaseDir();
- Unicode mapNameToUnicode(char *charName);
- UnicodeMap *getResidentUnicodeMap(GString *encodingName);
- FILE *getUnicodeMapFile(GString *encodingName);
- FILE *findCMapFile(GString *collection, GString *cMapName);
- FILE *findToUnicodeFile(GString *name);
- DisplayFontParam *getDisplayFont(GString *fontName);
- DisplayFontParam *getDisplayCIDFont(GString *fontName, GString *collection);
- GString *getPSFile();
- int getPSPaperWidth();
- int getPSPaperHeight();
- void getPSImageableArea(int *llx, int *lly, int *urx, int *ury);
- GBool getPSDuplex();
- GBool getPSCrop();
- GBool getPSExpandSmaller();
- GBool getPSShrinkLarger();
- GBool getPSCenter();
- PSLevel getPSLevel();
- PSFontParam *getPSFont(GString *fontName);
- PSFontParam *getPSFont16(GString *fontName, GString *collection, int wMode);
- GBool getPSEmbedType1();
- GBool getPSEmbedTrueType();
- GBool getPSEmbedCIDPostScript();
- GBool getPSEmbedCIDTrueType();
- GBool getPSPreload();
- GBool getPSOPI();
- GBool getPSASCIIHex();
- GString *getTextEncodingName();
- EndOfLineKind getTextEOL();
- GBool getTextPageBreaks();
- GBool getTextKeepTinyChars();
- GString *findFontFile(GString *fontName, char **exts);
- GString *getInitialZoom();
- GBool getContinuousView();
- GBool getEnableT1lib();
- GBool getEnableFreeType();
- GBool getAntialias();
- GBool getVectorAntialias();
- GBool getStrokeAdjust();
- ScreenType getScreenType();
- int getScreenSize();
- int getScreenDotRadius();
- double getScreenGamma();
- double getScreenBlackThreshold();
- double getScreenWhiteThreshold();
- GString *getURLCommand() { return urlCommand; }
- GString *getMovieCommand() { return movieCommand; }
- GBool getMapNumericCharNames();
- GBool getMapUnknownCharNames();
-#ifndef PDF_PARSER_ONLY
- GList *getKeyBinding(int code, int mods, int context);
-#endif
- GBool getPrintCommands();
- GBool getErrQuiet();
-
- CharCodeToUnicode *getCIDToUnicode(GString *collection);
- CharCodeToUnicode *getUnicodeToUnicode(GString *fontName);
- UnicodeMap *getUnicodeMap(GString *encodingName);
- CMap *getCMap(GString *collection, GString *cMapName);
- UnicodeMap *getTextEncoding();
-
- //----- functions to set parameters
-
- void addDisplayFont(DisplayFontParam *param);
- void setPSFile(char *file);
- GBool setPSPaperSize(char *size);
- void setPSPaperWidth(int width);
- void setPSPaperHeight(int height);
- void setPSImageableArea(int llx, int lly, int urx, int ury);
- void setPSDuplex(GBool duplex);
- void setPSCrop(GBool crop);
- void setPSExpandSmaller(GBool expand);
- void setPSShrinkLarger(GBool shrink);
- void setPSCenter(GBool center);
- void setPSLevel(PSLevel level);
- void setPSEmbedType1(GBool embed);
- void setPSEmbedTrueType(GBool embed);
- void setPSEmbedCIDPostScript(GBool embed);
- void setPSEmbedCIDTrueType(GBool embed);
- void setPSPreload(GBool preload);
- void setPSOPI(GBool opi);
- void setPSASCIIHex(GBool hex);
- void setTextEncoding(char *encodingName);
- GBool setTextEOL(char *s);
- void setTextPageBreaks(GBool pageBreaks);
- void setTextKeepTinyChars(GBool keep);
- void setInitialZoom(char *s);
- void setContinuousView(GBool cont);
- GBool setEnableT1lib(char *s);
- GBool setEnableFreeType(char *s);
- GBool setAntialias(char *s);
- GBool setVectorAntialias(char *s);
- void setScreenType(ScreenType t);
- void setScreenSize(int size);
- void setScreenDotRadius(int r);
- void setScreenGamma(double gamma);
- void setScreenBlackThreshold(double thresh);
- void setScreenWhiteThreshold(double thresh);
- void setMapNumericCharNames(GBool map);
- void setMapUnknownCharNames(GBool map);
- void setPrintCommands(GBool printCommandsA);
- void setErrQuiet(GBool errQuietA);
-
- //----- security handlers
-
- void addSecurityHandler(XpdfSecurityHandler *handler);
- XpdfSecurityHandler *getSecurityHandler(char *name);
-
-private:
-
-#ifndef PDF_PARSER_ONLY
- void createDefaultKeyBindings();
-#endif
- void parseFile(GString *fileName, FILE *f);
- void parseNameToUnicode(GList *tokens, GString *fileName, int line);
- void parseCIDToUnicode(GList *tokens, GString *fileName, int line);
- void parseUnicodeToUnicode(GList *tokens, GString *fileName, int line);
- void parseUnicodeMap(GList *tokens, GString *fileName, int line);
- void parseCMapDir(GList *tokens, GString *fileName, int line);
- void parseToUnicodeDir(GList *tokens, GString *fileName, int line);
- void parseDisplayFont(GList *tokens, GHash *fontHash,
- DisplayFontParamKind kind,
- GString *fileName, int line);
- void parsePSFile(GList *tokens, GString *fileName, int line);
- void parsePSPaperSize(GList *tokens, GString *fileName, int line);
- void parsePSImageableArea(GList *tokens, GString *fileName, int line);
- void parsePSLevel(GList *tokens, GString *fileName, int line);
- void parsePSFont(GList *tokens, GString *fileName, int line);
- void parsePSFont16(char *cmdName, GList *fontList,
- GList *tokens, GString *fileName, int line);
- void parseTextEncoding(GList *tokens, GString *fileName, int line);
- void parseTextEOL(GList *tokens, GString *fileName, int line);
- void parseFontDir(GList *tokens, GString *fileName, int line);
- void parseInitialZoom(GList *tokens, GString *fileName, int line);
- void parseScreenType(GList *tokens, GString *fileName, int line);
-#ifndef PDF_PARSER_ONLY
- void parseBind(GList *tokens, GString *fileName, int line);
- void parseUnbind(GList *tokens, GString *fileName, int line);
- GBool parseKey(GString *modKeyStr, GString *contextStr,
- int *code, int *mods, int *context,
- char *cmdName,
- GList *tokens, GString *fileName, int line);
-#endif
- void parseCommand(char *cmdName, GString **val,
- GList *tokens, GString *fileName, int line);
- void parseYesNo(char *cmdName, GBool *flag,
- GList *tokens, GString *fileName, int line);
- GBool parseYesNo2(char *token, GBool *flag);
- void parseInteger(char *cmdName, int *val,
- GList *tokens, GString *fileName, int line);
- void parseFloat(char *cmdName, double *val,
- GList *tokens, GString *fileName, int line);
- UnicodeMap *getUnicodeMap2(GString *encodingName);
-#ifdef ENABLE_PLUGINS
- GBool loadPlugin(char *type, char *name);
-#endif
-
- //----- static tables
-
- NameToCharCode * // mapping from char name to
- macRomanReverseMap; // MacRomanEncoding index
-
- //----- user-modifiable settings
-
- GString *baseDir; // base directory - for plugins, etc.
- NameToCharCode * // mapping from char name to Unicode
- nameToUnicode;
- GHash *cidToUnicodes; // files for mappings from char collections
- // to Unicode, indexed by collection name
- // [GString]
- GHash *unicodeToUnicodes; // files for Unicode-to-Unicode mappings,
- // indexed by font name pattern [GString]
- GHash *residentUnicodeMaps; // mappings from Unicode to char codes,
- // indexed by encoding name [UnicodeMap]
- GHash *unicodeMaps; // files for mappings from Unicode to char
- // codes, indexed by encoding name [GString]
- GHash *cMapDirs; // list of CMap dirs, indexed by collection
- // name [GList[GString]]
- GList *toUnicodeDirs; // list of ToUnicode CMap dirs [GString]
- GHash *displayFonts; // display font info, indexed by font name
- // [DisplayFontParam]
-#ifdef WIN32
- WinFontList *winFontList; // system TrueType fonts
-#endif
- GHash *displayCIDFonts; // display CID font info, indexed by
- // collection [DisplayFontParam]
- GHash *displayNamedCIDFonts; // display CID font info, indexed by
- // font name [DisplayFontParam]
- GString *psFile; // PostScript file or command (for xpdf)
- int psPaperWidth; // paper size, in PostScript points, for
- int psPaperHeight; // PostScript output
- int psImageableLLX, // imageable area, in PostScript points,
- psImageableLLY, // for PostScript output
- psImageableURX,
- psImageableURY;
- GBool psCrop; // crop PS output to CropBox
- GBool psExpandSmaller; // expand smaller pages to fill paper
- GBool psShrinkLarger; // shrink larger pages to fit paper
- GBool psCenter; // center pages on the paper
- GBool psDuplex; // enable duplexing in PostScript?
- PSLevel psLevel; // PostScript level to generate
- GHash *psFonts; // PostScript font info, indexed by PDF
- // font name [PSFontParam]
- GList *psNamedFonts16; // named 16-bit fonts [PSFontParam]
- GList *psFonts16; // generic 16-bit fonts [PSFontParam]
- GBool psEmbedType1; // embed Type 1 fonts?
- GBool psEmbedTrueType; // embed TrueType fonts?
- GBool psEmbedCIDPostScript; // embed CID PostScript fonts?
- GBool psEmbedCIDTrueType; // embed CID TrueType fonts?
- GBool psPreload; // preload PostScript images and forms into
- // memory
- GBool psOPI; // generate PostScript OPI comments?
- GBool psASCIIHex; // use ASCIIHex instead of ASCII85?
- GString *textEncoding; // encoding (unicodeMap) to use for text
- // output
- EndOfLineKind textEOL; // type of EOL marker to use for text
- // output
- GBool textPageBreaks; // insert end-of-page markers?
- GBool textKeepTinyChars; // keep all characters in text output
- GList *fontDirs; // list of font dirs [GString]
- GString *initialZoom; // initial zoom level
- GBool continuousView; // continuous view mode
- GBool enableT1lib; // t1lib enable flag
- GBool enableFreeType; // FreeType enable flag
- GBool antialias; // font anti-aliasing enable flag
- GBool vectorAntialias; // vector anti-aliasing enable flag
- GBool strokeAdjust; // stroke adjustment enable flag
- ScreenType screenType; // halftone screen type
- int screenSize; // screen matrix size
- int screenDotRadius; // screen dot radius
- double screenGamma; // screen gamma correction
- double screenBlackThreshold; // screen black clamping threshold
- double screenWhiteThreshold; // screen white clamping threshold
- GString *urlCommand; // command executed for URL links
- GString *movieCommand; // command executed for movie annotations
- GBool mapNumericCharNames; // map numeric char names (from font subsets)?
- GBool mapUnknownCharNames; // map unknown char names?
-#ifndef PDF_PARSER_ONLY
- GList *keyBindings; // key & mouse button bindings [KeyBinding]
-#endif
- GBool printCommands; // print the drawing commands
- GBool errQuiet; // suppress error messages?
-
- CharCodeToUnicodeCache *cidToUnicodeCache;
- CharCodeToUnicodeCache *unicodeToUnicodeCache;
- UnicodeMapCache *unicodeMapCache;
- CMapCache *cMapCache;
-
-#ifdef ENABLE_PLUGINS
- GList *plugins; // list of plugins [Plugin]
- GList *securityHandlers; // list of loaded security handlers
- // [XpdfSecurityHandler]
-#endif
-
-#if MULTITHREADED
- GMutex mutex;
- GMutex unicodeMapCacheMutex;
- GMutex cMapCacheMutex;
-#endif
-};
-
-#endif