From a2c42ce6150c4072613a6fc9fa0dc064dbf0a15d Mon Sep 17 00:00:00 2001 From: Tom Sepez Date: Wed, 25 Nov 2015 15:52:28 -0800 Subject: Manual fixups to PDF_ENABLE_XFA in core/ R=thestig@chromium.org Review URL: https://codereview.chromium.org/1477663003 . --- core/include/fpdfdoc/fpdf_doc.h | 2 +- core/include/fxcodec/fx_codec.h | 44 +++++++------------ core/include/fxcodec/fx_codec_def.h | 24 +++++------ core/include/fxcrt/fx_basic.h | 10 ++--- core/include/fxcrt/fx_ext.h | 9 +--- core/include/fxcrt/fx_stream.h | 2 +- core/include/fxcrt/fx_ucd.h | 84 +++++++++++++++++-------------------- core/include/fxge/fx_font.h | 31 +++++++------- 8 files changed, 87 insertions(+), 119 deletions(-) (limited to 'core/include') diff --git a/core/include/fpdfdoc/fpdf_doc.h b/core/include/fpdfdoc/fpdf_doc.h index 3f05fc9be9..7a81fd6b6f 100644 --- a/core/include/fpdfdoc/fpdf_doc.h +++ b/core/include/fpdfdoc/fpdf_doc.h @@ -831,8 +831,8 @@ class CPDF_FormField { int InsertOption(CFX_WideString csOptLabel, int index = -1, FX_BOOL bNotify = FALSE); +#endif // PDF_ENABLE_XFA -#endif FX_FLOAT GetFontSize() { return m_FontSize; } CPDF_Font* GetFont() { return m_pFont; } diff --git a/core/include/fxcodec/fx_codec.h b/core/include/fxcodec/fx_codec.h index 54d185a8ce..e7aeaf939b 100644 --- a/core/include/fxcodec/fx_codec.h +++ b/core/include/fxcodec/fx_codec.h @@ -7,42 +7,26 @@ #ifndef CORE_INCLUDE_FXCODEC_FX_CODEC_H_ #define CORE_INCLUDE_FXCODEC_FX_CODEC_H_ -#ifdef PDF_ENABLE_XFA #include -#endif #include +#include "core/include/fxcodec/fx_codec_def.h" #include "core/include/fxcrt/fx_basic.h" -#include "fx_codec_def.h" +#include "core/include/fxcrt/fx_coordinates.h" // For FX_RECT. #include "third_party/base/nonstd_unique_ptr.h" -#ifdef PDF_ENABLE_XFA -#include "../fxcrt/fx_coordinates.h" // For FX_RECT. - -#endif class CFX_DIBSource; class CJPX_Decoder; class CPDF_PrivateData; class CPDF_StreamAcc; -#ifndef PDF_ENABLE_XFA -class ICodec_ScanlineDecoder; -#endif class ICodec_BasicModule; class ICodec_FaxModule; -#ifdef PDF_ENABLE_XFA class ICodec_FlateModule; class ICodec_IccModule; class ICodec_Jbig2Encoder; class ICodec_Jbig2Module; -#endif class ICodec_JpegModule; class ICodec_JpxModule; -#ifndef PDF_ENABLE_XFA -class ICodec_Jbig2Module; -class ICodec_IccModule; -class ICodec_FlateModule; -class ICodec_Jbig2Encoder; -#endif class ICodec_ScanlineDecoder; #ifdef PDF_ENABLE_XFA @@ -51,7 +35,9 @@ class ICodec_GifModule; class ICodec_PngModule; class ICodec_ProgressiveDecoder; class ICodec_TiffModule; +#endif // PDF_ENABLE_XFA +#ifdef PDF_ENABLE_XFA class CFX_DIBAttribute { public: CFX_DIBAttribute(); @@ -70,8 +56,8 @@ class CFX_DIBAttribute { int32_t m_nBmpCompressType; std::map m_Exif; }; +#endif // PDF_ENABLE_XFA -#endif class CCodec_ModuleMgr { public: CCodec_ModuleMgr(); @@ -90,8 +76,8 @@ class CCodec_ModuleMgr { ICodec_GifModule* GetGifModule() const { return m_pGifModule.get(); } ICodec_BmpModule* GetBmpModule() const { return m_pBmpModule.get(); } ICodec_TiffModule* GetTiffModule() const { return m_pTiffModule.get(); } +#endif // PDF_ENABLE_XFA -#endif protected: nonstd::unique_ptr m_pBasicModule; nonstd::unique_ptr m_pFaxModule; @@ -99,14 +85,13 @@ class CCodec_ModuleMgr { nonstd::unique_ptr m_pJpxModule; nonstd::unique_ptr m_pJbig2Module; nonstd::unique_ptr m_pIccModule; - nonstd::unique_ptr m_pFlateModule; #ifdef PDF_ENABLE_XFA - nonstd::unique_ptr m_pPngModule; nonstd::unique_ptr m_pGifModule; nonstd::unique_ptr m_pBmpModule; nonstd::unique_ptr m_pTiffModule; -#endif +#endif // PDF_ENABLE_XFA + nonstd::unique_ptr m_pFlateModule; }; class ICodec_BasicModule { public: @@ -247,15 +232,18 @@ class ICodec_JpegModule { const uint8_t* src_buf, FX_DWORD src_size) = 0; +#ifdef PDF_ENABLE_XFA virtual int ReadHeader(void* pContext, int* width, int* height, -#ifndef PDF_ENABLE_XFA - int* nComps) = 0; -#else int* nComps, CFX_DIBAttribute* pAttribute) = 0; -#endif +#else // PDF_ENABLE_XFA + virtual int ReadHeader(void* pContext, + int* width, + int* height, + int* nComps) = 0; +#endif // PDF_ENABLE_XFA virtual int StartScanline(void* pContext, int down_scale) = 0; @@ -465,7 +453,7 @@ class ICodec_ProgressiveDecoder { virtual FXCODEC_STATUS ContinueDecode(IFX_Pause* pPause = NULL) = 0; }; -#endif +#endif // PDF_ENABLE_XFA class ICodec_Jbig2Encoder { public: virtual ~ICodec_Jbig2Encoder() {} diff --git a/core/include/fxcodec/fx_codec_def.h b/core/include/fxcodec/fx_codec_def.h index 6dd4d0d309..99ccf15f0f 100644 --- a/core/include/fxcodec/fx_codec_def.h +++ b/core/include/fxcodec/fx_codec_def.h @@ -7,17 +7,6 @@ #ifndef CORE_INCLUDE_FXCODEC_FX_CODEC_DEF_H_ #define CORE_INCLUDE_FXCODEC_FX_CODEC_DEF_H_ -#ifdef PDF_ENABLE_XFA -enum FXCODEC_IMAGE_TYPE { - FXCODEC_IMAGE_UNKNOWN = 0, - FXCODEC_IMAGE_BMP, - FXCODEC_IMAGE_JPG, - FXCODEC_IMAGE_PNG, - FXCODEC_IMAGE_GIF, - FXCODEC_IMAGE_TIF, - FXCODEC_IMAGE_MAX -}; -#endif enum FXCODEC_STATUS { FXCODEC_STATUS_ERROR = -1, FXCODEC_STATUS_FRAME_READY, @@ -27,7 +16,7 @@ enum FXCODEC_STATUS { FXCODEC_STATUS_DECODE_FINISH, #ifdef PDF_ENABLE_XFA FXCODEC_STATUS_ERR_MEMORY, -#endif +#endif // PDF_ENABLE_XFA FXCODEC_STATUS_ERR_READ, FXCODEC_STATUS_ERR_FLUSH, FXCODEC_STATUS_ERR_FORMAT, @@ -73,13 +62,22 @@ enum FXCODEC_STATUS { #define Icc_PARAMTYPE_BUFFER 1 #define Icc_PARAMTYPE_PARAM 2 #ifdef PDF_ENABLE_XFA +enum FXCODEC_IMAGE_TYPE { + FXCODEC_IMAGE_UNKNOWN = 0, + FXCODEC_IMAGE_BMP, + FXCODEC_IMAGE_JPG, + FXCODEC_IMAGE_PNG, + FXCODEC_IMAGE_GIF, + FXCODEC_IMAGE_TIF, + FXCODEC_IMAGE_MAX +}; enum FXCODEC_RESUNIT { FXCODEC_RESUNIT_NONE = 0, FXCODEC_RESUNIT_INCH, FXCODEC_RESUNIT_CENTIMETER, FXCODEC_RESUNIT_METER }; -#endif +#endif // PDF_ENABLE_XFA #define EXIFTAG_USHORT_RESUNIT 296 #define EXIFTAG_FLOAT_DPIX 282 #define EXIFTAG_FLOAT_DPIY 283 diff --git a/core/include/fxcrt/fx_basic.h b/core/include/fxcrt/fx_basic.h index 710bbcc3c3..e35084c3e8 100644 --- a/core/include/fxcrt/fx_basic.h +++ b/core/include/fxcrt/fx_basic.h @@ -193,7 +193,7 @@ class CFX_ArchiveLoader { FX_DWORD m_LoadingSize; }; -#endif +#endif // PDF_ENABLE_XFA class IFX_BufferArchive { public: @@ -441,7 +441,7 @@ typedef CFX_ArrayTemplate CFX_FileSizeArray; #ifdef PDF_ENABLE_XFA typedef CFX_ArrayTemplate CFX_FloatArray; typedef CFX_ArrayTemplate CFX_Int32Array; -#endif +#endif // PDF_ENABLE_XFA template class CFX_ObjectArray : public CFX_BasicArray { @@ -728,9 +728,7 @@ class CFX_MapPtrTemplate : public CFX_MapPtrToPtr { FX_BOOL RemoveKey(KeyType key) { return CFX_MapPtrToPtr::RemoveKey((void*)(uintptr_t)key); } -#endif -#ifdef PDF_ENABLE_XFA void GetNextAssoc(FX_POSITION& rNextPosition, KeyType& rKey, ValueType& rValue) const { @@ -741,7 +739,7 @@ class CFX_MapPtrTemplate : public CFX_MapPtrToPtr { rValue = (ValueType)(uintptr_t)pValue; } }; -#endif +#endif // PDF_ENABLE_XFA class CFX_CMapByteStringToPtr { public: CFX_CMapByteStringToPtr(); @@ -1203,7 +1201,7 @@ class IFX_Unknown { virtual FX_DWORD AddRef() = 0; }; #define FX_IsOdd(a) ((a)&1) -#endif +#endif // PDF_ENABLE_XFA class CFX_Vector_3by1 { public: diff --git a/core/include/fxcrt/fx_ext.h b/core/include/fxcrt/fx_ext.h index 908d6c3fe5..48801bb196 100644 --- a/core/include/fxcrt/fx_ext.h +++ b/core/include/fxcrt/fx_ext.h @@ -10,10 +10,7 @@ #include #include -#ifdef PDF_ENABLE_XFA -#include "fx_string.h" -#endif -#include "fx_system.h" +#include "core/include/fxcrt/fx_basic.h" FX_FLOAT FXSYS_tan(FX_FLOAT a); FX_FLOAT FXSYS_logb(FX_FLOAT b, FX_FLOAT x); @@ -86,14 +83,12 @@ typedef struct FX_GUID { uint8_t data4[8]; } FX_GUID, *FX_LPGUID; typedef FX_GUID const* FX_LPCGUID; - void FX_GUID_CreateV4(FX_LPGUID pGUID); - void FX_GUID_ToString(FX_LPCGUID pGUID, CFX_ByteString& bsStr, FX_BOOL bSeparator = TRUE); +#endif // PDF_ENABLE_XFA -#endif template class CFX_SSortTemplate { public: diff --git a/core/include/fxcrt/fx_stream.h b/core/include/fxcrt/fx_stream.h index 300bfb1941..a5bec7f51b 100644 --- a/core/include/fxcrt/fx_stream.h +++ b/core/include/fxcrt/fx_stream.h @@ -137,8 +137,8 @@ class IFX_FileAccess { virtual IFX_FileStream* CreateFileStream(FX_DWORD dwModes) = 0; }; IFX_FileAccess* FX_CreateDefaultFileAccess(const CFX_WideStringC& wsPath); +#endif // PDF_ENABLE_XFA -#endif class IFX_MemoryStream : public IFX_FileStream { public: virtual FX_BOOL IsConsecutive() const = 0; diff --git a/core/include/fxcrt/fx_ucd.h b/core/include/fxcrt/fx_ucd.h index 852a893843..27812de13d 100644 --- a/core/include/fxcrt/fx_ucd.h +++ b/core/include/fxcrt/fx_ucd.h @@ -7,11 +7,44 @@ #ifndef CORE_INCLUDE_FXCRT_FX_UCD_H_ #define CORE_INCLUDE_FXCRT_FX_UCD_H_ -#ifndef PDF_ENABLE_XFA -#include "fx_system.h" -#else #include "fx_basic.h" -#endif + +#define FX_BIDICLASSBITS 6 +#define FX_BIDICLASSBITSMASK (31 << FX_BIDICLASSBITS) +enum FX_BIDICLASS { + FX_BIDICLASS_ON = 0, // Other Neutral + FX_BIDICLASS_L = 1, // Left Letter + FX_BIDICLASS_R = 2, // Right Letter + FX_BIDICLASS_AN = 3, // Arabic Number + FX_BIDICLASS_EN = 4, // European Number + FX_BIDICLASS_AL = 5, // Arabic Letter + FX_BIDICLASS_NSM = 6, // Non-spacing Mark + FX_BIDICLASS_CS = 7, // Common Number Separator + FX_BIDICLASS_ES = 8, // European Separator + FX_BIDICLASS_ET = 9, // European Number Terminator + FX_BIDICLASS_BN = 10, // Boundary Neutral + FX_BIDICLASS_S = 11, // Segment Separator + FX_BIDICLASS_WS = 12, // Whitespace + FX_BIDICLASS_B = 13, // Paragraph Separator + FX_BIDICLASS_RLO = 14, // Right-to-Left Override + FX_BIDICLASS_RLE = 15, // Right-to-Left Embedding + FX_BIDICLASS_LRO = 16, // Left-to-Right Override + FX_BIDICLASS_LRE = 17, // Left-to-Right Embedding + FX_BIDICLASS_PDF = 18, // Pop Directional Format + FX_BIDICLASS_N = FX_BIDICLASS_ON, +}; + +extern const FX_DWORD kTextLayoutCodeProperties[]; +extern const size_t kTextLayoutCodePropertiesSize; + +extern const FX_WCHAR kFXTextLayoutVerticalMirror[]; +extern const size_t kFXTextLayoutVerticalMirrorSize; + +extern const FX_WCHAR kFXTextLayoutBidiMirror[]; +extern const size_t kFXTextLayoutBidiMirrorSize; + +FX_DWORD FX_GetUnicodeProperties(FX_WCHAR wch); +FX_WCHAR FX_GetMirrorChar(FX_WCHAR wch, FX_BOOL bRTL, FX_BOOL bVertical); #ifdef PDF_ENABLE_XFA enum FX_CHARBREAKPROP { @@ -55,42 +88,7 @@ enum FX_CHARBREAKPROP { FX_CBP_TB = 37, FX_CBP_NONE = 36, }; -#endif -#define FX_BIDICLASSBITS 6 -#define FX_BIDICLASSBITSMASK (31 << FX_BIDICLASSBITS) -enum FX_BIDICLASS { - FX_BIDICLASS_ON = 0, // Other Neutral - FX_BIDICLASS_L = 1, // Left Letter - FX_BIDICLASS_R = 2, // Right Letter - FX_BIDICLASS_AN = 3, // Arabic Number - FX_BIDICLASS_EN = 4, // European Number - FX_BIDICLASS_AL = 5, // Arabic Letter - FX_BIDICLASS_NSM = 6, // Non-spacing Mark - FX_BIDICLASS_CS = 7, // Common Number Separator - FX_BIDICLASS_ES = 8, // European Separator - FX_BIDICLASS_ET = 9, // European Number Terminator - FX_BIDICLASS_BN = 10, // Boundary Neutral - FX_BIDICLASS_S = 11, // Segment Separator - FX_BIDICLASS_WS = 12, // Whitespace - FX_BIDICLASS_B = 13, // Paragraph Separator - FX_BIDICLASS_RLO = 14, // Right-to-Left Override - FX_BIDICLASS_RLE = 15, // Right-to-Left Embedding - FX_BIDICLASS_LRO = 16, // Left-to-Right Override - FX_BIDICLASS_LRE = 17, // Left-to-Right Embedding - FX_BIDICLASS_PDF = 18, // Pop Directional Format - FX_BIDICLASS_N = FX_BIDICLASS_ON, -}; - -extern const FX_DWORD kTextLayoutCodeProperties[]; -extern const size_t kTextLayoutCodePropertiesSize; - -extern const FX_WCHAR kFXTextLayoutVerticalMirror[]; -extern const size_t kFXTextLayoutVerticalMirrorSize; -extern const FX_WCHAR kFXTextLayoutBidiMirror[]; -extern const size_t kFXTextLayoutBidiMirrorSize; - -#ifdef PDF_ENABLE_XFA #define FX_CHARTYPEBITS 11 #define FX_CHARTYPEBITSMASK (15 << FX_CHARTYPEBITS) enum FX_CHARTYPE { @@ -109,13 +107,7 @@ enum FX_CHARTYPE { FX_CHARTYPE_Arabic = (12 << FX_CHARTYPEBITS), }; -#endif -FX_DWORD FX_GetUnicodeProperties(FX_WCHAR wch); -#ifdef PDF_ENABLE_XFA FX_BOOL FX_IsCtrlCode(FX_WCHAR ch); -#endif -FX_WCHAR FX_GetMirrorChar(FX_WCHAR wch, FX_BOOL bRTL, FX_BOOL bVertical); -#ifdef PDF_ENABLE_XFA FX_WCHAR FX_GetMirrorChar(FX_WCHAR wch, FX_DWORD dwProps, FX_BOOL bRTL, @@ -194,6 +186,6 @@ class CFX_RTFChar : public CFX_Char { IFX_Unknown* m_pUserData; }; typedef CFX_ArrayTemplate CFX_RTFCharArray; -#endif +#endif // PDF_ENABLE_XFA #endif // CORE_INCLUDE_FXCRT_FX_UCD_H_ diff --git a/core/include/fxge/fx_font.h b/core/include/fxge/fx_font.h index 5b31126b3e..0f35115eee 100644 --- a/core/include/fxge/fx_font.h +++ b/core/include/fxge/fx_font.h @@ -36,7 +36,7 @@ class IFX_SystemFontInfo; #define FXFONT_CIDFONT 0x100000 #ifdef PDF_ENABLE_XFA #define FXFONT_EXACTMATCH 0x80000000 -#endif +#endif // PDF_ENABLE_XFA #define FXFONT_ANSI_CHARSET 0 #define FXFONT_DEFAULT_CHARSET 1 #define FXFONT_SYMBOL_CHARSET 2 @@ -71,23 +71,21 @@ class CFX_Font { int CharsetCP, FX_BOOL bVertical = FALSE); FX_BOOL LoadEmbedded(const uint8_t* data, FX_DWORD size); -#ifdef PDF_ENABLE_XFA + FXFT_Face GetFace() const { return m_Face; } +#ifdef PDF_ENABLE_XFA FX_BOOL LoadFile(IFX_FileRead* pFile, int nFaceIndex = 0, int* pFaceCount = NULL); FX_BOOL LoadClone(const CFX_Font* pFont); - -#endif - FXFT_Face GetFace() const { return m_Face; } -#ifndef PDF_ENABLE_XFA - const CFX_SubstFont* GetSubstFont() const { return m_pSubstFont; } -#else CFX_SubstFont* GetSubstFont() const { return m_pSubstFont; } void SetFace(FXFT_Face face) { m_Face = face; } void SetSubstFont(CFX_SubstFont* subst) { m_pSubstFont = subst; } -#endif +#else // PDF_ENABLE_XFA + const CFX_SubstFont* GetSubstFont() const { return m_pSubstFont; } +#endif // PDF_ENABLE_XFA + CFX_PathData* LoadGlyphPath(FX_DWORD glyph_index, int dest_width = 0); int GetGlyphWidth(FX_DWORD glyph_index); int GetAscent() const; @@ -133,12 +131,12 @@ class CFX_Font { FX_BOOL m_bDwLoaded; FX_BOOL m_bEmbedded; FX_BOOL m_bVertical; -#ifdef PDF_ENABLE_XFA +#ifdef PDF_ENABLE_XFA protected: FX_BOOL m_bLogic; void* m_pOwnedStream; -#endif +#endif // PDF_ENABLE_XFA }; #define ENCODING_INTERNAL 0 @@ -162,8 +160,8 @@ class CFX_Font { #define FXFM_ENCODING_ADOBE_LATIN_1 FXFM_ENC_TAG('l', 'a', 't', '1') #define FXFM_ENCODING_OLD_LATIN_2 FXFM_ENC_TAG('l', 'a', 't', '2') #define FXFM_ENCODING_APPLE_ROMAN FXFM_ENC_TAG('a', 'r', 'm', 'n') +#endif // PDF_ENABLE_XFA -#endif class CFX_UnicodeEncoding { public: explicit CFX_UnicodeEncoding(CFX_Font* pFont); @@ -190,12 +188,11 @@ class CFX_UnicodeEncodingEx : public CFX_UnicodeEncoding { private: FX_DWORD m_nEncodingID; }; - CFX_UnicodeEncodingEx* FX_CreateFontEncodingEx( CFX_Font* pFont, FX_DWORD nEncodingID = FXFM_ENCODING_NONE); +#endif // PDF_ENABLE_XFA -#endif #define FXFONT_SUBST_MM 0x01 #define FXFONT_SUBST_GLYPHPATH 0x04 #define FXFONT_SUBST_CLEARTYPE 0x08 @@ -327,7 +324,7 @@ class CFX_FontMapper { int weight, int italic_angle); FX_BOOL IsBuiltinFace(const FXFT_Face face) const; -#endif +#endif // PDF_ENABLE_XFA private: static const size_t MM_FACE_COUNT = 2; @@ -371,7 +368,7 @@ class IFX_SystemFontInfo { int pitch_family) { return NULL; } -#endif +#endif // PDF_ENABLE_XFA virtual void* GetFont(const FX_CHAR* face) = 0; virtual FX_DWORD GetFontData(void* hFont, FX_DWORD table, @@ -407,7 +404,7 @@ class CFX_FolderFontInfo : public IFX_SystemFontInfo { int weight, FX_BOOL bItalic, int pitch_family) override; -#endif +#endif // PDF_ENABLE_XFA void* GetFont(const FX_CHAR* face) override; FX_DWORD GetFontData(void* hFont, FX_DWORD table, -- cgit v1.2.3