| Index: core/include/fpdfdoc/fpdf_doc.h
|
| diff --git a/core/include/fpdfdoc/fpdf_doc.h b/core/include/fpdfdoc/fpdf_doc.h
|
| index fc9d3bce878e61c3682bfd7e4106423d1d394fe6..18dc7aa06419696e81797d84e0c23d1e5053205b 100644
|
| --- a/core/include/fpdfdoc/fpdf_doc.h
|
| +++ b/core/include/fpdfdoc/fpdf_doc.h
|
| @@ -42,1663 +42,1220 @@ class CPDF_TextObject;
|
| class CPDF_ViewerPreferences;
|
| class CXML_Element;
|
|
|
| -class CPDF_NameTree
|
| -{
|
| -public:
|
| +class CPDF_NameTree {
|
| + public:
|
| + CPDF_NameTree(CPDF_Dictionary* pRoot) { m_pRoot = pRoot; }
|
|
|
| - CPDF_NameTree(CPDF_Dictionary* pRoot)
|
| - {
|
| - m_pRoot = pRoot;
|
| - }
|
| + CPDF_NameTree(CPDF_Document* pDoc, const CFX_ByteStringC& category);
|
|
|
| - CPDF_NameTree(CPDF_Document* pDoc, const CFX_ByteStringC& category);
|
| + CPDF_Object* LookupValue(int nIndex, CFX_ByteString& csName) const;
|
|
|
| - CPDF_Object* LookupValue(int nIndex, CFX_ByteString& csName) const;
|
| + CPDF_Object* LookupValue(const CFX_ByteString& csName) const;
|
|
|
| - CPDF_Object* LookupValue(const CFX_ByteString& csName) const;
|
| + CPDF_Array* LookupNamedDest(CPDF_Document* pDoc,
|
| + const CFX_ByteStringC& sName);
|
|
|
| - CPDF_Array* LookupNamedDest(CPDF_Document* pDoc, const CFX_ByteStringC& sName);
|
| + int GetIndex(const CFX_ByteString& csName) const;
|
|
|
| - int GetIndex(const CFX_ByteString& csName) const;
|
| + int GetCount() const;
|
|
|
| - int GetCount() const;
|
| + CPDF_Dictionary* GetRoot() const { return m_pRoot; }
|
|
|
| -
|
| - CPDF_Dictionary* GetRoot() const
|
| - {
|
| - return m_pRoot;
|
| - }
|
| -
|
| -protected:
|
| -
|
| - CPDF_Dictionary* m_pRoot;
|
| + protected:
|
| + CPDF_Dictionary* m_pRoot;
|
| };
|
| -class CPDF_BookmarkTree
|
| -{
|
| -public:
|
| - CPDF_BookmarkTree(CPDF_Document* pDoc) : m_pDocument(pDoc) {}
|
| +class CPDF_BookmarkTree {
|
| + public:
|
| + CPDF_BookmarkTree(CPDF_Document* pDoc) : m_pDocument(pDoc) {}
|
|
|
| - CPDF_Bookmark GetFirstChild(const CPDF_Bookmark& parent) const;
|
| + CPDF_Bookmark GetFirstChild(const CPDF_Bookmark& parent) const;
|
|
|
| - CPDF_Bookmark GetNextSibling(const CPDF_Bookmark& bookmark) const;
|
| + CPDF_Bookmark GetNextSibling(const CPDF_Bookmark& bookmark) const;
|
|
|
| - CPDF_Document* GetDocument() const { return m_pDocument; }
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
|
|
| -protected:
|
| - CPDF_Document* m_pDocument;
|
| + protected:
|
| + CPDF_Document* m_pDocument;
|
| };
|
| -#define PDFBOOKMARK_ITALIC 1
|
| -#define PDFBOOKMARK_BOLD 2
|
| -class CPDF_Bookmark
|
| -{
|
| -public:
|
| -
|
| - CPDF_Bookmark() : m_pDict(NULL) {}
|
| +#define PDFBOOKMARK_ITALIC 1
|
| +#define PDFBOOKMARK_BOLD 2
|
| +class CPDF_Bookmark {
|
| + public:
|
| + CPDF_Bookmark() : m_pDict(NULL) {}
|
|
|
| - explicit CPDF_Bookmark(CPDF_Dictionary* pDict) : m_pDict(pDict) {}
|
| + explicit CPDF_Bookmark(CPDF_Dictionary* pDict) : m_pDict(pDict) {}
|
|
|
| - CPDF_Dictionary* GetDict() const { return m_pDict; }
|
| + CPDF_Dictionary* GetDict() const { return m_pDict; }
|
|
|
| - operator bool() const { return m_pDict != NULL; }
|
| + operator bool() const { return m_pDict != NULL; }
|
|
|
| - FX_DWORD GetColorRef() const;
|
| + FX_DWORD GetColorRef() const;
|
|
|
| - FX_DWORD GetFontStyle() const;
|
| + FX_DWORD GetFontStyle() const;
|
|
|
| - CFX_WideString GetTitle() const;
|
| + CFX_WideString GetTitle() const;
|
|
|
| - CPDF_Dest GetDest(CPDF_Document* pDocument) const;
|
| + CPDF_Dest GetDest(CPDF_Document* pDocument) const;
|
|
|
| - CPDF_Action GetAction() const;
|
| + CPDF_Action GetAction() const;
|
|
|
| - CPDF_Dictionary* m_pDict;
|
| + CPDF_Dictionary* m_pDict;
|
| };
|
| -#define PDFZOOM_XYZ 1
|
| -#define PDFZOOM_FITPAGE 2
|
| -#define PDFZOOM_FITHORZ 3
|
| -#define PDFZOOM_FITVERT 4
|
| -#define PDFZOOM_FITRECT 5
|
| -#define PDFZOOM_FITBBOX 6
|
| -#define PDFZOOM_FITBHORZ 7
|
| -#define PDFZOOM_FITBVERT 8
|
| -class CPDF_Dest
|
| -{
|
| -public:
|
| - CPDF_Dest() : m_pObj(nullptr) { }
|
| - explicit CPDF_Dest(CPDF_Object* pObj) : m_pObj(pObj) { }
|
| -
|
| - operator bool () const { return m_pObj != NULL; }
|
| - CPDF_Object* GetObject() const { return m_pObj; }
|
| -
|
| - CFX_ByteString GetRemoteName();
|
| - int GetPageIndex(CPDF_Document* pDoc);
|
| - FX_DWORD GetPageObjNum();
|
| - int GetZoomMode();
|
| - FX_FLOAT GetParam(int index);
|
| -
|
| -protected:
|
| - CPDF_Object* m_pObj;
|
| +#define PDFZOOM_XYZ 1
|
| +#define PDFZOOM_FITPAGE 2
|
| +#define PDFZOOM_FITHORZ 3
|
| +#define PDFZOOM_FITVERT 4
|
| +#define PDFZOOM_FITRECT 5
|
| +#define PDFZOOM_FITBBOX 6
|
| +#define PDFZOOM_FITBHORZ 7
|
| +#define PDFZOOM_FITBVERT 8
|
| +class CPDF_Dest {
|
| + public:
|
| + CPDF_Dest() : m_pObj(nullptr) {}
|
| + explicit CPDF_Dest(CPDF_Object* pObj) : m_pObj(pObj) {}
|
| +
|
| + operator bool() const { return m_pObj != NULL; }
|
| + CPDF_Object* GetObject() const { return m_pObj; }
|
| +
|
| + CFX_ByteString GetRemoteName();
|
| + int GetPageIndex(CPDF_Document* pDoc);
|
| + FX_DWORD GetPageObjNum();
|
| + int GetZoomMode();
|
| + FX_FLOAT GetParam(int index);
|
| +
|
| + protected:
|
| + CPDF_Object* m_pObj;
|
| };
|
| -class CPDF_OCContext : public IPDF_OCContext
|
| -{
|
| -public:
|
| +class CPDF_OCContext : public IPDF_OCContext {
|
| + public:
|
| + enum UsageType { View = 0, Design, Print, Export };
|
|
|
| - enum UsageType {
|
| - View = 0,
|
| - Design,
|
| - Print,
|
| - Export
|
| - };
|
| + CPDF_OCContext(CPDF_Document* pDoc, UsageType eUsageType = View);
|
|
|
| - CPDF_OCContext(CPDF_Document *pDoc, UsageType eUsageType = View);
|
| + virtual ~CPDF_OCContext();
|
|
|
| - virtual ~CPDF_OCContext();
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
|
|
| - CPDF_Document* GetDocument() const
|
| - {
|
| - return m_pDocument;
|
| - }
|
| + UsageType GetUsageType() const { return m_eUsageType; }
|
|
|
| - UsageType GetUsageType() const
|
| - {
|
| - return m_eUsageType;
|
| - }
|
| + FX_BOOL CheckOCGVisible(const CPDF_Dictionary* pOCGDict);
|
|
|
| - FX_BOOL CheckOCGVisible(const CPDF_Dictionary *pOCGDict);
|
| + void ResetOCContext();
|
|
|
| - void ResetOCContext();
|
| -protected:
|
| + protected:
|
| + FX_BOOL LoadOCGStateFromConfig(const CFX_ByteStringC& csConfig,
|
| + const CPDF_Dictionary* pOCGDict,
|
| + FX_BOOL& bValidConfig) const;
|
|
|
| - FX_BOOL LoadOCGStateFromConfig(const CFX_ByteStringC& csConfig, const CPDF_Dictionary *pOCGDict, FX_BOOL &bValidConfig) const;
|
| + FX_BOOL LoadOCGState(const CPDF_Dictionary* pOCGDict) const;
|
|
|
| - FX_BOOL LoadOCGState(const CPDF_Dictionary *pOCGDict) const;
|
| + FX_BOOL GetOCGVisible(const CPDF_Dictionary* pOCGDict);
|
|
|
| - FX_BOOL GetOCGVisible(const CPDF_Dictionary *pOCGDict);
|
| + FX_BOOL GetOCGVE(CPDF_Array* pExpression,
|
| + FX_BOOL bFromConfig,
|
| + int nLevel = 0);
|
|
|
| - FX_BOOL GetOCGVE(CPDF_Array *pExpression, FX_BOOL bFromConfig, int nLevel = 0);
|
| + FX_BOOL LoadOCMDState(const CPDF_Dictionary* pOCMDDict, FX_BOOL bFromConfig);
|
|
|
| - FX_BOOL LoadOCMDState(const CPDF_Dictionary *pOCMDDict, FX_BOOL bFromConfig);
|
| + CPDF_Document* m_pDocument;
|
|
|
| - CPDF_Document *m_pDocument;
|
| + UsageType m_eUsageType;
|
|
|
| - UsageType m_eUsageType;
|
| -
|
| - std::map<const CPDF_Dictionary*, FX_BOOL> m_OCGStates;
|
| + std::map<const CPDF_Dictionary*, FX_BOOL> m_OCGStates;
|
| };
|
| -class CPDF_LWinParam
|
| -{
|
| -public:
|
| -
|
| - CPDF_LWinParam(CPDF_Dictionary* pDict)
|
| - {
|
| - m_pDict = pDict;
|
| - }
|
| -
|
| - operator CPDF_Dictionary* () const
|
| - {
|
| - return m_pDict;
|
| - }
|
| -
|
| - inline CFX_ByteString GetFileName()
|
| - {
|
| - return m_pDict->GetString("F");
|
| - }
|
| +class CPDF_LWinParam {
|
| + public:
|
| + CPDF_LWinParam(CPDF_Dictionary* pDict) { m_pDict = pDict; }
|
|
|
| + operator CPDF_Dictionary*() const { return m_pDict; }
|
|
|
| - inline CFX_ByteString GetDefaultDirectory()
|
| - {
|
| - return m_pDict->GetString("D");
|
| - }
|
| + inline CFX_ByteString GetFileName() { return m_pDict->GetString("F"); }
|
|
|
| + inline CFX_ByteString GetDefaultDirectory() {
|
| + return m_pDict->GetString("D");
|
| + }
|
|
|
| - inline CFX_ByteString GetOperation()
|
| - {
|
| - return m_pDict->GetString("O");
|
| - }
|
| + inline CFX_ByteString GetOperation() { return m_pDict->GetString("O"); }
|
|
|
| + inline CFX_ByteString GetParameter() { return m_pDict->GetString("P"); }
|
|
|
| - inline CFX_ByteString GetParameter()
|
| - {
|
| - return m_pDict->GetString("P");
|
| - }
|
| -
|
| - CPDF_Dictionary* m_pDict;
|
| + CPDF_Dictionary* m_pDict;
|
| };
|
| -class CPDF_ActionFields
|
| -{
|
| -public:
|
| -
|
| - CPDF_ActionFields(const CPDF_Action* pAction)
|
| - {
|
| - m_pAction = (CPDF_Action*)pAction;
|
| - }
|
| +class CPDF_ActionFields {
|
| + public:
|
| + CPDF_ActionFields(const CPDF_Action* pAction) {
|
| + m_pAction = (CPDF_Action*)pAction;
|
| + }
|
|
|
| - operator CPDF_Action*() const
|
| - {
|
| - return m_pAction;
|
| - }
|
| + operator CPDF_Action*() const { return m_pAction; }
|
|
|
| - FX_DWORD GetFieldsCount() const;
|
| + FX_DWORD GetFieldsCount() const;
|
|
|
| - void GetAllFields(CFX_PtrArray& fieldObjects) const;
|
| + void GetAllFields(CFX_PtrArray& fieldObjects) const;
|
|
|
| - CPDF_Object* GetField(FX_DWORD iIndex) const;
|
| + CPDF_Object* GetField(FX_DWORD iIndex) const;
|
|
|
| - CPDF_Action* m_pAction;
|
| + CPDF_Action* m_pAction;
|
| };
|
|
|
| -#define PDFNAMED_NEXTPAGE 1
|
| -#define PDFNAMED_PREVPAGE 2
|
| -#define PDFNAMED_FIRSTPAGE 3
|
| -#define PDFNAMED_LASTPAGE 4
|
| -#define PDFJS_MAXLENGTH 64
|
| -class CPDF_Action
|
| -{
|
| -public:
|
| - enum ActionType {
|
| - Unknown = 0,
|
| - GoTo,
|
| - GoToR,
|
| - GoToE,
|
| - Launch,
|
| - Thread,
|
| - URI,
|
| - Sound,
|
| - Movie,
|
| - Hide,
|
| - Named,
|
| - SubmitForm,
|
| - ResetForm,
|
| - ImportData,
|
| - JavaScript,
|
| - SetOCGState,
|
| - Rendition,
|
| - Trans,
|
| - GoTo3DView
|
| - };
|
| -
|
| - CPDF_Action() : m_pDict(nullptr) { }
|
| - explicit CPDF_Action(CPDF_Dictionary* pDict) : m_pDict(pDict) { }
|
| -
|
| - operator bool () const { return m_pDict != NULL; }
|
| -
|
| - CPDF_Dictionary* GetDict() const { return m_pDict; }
|
| -
|
| - CFX_ByteString GetTypeName() const
|
| - {
|
| - return m_pDict->GetString("S");
|
| - }
|
| -
|
| - ActionType GetType() const;
|
| -
|
| - CPDF_Dest GetDest(CPDF_Document* pDoc) const;
|
| -
|
| - CFX_WideString GetFilePath() const;
|
| -
|
| - FX_BOOL GetNewWindow() const
|
| - {
|
| - return m_pDict->GetBoolean("NewWindow");
|
| - }
|
| -
|
| - CPDF_LWinParam GetWinParam() const;
|
| -
|
| - CFX_ByteString GetURI(CPDF_Document* pDoc) const;
|
| -
|
| - FX_BOOL GetMouseMap() const
|
| - {
|
| - return m_pDict->GetBoolean("IsMap");
|
| - }
|
| -
|
| - CPDF_ActionFields GetWidgets() const
|
| - {
|
| - return this;
|
| - }
|
| -
|
| - FX_BOOL GetHideStatus() const
|
| - {
|
| - return m_pDict->GetBoolean("H", TRUE);
|
| - }
|
| -
|
| - CFX_ByteString GetNamedAction() const
|
| - {
|
| - return m_pDict->GetString("N");
|
| - }
|
| -
|
| - FX_DWORD GetFlags() const
|
| - {
|
| - return m_pDict->GetInteger("Flags");
|
| - }
|
| -
|
| - CFX_WideString GetJavaScript() const;
|
| -
|
| - CPDF_Dictionary* GetAnnot() const;
|
| -
|
| - int32_t GetOperationType() const;
|
| -
|
| - CPDF_Stream* GetSoundStream() const
|
| - {
|
| - return m_pDict->GetStream("Sound");
|
| - }
|
| -
|
| - FX_FLOAT GetVolume() const
|
| - {
|
| - return m_pDict->GetNumber("Volume");
|
| - }
|
| -
|
| - FX_BOOL IsSynchronous() const
|
| - {
|
| - return m_pDict->GetBoolean("Synchronous");
|
| - }
|
| -
|
| - FX_BOOL IsRepeat() const
|
| - {
|
| - return m_pDict->GetBoolean("Repeat");
|
| - }
|
| -
|
| - FX_BOOL IsMixPlay() const
|
| - {
|
| - return m_pDict->GetBoolean("Mix");
|
| - }
|
| -
|
| - FX_DWORD GetSubActionsCount() const;
|
| -
|
| - CPDF_Action GetSubAction(FX_DWORD iIndex) const;
|
| +#define PDFNAMED_NEXTPAGE 1
|
| +#define PDFNAMED_PREVPAGE 2
|
| +#define PDFNAMED_FIRSTPAGE 3
|
| +#define PDFNAMED_LASTPAGE 4
|
| +#define PDFJS_MAXLENGTH 64
|
| +class CPDF_Action {
|
| + public:
|
| + enum ActionType {
|
| + Unknown = 0,
|
| + GoTo,
|
| + GoToR,
|
| + GoToE,
|
| + Launch,
|
| + Thread,
|
| + URI,
|
| + Sound,
|
| + Movie,
|
| + Hide,
|
| + Named,
|
| + SubmitForm,
|
| + ResetForm,
|
| + ImportData,
|
| + JavaScript,
|
| + SetOCGState,
|
| + Rendition,
|
| + Trans,
|
| + GoTo3DView
|
| + };
|
|
|
| -protected:
|
| - CPDF_Dictionary* m_pDict;
|
| -};
|
| -class CPDF_AAction
|
| -{
|
| -public:
|
| -
|
| - CPDF_AAction(CPDF_Dictionary* pDict = NULL)
|
| - {
|
| - m_pDict = pDict;
|
| - }
|
| -
|
| - operator CPDF_Dictionary*() const
|
| - {
|
| - return m_pDict;
|
| - }
|
| -
|
| - enum AActionType {
|
| - CursorEnter = 0,
|
| - CursorExit,
|
| - ButtonDown,
|
| - ButtonUp,
|
| - GetFocus,
|
| - LoseFocus,
|
| - PageOpen,
|
| - PageClose,
|
| - PageVisible,
|
| - PageInvisible,
|
| - OpenPage,
|
| - ClosePage,
|
| - KeyStroke,
|
| - Format,
|
| - Validate,
|
| - Calculate,
|
| - CloseDocument,
|
| - SaveDocument,
|
| - DocumentSaved,
|
| - PrintDocument,
|
| - DocumentPrinted
|
| - };
|
| -
|
| - FX_BOOL ActionExist(AActionType eType) const;
|
| -
|
| - CPDF_Action GetAction(AActionType eType) const;
|
| -
|
| - FX_POSITION GetStartPos() const;
|
| -
|
| - CPDF_Action GetNextAction(FX_POSITION& pos, AActionType& eType) const;
|
| -
|
| - CPDF_Dictionary* m_pDict;
|
| -};
|
| -class CPDF_DocJSActions
|
| -{
|
| -public:
|
| - CPDF_DocJSActions(CPDF_Document* pDoc);
|
| + CPDF_Action() : m_pDict(nullptr) {}
|
| + explicit CPDF_Action(CPDF_Dictionary* pDict) : m_pDict(pDict) {}
|
|
|
| + operator bool() const { return m_pDict != NULL; }
|
|
|
| - int CountJSActions() const;
|
| + CPDF_Dictionary* GetDict() const { return m_pDict; }
|
|
|
| - CPDF_Action GetJSAction(int index, CFX_ByteString& csName) const;
|
| + CFX_ByteString GetTypeName() const { return m_pDict->GetString("S"); }
|
|
|
| - CPDF_Action GetJSAction(const CFX_ByteString& csName) const;
|
| + ActionType GetType() const;
|
|
|
| - int FindJSAction(const CFX_ByteString& csName) const;
|
| + CPDF_Dest GetDest(CPDF_Document* pDoc) const;
|
|
|
| + CFX_WideString GetFilePath() const;
|
|
|
| - CPDF_Document* GetDocument() const
|
| - {
|
| - return m_pDocument;
|
| - }
|
| + FX_BOOL GetNewWindow() const { return m_pDict->GetBoolean("NewWindow"); }
|
|
|
| -protected:
|
| + CPDF_LWinParam GetWinParam() const;
|
|
|
| - CPDF_Document* m_pDocument;
|
| -};
|
| -class CPDF_FileSpec
|
| -{
|
| -public:
|
| + CFX_ByteString GetURI(CPDF_Document* pDoc) const;
|
|
|
| - CPDF_FileSpec();
|
| + FX_BOOL GetMouseMap() const { return m_pDict->GetBoolean("IsMap"); }
|
|
|
| - CPDF_FileSpec(CPDF_Object *pObj)
|
| - {
|
| - m_pObj = pObj;
|
| - }
|
| + CPDF_ActionFields GetWidgets() const { return this; }
|
|
|
| - operator CPDF_Object*() const
|
| - {
|
| - return m_pObj;
|
| - }
|
| + FX_BOOL GetHideStatus() const { return m_pDict->GetBoolean("H", TRUE); }
|
|
|
| - FX_BOOL IsURL() const;
|
| + CFX_ByteString GetNamedAction() const { return m_pDict->GetString("N"); }
|
|
|
| - FX_BOOL GetFileName(CFX_WideString &wsFileName) const;
|
| + FX_DWORD GetFlags() const { return m_pDict->GetInteger("Flags"); }
|
|
|
| - CPDF_Stream* GetFileStream() const;
|
| + CFX_WideString GetJavaScript() const;
|
|
|
| - void SetFileName(const CFX_WideStringC& wsFileName, FX_BOOL bURL = FALSE);
|
| -protected:
|
| + CPDF_Dictionary* GetAnnot() const;
|
|
|
| - CPDF_Object *m_pObj;
|
| -};
|
| -class CPDF_LinkList
|
| -{
|
| -public:
|
| + int32_t GetOperationType() const;
|
|
|
| - CPDF_LinkList(CPDF_Document* pDoc)
|
| - {
|
| - m_pDocument = pDoc;
|
| - }
|
| + CPDF_Stream* GetSoundStream() const { return m_pDict->GetStream("Sound"); }
|
|
|
| - ~CPDF_LinkList();
|
| + FX_FLOAT GetVolume() const { return m_pDict->GetNumber("Volume"); }
|
|
|
| - CPDF_Link GetLinkAtPoint(CPDF_Page* pPage, FX_FLOAT pdf_x, FX_FLOAT pdf_y);
|
| + FX_BOOL IsSynchronous() const { return m_pDict->GetBoolean("Synchronous"); }
|
|
|
| - int CountLinks(CPDF_Page* pPage);
|
| + FX_BOOL IsRepeat() const { return m_pDict->GetBoolean("Repeat"); }
|
|
|
| - CPDF_Link GetLink(CPDF_Page* pPage, int index);
|
| + FX_BOOL IsMixPlay() const { return m_pDict->GetBoolean("Mix"); }
|
|
|
| - CPDF_Document* GetDocument() const
|
| - {
|
| - return m_pDocument;
|
| - }
|
| -protected:
|
| + FX_DWORD GetSubActionsCount() const;
|
|
|
| - CPDF_Document* m_pDocument;
|
| + CPDF_Action GetSubAction(FX_DWORD iIndex) const;
|
|
|
| - CFX_MapPtrToPtr m_PageMap;
|
| -
|
| - CFX_PtrArray* GetPageLinks(CPDF_Page* pPage);
|
| -
|
| - void LoadPageLinks(CPDF_Page* pPage, CFX_PtrArray* pList);
|
| + protected:
|
| + CPDF_Dictionary* m_pDict;
|
| };
|
| -class CPDF_Link
|
| -{
|
| -public:
|
| - CPDF_Link() : m_pDict(nullptr) { }
|
| - explicit CPDF_Link(CPDF_Dictionary* pDict) : m_pDict(pDict) { }
|
| -
|
| - CPDF_Dictionary* GetDict() const { return m_pDict; }
|
| -
|
| - CFX_FloatRect GetRect();
|
| - CPDF_Dest GetDest(CPDF_Document* pDoc);
|
| - CPDF_Action GetAction();
|
| -
|
| -protected:
|
| - CPDF_Dictionary* m_pDict;
|
| +class CPDF_AAction {
|
| + public:
|
| + CPDF_AAction(CPDF_Dictionary* pDict = NULL) { m_pDict = pDict; }
|
| +
|
| + operator CPDF_Dictionary*() const { return m_pDict; }
|
| +
|
| + enum AActionType {
|
| + CursorEnter = 0,
|
| + CursorExit,
|
| + ButtonDown,
|
| + ButtonUp,
|
| + GetFocus,
|
| + LoseFocus,
|
| + PageOpen,
|
| + PageClose,
|
| + PageVisible,
|
| + PageInvisible,
|
| + OpenPage,
|
| + ClosePage,
|
| + KeyStroke,
|
| + Format,
|
| + Validate,
|
| + Calculate,
|
| + CloseDocument,
|
| + SaveDocument,
|
| + DocumentSaved,
|
| + PrintDocument,
|
| + DocumentPrinted
|
| + };
|
| +
|
| + FX_BOOL ActionExist(AActionType eType) const;
|
| +
|
| + CPDF_Action GetAction(AActionType eType) const;
|
| +
|
| + FX_POSITION GetStartPos() const;
|
| +
|
| + CPDF_Action GetNextAction(FX_POSITION& pos, AActionType& eType) const;
|
| +
|
| + CPDF_Dictionary* m_pDict;
|
| };
|
| +class CPDF_DocJSActions {
|
| + public:
|
| + CPDF_DocJSActions(CPDF_Document* pDoc);
|
|
|
| -#define ANNOTFLAG_INVISIBLE 0x0001
|
| -#define ANNOTFLAG_HIDDEN 0x0002
|
| -#define ANNOTFLAG_PRINT 0x0004
|
| -#define ANNOTFLAG_NOZOOM 0x0008
|
| -#define ANNOTFLAG_NOROTATE 0x0010
|
| -#define ANNOTFLAG_NOVIEW 0x0020
|
| -#define ANNOTFLAG_READONLY 0x0040
|
| -#define ANNOTFLAG_LOCKED 0x0080
|
| -#define ANNOTFLAG_TOGGLENOVIEW 0x0100
|
| -
|
| -class CPDF_Annot : public CFX_PrivateData
|
| -{
|
| - public:
|
| - enum AppearanceMode {
|
| - Normal,
|
| - Rollover,
|
| - Down
|
| - };
|
| -
|
| - CPDF_Annot(CPDF_Dictionary* pDict, CPDF_AnnotList* pList);
|
| - ~CPDF_Annot();
|
| -
|
| - CFX_ByteString GetSubType() const;
|
| -
|
| - FX_DWORD GetFlags() const;
|
| -
|
| - void GetRect(CFX_FloatRect& rect) const;
|
| -
|
| - CPDF_Dictionary* GetAnnotDict();
|
| -
|
| - FX_BOOL DrawAppearance(const CPDF_Page* pPage,
|
| - CFX_RenderDevice* pDevice,
|
| - const CFX_AffineMatrix* pUser2Device,
|
| - AppearanceMode mode,
|
| - const CPDF_RenderOptions* pOptions);
|
| -
|
| - FX_BOOL DrawInContext(const CPDF_Page* pPage,
|
| - const CPDF_RenderContext* pContext,
|
| - const CFX_AffineMatrix* pUser2Device,
|
| - AppearanceMode mode);
|
| -
|
| - void ClearCachedAP();
|
| -
|
| - void DrawBorder(CFX_RenderDevice* pDevice,
|
| - const CFX_AffineMatrix* pUser2Device,
|
| - const CPDF_RenderOptions* pOptions);
|
| + int CountJSActions() const;
|
|
|
| - CPDF_Form* GetAPForm(const CPDF_Page* pPage, AppearanceMode mode);
|
| + CPDF_Action GetJSAction(int index, CFX_ByteString& csName) const;
|
|
|
| - private:
|
| - CPDF_Dictionary* const m_pAnnotDict;
|
| + CPDF_Action GetJSAction(const CFX_ByteString& csName) const;
|
|
|
| - CPDF_AnnotList* const m_pList;
|
| + int FindJSAction(const CFX_ByteString& csName) const;
|
|
|
| - const CFX_ByteString m_sSubtype;
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
|
|
| - CFX_MapPtrToPtr m_APMap;
|
| + protected:
|
| + CPDF_Document* m_pDocument;
|
| };
|
| +class CPDF_FileSpec {
|
| + public:
|
| + CPDF_FileSpec();
|
|
|
| -class CPDF_AnnotList
|
| -{
|
| -public:
|
| + CPDF_FileSpec(CPDF_Object* pObj) { m_pObj = pObj; }
|
|
|
| - CPDF_AnnotList(CPDF_Page* pPage);
|
| + operator CPDF_Object*() const { return m_pObj; }
|
|
|
| - ~CPDF_AnnotList();
|
| + FX_BOOL IsURL() const;
|
|
|
| - void GetAnnotMatrix(const CPDF_Dictionary* pAnnotDict, const CFX_Matrix* pUser2Device, CFX_Matrix &matrix) const;
|
| + FX_BOOL GetFileName(CFX_WideString& wsFileName) const;
|
|
|
| - void GetAnnotRect(const CPDF_Dictionary* pAnnotDict, const CFX_Matrix* pUser2Device, CPDF_Rect &rtAnnot) const;
|
| + CPDF_Stream* GetFileStream() const;
|
|
|
| - void DisplayAnnots(const CPDF_Page* pPage, CFX_RenderDevice* pDevice,
|
| - CFX_AffineMatrix* pMatrix, FX_BOOL bShowWidget,
|
| - CPDF_RenderOptions* pOptions);
|
| + void SetFileName(const CFX_WideStringC& wsFileName, FX_BOOL bURL = FALSE);
|
|
|
| - void DisplayAnnots(const CPDF_Page* pPage, CPDF_RenderContext* pContext,
|
| - FX_BOOL bPrinting, CFX_AffineMatrix* pMatrix, FX_BOOL bShowWidget,
|
| - CPDF_RenderOptions* pOptions)
|
| - {
|
| - DisplayAnnots(pPage, NULL, pContext, bPrinting, pMatrix, bShowWidget ? 3 : 1, pOptions, NULL);
|
| - }
|
| -
|
| - void DisplayAnnots(const CPDF_Page* pPage, CPDF_RenderContext* pContext,
|
| - FX_BOOL bPrinting, CFX_AffineMatrix* pMatrix, FX_BOOL bShowWidget,
|
| - CPDF_RenderOptions* pOptions, FX_RECT *pClipRect)
|
| - {
|
| - DisplayAnnots(pPage, NULL, pContext, bPrinting, pMatrix, bShowWidget ? 3 : 1, pOptions, pClipRect);
|
| - }
|
| -
|
| - void DisplayAnnots(const CPDF_Page* pPage, CFX_RenderDevice* pDevice, CPDF_RenderContext* pContext,
|
| - FX_BOOL bPrinting, CFX_AffineMatrix* pMatrix, FX_DWORD dwAnnotFlags,
|
| - CPDF_RenderOptions* pOptions, FX_RECT* pClipRect);
|
| -
|
| -
|
| -
|
| - CPDF_Annot* GetAt(int index)
|
| - {
|
| - return (CPDF_Annot*)m_AnnotList.GetAt(index);
|
| - }
|
| -
|
| - int Count()
|
| - {
|
| - return m_AnnotList.GetSize();
|
| - }
|
| -
|
| - int GetIndex(CPDF_Annot* pAnnot);
|
| -
|
| -
|
| - CPDF_Document* GetDocument() const
|
| - {
|
| - return m_pDocument;
|
| - }
|
| -protected:
|
| -
|
| - CFX_PtrArray m_AnnotList;
|
| -
|
| - CPDF_Dictionary* m_pPageDict;
|
| -
|
| - CPDF_Document* m_pDocument;
|
| -
|
| - CFX_PtrArray m_Borders;
|
| -
|
| - void DisplayPass(const CPDF_Page* pPage, CFX_RenderDevice* pDevice,
|
| - CPDF_RenderContext* pContext, FX_BOOL bPrinting, CFX_AffineMatrix* pMatrix,
|
| - FX_BOOL bWidget, CPDF_RenderOptions* pOptions, FX_RECT* clip_rect);
|
| - friend class CPDF_Annot;
|
| + protected:
|
| + CPDF_Object* m_pObj;
|
| };
|
| -#define COLORTYPE_TRANSPARENT 0
|
| -#define COLORTYPE_GRAY 1
|
| -#define COLORTYPE_RGB 2
|
| -#define COLORTYPE_CMYK 3
|
| -class CPDF_DefaultAppearance
|
| -{
|
| -public:
|
| -
|
| - CPDF_DefaultAppearance(const CFX_ByteString& csDA = "")
|
| - {
|
| - m_csDA = csDA;
|
| - }
|
| -
|
| - CPDF_DefaultAppearance(const CPDF_DefaultAppearance& cDA)
|
| - {
|
| - m_csDA = (CFX_ByteString)(CPDF_DefaultAppearance&)cDA;
|
| - }
|
| -
|
| -
|
| - operator CFX_ByteString() const
|
| - {
|
| - return m_csDA;
|
| - }
|
| -
|
| - const CPDF_DefaultAppearance& operator =(const CFX_ByteString& csDA)
|
| - {
|
| - m_csDA = csDA;
|
| - return *this;
|
| - }
|
| -
|
| - const CPDF_DefaultAppearance& operator =(const CPDF_DefaultAppearance& cDA)
|
| - {
|
| - m_csDA = (CFX_ByteString)(CPDF_DefaultAppearance&)cDA;
|
| - return *this;
|
| - }
|
| -
|
| -
|
| -
|
| - FX_BOOL HasFont();
|
| -
|
| - CFX_ByteString GetFontString();
|
| -
|
| - void GetFont(CFX_ByteString& csFontNameTag, FX_FLOAT& fFontSize);
|
| -
|
| -
|
| -
|
| -
|
| - FX_BOOL HasColor(FX_BOOL bStrokingOperation = FALSE);
|
| -
|
| - CFX_ByteString GetColorString(FX_BOOL bStrokingOperation = FALSE);
|
| +class CPDF_LinkList {
|
| + public:
|
| + CPDF_LinkList(CPDF_Document* pDoc) { m_pDocument = pDoc; }
|
|
|
| - void GetColor(int& iColorType, FX_FLOAT fc[4], FX_BOOL bStrokingOperation = FALSE);
|
| + ~CPDF_LinkList();
|
|
|
| - void GetColor(FX_ARGB& color, int& iColorType, FX_BOOL bStrokingOperation = FALSE);
|
| + CPDF_Link GetLinkAtPoint(CPDF_Page* pPage, FX_FLOAT pdf_x, FX_FLOAT pdf_y);
|
|
|
| + int CountLinks(CPDF_Page* pPage);
|
|
|
| + CPDF_Link GetLink(CPDF_Page* pPage, int index);
|
|
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
|
|
| - FX_BOOL HasTextMatrix();
|
| + protected:
|
| + CPDF_Document* m_pDocument;
|
|
|
| - CFX_ByteString GetTextMatrixString();
|
| + CFX_MapPtrToPtr m_PageMap;
|
|
|
| - CFX_AffineMatrix GetTextMatrix();
|
| + CFX_PtrArray* GetPageLinks(CPDF_Page* pPage);
|
|
|
| -protected:
|
| -
|
| - CFX_ByteString m_csDA;
|
| + void LoadPageLinks(CPDF_Page* pPage, CFX_PtrArray* pList);
|
| };
|
| -#define FIELDTYPE_UNKNOWN 0
|
| -#define FIELDTYPE_PUSHBUTTON 1
|
| -#define FIELDTYPE_CHECKBOX 2
|
| -#define FIELDTYPE_RADIOBUTTON 3
|
| -#define FIELDTYPE_COMBOBOX 4
|
| -#define FIELDTYPE_LISTBOX 5
|
| -#define FIELDTYPE_TEXTFIELD 6
|
| -#define FIELDTYPE_SIGNATURE 7
|
| -class CPDF_InterForm : public CFX_PrivateData
|
| -{
|
| -public:
|
| -
|
| - CPDF_InterForm(CPDF_Document* pDocument, FX_BOOL bUpdateAP);
|
| -
|
| - ~CPDF_InterForm();
|
| -
|
| -
|
| -
|
| - static void EnableUpdateAP(FX_BOOL bUpdateAP);
|
| -
|
| - static FX_BOOL UpdatingAPEnabled();
|
| -
|
| -
|
| - static CFX_ByteString GenerateNewResourceName(const CPDF_Dictionary* pResDict, const FX_CHAR* csType, int iMinLen = 2, const FX_CHAR* csPrefix = "");
|
| -
|
| -
|
| -
|
| - static CPDF_Font* AddSystemDefaultFont(const CPDF_Document* pDocument);
|
| -
|
| - static CPDF_Font* AddSystemFont(const CPDF_Document* pDocument, CFX_ByteString csFontName, uint8_t iCharSet = 1);
|
| -
|
| - static CPDF_Font* AddSystemFont(const CPDF_Document* pDocument, CFX_WideString csFontName, uint8_t iCharSet = 1);
|
| -
|
| - static CPDF_Font* AddStandardFont(const CPDF_Document* pDocument, CFX_ByteString csFontName);
|
| +class CPDF_Link {
|
| + public:
|
| + CPDF_Link() : m_pDict(nullptr) {}
|
| + explicit CPDF_Link(CPDF_Dictionary* pDict) : m_pDict(pDict) {}
|
|
|
| - static CFX_ByteString GetNativeFont(uint8_t iCharSet, void* pLogFont = NULL);
|
| + CPDF_Dictionary* GetDict() const { return m_pDict; }
|
|
|
| - static CFX_ByteString GetNativeFont(void* pLogFont = NULL);
|
| + CFX_FloatRect GetRect();
|
| + CPDF_Dest GetDest(CPDF_Document* pDoc);
|
| + CPDF_Action GetAction();
|
|
|
| - static uint8_t GetNativeCharSet();
|
| -
|
| - static CPDF_Font* AddNativeFont(uint8_t iCharSet, const CPDF_Document* pDocument);
|
| -
|
| - static CPDF_Font* AddNativeFont(const CPDF_Document* pDocument);
|
| + protected:
|
| + CPDF_Dictionary* m_pDict;
|
| +};
|
|
|
| +#define ANNOTFLAG_INVISIBLE 0x0001
|
| +#define ANNOTFLAG_HIDDEN 0x0002
|
| +#define ANNOTFLAG_PRINT 0x0004
|
| +#define ANNOTFLAG_NOZOOM 0x0008
|
| +#define ANNOTFLAG_NOROTATE 0x0010
|
| +#define ANNOTFLAG_NOVIEW 0x0020
|
| +#define ANNOTFLAG_READONLY 0x0040
|
| +#define ANNOTFLAG_LOCKED 0x0080
|
| +#define ANNOTFLAG_TOGGLENOVIEW 0x0100
|
|
|
| +class CPDF_Annot : public CFX_PrivateData {
|
| + public:
|
| + enum AppearanceMode { Normal, Rollover, Down };
|
|
|
| + CPDF_Annot(CPDF_Dictionary* pDict, CPDF_AnnotList* pList);
|
| + ~CPDF_Annot();
|
|
|
| - FX_BOOL ValidateFieldName(CFX_WideString& csNewFieldName, int iType);
|
| + CFX_ByteString GetSubType() const;
|
|
|
| - FX_BOOL ValidateFieldName(const CPDF_FormField* pField, CFX_WideString& csNewFieldName);
|
| + FX_DWORD GetFlags() const;
|
|
|
| - FX_BOOL ValidateFieldName(const CPDF_FormControl* pControl, CFX_WideString& csNewFieldName);
|
| + void GetRect(CFX_FloatRect& rect) const;
|
|
|
| + CPDF_Dictionary* GetAnnotDict();
|
|
|
| + FX_BOOL DrawAppearance(const CPDF_Page* pPage,
|
| + CFX_RenderDevice* pDevice,
|
| + const CFX_AffineMatrix* pUser2Device,
|
| + AppearanceMode mode,
|
| + const CPDF_RenderOptions* pOptions);
|
|
|
| + FX_BOOL DrawInContext(const CPDF_Page* pPage,
|
| + const CPDF_RenderContext* pContext,
|
| + const CFX_AffineMatrix* pUser2Device,
|
| + AppearanceMode mode);
|
|
|
| - FX_DWORD CountFields(const CFX_WideString &csFieldName = L"");
|
| + void ClearCachedAP();
|
|
|
| - CPDF_FormField* GetField(FX_DWORD index, const CFX_WideString &csFieldName = L"");
|
| + void DrawBorder(CFX_RenderDevice* pDevice,
|
| + const CFX_AffineMatrix* pUser2Device,
|
| + const CPDF_RenderOptions* pOptions);
|
|
|
| - void GetAllFieldNames(CFX_WideStringArray& allFieldNames);
|
| + CPDF_Form* GetAPForm(const CPDF_Page* pPage, AppearanceMode mode);
|
|
|
| - FX_BOOL IsValidFormField(const void* pField);
|
| + private:
|
| + CPDF_Dictionary* const m_pAnnotDict;
|
|
|
| - CPDF_FormField* GetFieldByDict(CPDF_Dictionary* pFieldDict) const;
|
| + CPDF_AnnotList* const m_pList;
|
|
|
| + const CFX_ByteString m_sSubtype;
|
|
|
| + CFX_MapPtrToPtr m_APMap;
|
| +};
|
|
|
| +class CPDF_AnnotList {
|
| + public:
|
| + CPDF_AnnotList(CPDF_Page* pPage);
|
| +
|
| + ~CPDF_AnnotList();
|
| +
|
| + void GetAnnotMatrix(const CPDF_Dictionary* pAnnotDict,
|
| + const CFX_Matrix* pUser2Device,
|
| + CFX_Matrix& matrix) const;
|
| +
|
| + void GetAnnotRect(const CPDF_Dictionary* pAnnotDict,
|
| + const CFX_Matrix* pUser2Device,
|
| + CPDF_Rect& rtAnnot) const;
|
| +
|
| + void DisplayAnnots(const CPDF_Page* pPage,
|
| + CFX_RenderDevice* pDevice,
|
| + CFX_AffineMatrix* pMatrix,
|
| + FX_BOOL bShowWidget,
|
| + CPDF_RenderOptions* pOptions);
|
| +
|
| + void DisplayAnnots(const CPDF_Page* pPage,
|
| + CPDF_RenderContext* pContext,
|
| + FX_BOOL bPrinting,
|
| + CFX_AffineMatrix* pMatrix,
|
| + FX_BOOL bShowWidget,
|
| + CPDF_RenderOptions* pOptions) {
|
| + DisplayAnnots(pPage, NULL, pContext, bPrinting, pMatrix,
|
| + bShowWidget ? 3 : 1, pOptions, NULL);
|
| + }
|
| +
|
| + void DisplayAnnots(const CPDF_Page* pPage,
|
| + CPDF_RenderContext* pContext,
|
| + FX_BOOL bPrinting,
|
| + CFX_AffineMatrix* pMatrix,
|
| + FX_BOOL bShowWidget,
|
| + CPDF_RenderOptions* pOptions,
|
| + FX_RECT* pClipRect) {
|
| + DisplayAnnots(pPage, NULL, pContext, bPrinting, pMatrix,
|
| + bShowWidget ? 3 : 1, pOptions, pClipRect);
|
| + }
|
| +
|
| + void DisplayAnnots(const CPDF_Page* pPage,
|
| + CFX_RenderDevice* pDevice,
|
| + CPDF_RenderContext* pContext,
|
| + FX_BOOL bPrinting,
|
| + CFX_AffineMatrix* pMatrix,
|
| + FX_DWORD dwAnnotFlags,
|
| + CPDF_RenderOptions* pOptions,
|
| + FX_RECT* pClipRect);
|
| +
|
| + CPDF_Annot* GetAt(int index) { return (CPDF_Annot*)m_AnnotList.GetAt(index); }
|
| +
|
| + int Count() { return m_AnnotList.GetSize(); }
|
| +
|
| + int GetIndex(CPDF_Annot* pAnnot);
|
| +
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
| +
|
| + protected:
|
| + CFX_PtrArray m_AnnotList;
|
| +
|
| + CPDF_Dictionary* m_pPageDict;
|
| +
|
| + CPDF_Document* m_pDocument;
|
| +
|
| + CFX_PtrArray m_Borders;
|
| +
|
| + void DisplayPass(const CPDF_Page* pPage,
|
| + CFX_RenderDevice* pDevice,
|
| + CPDF_RenderContext* pContext,
|
| + FX_BOOL bPrinting,
|
| + CFX_AffineMatrix* pMatrix,
|
| + FX_BOOL bWidget,
|
| + CPDF_RenderOptions* pOptions,
|
| + FX_RECT* clip_rect);
|
| + friend class CPDF_Annot;
|
| +};
|
| +#define COLORTYPE_TRANSPARENT 0
|
| +#define COLORTYPE_GRAY 1
|
| +#define COLORTYPE_RGB 2
|
| +#define COLORTYPE_CMYK 3
|
| +class CPDF_DefaultAppearance {
|
| + public:
|
| + CPDF_DefaultAppearance(const CFX_ByteString& csDA = "") { m_csDA = csDA; }
|
|
|
| - FX_DWORD CountControls(CFX_WideString csFieldName = L"");
|
| + CPDF_DefaultAppearance(const CPDF_DefaultAppearance& cDA) {
|
| + m_csDA = (CFX_ByteString)(CPDF_DefaultAppearance&)cDA;
|
| + }
|
|
|
| - CPDF_FormControl* GetControl(FX_DWORD index, CFX_WideString csFieldName = L"");
|
| + operator CFX_ByteString() const { return m_csDA; }
|
|
|
| - FX_BOOL IsValidFormControl(const void* pControl);
|
| + const CPDF_DefaultAppearance& operator=(const CFX_ByteString& csDA) {
|
| + m_csDA = csDA;
|
| + return *this;
|
| + }
|
|
|
| - int CountPageControls(CPDF_Page* pPage) const;
|
| + const CPDF_DefaultAppearance& operator=(const CPDF_DefaultAppearance& cDA) {
|
| + m_csDA = (CFX_ByteString)(CPDF_DefaultAppearance&)cDA;
|
| + return *this;
|
| + }
|
|
|
| - CPDF_FormControl* GetPageControl(CPDF_Page* pPage, int index) const;
|
| + FX_BOOL HasFont();
|
|
|
| + CFX_ByteString GetFontString();
|
|
|
| - CPDF_FormControl* GetControlAtPoint(CPDF_Page* pPage, FX_FLOAT pdf_x, FX_FLOAT pdf_y) const;
|
| + void GetFont(CFX_ByteString& csFontNameTag, FX_FLOAT& fFontSize);
|
|
|
| - CPDF_FormControl* GetControlByDict(CPDF_Dictionary* pWidgetDict) const;
|
| + FX_BOOL HasColor(FX_BOOL bStrokingOperation = FALSE);
|
|
|
| + CFX_ByteString GetColorString(FX_BOOL bStrokingOperation = FALSE);
|
|
|
| + void GetColor(int& iColorType,
|
| + FX_FLOAT fc[4],
|
| + FX_BOOL bStrokingOperation = FALSE);
|
|
|
| + void GetColor(FX_ARGB& color,
|
| + int& iColorType,
|
| + FX_BOOL bStrokingOperation = FALSE);
|
|
|
| - FX_DWORD CountInternalFields(const CFX_WideString& csFieldName = L"") const;
|
| + FX_BOOL HasTextMatrix();
|
|
|
| - CPDF_Dictionary* GetInternalField(FX_DWORD index, const CFX_WideString& csFieldName = L"") const;
|
| + CFX_ByteString GetTextMatrixString();
|
|
|
| + CFX_AffineMatrix GetTextMatrix();
|
|
|
| + protected:
|
| + CFX_ByteString m_csDA;
|
| +};
|
| +#define FIELDTYPE_UNKNOWN 0
|
| +#define FIELDTYPE_PUSHBUTTON 1
|
| +#define FIELDTYPE_CHECKBOX 2
|
| +#define FIELDTYPE_RADIOBUTTON 3
|
| +#define FIELDTYPE_COMBOBOX 4
|
| +#define FIELDTYPE_LISTBOX 5
|
| +#define FIELDTYPE_TEXTFIELD 6
|
| +#define FIELDTYPE_SIGNATURE 7
|
| +class CPDF_InterForm : public CFX_PrivateData {
|
| + public:
|
| + CPDF_InterForm(CPDF_Document* pDocument, FX_BOOL bUpdateAP);
|
|
|
| + ~CPDF_InterForm();
|
|
|
| + static void EnableUpdateAP(FX_BOOL bUpdateAP);
|
|
|
| - CPDF_Document* GetDocument() const
|
| - {
|
| - return m_pDocument;
|
| - }
|
| + static FX_BOOL UpdatingAPEnabled();
|
|
|
| - CPDF_Dictionary* GetFormDict() const
|
| - {
|
| - return m_pFormDict;
|
| - }
|
| + static CFX_ByteString GenerateNewResourceName(const CPDF_Dictionary* pResDict,
|
| + const FX_CHAR* csType,
|
| + int iMinLen = 2,
|
| + const FX_CHAR* csPrefix = "");
|
|
|
| + static CPDF_Font* AddSystemDefaultFont(const CPDF_Document* pDocument);
|
|
|
| + static CPDF_Font* AddSystemFont(const CPDF_Document* pDocument,
|
| + CFX_ByteString csFontName,
|
| + uint8_t iCharSet = 1);
|
|
|
| + static CPDF_Font* AddSystemFont(const CPDF_Document* pDocument,
|
| + CFX_WideString csFontName,
|
| + uint8_t iCharSet = 1);
|
|
|
| - FX_BOOL NeedConstructAP();
|
| + static CPDF_Font* AddStandardFont(const CPDF_Document* pDocument,
|
| + CFX_ByteString csFontName);
|
|
|
| - void NeedConstructAP(FX_BOOL bNeedAP);
|
| + static CFX_ByteString GetNativeFont(uint8_t iCharSet, void* pLogFont = NULL);
|
|
|
| + static CFX_ByteString GetNativeFont(void* pLogFont = NULL);
|
|
|
| + static uint8_t GetNativeCharSet();
|
|
|
| + static CPDF_Font* AddNativeFont(uint8_t iCharSet,
|
| + const CPDF_Document* pDocument);
|
|
|
| - int CountFieldsInCalculationOrder();
|
| + static CPDF_Font* AddNativeFont(const CPDF_Document* pDocument);
|
|
|
| - CPDF_FormField* GetFieldInCalculationOrder(int index);
|
| + FX_BOOL ValidateFieldName(CFX_WideString& csNewFieldName, int iType);
|
|
|
| - int FindFieldInCalculationOrder(const CPDF_FormField* pField);
|
| + FX_BOOL ValidateFieldName(const CPDF_FormField* pField,
|
| + CFX_WideString& csNewFieldName);
|
|
|
| + FX_BOOL ValidateFieldName(const CPDF_FormControl* pControl,
|
| + CFX_WideString& csNewFieldName);
|
|
|
| + FX_DWORD CountFields(const CFX_WideString& csFieldName = L"");
|
|
|
| + CPDF_FormField* GetField(FX_DWORD index,
|
| + const CFX_WideString& csFieldName = L"");
|
|
|
| - FX_DWORD CountFormFonts();
|
| + void GetAllFieldNames(CFX_WideStringArray& allFieldNames);
|
|
|
| - CPDF_Font* GetFormFont(FX_DWORD index, CFX_ByteString& csNameTag);
|
| + FX_BOOL IsValidFormField(const void* pField);
|
|
|
| - CPDF_Font* GetFormFont(CFX_ByteString csNameTag);
|
| + CPDF_FormField* GetFieldByDict(CPDF_Dictionary* pFieldDict) const;
|
|
|
| - CPDF_Font* GetFormFont(CFX_ByteString csFontName, CFX_ByteString& csNameTag);
|
| + FX_DWORD CountControls(CFX_WideString csFieldName = L"");
|
|
|
| - CPDF_Font* GetNativeFormFont(uint8_t iCharSet, CFX_ByteString& csNameTag);
|
| + CPDF_FormControl* GetControl(FX_DWORD index,
|
| + CFX_WideString csFieldName = L"");
|
|
|
| - CPDF_Font* GetNativeFormFont(CFX_ByteString& csNameTag);
|
| + FX_BOOL IsValidFormControl(const void* pControl);
|
|
|
| - FX_BOOL FindFormFont(const CPDF_Font* pFont, CFX_ByteString& csNameTag);
|
| + int CountPageControls(CPDF_Page* pPage) const;
|
|
|
| - FX_BOOL FindFormFont(CFX_ByteString csFontName, CPDF_Font*& pFont, CFX_ByteString& csNameTag);
|
| + CPDF_FormControl* GetPageControl(CPDF_Page* pPage, int index) const;
|
|
|
| - inline FX_BOOL FindFormFont(CFX_WideString csFontName, CPDF_Font*& pFont, CFX_ByteString& csNameTag)
|
| - {
|
| - return FindFormFont(PDF_EncodeText(csFontName), pFont, csNameTag);
|
| - }
|
| + CPDF_FormControl* GetControlAtPoint(CPDF_Page* pPage,
|
| + FX_FLOAT pdf_x,
|
| + FX_FLOAT pdf_y) const;
|
|
|
| + CPDF_FormControl* GetControlByDict(CPDF_Dictionary* pWidgetDict) const;
|
|
|
| + FX_DWORD CountInternalFields(const CFX_WideString& csFieldName = L"") const;
|
|
|
| + CPDF_Dictionary* GetInternalField(
|
| + FX_DWORD index,
|
| + const CFX_WideString& csFieldName = L"") const;
|
|
|
| + CPDF_Document* GetDocument() const { return m_pDocument; }
|
|
|
| - void AddFormFont(const CPDF_Font* pFont, CFX_ByteString& csNameTag);
|
| + CPDF_Dictionary* GetFormDict() const { return m_pFormDict; }
|
|
|
| - CPDF_Font* AddNativeFormFont(uint8_t iCharSet, CFX_ByteString& csNameTag);
|
| + FX_BOOL NeedConstructAP();
|
|
|
| - CPDF_Font* AddNativeFormFont(CFX_ByteString& csNameTag);
|
| + void NeedConstructAP(FX_BOOL bNeedAP);
|
|
|
| - void RemoveFormFont(const CPDF_Font* pFont);
|
| + int CountFieldsInCalculationOrder();
|
|
|
| - void RemoveFormFont(CFX_ByteString csNameTag);
|
| + CPDF_FormField* GetFieldInCalculationOrder(int index);
|
|
|
| + int FindFieldInCalculationOrder(const CPDF_FormField* pField);
|
|
|
| + FX_DWORD CountFormFonts();
|
|
|
| + CPDF_Font* GetFormFont(FX_DWORD index, CFX_ByteString& csNameTag);
|
|
|
| - CPDF_DefaultAppearance GetDefaultAppearance();
|
| + CPDF_Font* GetFormFont(CFX_ByteString csNameTag);
|
|
|
| - CPDF_Font* GetDefaultFormFont();
|
| + CPDF_Font* GetFormFont(CFX_ByteString csFontName, CFX_ByteString& csNameTag);
|
|
|
| + CPDF_Font* GetNativeFormFont(uint8_t iCharSet, CFX_ByteString& csNameTag);
|
|
|
| + CPDF_Font* GetNativeFormFont(CFX_ByteString& csNameTag);
|
|
|
| - int GetFormAlignment();
|
| + FX_BOOL FindFormFont(const CPDF_Font* pFont, CFX_ByteString& csNameTag);
|
|
|
| + FX_BOOL FindFormFont(CFX_ByteString csFontName,
|
| + CPDF_Font*& pFont,
|
| + CFX_ByteString& csNameTag);
|
|
|
| + inline FX_BOOL FindFormFont(CFX_WideString csFontName,
|
| + CPDF_Font*& pFont,
|
| + CFX_ByteString& csNameTag) {
|
| + return FindFormFont(PDF_EncodeText(csFontName), pFont, csNameTag);
|
| + }
|
|
|
| + void AddFormFont(const CPDF_Font* pFont, CFX_ByteString& csNameTag);
|
|
|
| - CPDF_FormField* CheckRequiredFields(const CFX_PtrArray *fields = NULL, FX_BOOL bIncludeOrExclude = TRUE) const;
|
| + CPDF_Font* AddNativeFormFont(uint8_t iCharSet, CFX_ByteString& csNameTag);
|
|
|
| - CFDF_Document* ExportToFDF(const CFX_WideStringC& pdf_path, FX_BOOL bSimpleFileSpec = FALSE) const;
|
| + CPDF_Font* AddNativeFormFont(CFX_ByteString& csNameTag);
|
|
|
| - CFDF_Document* ExportToFDF(const CFX_WideStringC& pdf_path, CFX_PtrArray& fields, FX_BOOL bIncludeOrExclude = TRUE, FX_BOOL bSimpleFileSpec = FALSE) const;
|
| + void RemoveFormFont(const CPDF_Font* pFont);
|
|
|
| - FX_BOOL ImportFromFDF(const CFDF_Document* pFDFDoc, FX_BOOL bNotify = FALSE);
|
| + void RemoveFormFont(CFX_ByteString csNameTag);
|
|
|
| + CPDF_DefaultAppearance GetDefaultAppearance();
|
|
|
| + CPDF_Font* GetDefaultFormFont();
|
|
|
| + int GetFormAlignment();
|
|
|
| - FX_BOOL ResetForm(const CFX_PtrArray& fields, FX_BOOL bIncludeOrExclude = TRUE, FX_BOOL bNotify = FALSE);
|
| + CPDF_FormField* CheckRequiredFields(const CFX_PtrArray* fields = NULL,
|
| + FX_BOOL bIncludeOrExclude = TRUE) const;
|
|
|
| - FX_BOOL ResetForm(FX_BOOL bNotify = FALSE);
|
| + CFDF_Document* ExportToFDF(const CFX_WideStringC& pdf_path,
|
| + FX_BOOL bSimpleFileSpec = FALSE) const;
|
|
|
| - void ReloadForm();
|
| + CFDF_Document* ExportToFDF(const CFX_WideStringC& pdf_path,
|
| + CFX_PtrArray& fields,
|
| + FX_BOOL bIncludeOrExclude = TRUE,
|
| + FX_BOOL bSimpleFileSpec = FALSE) const;
|
|
|
| - CPDF_FormNotify* GetFormNotify() const
|
| - {
|
| - return m_pFormNotify;
|
| - }
|
| + FX_BOOL ImportFromFDF(const CFDF_Document* pFDFDoc, FX_BOOL bNotify = FALSE);
|
|
|
| - void SetFormNotify(const CPDF_FormNotify* pNotify);
|
| + FX_BOOL ResetForm(const CFX_PtrArray& fields,
|
| + FX_BOOL bIncludeOrExclude = TRUE,
|
| + FX_BOOL bNotify = FALSE);
|
|
|
| + FX_BOOL ResetForm(FX_BOOL bNotify = FALSE);
|
|
|
| - int GetPageWithWidget(int iCurPage, FX_BOOL bNext);
|
| + void ReloadForm();
|
|
|
| + CPDF_FormNotify* GetFormNotify() const { return m_pFormNotify; }
|
|
|
| + void SetFormNotify(const CPDF_FormNotify* pNotify);
|
|
|
| - FX_BOOL IsUpdated()
|
| - {
|
| - return m_bUpdated;
|
| - }
|
| + int GetPageWithWidget(int iCurPage, FX_BOOL bNext);
|
|
|
| - void ClearUpdatedFlag()
|
| - {
|
| - m_bUpdated = FALSE;
|
| - }
|
| + FX_BOOL IsUpdated() { return m_bUpdated; }
|
|
|
| + void ClearUpdatedFlag() { m_bUpdated = FALSE; }
|
|
|
| - FX_BOOL HasXFAForm() const;
|
| + FX_BOOL HasXFAForm() const;
|
|
|
| - void FixPageFields(const CPDF_Page* pPage);
|
| -protected:
|
| + void FixPageFields(const CPDF_Page* pPage);
|
|
|
| - static FX_BOOL m_bUpdateAP;
|
| + protected:
|
| + static FX_BOOL m_bUpdateAP;
|
|
|
| - void LoadField(CPDF_Dictionary* pFieldDict, int nLevel = 0);
|
| + void LoadField(CPDF_Dictionary* pFieldDict, int nLevel = 0);
|
|
|
| - CPDF_Object* GetFieldAttr(CPDF_Dictionary* pFieldDict, const FX_CHAR* name);
|
| + CPDF_Object* GetFieldAttr(CPDF_Dictionary* pFieldDict, const FX_CHAR* name);
|
|
|
| - CPDF_FormField* AddTerminalField(const CPDF_Dictionary* pFieldDict);
|
| + CPDF_FormField* AddTerminalField(const CPDF_Dictionary* pFieldDict);
|
|
|
| - CPDF_FormControl* AddControl(const CPDF_FormField* pField, const CPDF_Dictionary* pWidgetDict);
|
| + CPDF_FormControl* AddControl(const CPDF_FormField* pField,
|
| + const CPDF_Dictionary* pWidgetDict);
|
|
|
| - void FDF_ImportField(CPDF_Dictionary* pField, const CFX_WideString& parent_name, FX_BOOL bNotify = FALSE, int nLevel = 0);
|
| + void FDF_ImportField(CPDF_Dictionary* pField,
|
| + const CFX_WideString& parent_name,
|
| + FX_BOOL bNotify = FALSE,
|
| + int nLevel = 0);
|
|
|
| - FX_BOOL ValidateFieldName(CFX_WideString& csNewFieldName, int iType, const CPDF_FormField* pExcludedField, const CPDF_FormControl* pExcludedControl);
|
| + FX_BOOL ValidateFieldName(CFX_WideString& csNewFieldName,
|
| + int iType,
|
| + const CPDF_FormField* pExcludedField,
|
| + const CPDF_FormControl* pExcludedControl);
|
|
|
| - int CompareFieldName(const CFX_WideString& name1, const CFX_WideString& name2);
|
| + int CompareFieldName(const CFX_WideString& name1,
|
| + const CFX_WideString& name2);
|
|
|
| - int CompareFieldName(const CFX_ByteString& name1, const CFX_ByteString& name2);
|
| + int CompareFieldName(const CFX_ByteString& name1,
|
| + const CFX_ByteString& name2);
|
|
|
| - CPDF_Document* m_pDocument;
|
| + CPDF_Document* m_pDocument;
|
|
|
| - FX_BOOL m_bGenerateAP;
|
| + FX_BOOL m_bGenerateAP;
|
|
|
| - CPDF_Dictionary* m_pFormDict;
|
| + CPDF_Dictionary* m_pFormDict;
|
|
|
| - CFX_MapPtrToPtr m_ControlMap;
|
| + CFX_MapPtrToPtr m_ControlMap;
|
|
|
| - CFieldTree *m_pFieldTree;
|
| + CFieldTree* m_pFieldTree;
|
|
|
| - CFX_ByteString m_bsEncoding;
|
| + CFX_ByteString m_bsEncoding;
|
|
|
| - CPDF_FormNotify* m_pFormNotify;
|
| + CPDF_FormNotify* m_pFormNotify;
|
|
|
| - FX_BOOL m_bUpdated;
|
| - friend class CPDF_FormControl;
|
| - friend class CPDF_FormField;
|
| + FX_BOOL m_bUpdated;
|
| + friend class CPDF_FormControl;
|
| + friend class CPDF_FormField;
|
| };
|
| -#define FORMFIELD_READONLY 0x01
|
| -#define FORMFIELD_REQUIRED 0x02
|
| -#define FORMFIELD_NOEXPORT 0x04
|
| -#define FORMRADIO_NOTOGGLEOFF 0x100
|
| -#define FORMRADIO_UNISON 0x200
|
| -#define FORMTEXT_MULTILINE 0x100
|
| -#define FORMTEXT_PASSWORD 0x200
|
| -#define FORMTEXT_NOSCROLL 0x400
|
| -#define FORMTEXT_COMB 0x800
|
| -#define FORMCOMBO_EDIT 0x100
|
| -#define FORMLIST_MULTISELECT 0x100
|
| -class CPDF_FormField
|
| -{
|
| -public:
|
| -
|
| - enum Type {
|
| - Unknown,
|
| - PushButton,
|
| - RadioButton,
|
| - CheckBox,
|
| - Text,
|
| - RichText,
|
| - File,
|
| - ListBox,
|
| - ComboBox,
|
| - Sign
|
| - };
|
| -
|
| - CFX_WideString GetFullName();
|
| -
|
| - Type GetType()
|
| - {
|
| - return m_Type;
|
| - }
|
| -
|
| - FX_DWORD GetFlags()
|
| - {
|
| - return m_Flags;
|
| - }
|
| -
|
| - CPDF_InterForm* GetInterForm() const
|
| - {
|
| - return m_pForm;
|
| - }
|
| -
|
| - CPDF_Dictionary* GetFieldDict() const
|
| - {
|
| - return m_pDict;
|
| - }
|
| -
|
| - void SetFieldDict(CPDF_Dictionary* pDict)
|
| - {
|
| - m_pDict = pDict;
|
| - }
|
| -
|
| - FX_BOOL ResetField(FX_BOOL bNotify = FALSE);
|
| -
|
| -
|
| -
|
| - int CountControls()
|
| - {
|
| - return m_ControlList.GetSize();
|
| - }
|
| -
|
| - CPDF_FormControl* GetControl(int index)
|
| - {
|
| - return (CPDF_FormControl*)m_ControlList.GetAt(index);
|
| - }
|
| -
|
| - int GetControlIndex(const CPDF_FormControl* pControl);
|
| -
|
| -
|
| -
|
| -
|
| - int GetFieldType();
|
| -
|
| -
|
| -
|
| -
|
| - CPDF_AAction GetAdditionalAction();
|
| -
|
| -
|
| -
|
| -
|
| - CFX_WideString GetAlternateName();
|
| -
|
| -
|
| -
|
| -
|
| - CFX_WideString GetMappingName();
|
| -
|
| -
|
| -
|
| -
|
| - FX_DWORD GetFieldFlags();
|
| -
|
| -
|
| -
|
| -
|
| - CFX_ByteString GetDefaultStyle();
|
| -
|
| -
|
| +#define FORMFIELD_READONLY 0x01
|
| +#define FORMFIELD_REQUIRED 0x02
|
| +#define FORMFIELD_NOEXPORT 0x04
|
| +#define FORMRADIO_NOTOGGLEOFF 0x100
|
| +#define FORMRADIO_UNISON 0x200
|
| +#define FORMTEXT_MULTILINE 0x100
|
| +#define FORMTEXT_PASSWORD 0x200
|
| +#define FORMTEXT_NOSCROLL 0x400
|
| +#define FORMTEXT_COMB 0x800
|
| +#define FORMCOMBO_EDIT 0x100
|
| +#define FORMLIST_MULTISELECT 0x100
|
| +class CPDF_FormField {
|
| + public:
|
| + enum Type {
|
| + Unknown,
|
| + PushButton,
|
| + RadioButton,
|
| + CheckBox,
|
| + Text,
|
| + RichText,
|
| + File,
|
| + ListBox,
|
| + ComboBox,
|
| + Sign
|
| + };
|
|
|
| + CFX_WideString GetFullName();
|
|
|
| - CFX_WideString GetRichTextString();
|
| + Type GetType() { return m_Type; }
|
|
|
| + FX_DWORD GetFlags() { return m_Flags; }
|
|
|
| + CPDF_InterForm* GetInterForm() const { return m_pForm; }
|
|
|
| - CFX_WideString GetValue();
|
| + CPDF_Dictionary* GetFieldDict() const { return m_pDict; }
|
|
|
| - CFX_WideString GetDefaultValue();
|
| + void SetFieldDict(CPDF_Dictionary* pDict) { m_pDict = pDict; }
|
|
|
| - FX_BOOL SetValue(const CFX_WideString& value, FX_BOOL bNotify = FALSE);
|
| + FX_BOOL ResetField(FX_BOOL bNotify = FALSE);
|
|
|
| + int CountControls() { return m_ControlList.GetSize(); }
|
|
|
| + CPDF_FormControl* GetControl(int index) {
|
| + return (CPDF_FormControl*)m_ControlList.GetAt(index);
|
| + }
|
|
|
| + int GetControlIndex(const CPDF_FormControl* pControl);
|
|
|
| + int GetFieldType();
|
|
|
| - int GetMaxLen();
|
| + CPDF_AAction GetAdditionalAction();
|
|
|
| + CFX_WideString GetAlternateName();
|
|
|
| + CFX_WideString GetMappingName();
|
|
|
| + FX_DWORD GetFieldFlags();
|
|
|
| - int CountSelectedItems();
|
| + CFX_ByteString GetDefaultStyle();
|
|
|
| - int GetSelectedIndex(int index);
|
| + CFX_WideString GetRichTextString();
|
|
|
| - FX_BOOL ClearSelection(FX_BOOL bNotify = FALSE);
|
| + CFX_WideString GetValue();
|
|
|
| - FX_BOOL IsItemSelected(int index);
|
| + CFX_WideString GetDefaultValue();
|
|
|
| - FX_BOOL SetItemSelection(int index, FX_BOOL bSelected, FX_BOOL bNotify = FALSE);
|
| + FX_BOOL SetValue(const CFX_WideString& value, FX_BOOL bNotify = FALSE);
|
|
|
| - FX_BOOL IsItemDefaultSelected(int index);
|
| + int GetMaxLen();
|
|
|
| - int GetDefaultSelectedItem();
|
| + int CountSelectedItems();
|
|
|
| + int GetSelectedIndex(int index);
|
|
|
| + FX_BOOL ClearSelection(FX_BOOL bNotify = FALSE);
|
|
|
| + FX_BOOL IsItemSelected(int index);
|
|
|
| - int CountOptions();
|
| + FX_BOOL SetItemSelection(int index,
|
| + FX_BOOL bSelected,
|
| + FX_BOOL bNotify = FALSE);
|
|
|
| - CFX_WideString GetOptionLabel(int index);
|
| + FX_BOOL IsItemDefaultSelected(int index);
|
|
|
| - CFX_WideString GetOptionValue(int index);
|
| + int GetDefaultSelectedItem();
|
|
|
| - int FindOption(CFX_WideString csOptLabel);
|
| + int CountOptions();
|
|
|
| - int FindOptionValue(const CFX_WideString& csOptValue, int iStartIndex = 0);
|
| + CFX_WideString GetOptionLabel(int index);
|
|
|
| + CFX_WideString GetOptionValue(int index);
|
|
|
| + int FindOption(CFX_WideString csOptLabel);
|
|
|
| + int FindOptionValue(const CFX_WideString& csOptValue, int iStartIndex = 0);
|
|
|
| - FX_BOOL CheckControl(int iControlIndex, FX_BOOL bChecked, FX_BOOL bNotify = FALSE);
|
| + FX_BOOL CheckControl(int iControlIndex,
|
| + FX_BOOL bChecked,
|
| + FX_BOOL bNotify = FALSE);
|
|
|
| + int GetTopVisibleIndex();
|
|
|
| + int CountSelectedOptions();
|
|
|
| + int GetSelectedOptionIndex(int index);
|
|
|
| - int GetTopVisibleIndex();
|
| + FX_BOOL IsOptionSelected(int iOptIndex);
|
|
|
| + FX_BOOL SelectOption(int iOptIndex,
|
| + FX_BOOL bSelected,
|
| + FX_BOOL bNotify = FALSE);
|
|
|
| + FX_BOOL ClearSelectedOptions(FX_BOOL bNotify = FALSE);
|
|
|
| + FX_FLOAT GetFontSize() { return m_FontSize; }
|
|
|
| - int CountSelectedOptions();
|
| + CPDF_Font* GetFont() { return m_pFont; }
|
|
|
| - int GetSelectedOptionIndex(int index);
|
| + protected:
|
| + CPDF_FormField(CPDF_InterForm* pForm, CPDF_Dictionary* pDict);
|
|
|
| - FX_BOOL IsOptionSelected(int iOptIndex);
|
| + ~CPDF_FormField();
|
|
|
| - FX_BOOL SelectOption(int iOptIndex, FX_BOOL bSelected, FX_BOOL bNotify = FALSE);
|
| + CPDF_FormField::Type m_Type;
|
|
|
| - FX_BOOL ClearSelectedOptions(FX_BOOL bNotify = FALSE);
|
| + FX_DWORD m_Flags;
|
|
|
| + CPDF_InterForm* m_pForm;
|
|
|
| + CPDF_Dictionary* m_pDict;
|
|
|
| + CFX_PtrArray m_ControlList;
|
| + friend class CPDF_InterForm;
|
| + friend class CPDF_FormControl;
|
|
|
| - FX_FLOAT GetFontSize()
|
| - {
|
| - return m_FontSize;
|
| - }
|
| + CFX_WideString GetValue(FX_BOOL bDefault);
|
|
|
| - CPDF_Font* GetFont()
|
| - {
|
| - return m_pFont;
|
| - }
|
| + FX_BOOL SetValue(const CFX_WideString& value,
|
| + FX_BOOL bDefault,
|
| + FX_BOOL bNotify);
|
|
|
| -protected:
|
| + void SyncFieldFlags();
|
|
|
| - CPDF_FormField(CPDF_InterForm* pForm, CPDF_Dictionary* pDict);
|
| + int FindListSel(CPDF_String* str);
|
|
|
| - ~CPDF_FormField();
|
| + CFX_WideString GetOptionText(int index, int sub_index);
|
|
|
| - CPDF_FormField::Type m_Type;
|
| + void LoadDA();
|
|
|
| - FX_DWORD m_Flags;
|
| + void UpdateAP(CPDF_FormControl* pControl);
|
|
|
| - CPDF_InterForm* m_pForm;
|
| + CFX_WideString GetCheckValue(FX_BOOL bDefault);
|
|
|
| - CPDF_Dictionary* m_pDict;
|
| + FX_BOOL SetCheckValue(const CFX_WideString& value,
|
| + FX_BOOL bDefault,
|
| + FX_BOOL bNotify);
|
|
|
| - CFX_PtrArray m_ControlList;
|
| - friend class CPDF_InterForm;
|
| - friend class CPDF_FormControl;
|
| + FX_FLOAT m_FontSize;
|
|
|
| -
|
| -
|
| - CFX_WideString GetValue(FX_BOOL bDefault);
|
| -
|
| - FX_BOOL SetValue(const CFX_WideString& value, FX_BOOL bDefault, FX_BOOL bNotify);
|
| -
|
| -
|
| - void SyncFieldFlags();
|
| -
|
| - int FindListSel(CPDF_String* str);
|
| -
|
| - CFX_WideString GetOptionText(int index, int sub_index);
|
| -
|
| - void LoadDA();
|
| -
|
| - void UpdateAP(CPDF_FormControl* pControl);
|
| -
|
| -
|
| -
|
| - CFX_WideString GetCheckValue(FX_BOOL bDefault);
|
| -
|
| - FX_BOOL SetCheckValue(const CFX_WideString& value, FX_BOOL bDefault, FX_BOOL bNotify);
|
| -
|
| -
|
| - FX_FLOAT m_FontSize;
|
| -
|
| - CPDF_Font* m_pFont;
|
| + CPDF_Font* m_pFont;
|
| };
|
| -CPDF_Object* FPDF_GetFieldAttr(CPDF_Dictionary* pFieldDict, const FX_CHAR* name, int nLevel = 0);
|
| -class CPDF_IconFit
|
| -{
|
| -public:
|
| -
|
| - CPDF_IconFit(CPDF_Dictionary* pDict = NULL)
|
| - {
|
| - m_pDict = pDict;
|
| - }
|
| -
|
| - operator CPDF_Dictionary*() const
|
| - {
|
| - return m_pDict;
|
| - }
|
| -
|
| -
|
| -
|
| -
|
| - enum ScaleMethod {
|
| - Always = 0,
|
| - Bigger,
|
| - Smaller,
|
| - Never
|
| - };
|
| -
|
| - ScaleMethod GetScaleMethod();
|
| -
|
| -
|
| -
|
| -
|
| - FX_BOOL IsProportionalScale();
|
| -
|
| -
|
| -
|
| +CPDF_Object* FPDF_GetFieldAttr(CPDF_Dictionary* pFieldDict,
|
| + const FX_CHAR* name,
|
| + int nLevel = 0);
|
| +class CPDF_IconFit {
|
| + public:
|
| + CPDF_IconFit(CPDF_Dictionary* pDict = NULL) { m_pDict = pDict; }
|
|
|
| - void GetIconPosition(FX_FLOAT& fLeft, FX_FLOAT& fBottom);
|
| + operator CPDF_Dictionary*() const { return m_pDict; }
|
|
|
| + enum ScaleMethod { Always = 0, Bigger, Smaller, Never };
|
|
|
| + ScaleMethod GetScaleMethod();
|
|
|
| + FX_BOOL IsProportionalScale();
|
|
|
| - FX_BOOL GetFittingBounds();
|
| + void GetIconPosition(FX_FLOAT& fLeft, FX_FLOAT& fBottom);
|
|
|
| + FX_BOOL GetFittingBounds();
|
|
|
| - CPDF_Dictionary* m_pDict;
|
| + CPDF_Dictionary* m_pDict;
|
| };
|
|
|
| -#define TEXTPOS_CAPTION 0
|
| -#define TEXTPOS_ICON 1
|
| -#define TEXTPOS_BELOW 2
|
| -#define TEXTPOS_ABOVE 3
|
| -#define TEXTPOS_RIGHT 4
|
| -#define TEXTPOS_LEFT 5
|
| -#define TEXTPOS_OVERLAID 6
|
| -class CPDF_FormControl
|
| -{
|
| -public:
|
| -
|
| - CPDF_FormField::Type GetType()
|
| - {
|
| - return m_pField->GetType();
|
| - }
|
| -
|
| - CPDF_InterForm* GetInterForm() const
|
| - {
|
| - return m_pForm;
|
| - }
|
| -
|
| - CPDF_FormField* GetField() const
|
| - {
|
| - return m_pField;
|
| - }
|
| -
|
| - CPDF_Dictionary* GetWidget() const
|
| - {
|
| - return m_pWidgetDict;
|
| - }
|
| -
|
| - CFX_FloatRect GetRect();
|
| -
|
| - void DrawControl(CFX_RenderDevice* pDevice, CFX_AffineMatrix* pMatrix,
|
| - CPDF_Page* pPage, CPDF_Annot::AppearanceMode mode, const CPDF_RenderOptions* pOptions = NULL);
|
| -
|
| -
|
| -
|
| - CFX_ByteString GetCheckedAPState();
|
| -
|
| - CFX_WideString GetExportValue();
|
| -
|
| - FX_BOOL IsChecked();
|
| -
|
| - FX_BOOL IsDefaultChecked();
|
| -
|
| -
|
| -
|
| -
|
| - enum HighlightingMode {
|
| - None = 0,
|
| - Invert,
|
| - Outline,
|
| - Push,
|
| - Toggle
|
| - };
|
| -
|
| - HighlightingMode GetHighlightingMode();
|
| -
|
| -
|
| -
|
| -
|
| - FX_BOOL HasMKEntry(CFX_ByteString csEntry);
|
| -
|
| -
|
| -
|
| -
|
| - int GetRotation();
|
| -
|
| -
|
| -
|
| -
|
| - inline FX_ARGB GetBorderColor(int& iColorType)
|
| - {
|
| - return GetColor(iColorType, "BC");
|
| - }
|
| -
|
| - inline FX_FLOAT GetOriginalBorderColor(int index)
|
| - {
|
| - return GetOriginalColor(index, "BC");
|
| - }
|
| +#define TEXTPOS_CAPTION 0
|
| +#define TEXTPOS_ICON 1
|
| +#define TEXTPOS_BELOW 2
|
| +#define TEXTPOS_ABOVE 3
|
| +#define TEXTPOS_RIGHT 4
|
| +#define TEXTPOS_LEFT 5
|
| +#define TEXTPOS_OVERLAID 6
|
| +class CPDF_FormControl {
|
| + public:
|
| + CPDF_FormField::Type GetType() { return m_pField->GetType(); }
|
|
|
| - inline void GetOriginalBorderColor(int& iColorType, FX_FLOAT fc[4])
|
| - {
|
| - GetOriginalColor(iColorType, fc, "BC");
|
| - }
|
| + CPDF_InterForm* GetInterForm() const { return m_pForm; }
|
|
|
| + CPDF_FormField* GetField() const { return m_pField; }
|
|
|
| + CPDF_Dictionary* GetWidget() const { return m_pWidgetDict; }
|
|
|
| + CFX_FloatRect GetRect();
|
|
|
| - inline FX_ARGB GetBackgroundColor(int& iColorType)
|
| - {
|
| - return GetColor(iColorType, "BG");
|
| - }
|
| + void DrawControl(CFX_RenderDevice* pDevice,
|
| + CFX_AffineMatrix* pMatrix,
|
| + CPDF_Page* pPage,
|
| + CPDF_Annot::AppearanceMode mode,
|
| + const CPDF_RenderOptions* pOptions = NULL);
|
|
|
| - inline FX_FLOAT GetOriginalBackgroundColor(int index)
|
| - {
|
| - return GetOriginalColor(index, "BG");
|
| - }
|
| + CFX_ByteString GetCheckedAPState();
|
|
|
| - inline void GetOriginalBackgroundColor(int& iColorType, FX_FLOAT fc[4])
|
| - {
|
| - GetOriginalColor(iColorType, fc, "BG");
|
| - }
|
| + CFX_WideString GetExportValue();
|
|
|
| + FX_BOOL IsChecked();
|
|
|
| + FX_BOOL IsDefaultChecked();
|
|
|
| + enum HighlightingMode { None = 0, Invert, Outline, Push, Toggle };
|
|
|
| - inline CFX_WideString GetNormalCaption()
|
| - {
|
| - return GetCaption("CA");
|
| - }
|
| + HighlightingMode GetHighlightingMode();
|
|
|
| + FX_BOOL HasMKEntry(CFX_ByteString csEntry);
|
|
|
| + int GetRotation();
|
|
|
| + inline FX_ARGB GetBorderColor(int& iColorType) {
|
| + return GetColor(iColorType, "BC");
|
| + }
|
|
|
| - inline CFX_WideString GetRolloverCaption()
|
| - {
|
| - return GetCaption("RC");
|
| - }
|
| + inline FX_FLOAT GetOriginalBorderColor(int index) {
|
| + return GetOriginalColor(index, "BC");
|
| + }
|
|
|
| + inline void GetOriginalBorderColor(int& iColorType, FX_FLOAT fc[4]) {
|
| + GetOriginalColor(iColorType, fc, "BC");
|
| + }
|
|
|
| + inline FX_ARGB GetBackgroundColor(int& iColorType) {
|
| + return GetColor(iColorType, "BG");
|
| + }
|
|
|
| + inline FX_FLOAT GetOriginalBackgroundColor(int index) {
|
| + return GetOriginalColor(index, "BG");
|
| + }
|
|
|
| - inline CFX_WideString GetDownCaption()
|
| - {
|
| - return GetCaption("AC");
|
| - }
|
| + inline void GetOriginalBackgroundColor(int& iColorType, FX_FLOAT fc[4]) {
|
| + GetOriginalColor(iColorType, fc, "BG");
|
| + }
|
|
|
| + inline CFX_WideString GetNormalCaption() { return GetCaption("CA"); }
|
|
|
| + inline CFX_WideString GetRolloverCaption() { return GetCaption("RC"); }
|
|
|
| + inline CFX_WideString GetDownCaption() { return GetCaption("AC"); }
|
|
|
| - inline CPDF_Stream* GetNormalIcon()
|
| - {
|
| - return GetIcon("I");
|
| - }
|
| + inline CPDF_Stream* GetNormalIcon() { return GetIcon("I"); }
|
|
|
| + inline CPDF_Stream* GetRolloverIcon() { return GetIcon("RI"); }
|
|
|
| + inline CPDF_Stream* GetDownIcon() { return GetIcon("IX"); }
|
|
|
| + CPDF_IconFit GetIconFit();
|
|
|
| - inline CPDF_Stream* GetRolloverIcon()
|
| - {
|
| - return GetIcon("RI");
|
| - }
|
| + int GetTextPosition();
|
|
|
| + CPDF_Action GetAction();
|
|
|
| + CPDF_AAction GetAdditionalAction();
|
|
|
| + CPDF_DefaultAppearance GetDefaultAppearance();
|
|
|
| - inline CPDF_Stream* GetDownIcon()
|
| - {
|
| - return GetIcon("IX");
|
| - }
|
| + CPDF_Font* GetDefaultControlFont();
|
|
|
| + int GetControlAlignment();
|
|
|
| + protected:
|
| + CPDF_FormControl(CPDF_FormField* pField, CPDF_Dictionary* pWidgetDict);
|
|
|
| + CFX_ByteString GetOnStateName();
|
|
|
| - CPDF_IconFit GetIconFit();
|
| + void SetOnStateName(const CFX_ByteString& csOn);
|
|
|
| + void CheckControl(FX_BOOL bChecked);
|
|
|
| + FX_ARGB GetColor(int& iColorType, CFX_ByteString csEntry);
|
|
|
| + FX_FLOAT GetOriginalColor(int index, CFX_ByteString csEntry);
|
|
|
| - int GetTextPosition();
|
| + void GetOriginalColor(int& iColorType,
|
| + FX_FLOAT fc[4],
|
| + CFX_ByteString csEntry);
|
|
|
| + CFX_WideString GetCaption(CFX_ByteString csEntry);
|
|
|
| + CPDF_Stream* GetIcon(CFX_ByteString csEntry);
|
|
|
| + CPDF_ApSettings GetMK(FX_BOOL bCreate);
|
|
|
| - CPDF_Action GetAction();
|
| + CPDF_InterForm* m_pForm;
|
|
|
| + CPDF_FormField* m_pField;
|
|
|
| + CPDF_Dictionary* m_pWidgetDict;
|
| + friend class CPDF_InterForm;
|
| + friend class CPDF_FormField;
|
| +};
|
| +class CPDF_FormNotify {
|
| + public:
|
| + virtual ~CPDF_FormNotify() {}
|
|
|
| + virtual int BeforeValueChange(const CPDF_FormField* pField,
|
| + CFX_WideString& csValue) {
|
| + return 0;
|
| + }
|
|
|
| - CPDF_AAction GetAdditionalAction();
|
| -
|
| -
|
| -
|
| -
|
| - CPDF_DefaultAppearance GetDefaultAppearance();
|
| -
|
| - CPDF_Font* GetDefaultControlFont();
|
| -
|
| -
|
| -
|
| -
|
| - int GetControlAlignment();
|
| -
|
| -protected:
|
| -
|
| - CPDF_FormControl(CPDF_FormField* pField, CPDF_Dictionary* pWidgetDict);
|
| -
|
| - CFX_ByteString GetOnStateName();
|
| -
|
| - void SetOnStateName(const CFX_ByteString& csOn);
|
| -
|
| - void CheckControl(FX_BOOL bChecked);
|
| -
|
| - FX_ARGB GetColor(int& iColorType, CFX_ByteString csEntry);
|
| -
|
| - FX_FLOAT GetOriginalColor(int index, CFX_ByteString csEntry);
|
| + virtual int AfterValueChange(const CPDF_FormField* pField) { return 0; }
|
|
|
| - void GetOriginalColor(int& iColorType, FX_FLOAT fc[4], CFX_ByteString csEntry);
|
| + virtual int BeforeSelectionChange(const CPDF_FormField* pField,
|
| + CFX_WideString& csValue) {
|
| + return 0;
|
| + }
|
|
|
| - CFX_WideString GetCaption(CFX_ByteString csEntry);
|
| + virtual int AfterSelectionChange(const CPDF_FormField* pField) { return 0; }
|
|
|
| - CPDF_Stream* GetIcon(CFX_ByteString csEntry);
|
| + virtual int AfterCheckedStatusChange(const CPDF_FormField* pField,
|
| + const CFX_ByteArray& statusArray) {
|
| + return 0;
|
| + }
|
|
|
| - CPDF_ApSettings GetMK(FX_BOOL bCreate);
|
| + virtual int BeforeFormReset(const CPDF_InterForm* pForm) { return 0; }
|
|
|
| - CPDF_InterForm* m_pForm;
|
| + virtual int AfterFormReset(const CPDF_InterForm* pForm) { return 0; }
|
|
|
| - CPDF_FormField* m_pField;
|
| + virtual int BeforeFormImportData(const CPDF_InterForm* pForm) { return 0; }
|
|
|
| - CPDF_Dictionary* m_pWidgetDict;
|
| - friend class CPDF_InterForm;
|
| - friend class CPDF_FormField;
|
| + virtual int AfterFormImportData(const CPDF_InterForm* pForm) { return 0; }
|
| };
|
| -class CPDF_FormNotify
|
| -{
|
| -public:
|
| -
|
| - virtual ~CPDF_FormNotify() {}
|
| -
|
| - virtual int BeforeValueChange(const CPDF_FormField* pField, CFX_WideString& csValue)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int AfterValueChange(const CPDF_FormField* pField)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int BeforeSelectionChange(const CPDF_FormField* pField, CFX_WideString& csValue)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int AfterSelectionChange(const CPDF_FormField* pField)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int AfterCheckedStatusChange(const CPDF_FormField* pField, const CFX_ByteArray& statusArray)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int BeforeFormReset(const CPDF_InterForm* pForm)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int AfterFormReset(const CPDF_InterForm* pForm)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int BeforeFormImportData(const CPDF_InterForm* pForm)
|
| - {
|
| - return 0;
|
| - }
|
| -
|
| - virtual int AfterFormImportData(const CPDF_InterForm* pForm)
|
| - {
|
| - return 0;
|
| - }
|
| -};
|
| -FX_BOOL FPDF_GenerateAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict);
|
| -class CPDF_PageLabel
|
| -{
|
| -public:
|
| -
|
| - CPDF_PageLabel(CPDF_Document* pDocument)
|
| - {
|
| - m_pDocument = pDocument;
|
| - }
|
| +FX_BOOL FPDF_GenerateAP(CPDF_Document* pDoc, CPDF_Dictionary* pAnnotDict);
|
| +class CPDF_PageLabel {
|
| + public:
|
| + CPDF_PageLabel(CPDF_Document* pDocument) { m_pDocument = pDocument; }
|
|
|
| + CFX_WideString GetLabel(int nPage) const;
|
|
|
| - CFX_WideString GetLabel(int nPage) const;
|
| + int32_t GetPageByLabel(const CFX_ByteStringC& bsLabel) const;
|
|
|
| - int32_t GetPageByLabel(const CFX_ByteStringC& bsLabel) const;
|
| + int32_t GetPageByLabel(const CFX_WideStringC& wsLabel) const;
|
|
|
| -
|
| - int32_t GetPageByLabel(const CFX_WideStringC& wsLabel) const;
|
| -
|
| -protected:
|
| - CPDF_Document* m_pDocument;
|
| + protected:
|
| + CPDF_Document* m_pDocument;
|
| };
|
| -class CPDF_Metadata
|
| -{
|
| -public:
|
| -
|
| - CPDF_Metadata();
|
| -
|
| +class CPDF_Metadata {
|
| + public:
|
| + CPDF_Metadata();
|
|
|
| - ~CPDF_Metadata();
|
| + ~CPDF_Metadata();
|
|
|
| - void LoadDoc(CPDF_Document *pDoc);
|
| + void LoadDoc(CPDF_Document* pDoc);
|
|
|
| + int32_t GetString(const CFX_ByteStringC& bsItem, CFX_WideString& wsStr);
|
|
|
| - int32_t GetString(const CFX_ByteStringC& bsItem, CFX_WideString &wsStr);
|
| + CXML_Element* GetRoot() const;
|
|
|
| - CXML_Element* GetRoot() const;
|
| + CXML_Element* GetRDF() const;
|
|
|
| - CXML_Element* GetRDF() const;
|
| -
|
| -protected:
|
| - void* m_pData;
|
| + protected:
|
| + void* m_pData;
|
| };
|
| -class CPDF_ViewerPreferences
|
| -{
|
| -public:
|
| -
|
| - CPDF_ViewerPreferences(CPDF_Document *pDoc);
|
| -
|
| -
|
| - ~CPDF_ViewerPreferences();
|
| +class CPDF_ViewerPreferences {
|
| + public:
|
| + CPDF_ViewerPreferences(CPDF_Document* pDoc);
|
|
|
| + ~CPDF_ViewerPreferences();
|
|
|
| - FX_BOOL IsDirectionR2L() const;
|
| + FX_BOOL IsDirectionR2L() const;
|
|
|
| - FX_BOOL PrintScaling() const;
|
| + FX_BOOL PrintScaling() const;
|
|
|
| - int32_t NumCopies() const;
|
| + int32_t NumCopies() const;
|
|
|
| - CPDF_Array* PrintPageRange() const;
|
| + CPDF_Array* PrintPageRange() const;
|
|
|
| - CFX_ByteString Duplex() const;
|
| + CFX_ByteString Duplex() const;
|
|
|
| -protected:
|
| - CPDF_Document* m_pDoc;
|
| + protected:
|
| + CPDF_Document* m_pDoc;
|
| };
|
| -class CPDF_ApSettings
|
| -{
|
| -public:
|
| -
|
| - CPDF_ApSettings(CPDF_Dictionary* pDict = NULL)
|
| - {
|
| - m_pDict = pDict;
|
| - }
|
| -
|
| - operator CPDF_Dictionary* () const
|
| - {
|
| - return m_pDict;
|
| - }
|
| -
|
| - FX_BOOL HasMKEntry(const CFX_ByteStringC& csEntry);
|
| -
|
| -
|
| -
|
| - int GetRotation();
|
| -
|
| -
|
| -
|
| -
|
| - inline FX_ARGB GetBorderColor(int& iColorType)
|
| - {
|
| - return GetColor(iColorType, FX_BSTRC("BC"));
|
| - }
|
| -
|
| - inline FX_FLOAT GetOriginalBorderColor(int index)
|
| - {
|
| - return GetOriginalColor(index, FX_BSTRC("BC"));
|
| - }
|
| -
|
| - inline void GetOriginalBorderColor(int& iColorType, FX_FLOAT fc[4])
|
| - {
|
| - GetOriginalColor(iColorType, fc, FX_BSTRC("BC"));
|
| - }
|
| -
|
| -
|
| -
|
| -
|
| - inline FX_ARGB GetBackgroundColor(int& iColorType)
|
| - {
|
| - return GetColor(iColorType, FX_BSTRC("BG"));
|
| - }
|
| -
|
| - inline FX_FLOAT GetOriginalBackgroundColor(int index)
|
| - {
|
| - return GetOriginalColor(index, FX_BSTRC("BG"));
|
| - }
|
| -
|
| - inline void GetOriginalBackgroundColor(int& iColorType, FX_FLOAT fc[4])
|
| - {
|
| - GetOriginalColor(iColorType, fc, FX_BSTRC("BG"));
|
| - }
|
| -
|
| -
|
| -
|
| -
|
| - inline CFX_WideString GetNormalCaption()
|
| - {
|
| - return GetCaption(FX_BSTRC("CA"));
|
| - }
|
| -
|
| -
|
| -
|
| -
|
| - inline CFX_WideString GetRolloverCaption()
|
| - {
|
| - return GetCaption(FX_BSTRC("RC"));
|
| - }
|
| -
|
| -
|
| -
|
| -
|
| - inline CFX_WideString GetDownCaption()
|
| - {
|
| - return GetCaption(FX_BSTRC("AC"));
|
| - }
|
| -
|
| -
|
| -
|
| +class CPDF_ApSettings {
|
| + public:
|
| + CPDF_ApSettings(CPDF_Dictionary* pDict = NULL) { m_pDict = pDict; }
|
|
|
| - inline CPDF_Stream* GetNormalIcon()
|
| - {
|
| - return GetIcon(FX_BSTRC("I"));
|
| - }
|
| + operator CPDF_Dictionary*() const { return m_pDict; }
|
|
|
| + FX_BOOL HasMKEntry(const CFX_ByteStringC& csEntry);
|
|
|
| + int GetRotation();
|
|
|
| + inline FX_ARGB GetBorderColor(int& iColorType) {
|
| + return GetColor(iColorType, FX_BSTRC("BC"));
|
| + }
|
|
|
| - inline CPDF_Stream* GetRolloverIcon()
|
| - {
|
| - return GetIcon(FX_BSTRC("RI"));
|
| - }
|
| + inline FX_FLOAT GetOriginalBorderColor(int index) {
|
| + return GetOriginalColor(index, FX_BSTRC("BC"));
|
| + }
|
|
|
| + inline void GetOriginalBorderColor(int& iColorType, FX_FLOAT fc[4]) {
|
| + GetOriginalColor(iColorType, fc, FX_BSTRC("BC"));
|
| + }
|
|
|
| + inline FX_ARGB GetBackgroundColor(int& iColorType) {
|
| + return GetColor(iColorType, FX_BSTRC("BG"));
|
| + }
|
|
|
| + inline FX_FLOAT GetOriginalBackgroundColor(int index) {
|
| + return GetOriginalColor(index, FX_BSTRC("BG"));
|
| + }
|
|
|
| - inline CPDF_Stream* GetDownIcon()
|
| - {
|
| - return GetIcon(FX_BSTRC("IX"));
|
| - }
|
| + inline void GetOriginalBackgroundColor(int& iColorType, FX_FLOAT fc[4]) {
|
| + GetOriginalColor(iColorType, fc, FX_BSTRC("BG"));
|
| + }
|
|
|
| + inline CFX_WideString GetNormalCaption() {
|
| + return GetCaption(FX_BSTRC("CA"));
|
| + }
|
|
|
| + inline CFX_WideString GetRolloverCaption() {
|
| + return GetCaption(FX_BSTRC("RC"));
|
| + }
|
|
|
| + inline CFX_WideString GetDownCaption() { return GetCaption(FX_BSTRC("AC")); }
|
|
|
| - CPDF_IconFit GetIconFit();
|
| + inline CPDF_Stream* GetNormalIcon() { return GetIcon(FX_BSTRC("I")); }
|
|
|
| + inline CPDF_Stream* GetRolloverIcon() { return GetIcon(FX_BSTRC("RI")); }
|
|
|
| + inline CPDF_Stream* GetDownIcon() { return GetIcon(FX_BSTRC("IX")); }
|
|
|
| + CPDF_IconFit GetIconFit();
|
|
|
| - int GetTextPosition();
|
| + int GetTextPosition();
|
|
|
| - CPDF_Dictionary* m_pDict;
|
| -protected:
|
| + CPDF_Dictionary* m_pDict;
|
|
|
| - FX_ARGB GetColor(int& iColorType, const CFX_ByteStringC& csEntry);
|
| + protected:
|
| + FX_ARGB GetColor(int& iColorType, const CFX_ByteStringC& csEntry);
|
|
|
| - FX_FLOAT GetOriginalColor(int index, const CFX_ByteStringC& csEntry);
|
| + FX_FLOAT GetOriginalColor(int index, const CFX_ByteStringC& csEntry);
|
|
|
| - void GetOriginalColor(int& iColorType, FX_FLOAT fc[4], const CFX_ByteStringC& csEntry);
|
| + void GetOriginalColor(int& iColorType,
|
| + FX_FLOAT fc[4],
|
| + const CFX_ByteStringC& csEntry);
|
|
|
| - CFX_WideString GetCaption(const CFX_ByteStringC& csEntry);
|
| + CFX_WideString GetCaption(const CFX_ByteStringC& csEntry);
|
|
|
| - CPDF_Stream* GetIcon(const CFX_ByteStringC& csEntry);
|
| - friend class CPDF_FormControl;
|
| + CPDF_Stream* GetIcon(const CFX_ByteStringC& csEntry);
|
| + friend class CPDF_FormControl;
|
| };
|
|
|
| #endif // CORE_INCLUDE_FPDFDOC_FPDF_DOC_H_
|
|
|