diff options
Diffstat (limited to 'xfa/include/fxfa')
-rw-r--r-- | xfa/include/fxfa/fxfa.h | 1690 | ||||
-rw-r--r-- | xfa/include/fxfa/fxfa_basic.h | 2168 | ||||
-rw-r--r-- | xfa/include/fxfa/fxfa_objectacc.h | 1696 | ||||
-rw-r--r-- | xfa/include/fxfa/fxfa_widget.h | 236 |
4 files changed, 2895 insertions, 2895 deletions
diff --git a/xfa/include/fxfa/fxfa.h b/xfa/include/fxfa/fxfa.h index 503909a1c4..5c0f63619e 100644 --- a/xfa/include/fxfa/fxfa.h +++ b/xfa/include/fxfa/fxfa.h @@ -1,845 +1,845 @@ -// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef FXFA_H_
-#define FXFA_H_
-
-class CFX_Graphics;
-class CPDF_Document;
-class CXFA_Node;
-class CXFA_NodeList;
-class CXFA_WidgetAcc;
-class IFDE_XMLElement;
-class IFWL_AdapterTimerMgr;
-class IFX_Font;
-class IXFA_App;
-class IXFA_AppProvider;
-class IXFA_ChecksumContext;
-class IXFA_DocHandler;
-class IXFA_DocProvider;
-class IXFA_DocView;
-class IXFA_FontMgr;
-class IXFA_MenuHandler;
-class IXFA_PageView;
-class IXFA_PageViewRender;
-class IXFA_WidgetAccIterator;
-class IXFA_WidgetHandler;
-class IXFA_WidgetIterator;
-
-class IXFA_Doc {
- public:
- virtual ~IXFA_Doc() {}
-
- protected:
- IXFA_Doc() {}
-};
-
-class IXFA_Widget {
- public:
- virtual ~IXFA_Widget() {}
-
- protected:
- IXFA_Widget() {}
-};
-
-#include "fxfa_basic.h"
-#include "fxfa_widget.h"
-#define XFA_MBICON_Error 0
-#define XFA_MBICON_Warning 1
-#define XFA_MBICON_Question 2
-#define XFA_MBICON_Status 3
-#define XFA_MB_OK 0
-#define XFA_MB_OKCancel 1
-#define XFA_MB_YesNo 2
-#define XFA_MB_YesNoCancel 3
-#define XFA_IDOK 1
-#define XFA_IDCancel 2
-#define XFA_IDNo 3
-#define XFA_IDYes 4
-#define XFA_IDS_ValidateFailed 1
-#define XFA_IDS_CalcOverride 2
-#define XFA_IDS_ModifyField 3
-#define XFA_IDS_NotModifyField 4
-#define XFA_IDS_AppName 5
-#define XFA_IDS_ImageFilter 6
-#define XFA_IDS_UNKNOW_CATCHED 7
-#define XFA_IDS_Unable_TO_SET 8
-#define XFA_IDS_VALUE_EXCALMATORY 9
-#define XFA_IDS_INVALID_ENUM_VALUE 10
-#define XFA_IDS_UNSUPPORT_METHOD 11
-#define XFA_IDS_UNSUPPORT_PROP 12
-#define XFA_IDS_INVAlID_PROP_SET 13
-#define XFA_IDS_NOT_DEFAUL_VALUE 14
-#define XFA_IDS_UNABLE_SET_LANGUAGE 15
-#define XFA_IDS_UNABLE_SET_NUMPAGES 16
-#define XFA_IDS_UNABLE_SET_PLATFORM 17
-#define XFA_IDS_UNABLE_SET_VALIDATIONENABLE 18
-#define XFA_IDS_UNABLE_SET_VARIATION 19
-#define XFA_IDS_UNABLE_SET_VERSION 20
-#define XFA_IDS_UNABLE_SET_READY 21
-#define XFA_IDS_NUMBER_OF_OCCUR 22
-#define XFA_IDS_UNABLE_SET_CLASS_NAME 23
-#define XFA_IDS_UNABLE_SET_LENGTH_VALUE 24
-#define XFA_IDS_UNSUPPORT_CHAR 25
-#define XFA_IDS_BAD_SUFFIX 26
-#define XFA_IDS_EXPECTED_IDENT 27
-#define XFA_IDS_EXPECTED_STRING 28
-#define XFA_IDS_INVALIDATE_CHAR 29
-#define XFA_IDS_REDEFINITION 30
-#define XFA_IDS_INVALIDATE_TOKEN 31
-#define XFA_IDS_INVALIDATE_EXPRESSION 32
-#define XFA_IDS_UNDEFINE_IDENTIFIER 33
-#define XFA_IDS_INVALIDATE_LEFTVALUE 34
-#define XFA_IDS_COMPILER_ERROR 35
-#define XFA_IDS_CANNOT_MODIFY_VALUE 36
-#define XFA_IDS_ERROR_PARAMETERS 37
-#define XFA_IDS_EXPECT_ENDIF 38
-#define XFA_IDS_UNEXPECTED_EXPRESSION 39
-#define XFA_IDS_CONDITION_IS_NULL 40
-#define XFA_IDS_ILLEGALBREAK 41
-#define XFA_IDS_ILLEGALCONTINUE 42
-#define XFA_IDS_EXPECTED_OPERATOR 43
-#define XFA_IDS_DIVIDE_ZERO 44
-#define XFA_IDS_CANNOT_COVERT_OBJECT 45
-#define XFA_IDS_NOT_FOUND_CONTAINER 46
-#define XFA_IDS_NOT_FOUND_PROPERTY 47
-#define XFA_IDS_NOT_FOUND_METHOD 48
-#define XFA_IDS_NOT_FOUND_CONST 49
-#define XFA_IDS_NOT_ASSIGN_OBJECT 50
-#define XFA_IDS_IVALIDATE_INSTRUCTION 51
-#define XFA_IDS_EXPECT_NUMBER 52
-#define XFA_IDS_VALIDATE_OUT_ARRAY 53
-#define XFA_IDS_CANNOT_ASSIGN_IDENT 54
-#define XFA_IDS_NOT_FOUNT_FUNCTION 55
-#define XFA_IDS_NOT_ARRAY 56
-#define XFA_IDS_OUT_ARRAY 57
-#define XFA_IDS_NOT_SUPPORT_CALC 58
-#define XFA_IDS_ARGUMENT_NOT_ARRAY 59
-#define XFA_IDS_ARGUMENT_EXPECT_CONTAINER 60
-#define XFA_IDS_ACCESS_PROPERTY_IN_NOT_OBJECT 61
-#define XFA_IDS_FUNCTION_IS_BUILDIN 62
-#define XFA_IDS_ERROR_MSG 63
-#define XFA_IDS_INDEX_OUT_OF_BOUNDS 64
-#define XFA_IDS_INCORRECT_NUMBER_OF_METHOD 65
-#define XFA_IDS_ARGUMENT_MISMATCH 66
-#define XFA_IDS_INVALID_ENUMERATE 67
-#define XFA_IDS_INVALID_APPEND 68
-#define XFA_IDS_SOM_EXPECTED_LIST 69
-#define XFA_IDS_NOT_HAVE_PROPERTY 70
-#define XFA_IDS_INVALID_NODE_TYPE 71
-#define XFA_IDS_VIOLATE_BOUNDARY 72
-#define XFA_IDS_SERVER_DENY 73
-#define XFA_IDS_StringWeekDay_Sun 74
-#define XFA_IDS_StringWeekDay_Mon 75
-#define XFA_IDS_StringWeekDay_Tue 76
-#define XFA_IDS_StringWeekDay_Wed 77
-#define XFA_IDS_StringWeekDay_Thu 78
-#define XFA_IDS_StringWeekDay_Fri 79
-#define XFA_IDS_StringWeekDay_Sat 80
-#define XFA_IDS_StringMonth_Jan 81
-#define XFA_IDS_StringMonth_Feb 82
-#define XFA_IDS_StringMonth_March 83
-#define XFA_IDS_StringMonth_April 84
-#define XFA_IDS_StringMonth_May 85
-#define XFA_IDS_StringMonth_June 86
-#define XFA_IDS_StringMonth_July 87
-#define XFA_IDS_StringMonth_Aug 88
-#define XFA_IDS_StringMonth_Sept 89
-#define XFA_IDS_StringMonth_Oct 90
-#define XFA_IDS_StringMonth_Nov 91
-#define XFA_IDS_StringMonth_Dec 92
-#define XFA_IDS_String_Today 93
-#define XFA_IDS_ValidateLimit 94
-#define XFA_IDS_ValidateNullWarning 95
-#define XFA_IDS_ValidateNullError 96
-#define XFA_IDS_ValidateWarning 97
-#define XFA_IDS_ValidateError 98
-#define XFA_IDS_ValidateNumberError 99
-
-// Probably should be called IXFA_AppDelegate.
-class IXFA_AppProvider {
- public:
- virtual ~IXFA_AppProvider() {}
-
- /**
- * Specifies the name of the client application in which a form currently
- * exists. Such as Exchange-Pro.
- */
- virtual void SetAppType(const CFX_WideStringC& wsAppType) = 0;
- virtual void GetAppType(CFX_WideString& wsAppType) = 0;
- virtual void SetFoxitAppType(const CFX_WideStringC& wsFoxitAppType) {}
- virtual void GetFoxitAppType(CFX_WideString& wsFoxitAppType) {
- wsFoxitAppType.Empty();
- }
-
- /**
- * Returns the language of the running host application. Such as zh_CN
- */
- virtual void GetLanguage(CFX_WideString& wsLanguage) = 0;
-
- /**
- * Returns the platform of the machine running the script. Such as WIN
- */
- virtual void GetPlatform(CFX_WideString& wsPlatform) = 0;
-
- /**
- * Indicates the packaging of the application that is running the script. Such
- * as Full
- */
- virtual void GetVariation(CFX_WideString& wsVariation) = 0;
-
- /**
- * Indicates the version number of the current application. Such as 9
- */
- virtual void GetVersion(CFX_WideString& wsVersion) = 0;
- virtual void GetFoxitVersion(CFX_WideString& wsFoxitVersion) {
- wsFoxitVersion.Empty();
- }
-
- /**
- * Get application name, such as Phantom.
- */
- virtual void GetAppName(CFX_WideString& wsName) = 0;
- virtual void GetFoxitAppName(CFX_WideString& wsFoxitName) {
- wsFoxitName.Empty();
- }
-
- /**
- * Causes the system to play a sound.
- * @param[in] dwType The system code for the appropriate sound.0 (Error)1
- * (Warning)2 (Question)3 (Status)4 (Default)
- */
- virtual void Beep(FX_DWORD dwType) = 0;
-
- /**
- * Displays a message box.
- * @param[in] dwIconType Icon type, refer to XFA_MBICON.
- * @param[in] dwButtonType Button type, refer to XFA_MESSAGEBUTTON.
- * @return A valid integer representing the value of the button pressed by the
- * user, refer to XFA_ID.
- */
- virtual int32_t MsgBox(const CFX_WideStringC& wsMessage,
- const CFX_WideStringC& wsTitle = FX_WSTRC(L""),
- FX_DWORD dwIconType = 0,
- FX_DWORD dwButtonType = 0) = 0;
-
- /**
- * Get a response from the user.
- * @param[in] bMark - Mask the user input with * (asterisks) when true,
- */
- virtual void Response(CFX_WideString& wsAnswer,
- const CFX_WideStringC& wsQuestion,
- const CFX_WideStringC& wsTitle = FX_WSTRC(L""),
- const CFX_WideStringC& wsDefaultAnswer = FX_WSTRC(L""),
- FX_BOOL bMark = TRUE) = 0;
-
- virtual int32_t GetDocumentCountInBatch() = 0;
- virtual int32_t GetCurDocumentInBatch() = 0;
-
- /**
- * Download something from somewhere.
- * @param[in] wsURL - http, ftp, such as
- * "http://www.w3.org/TR/REC-xml-names/".
- */
- virtual IFX_FileRead* DownloadURL(const CFX_WideStringC& wsURL) = 0;
-
- /**
- * POST data to the given url.
- * @param[in] wsURL the URL being uploaded.
- * @param[in] wsData the data being uploaded.
- * @param[in] wsContentType the content type of data including text/html,
- * text/xml, text/plain, multipart/form-data,
- * application/x-www-form-urlencoded,
- * application/octet-stream, any valid MIME type.
- * @param[in] wsEncode the encode of data including UTF-8, UTF-16,
- * ISO8859-1, any recognized [IANA]character encoding
- * @param[in] wsHeader any additional HTTP headers to be included in the
- * post.
- * @param[out] wsResponse decoded response from server.
- * @return TRUE Server permitted the post request, FALSE otherwise.
- */
- virtual FX_BOOL PostRequestURL(const CFX_WideStringC& wsURL,
- const CFX_WideStringC& wsData,
- const CFX_WideStringC& wsContentType,
- const CFX_WideStringC& wsEncode,
- const CFX_WideStringC& wsHeader,
- CFX_WideString& wsResponse) = 0;
-
- /**
- * PUT data to the given url.
- * @param[in] wsURL the URL being uploaded.
- * @param[in] wsData the data being uploaded.
- * @param[in] wsEncode the encode of data including UTF-8, UTF-16,
- * ISO8859-1, any recognized [IANA]character encoding
- * @return TRUE Server permitted the post request, FALSE otherwise.
- */
- virtual FX_BOOL PutRequestURL(const CFX_WideStringC& wsURL,
- const CFX_WideStringC& wsData,
- const CFX_WideStringC& wsEncode) = 0;
-
- virtual void LoadString(int32_t iStringID, CFX_WideString& wsString) = 0;
- virtual FX_BOOL ShowFileDialog(const CFX_WideStringC& wsTitle,
- const CFX_WideStringC& wsFilter,
- CFX_WideStringArray& wsPathArr,
- FX_BOOL bOpen = TRUE) = 0;
- virtual IFWL_AdapterTimerMgr* GetTimerMgr() = 0;
-};
-class IXFA_FontMgr {
- public:
- static IXFA_FontMgr* CreateDefault();
- virtual ~IXFA_FontMgr();
-
- virtual IFX_Font* GetFont(IXFA_Doc* hDoc,
- const CFX_WideStringC& wsFontFamily,
- FX_DWORD dwFontStyles,
- FX_WORD wCodePage = 0xFFFF) = 0;
- virtual IFX_Font* GetDefaultFont(IXFA_Doc* hDoc,
- const CFX_WideStringC& wsFontFamily,
- FX_DWORD dwFontStyles,
- FX_WORD wCodePage = 0xFFFF) = 0;
-};
-class IXFA_App {
- public:
- static IXFA_App* Create(IXFA_AppProvider* pProvider);
- virtual ~IXFA_App();
-
- virtual IXFA_DocHandler* GetDocHandler() = 0;
- virtual IXFA_Doc* CreateDoc(IXFA_DocProvider* pProvider,
- IFX_FileRead* pStream,
- FX_BOOL bTakeOverFile = TRUE) = 0;
- virtual IXFA_Doc* CreateDoc(IXFA_DocProvider* pProvider,
- CPDF_Document* pPDFDoc) = 0;
- virtual IXFA_AppProvider* GetAppProvider() = 0;
- virtual void SetDefaultFontMgr(IXFA_FontMgr* pFontMgr) = 0;
- virtual IXFA_MenuHandler* GetMenuHandler() = 0;
-};
-class IXFA_MenuHandler {
- public:
- virtual ~IXFA_MenuHandler() {}
-
- virtual FX_BOOL CanCopy(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanCut(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanPaste(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanSelectAll(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanDelete(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanDeSelect(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL Copy(IXFA_Widget* hWidget, CFX_WideString& wsText) = 0;
- virtual FX_BOOL Cut(IXFA_Widget* hWidget, CFX_WideString& wsText) = 0;
- virtual FX_BOOL Paste(IXFA_Widget* hWidget, const CFX_WideString& wsText) = 0;
- virtual FX_BOOL SelectAll(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL Delete(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL DeSelect(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanUndo(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL CanRedo(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL Undo(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL Redo(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL GetSuggestWords(IXFA_Widget* hWidget,
- CFX_PointF pointf,
- CFX_ByteStringArray& sSuggest) = 0;
- virtual FX_BOOL ReplaceSpellCheckWord(IXFA_Widget* hWidget,
- CFX_PointF pointf,
- const CFX_ByteStringC& bsReplace) = 0;
-};
-#define XFA_INVALIDATE_AllPages 0x00000000
-#define XFA_INVALIDATE_CurrentPage 0x00000001
-#define XFA_PRINTOPT_ShowDialog 0x00000001
-#define XFA_PRINTOPT_CanCancel 0x00000002
-#define XFA_PRINTOPT_ShrinkPage 0x00000004
-#define XFA_PRINTOPT_AsImage 0x00000008
-#define XFA_PRINTOPT_ReverseOrder 0x00000010
-#define XFA_PRINTOPT_PrintAnnot 0x00000020
-#define XFA_PAGEVIEWEVENT_PostAdded 1
-#define XFA_PAGEVIEWEVENT_PostRemoved 3
-#define XFA_WIDGETEVENT_PostAdded 2
-#define XFA_WIDGETEVENT_PreRemoved 3
-#define XFA_WIDGETEVENT_PostContentChanged 6
-#define XFA_WIDGETEVENT_ListItemRemoved 7
-#define XFA_WIDGETEVENT_ListItemAdded 8
-#define XFA_WIDGETEVENT_AccessChanged 9
-class IXFA_DocProvider {
- public:
- virtual ~IXFA_DocProvider() {}
-
- virtual void SetChangeMark(IXFA_Doc* hDoc) = 0;
- virtual void InvalidateRect(IXFA_PageView* pPageView,
- const CFX_RectF& rt,
- FX_DWORD dwFlags = 0) = 0;
- virtual void DisplayCaret(IXFA_Widget* hWidget,
- FX_BOOL bVisible,
- const CFX_RectF* pRtAnchor) = 0;
- virtual FX_BOOL GetPopupPos(IXFA_Widget* hWidget,
- FX_FLOAT fMinPopup,
- FX_FLOAT fMaxPopup,
- const CFX_RectF& rtAnchor,
- CFX_RectF& rtPopup) = 0;
- virtual FX_BOOL PopupMenu(IXFA_Widget* hWidget,
- CFX_PointF ptPopup,
- const CFX_RectF* pRectExclude = NULL) = 0;
- virtual void PageViewEvent(IXFA_PageView* pPageView, FX_DWORD dwFlags) = 0;
- virtual void WidgetEvent(IXFA_Widget* hWidget,
- CXFA_WidgetAcc* pWidgetData,
- FX_DWORD dwEvent,
- void* pParam = NULL,
- void* pAdditional = NULL) = 0;
- virtual FX_BOOL RenderCustomWidget(IXFA_Widget* hWidget,
- CFX_Graphics* pGS,
- CFX_Matrix* pMatrix,
- const CFX_RectF& rtUI) {
- return FALSE;
- }
- virtual int32_t CountPages(IXFA_Doc* hDoc) = 0;
- virtual int32_t GetCurrentPage(IXFA_Doc* hDoc) = 0;
- virtual void SetCurrentPage(IXFA_Doc* hDoc, int32_t iCurPage) = 0;
- virtual FX_BOOL IsCalculationsEnabled(IXFA_Doc* hDoc) = 0;
- virtual void SetCalculationsEnabled(IXFA_Doc* hDoc, FX_BOOL bEnabled) = 0;
- virtual void GetTitle(IXFA_Doc* hDoc, CFX_WideString& wsTitle) = 0;
- virtual void SetTitle(IXFA_Doc* hDoc, const CFX_WideStringC& wsTitle) = 0;
- virtual void ExportData(IXFA_Doc* hDoc,
- const CFX_WideStringC& wsFilePath,
- FX_BOOL bXDP = TRUE) = 0;
- virtual void ImportData(IXFA_Doc* hDoc,
- const CFX_WideStringC& wsFilePath) = 0;
- virtual void GotoURL(IXFA_Doc* hDoc,
- const CFX_WideStringC& bsURL,
- FX_BOOL bAppend = TRUE) = 0;
- virtual FX_BOOL IsValidationsEnabled(IXFA_Doc* hDoc) = 0;
- virtual void SetValidationsEnabled(IXFA_Doc* hDoc, FX_BOOL bEnabled) = 0;
- virtual void SetFocusWidget(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0;
- virtual void Print(IXFA_Doc* hDoc,
- int32_t nStartPage,
- int32_t nEndPage,
- FX_DWORD dwOptions) = 0;
- virtual int32_t AbsPageCountInBatch(IXFA_Doc* hDoc) = 0;
- virtual int32_t AbsPageInBatch(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0;
- virtual int32_t SheetCountInBatch(IXFA_Doc* hDoc) = 0;
- virtual int32_t SheetInBatch(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0;
- virtual int32_t Verify(IXFA_Doc* hDoc,
- CXFA_Node* pSigNode,
- FX_BOOL bUsed = TRUE) {
- return 0;
- }
- virtual FX_BOOL Sign(IXFA_Doc* hDoc,
- CXFA_NodeList* pNodeList,
- const CFX_WideStringC& wsExpression,
- const CFX_WideStringC& wsXMLIdent,
- const CFX_WideStringC& wsValue = FX_WSTRC(L"open"),
- FX_BOOL bUsed = TRUE) {
- return 0;
- }
- virtual CXFA_NodeList* Enumerate(IXFA_Doc* hDoc) { return 0; }
- virtual FX_BOOL Clear(IXFA_Doc* hDoc,
- CXFA_Node* pSigNode,
- FX_BOOL bCleared = TRUE) {
- return 0;
- }
- virtual void GetURL(IXFA_Doc* hDoc, CFX_WideString& wsDocURL) = 0;
- virtual FX_ARGB GetHighlightColor(IXFA_Doc* hDoc) = 0;
- virtual void AddDoRecord(IXFA_Widget* hWidget) = 0;
-
- virtual FX_BOOL SubmitData(IXFA_Doc* hDoc, CXFA_Submit submit) = 0;
- virtual FX_BOOL CheckWord(IXFA_Doc* hDoc, const CFX_ByteStringC& sWord) = 0;
- virtual FX_BOOL GetSuggestWords(IXFA_Doc* hDoc,
- const CFX_ByteStringC& sWord,
- CFX_ByteStringArray& sSuggest) = 0;
- virtual FX_BOOL GetPDFScriptObject(IXFA_Doc* hDoc,
- const CFX_ByteStringC& utf8Name,
- FXJSE_HVALUE hValue) = 0;
- virtual FX_BOOL GetGlobalProperty(IXFA_Doc* hDoc,
- const CFX_ByteStringC& szPropName,
- FXJSE_HVALUE hValue) = 0;
- virtual FX_BOOL SetGlobalProperty(IXFA_Doc* hDoc,
- const CFX_ByteStringC& szPropName,
- FXJSE_HVALUE hValue) = 0;
- virtual CPDF_Document* OpenPDF(IXFA_Doc* hDoc,
- IFX_FileRead* pFile,
- FX_BOOL bTakeOverFile) = 0;
- virtual IFX_FileRead* OpenLinkedFile(IXFA_Doc* hDoc,
- const CFX_WideString& wsLink) = 0;
-};
-#define XFA_DOCVIEW_View 0x00000000
-#define XFA_DOCVIEW_MasterPage 0x00000001
-#define XFA_DOCVIEW_Design 0x00000002
-#define XFA_DOCTYPE_Dynamic 0
-#define XFA_DOCTYPE_Static 1
-#define XFA_DOCTYPE_XDP 2
-#define XFA_PARSESTATUS_StatusErr -3
-#define XFA_PARSESTATUS_StreamErr -2
-#define XFA_PARSESTATUS_SyntaxErr -1
-#define XFA_PARSESTATUS_Ready 0
-#define XFA_PARSESTATUS_Done 100
-class IXFA_DocHandler {
- public:
- virtual ~IXFA_DocHandler() {}
-
- virtual void ReleaseDoc(IXFA_Doc* hDoc) = 0;
- virtual IXFA_DocProvider* GetDocProvider(IXFA_Doc* hDoc) = 0;
-
- virtual FX_DWORD GetDocType(IXFA_Doc* hDoc) = 0;
- virtual int32_t StartLoad(IXFA_Doc* hDoc) = 0;
- virtual int32_t DoLoad(IXFA_Doc* hDoc, IFX_Pause* pPause = NULL) = 0;
- virtual void StopLoad(IXFA_Doc* hDoc) = 0;
-
- virtual IXFA_DocView* CreateDocView(IXFA_Doc* hDoc, FX_DWORD dwView = 0) = 0;
-
- virtual int32_t CountPackages(IXFA_Doc* hDoc) = 0;
- virtual void GetPackageName(IXFA_Doc* hDoc,
- int32_t iPackage,
- CFX_WideStringC& wsPackage) = 0;
-
- virtual FX_BOOL SavePackage(IXFA_Doc* hDoc,
- const CFX_WideStringC& wsPackage,
- IFX_FileWrite* pFile,
- IXFA_ChecksumContext* pCSContext = NULL) = 0;
- virtual FX_BOOL CloseDoc(IXFA_Doc* hDoc) = 0;
-
- virtual FX_BOOL ImportData(IXFA_Doc* hDoc,
- IFX_FileRead* pStream,
- FX_BOOL bXDP = TRUE) = 0;
- virtual void SetJSERuntime(IXFA_Doc* hDoc, FXJSE_HRUNTIME hRuntime) = 0;
- virtual FXJSE_HVALUE GetXFAScriptObject(IXFA_Doc* hDoc) = 0;
- virtual XFA_ATTRIBUTEENUM GetRestoreState(IXFA_Doc* hDoc) = 0;
- virtual FX_BOOL RunDocScript(IXFA_Doc* hDoc,
- XFA_SCRIPTTYPE eScriptType,
- const CFX_WideStringC& wsScript,
- FXJSE_HVALUE hRetValue,
- FXJSE_HVALUE hThisObject) = 0;
-};
-enum XFA_EVENTTYPE {
- XFA_EVENT_Click,
- XFA_EVENT_Change,
- XFA_EVENT_DocClose,
- XFA_EVENT_DocReady,
- XFA_EVENT_Enter,
- XFA_EVENT_Exit,
- XFA_EVENT_Full,
- XFA_EVENT_IndexChange,
- XFA_EVENT_Initialize,
- XFA_EVENT_MouseDown,
- XFA_EVENT_MouseEnter,
- XFA_EVENT_MouseExit,
- XFA_EVENT_MouseUp,
- XFA_EVENT_PostExecute,
- XFA_EVENT_PostOpen,
- XFA_EVENT_PostPrint,
- XFA_EVENT_PostSave,
- XFA_EVENT_PostSign,
- XFA_EVENT_PostSubmit,
- XFA_EVENT_PreExecute,
- XFA_EVENT_PreOpen,
- XFA_EVENT_PrePrint,
- XFA_EVENT_PreSave,
- XFA_EVENT_PreSign,
- XFA_EVENT_PreSubmit,
- XFA_EVENT_Ready,
- XFA_EVENT_InitCalculate,
- XFA_EVENT_InitVariables,
- XFA_EVENT_Calculate,
- XFA_EVENT_Validate,
- XFA_EVENT_Unknown,
-};
-#define XFA_VALIDATE_preSubmit 1
-#define XFA_VALIDATE_prePrint 2
-#define XFA_VALIDATE_preExecute 3
-#define XFA_VALIDATE_preSave 4
-class CXFA_EventParam {
- public:
- CXFA_EventParam() {
- m_pTarget = NULL;
- m_eType = XFA_EVENT_Unknown;
- m_wsResult.Empty();
- Reset();
- }
- void Reset() {
- m_wsChange.Empty();
- m_iCommitKey = 0;
- m_wsFullText.Empty();
- m_bKeyDown = FALSE;
- m_bModifier = FALSE;
- m_wsNewContentType.Empty();
- m_wsNewText.Empty();
- m_wsPrevContentType.Empty();
- m_wsPrevText.Empty();
- m_bReenter = FALSE;
- m_iSelEnd = 0;
- m_iSelStart = 0;
- m_bShift = FALSE;
- m_wsSoapFaultCode.Empty();
- m_wsSoapFaultString.Empty();
- m_bIsFormReady = FALSE;
- m_iValidateActivities = XFA_VALIDATE_preSubmit;
- }
- CXFA_WidgetAcc* m_pTarget;
- XFA_EVENTTYPE m_eType;
- CFX_WideString m_wsResult;
- FX_BOOL m_bCancelAction;
- int32_t m_iCommitKey;
- FX_BOOL m_bKeyDown;
- FX_BOOL m_bModifier;
- FX_BOOL m_bReenter;
- int32_t m_iSelEnd;
- int32_t m_iSelStart;
- FX_BOOL m_bShift;
- CFX_WideString m_wsChange;
- CFX_WideString m_wsFullText;
- CFX_WideString m_wsNewContentType;
- CFX_WideString m_wsNewText;
- CFX_WideString m_wsPrevContentType;
- CFX_WideString m_wsPrevText;
- CFX_WideString m_wsSoapFaultCode;
- CFX_WideString m_wsSoapFaultString;
- FX_BOOL m_bIsFormReady;
- int32_t m_iValidateActivities;
-};
-#define XFA_EVENTERROR_Sucess 1
-#define XFA_EVENTERROR_Error -1
-#define XFA_EVENTERROR_NotExist 0
-#define XFA_EVENTERROR_Disabled 2
-enum XFA_WIDGETORDER {
- XFA_WIDGETORDER_PreOrder,
-};
-class IXFA_DocView {
- public:
- virtual ~IXFA_DocView() {}
-
- virtual IXFA_Doc* GetDoc() = 0;
- virtual int32_t StartLayout(int32_t iStartPage = 0) = 0;
- virtual int32_t DoLayout(IFX_Pause* pPause = NULL) = 0;
- virtual void StopLayout() = 0;
-
- virtual int32_t GetLayoutStatus() = 0;
- virtual void UpdateDocView() = 0;
- virtual int32_t CountPageViews() = 0;
- virtual IXFA_PageView* GetPageView(int32_t nIndex) = 0;
- virtual IXFA_Widget* GetWidgetByName(const CFX_WideStringC& wsName) = 0;
- virtual CXFA_WidgetAcc* GetWidgetAccByName(const CFX_WideStringC& wsName) = 0;
- virtual void ResetWidgetData(CXFA_WidgetAcc* pWidgetAcc = NULL) = 0;
- virtual int32_t ProcessWidgetEvent(CXFA_EventParam* pParam,
- CXFA_WidgetAcc* pWidgetAcc = NULL) = 0;
- virtual IXFA_WidgetHandler* GetWidgetHandler() = 0;
- virtual IXFA_WidgetIterator* CreateWidgetIterator() = 0;
- virtual IXFA_WidgetAccIterator* CreateWidgetAccIterator(
- XFA_WIDGETORDER eOrder = XFA_WIDGETORDER_PreOrder) = 0;
- virtual IXFA_Widget* GetFocusWidget() = 0;
- virtual void KillFocus() = 0;
- virtual FX_BOOL SetFocus(IXFA_Widget* hWidget) = 0;
-};
-#define XFA_TRAVERSEWAY_Tranvalse 0x0001
-#define XFA_TRAVERSEWAY_Form 0x0002
-#define XFA_WIDGETFILTER_Visible 0x0001
-#define XFA_WIDGETFILTER_Viewable 0x0010
-#define XFA_WIDGETFILTER_Printable 0x0020
-#define XFA_WIDGETFILTER_Field 0x0100
-#define XFA_WIDGETFILTER_AllType 0x0F00
-class IXFA_PageView {
- public:
- virtual ~IXFA_PageView() {}
-
- virtual IXFA_DocView* GetDocView() = 0;
- virtual int32_t GetPageViewIndex() = 0;
- virtual void GetPageViewRect(CFX_RectF& rtPage) = 0;
-
- virtual void GetDisplayMatrix(CFX_Matrix& mt,
- const CFX_Rect& rtDisp,
- int32_t iRotate) = 0;
-
- virtual int32_t LoadPageView(IFX_Pause* pPause = NULL) = 0;
- virtual void UnloadPageView() = 0;
- virtual IXFA_Widget* GetWidgetByPos(FX_FLOAT fx, FX_FLOAT fy) = 0;
- virtual IXFA_WidgetIterator* CreateWidgetIterator(
- FX_DWORD dwTraverseWay = XFA_TRAVERSEWAY_Form,
- FX_DWORD dwWidgetFilter = XFA_WIDGETFILTER_Visible |
- XFA_WIDGETFILTER_Viewable |
- XFA_WIDGETFILTER_AllType) = 0;
-};
-class CXFA_RenderOptions {
- public:
- CXFA_RenderOptions() : m_bPrint(FALSE), m_bHighlight(TRUE) {}
- FX_BOOL m_bPrint;
- FX_BOOL m_bHighlight;
-};
-#define XFA_RENDERSTATUS_Ready 1
-#define XFA_RENDERSTATUS_ToBeContinued 2
-#define XFA_RENDERSTATUS_Done 3
-#define XFA_RENDERSTATUS_Failed -1
-class IXFA_RenderContext {
- public:
- virtual void Release() = 0;
- virtual int32_t StartRender(IXFA_PageView* pPageView,
- CFX_Graphics* pGS,
- const CFX_Matrix& pMatrix,
- const CXFA_RenderOptions& options) = 0;
- virtual int32_t DoRender(IFX_Pause* pPause = NULL) = 0;
- virtual void StopRender() = 0;
-
- protected:
- ~IXFA_RenderContext() {}
-};
-IXFA_RenderContext* XFA_RenderContext_Create();
-enum XFA_WIDGETTYPE {
- XFA_WIDGETTYPE_Barcode,
- XFA_WIDGETTYPE_PushButton,
- XFA_WIDGETTYPE_CheckButton,
- XFA_WIDGETTYPE_RadioButton,
- XFA_WIDGETTYPE_DatetimeEdit,
- XFA_WIDGETTYPE_DecimalField,
- XFA_WIDGETTYPE_NumericField,
- XFA_WIDGETTYPE_Signature,
- XFA_WIDGETTYPE_TextEdit,
- XFA_WIDGETTYPE_DropdownList,
- XFA_WIDGETTYPE_ListBox,
- XFA_WIDGETTYPE_ImageField,
- XFA_WIDGETTYPE_PasswordEdit,
- XFA_WIDGETTYPE_Arc,
- XFA_WIDGETTYPE_Rectangle,
- XFA_WIDGETTYPE_Image,
- XFA_WIDGETTYPE_Line,
- XFA_WIDGETTYPE_Text,
- XFA_WIDGETTYPE_ExcludeGroup,
- XFA_WIDGETTYPE_Subform,
- XFA_WIDGETTYPE_Unknown,
-};
-#define XFA_WIDGETSTATUS_Visible 0x00000001
-#define XFA_WIDGETSTATUS_Invisible 0x00000002
-#define XFA_WIDGETSTATUS_Hidden 0x00000004
-#define XFA_WIDGETSTATUS_Viewable 0x00000010
-#define XFA_WIDGETSTATUS_Printable 0x00000020
-#define XFA_WIDGETSTATUS_Focused 0x00000100
-class IXFA_WidgetHandler {
- public:
- virtual ~IXFA_WidgetHandler() {}
-
- virtual IXFA_Widget* CreateWidget(IXFA_Widget* hParent,
- XFA_WIDGETTYPE eType,
- IXFA_Widget* hBefore = NULL) = 0;
- virtual IXFA_PageView* GetPageView(IXFA_Widget* hWidget) = 0;
- virtual void GetRect(IXFA_Widget* hWidget, CFX_RectF& rt) = 0;
- virtual FX_DWORD GetStatus(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL GetBBox(IXFA_Widget* hWidget,
- CFX_RectF& rtBox,
- FX_DWORD dwStatus,
- FX_BOOL bDrawFocus = FALSE) = 0;
- virtual CXFA_WidgetAcc* GetDataAcc(IXFA_Widget* hWidget) = 0;
-
- virtual void GetName(IXFA_Widget* hWidget,
- CFX_WideString& wsName,
- int32_t iNameType = 0) = 0;
- virtual FX_BOOL GetToolTip(IXFA_Widget* hWidget,
- CFX_WideString& wsToolTip) = 0;
- virtual void SetPrivateData(IXFA_Widget* hWidget,
- void* module_id,
- void* pData,
- PD_CALLBACK_FREEDATA callback) = 0;
- virtual void* GetPrivateData(IXFA_Widget* hWidget, void* module_id) = 0;
- virtual FX_BOOL OnMouseEnter(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL OnMouseExit(IXFA_Widget* hWidget) = 0;
- virtual FX_BOOL OnLButtonDown(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnLButtonUp(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnLButtonDblClk(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnMouseMove(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnMouseWheel(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- int16_t zDelta,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnRButtonDown(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnRButtonUp(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnRButtonDblClk(IXFA_Widget* hWidget,
- FX_DWORD dwFlags,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
-
- virtual FX_BOOL OnKeyDown(IXFA_Widget* hWidget,
- FX_DWORD dwKeyCode,
- FX_DWORD dwFlags) = 0;
- virtual FX_BOOL OnKeyUp(IXFA_Widget* hWidget,
- FX_DWORD dwKeyCode,
- FX_DWORD dwFlags) = 0;
- virtual FX_BOOL OnChar(IXFA_Widget* hWidget,
- FX_DWORD dwChar,
- FX_DWORD dwFlags) = 0;
- virtual FX_DWORD OnHitTest(IXFA_Widget* hWidget,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
- virtual FX_BOOL OnSetCursor(IXFA_Widget* hWidget,
- FX_FLOAT fx,
- FX_FLOAT fy) = 0;
-
- virtual void RenderWidget(IXFA_Widget* hWidget,
- CFX_Graphics* pGS,
- CFX_Matrix* pMatrix = NULL,
- FX_BOOL bHighlight = FALSE) = 0;
- virtual FX_BOOL HasEvent(CXFA_WidgetAcc* pWidgetAcc,
- XFA_EVENTTYPE eEventType) = 0;
- virtual int32_t ProcessEvent(CXFA_WidgetAcc* pWidgetAcc,
- CXFA_EventParam* pParam) = 0;
-};
-class IXFA_WidgetIterator {
- public:
- virtual void Release() = 0;
- virtual void Reset() = 0;
- virtual IXFA_Widget* MoveToFirst() = 0;
- virtual IXFA_Widget* MoveToLast() = 0;
- virtual IXFA_Widget* MoveToNext() = 0;
- virtual IXFA_Widget* MoveToPrevious() = 0;
- virtual IXFA_Widget* GetCurrentWidget() = 0;
- virtual FX_BOOL SetCurrentWidget(IXFA_Widget* hWidget) = 0;
-
- protected:
- ~IXFA_WidgetIterator() {}
-};
-class IXFA_WidgetAccIterator {
- public:
- virtual void Release() = 0;
- virtual void Reset() = 0;
- virtual CXFA_WidgetAcc* MoveToFirst() = 0;
- virtual CXFA_WidgetAcc* MoveToLast() = 0;
- virtual CXFA_WidgetAcc* MoveToNext() = 0;
- virtual CXFA_WidgetAcc* MoveToPrevious() = 0;
- virtual CXFA_WidgetAcc* GetCurrentWidgetAcc() = 0;
- virtual FX_BOOL SetCurrentWidgetAcc(CXFA_WidgetAcc* hWidget) = 0;
- virtual void SkipTree() = 0;
-
- protected:
- ~IXFA_WidgetAccIterator() {}
-};
-IXFA_WidgetAccIterator* XFA_WidgetAccIterator_Create(
- CXFA_WidgetAcc* pTravelRoot,
- XFA_WIDGETORDER eOrder = XFA_WIDGETORDER_PreOrder);
-class IXFA_ChecksumContext {
- public:
- virtual void Release() = 0;
-
- virtual FX_BOOL StartChecksum() = 0;
- virtual FX_BOOL UpdateChecksum(IFX_FileRead* pSrcFile,
- FX_FILESIZE offset = 0,
- size_t size = 0) = 0;
- virtual void FinishChecksum() = 0;
- virtual void GetChecksum(CFX_ByteString& bsChecksum) = 0;
-
- protected:
- ~IXFA_ChecksumContext() {}
-};
-IXFA_ChecksumContext* XFA_Checksum_Create();
-
-#endif // FXFA_H_
+// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef FXFA_H_ +#define FXFA_H_ + +class CFX_Graphics; +class CPDF_Document; +class CXFA_Node; +class CXFA_NodeList; +class CXFA_WidgetAcc; +class IFDE_XMLElement; +class IFWL_AdapterTimerMgr; +class IFX_Font; +class IXFA_App; +class IXFA_AppProvider; +class IXFA_ChecksumContext; +class IXFA_DocHandler; +class IXFA_DocProvider; +class IXFA_DocView; +class IXFA_FontMgr; +class IXFA_MenuHandler; +class IXFA_PageView; +class IXFA_PageViewRender; +class IXFA_WidgetAccIterator; +class IXFA_WidgetHandler; +class IXFA_WidgetIterator; + +class IXFA_Doc { + public: + virtual ~IXFA_Doc() {} + + protected: + IXFA_Doc() {} +}; + +class IXFA_Widget { + public: + virtual ~IXFA_Widget() {} + + protected: + IXFA_Widget() {} +}; + +#include "fxfa_basic.h" +#include "fxfa_widget.h" +#define XFA_MBICON_Error 0 +#define XFA_MBICON_Warning 1 +#define XFA_MBICON_Question 2 +#define XFA_MBICON_Status 3 +#define XFA_MB_OK 0 +#define XFA_MB_OKCancel 1 +#define XFA_MB_YesNo 2 +#define XFA_MB_YesNoCancel 3 +#define XFA_IDOK 1 +#define XFA_IDCancel 2 +#define XFA_IDNo 3 +#define XFA_IDYes 4 +#define XFA_IDS_ValidateFailed 1 +#define XFA_IDS_CalcOverride 2 +#define XFA_IDS_ModifyField 3 +#define XFA_IDS_NotModifyField 4 +#define XFA_IDS_AppName 5 +#define XFA_IDS_ImageFilter 6 +#define XFA_IDS_UNKNOW_CATCHED 7 +#define XFA_IDS_Unable_TO_SET 8 +#define XFA_IDS_VALUE_EXCALMATORY 9 +#define XFA_IDS_INVALID_ENUM_VALUE 10 +#define XFA_IDS_UNSUPPORT_METHOD 11 +#define XFA_IDS_UNSUPPORT_PROP 12 +#define XFA_IDS_INVAlID_PROP_SET 13 +#define XFA_IDS_NOT_DEFAUL_VALUE 14 +#define XFA_IDS_UNABLE_SET_LANGUAGE 15 +#define XFA_IDS_UNABLE_SET_NUMPAGES 16 +#define XFA_IDS_UNABLE_SET_PLATFORM 17 +#define XFA_IDS_UNABLE_SET_VALIDATIONENABLE 18 +#define XFA_IDS_UNABLE_SET_VARIATION 19 +#define XFA_IDS_UNABLE_SET_VERSION 20 +#define XFA_IDS_UNABLE_SET_READY 21 +#define XFA_IDS_NUMBER_OF_OCCUR 22 +#define XFA_IDS_UNABLE_SET_CLASS_NAME 23 +#define XFA_IDS_UNABLE_SET_LENGTH_VALUE 24 +#define XFA_IDS_UNSUPPORT_CHAR 25 +#define XFA_IDS_BAD_SUFFIX 26 +#define XFA_IDS_EXPECTED_IDENT 27 +#define XFA_IDS_EXPECTED_STRING 28 +#define XFA_IDS_INVALIDATE_CHAR 29 +#define XFA_IDS_REDEFINITION 30 +#define XFA_IDS_INVALIDATE_TOKEN 31 +#define XFA_IDS_INVALIDATE_EXPRESSION 32 +#define XFA_IDS_UNDEFINE_IDENTIFIER 33 +#define XFA_IDS_INVALIDATE_LEFTVALUE 34 +#define XFA_IDS_COMPILER_ERROR 35 +#define XFA_IDS_CANNOT_MODIFY_VALUE 36 +#define XFA_IDS_ERROR_PARAMETERS 37 +#define XFA_IDS_EXPECT_ENDIF 38 +#define XFA_IDS_UNEXPECTED_EXPRESSION 39 +#define XFA_IDS_CONDITION_IS_NULL 40 +#define XFA_IDS_ILLEGALBREAK 41 +#define XFA_IDS_ILLEGALCONTINUE 42 +#define XFA_IDS_EXPECTED_OPERATOR 43 +#define XFA_IDS_DIVIDE_ZERO 44 +#define XFA_IDS_CANNOT_COVERT_OBJECT 45 +#define XFA_IDS_NOT_FOUND_CONTAINER 46 +#define XFA_IDS_NOT_FOUND_PROPERTY 47 +#define XFA_IDS_NOT_FOUND_METHOD 48 +#define XFA_IDS_NOT_FOUND_CONST 49 +#define XFA_IDS_NOT_ASSIGN_OBJECT 50 +#define XFA_IDS_IVALIDATE_INSTRUCTION 51 +#define XFA_IDS_EXPECT_NUMBER 52 +#define XFA_IDS_VALIDATE_OUT_ARRAY 53 +#define XFA_IDS_CANNOT_ASSIGN_IDENT 54 +#define XFA_IDS_NOT_FOUNT_FUNCTION 55 +#define XFA_IDS_NOT_ARRAY 56 +#define XFA_IDS_OUT_ARRAY 57 +#define XFA_IDS_NOT_SUPPORT_CALC 58 +#define XFA_IDS_ARGUMENT_NOT_ARRAY 59 +#define XFA_IDS_ARGUMENT_EXPECT_CONTAINER 60 +#define XFA_IDS_ACCESS_PROPERTY_IN_NOT_OBJECT 61 +#define XFA_IDS_FUNCTION_IS_BUILDIN 62 +#define XFA_IDS_ERROR_MSG 63 +#define XFA_IDS_INDEX_OUT_OF_BOUNDS 64 +#define XFA_IDS_INCORRECT_NUMBER_OF_METHOD 65 +#define XFA_IDS_ARGUMENT_MISMATCH 66 +#define XFA_IDS_INVALID_ENUMERATE 67 +#define XFA_IDS_INVALID_APPEND 68 +#define XFA_IDS_SOM_EXPECTED_LIST 69 +#define XFA_IDS_NOT_HAVE_PROPERTY 70 +#define XFA_IDS_INVALID_NODE_TYPE 71 +#define XFA_IDS_VIOLATE_BOUNDARY 72 +#define XFA_IDS_SERVER_DENY 73 +#define XFA_IDS_StringWeekDay_Sun 74 +#define XFA_IDS_StringWeekDay_Mon 75 +#define XFA_IDS_StringWeekDay_Tue 76 +#define XFA_IDS_StringWeekDay_Wed 77 +#define XFA_IDS_StringWeekDay_Thu 78 +#define XFA_IDS_StringWeekDay_Fri 79 +#define XFA_IDS_StringWeekDay_Sat 80 +#define XFA_IDS_StringMonth_Jan 81 +#define XFA_IDS_StringMonth_Feb 82 +#define XFA_IDS_StringMonth_March 83 +#define XFA_IDS_StringMonth_April 84 +#define XFA_IDS_StringMonth_May 85 +#define XFA_IDS_StringMonth_June 86 +#define XFA_IDS_StringMonth_July 87 +#define XFA_IDS_StringMonth_Aug 88 +#define XFA_IDS_StringMonth_Sept 89 +#define XFA_IDS_StringMonth_Oct 90 +#define XFA_IDS_StringMonth_Nov 91 +#define XFA_IDS_StringMonth_Dec 92 +#define XFA_IDS_String_Today 93 +#define XFA_IDS_ValidateLimit 94 +#define XFA_IDS_ValidateNullWarning 95 +#define XFA_IDS_ValidateNullError 96 +#define XFA_IDS_ValidateWarning 97 +#define XFA_IDS_ValidateError 98 +#define XFA_IDS_ValidateNumberError 99 + +// Probably should be called IXFA_AppDelegate. +class IXFA_AppProvider { + public: + virtual ~IXFA_AppProvider() {} + + /** + * Specifies the name of the client application in which a form currently + * exists. Such as Exchange-Pro. + */ + virtual void SetAppType(const CFX_WideStringC& wsAppType) = 0; + virtual void GetAppType(CFX_WideString& wsAppType) = 0; + virtual void SetFoxitAppType(const CFX_WideStringC& wsFoxitAppType) {} + virtual void GetFoxitAppType(CFX_WideString& wsFoxitAppType) { + wsFoxitAppType.Empty(); + } + + /** + * Returns the language of the running host application. Such as zh_CN + */ + virtual void GetLanguage(CFX_WideString& wsLanguage) = 0; + + /** + * Returns the platform of the machine running the script. Such as WIN + */ + virtual void GetPlatform(CFX_WideString& wsPlatform) = 0; + + /** + * Indicates the packaging of the application that is running the script. Such + * as Full + */ + virtual void GetVariation(CFX_WideString& wsVariation) = 0; + + /** + * Indicates the version number of the current application. Such as 9 + */ + virtual void GetVersion(CFX_WideString& wsVersion) = 0; + virtual void GetFoxitVersion(CFX_WideString& wsFoxitVersion) { + wsFoxitVersion.Empty(); + } + + /** + * Get application name, such as Phantom. + */ + virtual void GetAppName(CFX_WideString& wsName) = 0; + virtual void GetFoxitAppName(CFX_WideString& wsFoxitName) { + wsFoxitName.Empty(); + } + + /** + * Causes the system to play a sound. + * @param[in] dwType The system code for the appropriate sound.0 (Error)1 + * (Warning)2 (Question)3 (Status)4 (Default) + */ + virtual void Beep(FX_DWORD dwType) = 0; + + /** + * Displays a message box. + * @param[in] dwIconType Icon type, refer to XFA_MBICON. + * @param[in] dwButtonType Button type, refer to XFA_MESSAGEBUTTON. + * @return A valid integer representing the value of the button pressed by the + * user, refer to XFA_ID. + */ + virtual int32_t MsgBox(const CFX_WideStringC& wsMessage, + const CFX_WideStringC& wsTitle = FX_WSTRC(L""), + FX_DWORD dwIconType = 0, + FX_DWORD dwButtonType = 0) = 0; + + /** + * Get a response from the user. + * @param[in] bMark - Mask the user input with * (asterisks) when true, + */ + virtual void Response(CFX_WideString& wsAnswer, + const CFX_WideStringC& wsQuestion, + const CFX_WideStringC& wsTitle = FX_WSTRC(L""), + const CFX_WideStringC& wsDefaultAnswer = FX_WSTRC(L""), + FX_BOOL bMark = TRUE) = 0; + + virtual int32_t GetDocumentCountInBatch() = 0; + virtual int32_t GetCurDocumentInBatch() = 0; + + /** + * Download something from somewhere. + * @param[in] wsURL - http, ftp, such as + * "http://www.w3.org/TR/REC-xml-names/". + */ + virtual IFX_FileRead* DownloadURL(const CFX_WideStringC& wsURL) = 0; + + /** + * POST data to the given url. + * @param[in] wsURL the URL being uploaded. + * @param[in] wsData the data being uploaded. + * @param[in] wsContentType the content type of data including text/html, + * text/xml, text/plain, multipart/form-data, + * application/x-www-form-urlencoded, + * application/octet-stream, any valid MIME type. + * @param[in] wsEncode the encode of data including UTF-8, UTF-16, + * ISO8859-1, any recognized [IANA]character encoding + * @param[in] wsHeader any additional HTTP headers to be included in the + * post. + * @param[out] wsResponse decoded response from server. + * @return TRUE Server permitted the post request, FALSE otherwise. + */ + virtual FX_BOOL PostRequestURL(const CFX_WideStringC& wsURL, + const CFX_WideStringC& wsData, + const CFX_WideStringC& wsContentType, + const CFX_WideStringC& wsEncode, + const CFX_WideStringC& wsHeader, + CFX_WideString& wsResponse) = 0; + + /** + * PUT data to the given url. + * @param[in] wsURL the URL being uploaded. + * @param[in] wsData the data being uploaded. + * @param[in] wsEncode the encode of data including UTF-8, UTF-16, + * ISO8859-1, any recognized [IANA]character encoding + * @return TRUE Server permitted the post request, FALSE otherwise. + */ + virtual FX_BOOL PutRequestURL(const CFX_WideStringC& wsURL, + const CFX_WideStringC& wsData, + const CFX_WideStringC& wsEncode) = 0; + + virtual void LoadString(int32_t iStringID, CFX_WideString& wsString) = 0; + virtual FX_BOOL ShowFileDialog(const CFX_WideStringC& wsTitle, + const CFX_WideStringC& wsFilter, + CFX_WideStringArray& wsPathArr, + FX_BOOL bOpen = TRUE) = 0; + virtual IFWL_AdapterTimerMgr* GetTimerMgr() = 0; +}; +class IXFA_FontMgr { + public: + static IXFA_FontMgr* CreateDefault(); + virtual ~IXFA_FontMgr(); + + virtual IFX_Font* GetFont(IXFA_Doc* hDoc, + const CFX_WideStringC& wsFontFamily, + FX_DWORD dwFontStyles, + FX_WORD wCodePage = 0xFFFF) = 0; + virtual IFX_Font* GetDefaultFont(IXFA_Doc* hDoc, + const CFX_WideStringC& wsFontFamily, + FX_DWORD dwFontStyles, + FX_WORD wCodePage = 0xFFFF) = 0; +}; +class IXFA_App { + public: + static IXFA_App* Create(IXFA_AppProvider* pProvider); + virtual ~IXFA_App(); + + virtual IXFA_DocHandler* GetDocHandler() = 0; + virtual IXFA_Doc* CreateDoc(IXFA_DocProvider* pProvider, + IFX_FileRead* pStream, + FX_BOOL bTakeOverFile = TRUE) = 0; + virtual IXFA_Doc* CreateDoc(IXFA_DocProvider* pProvider, + CPDF_Document* pPDFDoc) = 0; + virtual IXFA_AppProvider* GetAppProvider() = 0; + virtual void SetDefaultFontMgr(IXFA_FontMgr* pFontMgr) = 0; + virtual IXFA_MenuHandler* GetMenuHandler() = 0; +}; +class IXFA_MenuHandler { + public: + virtual ~IXFA_MenuHandler() {} + + virtual FX_BOOL CanCopy(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanCut(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanPaste(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanSelectAll(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanDelete(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanDeSelect(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL Copy(IXFA_Widget* hWidget, CFX_WideString& wsText) = 0; + virtual FX_BOOL Cut(IXFA_Widget* hWidget, CFX_WideString& wsText) = 0; + virtual FX_BOOL Paste(IXFA_Widget* hWidget, const CFX_WideString& wsText) = 0; + virtual FX_BOOL SelectAll(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL Delete(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL DeSelect(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanUndo(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL CanRedo(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL Undo(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL Redo(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL GetSuggestWords(IXFA_Widget* hWidget, + CFX_PointF pointf, + CFX_ByteStringArray& sSuggest) = 0; + virtual FX_BOOL ReplaceSpellCheckWord(IXFA_Widget* hWidget, + CFX_PointF pointf, + const CFX_ByteStringC& bsReplace) = 0; +}; +#define XFA_INVALIDATE_AllPages 0x00000000 +#define XFA_INVALIDATE_CurrentPage 0x00000001 +#define XFA_PRINTOPT_ShowDialog 0x00000001 +#define XFA_PRINTOPT_CanCancel 0x00000002 +#define XFA_PRINTOPT_ShrinkPage 0x00000004 +#define XFA_PRINTOPT_AsImage 0x00000008 +#define XFA_PRINTOPT_ReverseOrder 0x00000010 +#define XFA_PRINTOPT_PrintAnnot 0x00000020 +#define XFA_PAGEVIEWEVENT_PostAdded 1 +#define XFA_PAGEVIEWEVENT_PostRemoved 3 +#define XFA_WIDGETEVENT_PostAdded 2 +#define XFA_WIDGETEVENT_PreRemoved 3 +#define XFA_WIDGETEVENT_PostContentChanged 6 +#define XFA_WIDGETEVENT_ListItemRemoved 7 +#define XFA_WIDGETEVENT_ListItemAdded 8 +#define XFA_WIDGETEVENT_AccessChanged 9 +class IXFA_DocProvider { + public: + virtual ~IXFA_DocProvider() {} + + virtual void SetChangeMark(IXFA_Doc* hDoc) = 0; + virtual void InvalidateRect(IXFA_PageView* pPageView, + const CFX_RectF& rt, + FX_DWORD dwFlags = 0) = 0; + virtual void DisplayCaret(IXFA_Widget* hWidget, + FX_BOOL bVisible, + const CFX_RectF* pRtAnchor) = 0; + virtual FX_BOOL GetPopupPos(IXFA_Widget* hWidget, + FX_FLOAT fMinPopup, + FX_FLOAT fMaxPopup, + const CFX_RectF& rtAnchor, + CFX_RectF& rtPopup) = 0; + virtual FX_BOOL PopupMenu(IXFA_Widget* hWidget, + CFX_PointF ptPopup, + const CFX_RectF* pRectExclude = NULL) = 0; + virtual void PageViewEvent(IXFA_PageView* pPageView, FX_DWORD dwFlags) = 0; + virtual void WidgetEvent(IXFA_Widget* hWidget, + CXFA_WidgetAcc* pWidgetData, + FX_DWORD dwEvent, + void* pParam = NULL, + void* pAdditional = NULL) = 0; + virtual FX_BOOL RenderCustomWidget(IXFA_Widget* hWidget, + CFX_Graphics* pGS, + CFX_Matrix* pMatrix, + const CFX_RectF& rtUI) { + return FALSE; + } + virtual int32_t CountPages(IXFA_Doc* hDoc) = 0; + virtual int32_t GetCurrentPage(IXFA_Doc* hDoc) = 0; + virtual void SetCurrentPage(IXFA_Doc* hDoc, int32_t iCurPage) = 0; + virtual FX_BOOL IsCalculationsEnabled(IXFA_Doc* hDoc) = 0; + virtual void SetCalculationsEnabled(IXFA_Doc* hDoc, FX_BOOL bEnabled) = 0; + virtual void GetTitle(IXFA_Doc* hDoc, CFX_WideString& wsTitle) = 0; + virtual void SetTitle(IXFA_Doc* hDoc, const CFX_WideStringC& wsTitle) = 0; + virtual void ExportData(IXFA_Doc* hDoc, + const CFX_WideStringC& wsFilePath, + FX_BOOL bXDP = TRUE) = 0; + virtual void ImportData(IXFA_Doc* hDoc, + const CFX_WideStringC& wsFilePath) = 0; + virtual void GotoURL(IXFA_Doc* hDoc, + const CFX_WideStringC& bsURL, + FX_BOOL bAppend = TRUE) = 0; + virtual FX_BOOL IsValidationsEnabled(IXFA_Doc* hDoc) = 0; + virtual void SetValidationsEnabled(IXFA_Doc* hDoc, FX_BOOL bEnabled) = 0; + virtual void SetFocusWidget(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0; + virtual void Print(IXFA_Doc* hDoc, + int32_t nStartPage, + int32_t nEndPage, + FX_DWORD dwOptions) = 0; + virtual int32_t AbsPageCountInBatch(IXFA_Doc* hDoc) = 0; + virtual int32_t AbsPageInBatch(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0; + virtual int32_t SheetCountInBatch(IXFA_Doc* hDoc) = 0; + virtual int32_t SheetInBatch(IXFA_Doc* hDoc, IXFA_Widget* hWidget) = 0; + virtual int32_t Verify(IXFA_Doc* hDoc, + CXFA_Node* pSigNode, + FX_BOOL bUsed = TRUE) { + return 0; + } + virtual FX_BOOL Sign(IXFA_Doc* hDoc, + CXFA_NodeList* pNodeList, + const CFX_WideStringC& wsExpression, + const CFX_WideStringC& wsXMLIdent, + const CFX_WideStringC& wsValue = FX_WSTRC(L"open"), + FX_BOOL bUsed = TRUE) { + return 0; + } + virtual CXFA_NodeList* Enumerate(IXFA_Doc* hDoc) { return 0; } + virtual FX_BOOL Clear(IXFA_Doc* hDoc, + CXFA_Node* pSigNode, + FX_BOOL bCleared = TRUE) { + return 0; + } + virtual void GetURL(IXFA_Doc* hDoc, CFX_WideString& wsDocURL) = 0; + virtual FX_ARGB GetHighlightColor(IXFA_Doc* hDoc) = 0; + virtual void AddDoRecord(IXFA_Widget* hWidget) = 0; + + virtual FX_BOOL SubmitData(IXFA_Doc* hDoc, CXFA_Submit submit) = 0; + virtual FX_BOOL CheckWord(IXFA_Doc* hDoc, const CFX_ByteStringC& sWord) = 0; + virtual FX_BOOL GetSuggestWords(IXFA_Doc* hDoc, + const CFX_ByteStringC& sWord, + CFX_ByteStringArray& sSuggest) = 0; + virtual FX_BOOL GetPDFScriptObject(IXFA_Doc* hDoc, + const CFX_ByteStringC& utf8Name, + FXJSE_HVALUE hValue) = 0; + virtual FX_BOOL GetGlobalProperty(IXFA_Doc* hDoc, + const CFX_ByteStringC& szPropName, + FXJSE_HVALUE hValue) = 0; + virtual FX_BOOL SetGlobalProperty(IXFA_Doc* hDoc, + const CFX_ByteStringC& szPropName, + FXJSE_HVALUE hValue) = 0; + virtual CPDF_Document* OpenPDF(IXFA_Doc* hDoc, + IFX_FileRead* pFile, + FX_BOOL bTakeOverFile) = 0; + virtual IFX_FileRead* OpenLinkedFile(IXFA_Doc* hDoc, + const CFX_WideString& wsLink) = 0; +}; +#define XFA_DOCVIEW_View 0x00000000 +#define XFA_DOCVIEW_MasterPage 0x00000001 +#define XFA_DOCVIEW_Design 0x00000002 +#define XFA_DOCTYPE_Dynamic 0 +#define XFA_DOCTYPE_Static 1 +#define XFA_DOCTYPE_XDP 2 +#define XFA_PARSESTATUS_StatusErr -3 +#define XFA_PARSESTATUS_StreamErr -2 +#define XFA_PARSESTATUS_SyntaxErr -1 +#define XFA_PARSESTATUS_Ready 0 +#define XFA_PARSESTATUS_Done 100 +class IXFA_DocHandler { + public: + virtual ~IXFA_DocHandler() {} + + virtual void ReleaseDoc(IXFA_Doc* hDoc) = 0; + virtual IXFA_DocProvider* GetDocProvider(IXFA_Doc* hDoc) = 0; + + virtual FX_DWORD GetDocType(IXFA_Doc* hDoc) = 0; + virtual int32_t StartLoad(IXFA_Doc* hDoc) = 0; + virtual int32_t DoLoad(IXFA_Doc* hDoc, IFX_Pause* pPause = NULL) = 0; + virtual void StopLoad(IXFA_Doc* hDoc) = 0; + + virtual IXFA_DocView* CreateDocView(IXFA_Doc* hDoc, FX_DWORD dwView = 0) = 0; + + virtual int32_t CountPackages(IXFA_Doc* hDoc) = 0; + virtual void GetPackageName(IXFA_Doc* hDoc, + int32_t iPackage, + CFX_WideStringC& wsPackage) = 0; + + virtual FX_BOOL SavePackage(IXFA_Doc* hDoc, + const CFX_WideStringC& wsPackage, + IFX_FileWrite* pFile, + IXFA_ChecksumContext* pCSContext = NULL) = 0; + virtual FX_BOOL CloseDoc(IXFA_Doc* hDoc) = 0; + + virtual FX_BOOL ImportData(IXFA_Doc* hDoc, + IFX_FileRead* pStream, + FX_BOOL bXDP = TRUE) = 0; + virtual void SetJSERuntime(IXFA_Doc* hDoc, FXJSE_HRUNTIME hRuntime) = 0; + virtual FXJSE_HVALUE GetXFAScriptObject(IXFA_Doc* hDoc) = 0; + virtual XFA_ATTRIBUTEENUM GetRestoreState(IXFA_Doc* hDoc) = 0; + virtual FX_BOOL RunDocScript(IXFA_Doc* hDoc, + XFA_SCRIPTTYPE eScriptType, + const CFX_WideStringC& wsScript, + FXJSE_HVALUE hRetValue, + FXJSE_HVALUE hThisObject) = 0; +}; +enum XFA_EVENTTYPE { + XFA_EVENT_Click, + XFA_EVENT_Change, + XFA_EVENT_DocClose, + XFA_EVENT_DocReady, + XFA_EVENT_Enter, + XFA_EVENT_Exit, + XFA_EVENT_Full, + XFA_EVENT_IndexChange, + XFA_EVENT_Initialize, + XFA_EVENT_MouseDown, + XFA_EVENT_MouseEnter, + XFA_EVENT_MouseExit, + XFA_EVENT_MouseUp, + XFA_EVENT_PostExecute, + XFA_EVENT_PostOpen, + XFA_EVENT_PostPrint, + XFA_EVENT_PostSave, + XFA_EVENT_PostSign, + XFA_EVENT_PostSubmit, + XFA_EVENT_PreExecute, + XFA_EVENT_PreOpen, + XFA_EVENT_PrePrint, + XFA_EVENT_PreSave, + XFA_EVENT_PreSign, + XFA_EVENT_PreSubmit, + XFA_EVENT_Ready, + XFA_EVENT_InitCalculate, + XFA_EVENT_InitVariables, + XFA_EVENT_Calculate, + XFA_EVENT_Validate, + XFA_EVENT_Unknown, +}; +#define XFA_VALIDATE_preSubmit 1 +#define XFA_VALIDATE_prePrint 2 +#define XFA_VALIDATE_preExecute 3 +#define XFA_VALIDATE_preSave 4 +class CXFA_EventParam { + public: + CXFA_EventParam() { + m_pTarget = NULL; + m_eType = XFA_EVENT_Unknown; + m_wsResult.Empty(); + Reset(); + } + void Reset() { + m_wsChange.Empty(); + m_iCommitKey = 0; + m_wsFullText.Empty(); + m_bKeyDown = FALSE; + m_bModifier = FALSE; + m_wsNewContentType.Empty(); + m_wsNewText.Empty(); + m_wsPrevContentType.Empty(); + m_wsPrevText.Empty(); + m_bReenter = FALSE; + m_iSelEnd = 0; + m_iSelStart = 0; + m_bShift = FALSE; + m_wsSoapFaultCode.Empty(); + m_wsSoapFaultString.Empty(); + m_bIsFormReady = FALSE; + m_iValidateActivities = XFA_VALIDATE_preSubmit; + } + CXFA_WidgetAcc* m_pTarget; + XFA_EVENTTYPE m_eType; + CFX_WideString m_wsResult; + FX_BOOL m_bCancelAction; + int32_t m_iCommitKey; + FX_BOOL m_bKeyDown; + FX_BOOL m_bModifier; + FX_BOOL m_bReenter; + int32_t m_iSelEnd; + int32_t m_iSelStart; + FX_BOOL m_bShift; + CFX_WideString m_wsChange; + CFX_WideString m_wsFullText; + CFX_WideString m_wsNewContentType; + CFX_WideString m_wsNewText; + CFX_WideString m_wsPrevContentType; + CFX_WideString m_wsPrevText; + CFX_WideString m_wsSoapFaultCode; + CFX_WideString m_wsSoapFaultString; + FX_BOOL m_bIsFormReady; + int32_t m_iValidateActivities; +}; +#define XFA_EVENTERROR_Sucess 1 +#define XFA_EVENTERROR_Error -1 +#define XFA_EVENTERROR_NotExist 0 +#define XFA_EVENTERROR_Disabled 2 +enum XFA_WIDGETORDER { + XFA_WIDGETORDER_PreOrder, +}; +class IXFA_DocView { + public: + virtual ~IXFA_DocView() {} + + virtual IXFA_Doc* GetDoc() = 0; + virtual int32_t StartLayout(int32_t iStartPage = 0) = 0; + virtual int32_t DoLayout(IFX_Pause* pPause = NULL) = 0; + virtual void StopLayout() = 0; + + virtual int32_t GetLayoutStatus() = 0; + virtual void UpdateDocView() = 0; + virtual int32_t CountPageViews() = 0; + virtual IXFA_PageView* GetPageView(int32_t nIndex) = 0; + virtual IXFA_Widget* GetWidgetByName(const CFX_WideStringC& wsName) = 0; + virtual CXFA_WidgetAcc* GetWidgetAccByName(const CFX_WideStringC& wsName) = 0; + virtual void ResetWidgetData(CXFA_WidgetAcc* pWidgetAcc = NULL) = 0; + virtual int32_t ProcessWidgetEvent(CXFA_EventParam* pParam, + CXFA_WidgetAcc* pWidgetAcc = NULL) = 0; + virtual IXFA_WidgetHandler* GetWidgetHandler() = 0; + virtual IXFA_WidgetIterator* CreateWidgetIterator() = 0; + virtual IXFA_WidgetAccIterator* CreateWidgetAccIterator( + XFA_WIDGETORDER eOrder = XFA_WIDGETORDER_PreOrder) = 0; + virtual IXFA_Widget* GetFocusWidget() = 0; + virtual void KillFocus() = 0; + virtual FX_BOOL SetFocus(IXFA_Widget* hWidget) = 0; +}; +#define XFA_TRAVERSEWAY_Tranvalse 0x0001 +#define XFA_TRAVERSEWAY_Form 0x0002 +#define XFA_WIDGETFILTER_Visible 0x0001 +#define XFA_WIDGETFILTER_Viewable 0x0010 +#define XFA_WIDGETFILTER_Printable 0x0020 +#define XFA_WIDGETFILTER_Field 0x0100 +#define XFA_WIDGETFILTER_AllType 0x0F00 +class IXFA_PageView { + public: + virtual ~IXFA_PageView() {} + + virtual IXFA_DocView* GetDocView() = 0; + virtual int32_t GetPageViewIndex() = 0; + virtual void GetPageViewRect(CFX_RectF& rtPage) = 0; + + virtual void GetDisplayMatrix(CFX_Matrix& mt, + const CFX_Rect& rtDisp, + int32_t iRotate) = 0; + + virtual int32_t LoadPageView(IFX_Pause* pPause = NULL) = 0; + virtual void UnloadPageView() = 0; + virtual IXFA_Widget* GetWidgetByPos(FX_FLOAT fx, FX_FLOAT fy) = 0; + virtual IXFA_WidgetIterator* CreateWidgetIterator( + FX_DWORD dwTraverseWay = XFA_TRAVERSEWAY_Form, + FX_DWORD dwWidgetFilter = XFA_WIDGETFILTER_Visible | + XFA_WIDGETFILTER_Viewable | + XFA_WIDGETFILTER_AllType) = 0; +}; +class CXFA_RenderOptions { + public: + CXFA_RenderOptions() : m_bPrint(FALSE), m_bHighlight(TRUE) {} + FX_BOOL m_bPrint; + FX_BOOL m_bHighlight; +}; +#define XFA_RENDERSTATUS_Ready 1 +#define XFA_RENDERSTATUS_ToBeContinued 2 +#define XFA_RENDERSTATUS_Done 3 +#define XFA_RENDERSTATUS_Failed -1 +class IXFA_RenderContext { + public: + virtual void Release() = 0; + virtual int32_t StartRender(IXFA_PageView* pPageView, + CFX_Graphics* pGS, + const CFX_Matrix& pMatrix, + const CXFA_RenderOptions& options) = 0; + virtual int32_t DoRender(IFX_Pause* pPause = NULL) = 0; + virtual void StopRender() = 0; + + protected: + ~IXFA_RenderContext() {} +}; +IXFA_RenderContext* XFA_RenderContext_Create(); +enum XFA_WIDGETTYPE { + XFA_WIDGETTYPE_Barcode, + XFA_WIDGETTYPE_PushButton, + XFA_WIDGETTYPE_CheckButton, + XFA_WIDGETTYPE_RadioButton, + XFA_WIDGETTYPE_DatetimeEdit, + XFA_WIDGETTYPE_DecimalField, + XFA_WIDGETTYPE_NumericField, + XFA_WIDGETTYPE_Signature, + XFA_WIDGETTYPE_TextEdit, + XFA_WIDGETTYPE_DropdownList, + XFA_WIDGETTYPE_ListBox, + XFA_WIDGETTYPE_ImageField, + XFA_WIDGETTYPE_PasswordEdit, + XFA_WIDGETTYPE_Arc, + XFA_WIDGETTYPE_Rectangle, + XFA_WIDGETTYPE_Image, + XFA_WIDGETTYPE_Line, + XFA_WIDGETTYPE_Text, + XFA_WIDGETTYPE_ExcludeGroup, + XFA_WIDGETTYPE_Subform, + XFA_WIDGETTYPE_Unknown, +}; +#define XFA_WIDGETSTATUS_Visible 0x00000001 +#define XFA_WIDGETSTATUS_Invisible 0x00000002 +#define XFA_WIDGETSTATUS_Hidden 0x00000004 +#define XFA_WIDGETSTATUS_Viewable 0x00000010 +#define XFA_WIDGETSTATUS_Printable 0x00000020 +#define XFA_WIDGETSTATUS_Focused 0x00000100 +class IXFA_WidgetHandler { + public: + virtual ~IXFA_WidgetHandler() {} + + virtual IXFA_Widget* CreateWidget(IXFA_Widget* hParent, + XFA_WIDGETTYPE eType, + IXFA_Widget* hBefore = NULL) = 0; + virtual IXFA_PageView* GetPageView(IXFA_Widget* hWidget) = 0; + virtual void GetRect(IXFA_Widget* hWidget, CFX_RectF& rt) = 0; + virtual FX_DWORD GetStatus(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL GetBBox(IXFA_Widget* hWidget, + CFX_RectF& rtBox, + FX_DWORD dwStatus, + FX_BOOL bDrawFocus = FALSE) = 0; + virtual CXFA_WidgetAcc* GetDataAcc(IXFA_Widget* hWidget) = 0; + + virtual void GetName(IXFA_Widget* hWidget, + CFX_WideString& wsName, + int32_t iNameType = 0) = 0; + virtual FX_BOOL GetToolTip(IXFA_Widget* hWidget, + CFX_WideString& wsToolTip) = 0; + virtual void SetPrivateData(IXFA_Widget* hWidget, + void* module_id, + void* pData, + PD_CALLBACK_FREEDATA callback) = 0; + virtual void* GetPrivateData(IXFA_Widget* hWidget, void* module_id) = 0; + virtual FX_BOOL OnMouseEnter(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL OnMouseExit(IXFA_Widget* hWidget) = 0; + virtual FX_BOOL OnLButtonDown(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnLButtonUp(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnLButtonDblClk(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnMouseMove(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnMouseWheel(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + int16_t zDelta, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnRButtonDown(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnRButtonUp(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnRButtonDblClk(IXFA_Widget* hWidget, + FX_DWORD dwFlags, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + + virtual FX_BOOL OnKeyDown(IXFA_Widget* hWidget, + FX_DWORD dwKeyCode, + FX_DWORD dwFlags) = 0; + virtual FX_BOOL OnKeyUp(IXFA_Widget* hWidget, + FX_DWORD dwKeyCode, + FX_DWORD dwFlags) = 0; + virtual FX_BOOL OnChar(IXFA_Widget* hWidget, + FX_DWORD dwChar, + FX_DWORD dwFlags) = 0; + virtual FX_DWORD OnHitTest(IXFA_Widget* hWidget, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + virtual FX_BOOL OnSetCursor(IXFA_Widget* hWidget, + FX_FLOAT fx, + FX_FLOAT fy) = 0; + + virtual void RenderWidget(IXFA_Widget* hWidget, + CFX_Graphics* pGS, + CFX_Matrix* pMatrix = NULL, + FX_BOOL bHighlight = FALSE) = 0; + virtual FX_BOOL HasEvent(CXFA_WidgetAcc* pWidgetAcc, + XFA_EVENTTYPE eEventType) = 0; + virtual int32_t ProcessEvent(CXFA_WidgetAcc* pWidgetAcc, + CXFA_EventParam* pParam) = 0; +}; +class IXFA_WidgetIterator { + public: + virtual void Release() = 0; + virtual void Reset() = 0; + virtual IXFA_Widget* MoveToFirst() = 0; + virtual IXFA_Widget* MoveToLast() = 0; + virtual IXFA_Widget* MoveToNext() = 0; + virtual IXFA_Widget* MoveToPrevious() = 0; + virtual IXFA_Widget* GetCurrentWidget() = 0; + virtual FX_BOOL SetCurrentWidget(IXFA_Widget* hWidget) = 0; + + protected: + ~IXFA_WidgetIterator() {} +}; +class IXFA_WidgetAccIterator { + public: + virtual void Release() = 0; + virtual void Reset() = 0; + virtual CXFA_WidgetAcc* MoveToFirst() = 0; + virtual CXFA_WidgetAcc* MoveToLast() = 0; + virtual CXFA_WidgetAcc* MoveToNext() = 0; + virtual CXFA_WidgetAcc* MoveToPrevious() = 0; + virtual CXFA_WidgetAcc* GetCurrentWidgetAcc() = 0; + virtual FX_BOOL SetCurrentWidgetAcc(CXFA_WidgetAcc* hWidget) = 0; + virtual void SkipTree() = 0; + + protected: + ~IXFA_WidgetAccIterator() {} +}; +IXFA_WidgetAccIterator* XFA_WidgetAccIterator_Create( + CXFA_WidgetAcc* pTravelRoot, + XFA_WIDGETORDER eOrder = XFA_WIDGETORDER_PreOrder); +class IXFA_ChecksumContext { + public: + virtual void Release() = 0; + + virtual FX_BOOL StartChecksum() = 0; + virtual FX_BOOL UpdateChecksum(IFX_FileRead* pSrcFile, + FX_FILESIZE offset = 0, + size_t size = 0) = 0; + virtual void FinishChecksum() = 0; + virtual void GetChecksum(CFX_ByteString& bsChecksum) = 0; + + protected: + ~IXFA_ChecksumContext() {} +}; +IXFA_ChecksumContext* XFA_Checksum_Create(); + +#endif // FXFA_H_ diff --git a/xfa/include/fxfa/fxfa_basic.h b/xfa/include/fxfa/fxfa_basic.h index e71e417734..6e1979e042 100644 --- a/xfa/include/fxfa/fxfa_basic.h +++ b/xfa/include/fxfa/fxfa_basic.h @@ -1,1084 +1,1084 @@ -// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef _FXFA_BASIC_H
-#define _FXFA_BASIC_H
-
-#include "xfa/include/fxjse/fxjse.h"
-
-class CXFA_Measurement;
-#define XFA_HASHCODE_Xfa 0xc56b9ff
-#define XFA_HASHCODE_Config 0x4e1e39b6
-#define XFA_HASHCODE_Template 0x803550fc
-#define XFA_HASHCODE_Datasets 0x99b95079
-#define XFA_HASHCODE_Data 0xbde9abda
-#define XFA_HASHCODE_Form 0xcd309ff4
-#define XFA_HASHCODE_LocaleSet 0x5473b6dc
-#define XFA_HASHCODE_ConnectionSet 0xe14c801c
-#define XFA_HASHCODE_SourceSet 0x811929d
-#define XFA_HASHCODE_Xdc 0xc56afbf
-#define XFA_HASHCODE_Pdf 0xb843dba
-#define XFA_HASHCODE_Xfdf 0x48d004a8
-#define XFA_HASHCODE_Xmpmeta 0x132a8fbc
-#define XFA_HASHCODE_Signature 0x8b036f32
-#define XFA_HASHCODE_Stylesheet 0x6038580a
-#define XFA_HASHCODE_XDP 0xc56afcc
-#define XFA_HASHCODE_Record 0x5779d65f
-#define XFA_HASHCODE_DataWindow 0x83a550d2
-#define XFA_HASHCODE_Host 0xdb075bde
-#define XFA_HASHCODE_Log 0x0b1b3d22
-#define XFA_HASHCODE_Event 0x185e41e2
-#define XFA_HASHCODE_Layout 0x7e7e845e
-#define XFA_HASHCODE_Occur 0xf7eebe1c
-#define XFA_HASHCODE_This 0x2d574d58
-#define XFA_HASHCODE_DataDescription 0x2b5df51e
-#define XFA_HASHCODE_Name 0x31b19c1
-enum XFA_PACKET {
- XFA_PACKET_USER,
- XFA_PACKET_SourceSet,
- XFA_PACKET_Pdf,
- XFA_PACKET_Xdc,
- XFA_PACKET_XDP,
- XFA_PACKET_Xmpmeta,
- XFA_PACKET_Xfdf,
- XFA_PACKET_Config,
- XFA_PACKET_LocaleSet,
- XFA_PACKET_Stylesheet,
- XFA_PACKET_Template,
- XFA_PACKET_Signature,
- XFA_PACKET_Datasets,
- XFA_PACKET_Form,
- XFA_PACKET_ConnectionSet,
-};
-enum XFA_XDPPACKET {
- XFA_XDPPACKET_UNKNOWN = 0,
- XFA_XDPPACKET_Config = 1 << XFA_PACKET_Config,
- XFA_XDPPACKET_Template = 1 << XFA_PACKET_Template,
- XFA_XDPPACKET_Datasets = 1 << XFA_PACKET_Datasets,
- XFA_XDPPACKET_Form = 1 << XFA_PACKET_Form,
- XFA_XDPPACKET_LocaleSet = 1 << XFA_PACKET_LocaleSet,
- XFA_XDPPACKET_ConnectionSet = 1 << XFA_PACKET_ConnectionSet,
- XFA_XDPPACKET_SourceSet = 1 << XFA_PACKET_SourceSet,
- XFA_XDPPACKET_Xdc = 1 << XFA_PACKET_Xdc,
- XFA_XDPPACKET_Pdf = 1 << XFA_PACKET_Pdf,
- XFA_XDPPACKET_Xfdf = 1 << XFA_PACKET_Xfdf,
- XFA_XDPPACKET_Xmpmeta = 1 << XFA_PACKET_Xmpmeta,
- XFA_XDPPACKET_Signature = 1 << XFA_PACKET_Signature,
- XFA_XDPPACKET_Stylesheet = 1 << XFA_PACKET_Stylesheet,
- XFA_XDPPACKET_USER = 1 << XFA_PACKET_USER,
- XFA_XDPPACKET_XDP = 1 << XFA_PACKET_XDP,
-};
-enum XFA_XDPPACKET_FLAGS {
- XFA_XDPPACKET_FLAGS_COMPLETEMATCH = 1,
- XFA_XDPPACKET_FLAGS_PREFIXMATCH = 2,
- XFA_XDPPACKET_FLAGS_NOMATCH = 4,
- XFA_XDPPACKET_FLAGS_SUPPORTONE = 8,
- XFA_XDPPACKET_FLAGS_SUPPORTMANY = 16,
-};
-typedef struct _XFA_PACKETINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_XDPPACKET eName;
- const FX_WCHAR* pURI;
- FX_DWORD eFlags;
-} XFA_PACKETINFO, *XFA_LPPACKETINFO;
-typedef XFA_PACKETINFO const* XFA_LPCPACKETINFO;
-XFA_LPCPACKETINFO XFA_GetPacketByName(const CFX_WideStringC& wsName);
-XFA_LPCPACKETINFO XFA_GetPacketByID(FX_DWORD dwPacket);
-extern const XFA_PACKETINFO g_XFAPacketData[];
-inline XFA_LPCPACKETINFO XFA_GetPacketByIndex(XFA_PACKET ePacket) {
- return g_XFAPacketData + ePacket;
-}
-enum XFA_ATTRIBUTEENUM {
- XFA_ATTRIBUTEENUM_Asterisk,
- XFA_ATTRIBUTEENUM_Slash,
- XFA_ATTRIBUTEENUM_Backslash,
- XFA_ATTRIBUTEENUM_On,
- XFA_ATTRIBUTEENUM_Tb,
- XFA_ATTRIBUTEENUM_Up,
- XFA_ATTRIBUTEENUM_MetaData,
- XFA_ATTRIBUTEENUM_Delegate,
- XFA_ATTRIBUTEENUM_PostSubmit,
- XFA_ATTRIBUTEENUM_Name,
- XFA_ATTRIBUTEENUM_Cross,
- XFA_ATTRIBUTEENUM_Next,
- XFA_ATTRIBUTEENUM_None,
- XFA_ATTRIBUTEENUM_ShortEdge,
- XFA_ATTRIBUTEENUM_1mod10_1mod11,
- XFA_ATTRIBUTEENUM_Height,
- XFA_ATTRIBUTEENUM_CrossDiagonal,
- XFA_ATTRIBUTEENUM_All,
- XFA_ATTRIBUTEENUM_Any,
- XFA_ATTRIBUTEENUM_ToRight,
- XFA_ATTRIBUTEENUM_MatchTemplate,
- XFA_ATTRIBUTEENUM_Dpl,
- XFA_ATTRIBUTEENUM_Invisible,
- XFA_ATTRIBUTEENUM_Fit,
- XFA_ATTRIBUTEENUM_Width,
- XFA_ATTRIBUTEENUM_PreSubmit,
- XFA_ATTRIBUTEENUM_Ipl,
- XFA_ATTRIBUTEENUM_FlateCompress,
- XFA_ATTRIBUTEENUM_Med,
- XFA_ATTRIBUTEENUM_Odd,
- XFA_ATTRIBUTEENUM_Off,
- XFA_ATTRIBUTEENUM_Pdf,
- XFA_ATTRIBUTEENUM_Row,
- XFA_ATTRIBUTEENUM_Top,
- XFA_ATTRIBUTEENUM_Xdp,
- XFA_ATTRIBUTEENUM_Xfd,
- XFA_ATTRIBUTEENUM_Xml,
- XFA_ATTRIBUTEENUM_Zip,
- XFA_ATTRIBUTEENUM_Zpl,
- XFA_ATTRIBUTEENUM_Visible,
- XFA_ATTRIBUTEENUM_Exclude,
- XFA_ATTRIBUTEENUM_MouseEnter,
- XFA_ATTRIBUTEENUM_Pair,
- XFA_ATTRIBUTEENUM_Filter,
- XFA_ATTRIBUTEENUM_MoveLast,
- XFA_ATTRIBUTEENUM_ExportAndImport,
- XFA_ATTRIBUTEENUM_Push,
- XFA_ATTRIBUTEENUM_Portrait,
- XFA_ATTRIBUTEENUM_Default,
- XFA_ATTRIBUTEENUM_StoredProc,
- XFA_ATTRIBUTEENUM_StayBOF,
- XFA_ATTRIBUTEENUM_StayEOF,
- XFA_ATTRIBUTEENUM_PostPrint,
- XFA_ATTRIBUTEENUM_UsCarrier,
- XFA_ATTRIBUTEENUM_Right,
- XFA_ATTRIBUTEENUM_PreOpen,
- XFA_ATTRIBUTEENUM_Actual,
- XFA_ATTRIBUTEENUM_Rest,
- XFA_ATTRIBUTEENUM_TopCenter,
- XFA_ATTRIBUTEENUM_StandardSymbol,
- XFA_ATTRIBUTEENUM_Initialize,
- XFA_ATTRIBUTEENUM_JustifyAll,
- XFA_ATTRIBUTEENUM_Normal,
- XFA_ATTRIBUTEENUM_Landscape,
- XFA_ATTRIBUTEENUM_NonInteractive,
- XFA_ATTRIBUTEENUM_MouseExit,
- XFA_ATTRIBUTEENUM_Minus,
- XFA_ATTRIBUTEENUM_DiagonalLeft,
- XFA_ATTRIBUTEENUM_SimplexPaginated,
- XFA_ATTRIBUTEENUM_Document,
- XFA_ATTRIBUTEENUM_Warning,
- XFA_ATTRIBUTEENUM_Auto,
- XFA_ATTRIBUTEENUM_Below,
- XFA_ATTRIBUTEENUM_BottomLeft,
- XFA_ATTRIBUTEENUM_BottomCenter,
- XFA_ATTRIBUTEENUM_Tcpl,
- XFA_ATTRIBUTEENUM_Text,
- XFA_ATTRIBUTEENUM_Grouping,
- XFA_ATTRIBUTEENUM_SecureSymbol,
- XFA_ATTRIBUTEENUM_PreExecute,
- XFA_ATTRIBUTEENUM_DocClose,
- XFA_ATTRIBUTEENUM_Keyset,
- XFA_ATTRIBUTEENUM_Vertical,
- XFA_ATTRIBUTEENUM_PreSave,
- XFA_ATTRIBUTEENUM_PreSign,
- XFA_ATTRIBUTEENUM_Bottom,
- XFA_ATTRIBUTEENUM_ToTop,
- XFA_ATTRIBUTEENUM_Verify,
- XFA_ATTRIBUTEENUM_First,
- XFA_ATTRIBUTEENUM_ContentArea,
- XFA_ATTRIBUTEENUM_Solid,
- XFA_ATTRIBUTEENUM_Pessimistic,
- XFA_ATTRIBUTEENUM_DuplexPaginated,
- XFA_ATTRIBUTEENUM_Round,
- XFA_ATTRIBUTEENUM_Remerge,
- XFA_ATTRIBUTEENUM_Ordered,
- XFA_ATTRIBUTEENUM_Percent,
- XFA_ATTRIBUTEENUM_Even,
- XFA_ATTRIBUTEENUM_Exit,
- XFA_ATTRIBUTEENUM_ToolTip,
- XFA_ATTRIBUTEENUM_OrderedOccurrence,
- XFA_ATTRIBUTEENUM_ReadOnly,
- XFA_ATTRIBUTEENUM_Currency,
- XFA_ATTRIBUTEENUM_Concat,
- XFA_ATTRIBUTEENUM_Thai,
- XFA_ATTRIBUTEENUM_Embossed,
- XFA_ATTRIBUTEENUM_Formdata,
- XFA_ATTRIBUTEENUM_Greek,
- XFA_ATTRIBUTEENUM_Decimal,
- XFA_ATTRIBUTEENUM_Select,
- XFA_ATTRIBUTEENUM_LongEdge,
- XFA_ATTRIBUTEENUM_Protected,
- XFA_ATTRIBUTEENUM_BottomRight,
- XFA_ATTRIBUTEENUM_Zero,
- XFA_ATTRIBUTEENUM_ForwardOnly,
- XFA_ATTRIBUTEENUM_DocReady,
- XFA_ATTRIBUTEENUM_Hidden,
- XFA_ATTRIBUTEENUM_Include,
- XFA_ATTRIBUTEENUM_Dashed,
- XFA_ATTRIBUTEENUM_MultiSelect,
- XFA_ATTRIBUTEENUM_Inactive,
- XFA_ATTRIBUTEENUM_Embed,
- XFA_ATTRIBUTEENUM_Static,
- XFA_ATTRIBUTEENUM_OnEntry,
- XFA_ATTRIBUTEENUM_Cyrillic,
- XFA_ATTRIBUTEENUM_NonBlank,
- XFA_ATTRIBUTEENUM_TopRight,
- XFA_ATTRIBUTEENUM_Hebrew,
- XFA_ATTRIBUTEENUM_TopLeft,
- XFA_ATTRIBUTEENUM_Center,
- XFA_ATTRIBUTEENUM_MoveFirst,
- XFA_ATTRIBUTEENUM_Diamond,
- XFA_ATTRIBUTEENUM_PageOdd,
- XFA_ATTRIBUTEENUM_1mod10,
- XFA_ATTRIBUTEENUM_Korean,
- XFA_ATTRIBUTEENUM_AboveEmbedded,
- XFA_ATTRIBUTEENUM_ZipCompress,
- XFA_ATTRIBUTEENUM_Numeric,
- XFA_ATTRIBUTEENUM_Circle,
- XFA_ATTRIBUTEENUM_ToBottom,
- XFA_ATTRIBUTEENUM_Inverted,
- XFA_ATTRIBUTEENUM_Update,
- XFA_ATTRIBUTEENUM_Isoname,
- XFA_ATTRIBUTEENUM_Server,
- XFA_ATTRIBUTEENUM_Position,
- XFA_ATTRIBUTEENUM_MiddleCenter,
- XFA_ATTRIBUTEENUM_Optional,
- XFA_ATTRIBUTEENUM_UsePrinterSetting,
- XFA_ATTRIBUTEENUM_Outline,
- XFA_ATTRIBUTEENUM_IndexChange,
- XFA_ATTRIBUTEENUM_Change,
- XFA_ATTRIBUTEENUM_PageArea,
- XFA_ATTRIBUTEENUM_Once,
- XFA_ATTRIBUTEENUM_Only,
- XFA_ATTRIBUTEENUM_Open,
- XFA_ATTRIBUTEENUM_Caption,
- XFA_ATTRIBUTEENUM_Raised,
- XFA_ATTRIBUTEENUM_Justify,
- XFA_ATTRIBUTEENUM_RefAndDescendants,
- XFA_ATTRIBUTEENUM_Short,
- XFA_ATTRIBUTEENUM_PageFront,
- XFA_ATTRIBUTEENUM_Monospace,
- XFA_ATTRIBUTEENUM_Middle,
- XFA_ATTRIBUTEENUM_PrePrint,
- XFA_ATTRIBUTEENUM_Always,
- XFA_ATTRIBUTEENUM_Unknown,
- XFA_ATTRIBUTEENUM_ToLeft,
- XFA_ATTRIBUTEENUM_Above,
- XFA_ATTRIBUTEENUM_DashDot,
- XFA_ATTRIBUTEENUM_Gregorian,
- XFA_ATTRIBUTEENUM_Roman,
- XFA_ATTRIBUTEENUM_MouseDown,
- XFA_ATTRIBUTEENUM_Symbol,
- XFA_ATTRIBUTEENUM_PageEven,
- XFA_ATTRIBUTEENUM_Sign,
- XFA_ATTRIBUTEENUM_AddNew,
- XFA_ATTRIBUTEENUM_Star,
- XFA_ATTRIBUTEENUM_Optimistic,
- XFA_ATTRIBUTEENUM_Rl_tb,
- XFA_ATTRIBUTEENUM_MiddleRight,
- XFA_ATTRIBUTEENUM_Maintain,
- XFA_ATTRIBUTEENUM_Package,
- XFA_ATTRIBUTEENUM_SimplifiedChinese,
- XFA_ATTRIBUTEENUM_ToCenter,
- XFA_ATTRIBUTEENUM_Back,
- XFA_ATTRIBUTEENUM_Unspecified,
- XFA_ATTRIBUTEENUM_BatchOptimistic,
- XFA_ATTRIBUTEENUM_Bold,
- XFA_ATTRIBUTEENUM_Both,
- XFA_ATTRIBUTEENUM_Butt,
- XFA_ATTRIBUTEENUM_Client,
- XFA_ATTRIBUTEENUM_2mod10,
- XFA_ATTRIBUTEENUM_ImageOnly,
- XFA_ATTRIBUTEENUM_Horizontal,
- XFA_ATTRIBUTEENUM_Dotted,
- XFA_ATTRIBUTEENUM_UserControl,
- XFA_ATTRIBUTEENUM_DiagonalRight,
- XFA_ATTRIBUTEENUM_ConsumeData,
- XFA_ATTRIBUTEENUM_Check,
- XFA_ATTRIBUTEENUM_Data,
- XFA_ATTRIBUTEENUM_Down,
- XFA_ATTRIBUTEENUM_SansSerif,
- XFA_ATTRIBUTEENUM_Inline,
- XFA_ATTRIBUTEENUM_TraditionalChinese,
- XFA_ATTRIBUTEENUM_Warn,
- XFA_ATTRIBUTEENUM_RefOnly,
- XFA_ATTRIBUTEENUM_InteractiveForms,
- XFA_ATTRIBUTEENUM_Word,
- XFA_ATTRIBUTEENUM_Unordered,
- XFA_ATTRIBUTEENUM_Required,
- XFA_ATTRIBUTEENUM_ImportOnly,
- XFA_ATTRIBUTEENUM_BelowEmbedded,
- XFA_ATTRIBUTEENUM_Japanese,
- XFA_ATTRIBUTEENUM_Full,
- XFA_ATTRIBUTEENUM_Rl_row,
- XFA_ATTRIBUTEENUM_Vietnamese,
- XFA_ATTRIBUTEENUM_EastEuropeanRoman,
- XFA_ATTRIBUTEENUM_MouseUp,
- XFA_ATTRIBUTEENUM_ExportOnly,
- XFA_ATTRIBUTEENUM_Clear,
- XFA_ATTRIBUTEENUM_Click,
- XFA_ATTRIBUTEENUM_Base64,
- XFA_ATTRIBUTEENUM_Close,
- XFA_ATTRIBUTEENUM_Host,
- XFA_ATTRIBUTEENUM_Global,
- XFA_ATTRIBUTEENUM_Blank,
- XFA_ATTRIBUTEENUM_Table,
- XFA_ATTRIBUTEENUM_Import,
- XFA_ATTRIBUTEENUM_Custom,
- XFA_ATTRIBUTEENUM_MiddleLeft,
- XFA_ATTRIBUTEENUM_PostExecute,
- XFA_ATTRIBUTEENUM_Radix,
- XFA_ATTRIBUTEENUM_PostOpen,
- XFA_ATTRIBUTEENUM_Enter,
- XFA_ATTRIBUTEENUM_Ignore,
- XFA_ATTRIBUTEENUM_Lr_tb,
- XFA_ATTRIBUTEENUM_Fantasy,
- XFA_ATTRIBUTEENUM_Italic,
- XFA_ATTRIBUTEENUM_Author,
- XFA_ATTRIBUTEENUM_ToEdge,
- XFA_ATTRIBUTEENUM_Choice,
- XFA_ATTRIBUTEENUM_Disabled,
- XFA_ATTRIBUTEENUM_CrossHatch,
- XFA_ATTRIBUTEENUM_DataRef,
- XFA_ATTRIBUTEENUM_DashDotDot,
- XFA_ATTRIBUTEENUM_Square,
- XFA_ATTRIBUTEENUM_Dynamic,
- XFA_ATTRIBUTEENUM_Manual,
- XFA_ATTRIBUTEENUM_Etched,
- XFA_ATTRIBUTEENUM_ValidationState,
- XFA_ATTRIBUTEENUM_Cursive,
- XFA_ATTRIBUTEENUM_Last,
- XFA_ATTRIBUTEENUM_Left,
- XFA_ATTRIBUTEENUM_Link,
- XFA_ATTRIBUTEENUM_Long,
- XFA_ATTRIBUTEENUM_InternationalCarrier,
- XFA_ATTRIBUTEENUM_PDF1_3,
- XFA_ATTRIBUTEENUM_PDF1_6,
- XFA_ATTRIBUTEENUM_Serif,
- XFA_ATTRIBUTEENUM_PostSave,
- XFA_ATTRIBUTEENUM_Ready,
- XFA_ATTRIBUTEENUM_PostSign,
- XFA_ATTRIBUTEENUM_Arabic,
- XFA_ATTRIBUTEENUM_Error,
- XFA_ATTRIBUTEENUM_Urlencoded,
- XFA_ATTRIBUTEENUM_Lowered,
-};
-enum XFA_ATTRIBUTE {
- XFA_ATTRIBUTE_H,
- XFA_ATTRIBUTE_W,
- XFA_ATTRIBUTE_X,
- XFA_ATTRIBUTE_Y,
- XFA_ATTRIBUTE_Id,
- XFA_ATTRIBUTE_To,
- XFA_ATTRIBUTE_LineThrough,
- XFA_ATTRIBUTE_HAlign,
- XFA_ATTRIBUTE_Typeface,
- XFA_ATTRIBUTE_BeforeTarget,
- XFA_ATTRIBUTE_Name,
- XFA_ATTRIBUTE_Next,
- XFA_ATTRIBUTE_DataRowCount,
- XFA_ATTRIBUTE_Break,
- XFA_ATTRIBUTE_VScrollPolicy,
- XFA_ATTRIBUTE_FontHorizontalScale,
- XFA_ATTRIBUTE_TextIndent,
- XFA_ATTRIBUTE_Context,
- XFA_ATTRIBUTE_TrayOut,
- XFA_ATTRIBUTE_Cap,
- XFA_ATTRIBUTE_Max,
- XFA_ATTRIBUTE_Min,
- XFA_ATTRIBUTE_Ref,
- XFA_ATTRIBUTE_Rid,
- XFA_ATTRIBUTE_Url,
- XFA_ATTRIBUTE_Use,
- XFA_ATTRIBUTE_LeftInset,
- XFA_ATTRIBUTE_Widows,
- XFA_ATTRIBUTE_Level,
- XFA_ATTRIBUTE_BottomInset,
- XFA_ATTRIBUTE_OverflowTarget,
- XFA_ATTRIBUTE_AllowMacro,
- XFA_ATTRIBUTE_PagePosition,
- XFA_ATTRIBUTE_ColumnWidths,
- XFA_ATTRIBUTE_OverflowLeader,
- XFA_ATTRIBUTE_Action,
- XFA_ATTRIBUTE_NonRepudiation,
- XFA_ATTRIBUTE_Rate,
- XFA_ATTRIBUTE_AllowRichText,
- XFA_ATTRIBUTE_Role,
- XFA_ATTRIBUTE_OverflowTrailer,
- XFA_ATTRIBUTE_Operation,
- XFA_ATTRIBUTE_Timeout,
- XFA_ATTRIBUTE_TopInset,
- XFA_ATTRIBUTE_Access,
- XFA_ATTRIBUTE_CommandType,
- XFA_ATTRIBUTE_Format,
- XFA_ATTRIBUTE_DataPrep,
- XFA_ATTRIBUTE_WidgetData,
- XFA_ATTRIBUTE_Abbr,
- XFA_ATTRIBUTE_MarginRight,
- XFA_ATTRIBUTE_DataDescription,
- XFA_ATTRIBUTE_EncipherOnly,
- XFA_ATTRIBUTE_KerningMode,
- XFA_ATTRIBUTE_Rotate,
- XFA_ATTRIBUTE_WordCharacterCount,
- XFA_ATTRIBUTE_Type,
- XFA_ATTRIBUTE_Reserve,
- XFA_ATTRIBUTE_TextLocation,
- XFA_ATTRIBUTE_Priority,
- XFA_ATTRIBUTE_Underline,
- XFA_ATTRIBUTE_ModuleWidth,
- XFA_ATTRIBUTE_Hyphenate,
- XFA_ATTRIBUTE_Listen,
- XFA_ATTRIBUTE_Delimiter,
- XFA_ATTRIBUTE_ContentType,
- XFA_ATTRIBUTE_StartNew,
- XFA_ATTRIBUTE_EofAction,
- XFA_ATTRIBUTE_AllowNeutral,
- XFA_ATTRIBUTE_Connection,
- XFA_ATTRIBUTE_BaselineShift,
- XFA_ATTRIBUTE_OverlinePeriod,
- XFA_ATTRIBUTE_FracDigits,
- XFA_ATTRIBUTE_Orientation,
- XFA_ATTRIBUTE_TimeStamp,
- XFA_ATTRIBUTE_PrintCheckDigit,
- XFA_ATTRIBUTE_MarginLeft,
- XFA_ATTRIBUTE_Stroke,
- XFA_ATTRIBUTE_ModuleHeight,
- XFA_ATTRIBUTE_TransferEncoding,
- XFA_ATTRIBUTE_Usage,
- XFA_ATTRIBUTE_Presence,
- XFA_ATTRIBUTE_RadixOffset,
- XFA_ATTRIBUTE_Preserve,
- XFA_ATTRIBUTE_AliasNode,
- XFA_ATTRIBUTE_MultiLine,
- XFA_ATTRIBUTE_Version,
- XFA_ATTRIBUTE_StartChar,
- XFA_ATTRIBUTE_ScriptTest,
- XFA_ATTRIBUTE_StartAngle,
- XFA_ATTRIBUTE_CursorType,
- XFA_ATTRIBUTE_DigitalSignature,
- XFA_ATTRIBUTE_CodeType,
- XFA_ATTRIBUTE_Output,
- XFA_ATTRIBUTE_BookendTrailer,
- XFA_ATTRIBUTE_ImagingBBox,
- XFA_ATTRIBUTE_ExcludeInitialCap,
- XFA_ATTRIBUTE_Force,
- XFA_ATTRIBUTE_CrlSign,
- XFA_ATTRIBUTE_Previous,
- XFA_ATTRIBUTE_PushCharacterCount,
- XFA_ATTRIBUTE_NullTest,
- XFA_ATTRIBUTE_RunAt,
- XFA_ATTRIBUTE_SpaceBelow,
- XFA_ATTRIBUTE_SweepAngle,
- XFA_ATTRIBUTE_NumberOfCells,
- XFA_ATTRIBUTE_LetterSpacing,
- XFA_ATTRIBUTE_LockType,
- XFA_ATTRIBUTE_PasswordChar,
- XFA_ATTRIBUTE_VAlign,
- XFA_ATTRIBUTE_SourceBelow,
- XFA_ATTRIBUTE_Inverted,
- XFA_ATTRIBUTE_Mark,
- XFA_ATTRIBUTE_MaxH,
- XFA_ATTRIBUTE_MaxW,
- XFA_ATTRIBUTE_Truncate,
- XFA_ATTRIBUTE_MinH,
- XFA_ATTRIBUTE_MinW,
- XFA_ATTRIBUTE_Initial,
- XFA_ATTRIBUTE_Mode,
- XFA_ATTRIBUTE_Layout,
- XFA_ATTRIBUTE_Server,
- XFA_ATTRIBUTE_EmbedPDF,
- XFA_ATTRIBUTE_OddOrEven,
- XFA_ATTRIBUTE_TabDefault,
- XFA_ATTRIBUTE_Contains,
- XFA_ATTRIBUTE_RightInset,
- XFA_ATTRIBUTE_MaxChars,
- XFA_ATTRIBUTE_Open,
- XFA_ATTRIBUTE_Relation,
- XFA_ATTRIBUTE_WideNarrowRatio,
- XFA_ATTRIBUTE_Relevant,
- XFA_ATTRIBUTE_SignatureType,
- XFA_ATTRIBUTE_LineThroughPeriod,
- XFA_ATTRIBUTE_Shape,
- XFA_ATTRIBUTE_TabStops,
- XFA_ATTRIBUTE_OutputBelow,
- XFA_ATTRIBUTE_Short,
- XFA_ATTRIBUTE_FontVerticalScale,
- XFA_ATTRIBUTE_Thickness,
- XFA_ATTRIBUTE_CommitOn,
- XFA_ATTRIBUTE_RemainCharacterCount,
- XFA_ATTRIBUTE_KeyAgreement,
- XFA_ATTRIBUTE_ErrorCorrectionLevel,
- XFA_ATTRIBUTE_UpsMode,
- XFA_ATTRIBUTE_MergeMode,
- XFA_ATTRIBUTE_Circular,
- XFA_ATTRIBUTE_PsName,
- XFA_ATTRIBUTE_Trailer,
- XFA_ATTRIBUTE_UnicodeRange,
- XFA_ATTRIBUTE_ExecuteType,
- XFA_ATTRIBUTE_DuplexImposition,
- XFA_ATTRIBUTE_TrayIn,
- XFA_ATTRIBUTE_BindingNode,
- XFA_ATTRIBUTE_BofAction,
- XFA_ATTRIBUTE_Save,
- XFA_ATTRIBUTE_TargetType,
- XFA_ATTRIBUTE_KeyEncipherment,
- XFA_ATTRIBUTE_CredentialServerPolicy,
- XFA_ATTRIBUTE_Size,
- XFA_ATTRIBUTE_InitialNumber,
- XFA_ATTRIBUTE_Slope,
- XFA_ATTRIBUTE_CSpace,
- XFA_ATTRIBUTE_ColSpan,
- XFA_ATTRIBUTE_Binding,
- XFA_ATTRIBUTE_Checksum,
- XFA_ATTRIBUTE_CharEncoding,
- XFA_ATTRIBUTE_Bind,
- XFA_ATTRIBUTE_TextEntry,
- XFA_ATTRIBUTE_Archive,
- XFA_ATTRIBUTE_Uuid,
- XFA_ATTRIBUTE_Posture,
- XFA_ATTRIBUTE_After,
- XFA_ATTRIBUTE_Orphans,
- XFA_ATTRIBUTE_QualifiedName,
- XFA_ATTRIBUTE_Usehref,
- XFA_ATTRIBUTE_Locale,
- XFA_ATTRIBUTE_Weight,
- XFA_ATTRIBUTE_UnderlinePeriod,
- XFA_ATTRIBUTE_Data,
- XFA_ATTRIBUTE_Desc,
- XFA_ATTRIBUTE_Numbered,
- XFA_ATTRIBUTE_DataColumnCount,
- XFA_ATTRIBUTE_Overline,
- XFA_ATTRIBUTE_UrlPolicy,
- XFA_ATTRIBUTE_AnchorType,
- XFA_ATTRIBUTE_LabelRef,
- XFA_ATTRIBUTE_BookendLeader,
- XFA_ATTRIBUTE_MaxLength,
- XFA_ATTRIBUTE_AccessKey,
- XFA_ATTRIBUTE_CursorLocation,
- XFA_ATTRIBUTE_DelayedOpen,
- XFA_ATTRIBUTE_Target,
- XFA_ATTRIBUTE_DataEncipherment,
- XFA_ATTRIBUTE_AfterTarget,
- XFA_ATTRIBUTE_Leader,
- XFA_ATTRIBUTE_Picker,
- XFA_ATTRIBUTE_From,
- XFA_ATTRIBUTE_BaseProfile,
- XFA_ATTRIBUTE_Aspect,
- XFA_ATTRIBUTE_RowColumnRatio,
- XFA_ATTRIBUTE_LineHeight,
- XFA_ATTRIBUTE_Highlight,
- XFA_ATTRIBUTE_ValueRef,
- XFA_ATTRIBUTE_MaxEntries,
- XFA_ATTRIBUTE_DataLength,
- XFA_ATTRIBUTE_Activity,
- XFA_ATTRIBUTE_Input,
- XFA_ATTRIBUTE_Value,
- XFA_ATTRIBUTE_BlankOrNotBlank,
- XFA_ATTRIBUTE_AddRevocationInfo,
- XFA_ATTRIBUTE_GenericFamily,
- XFA_ATTRIBUTE_Hand,
- XFA_ATTRIBUTE_Href,
- XFA_ATTRIBUTE_TextEncoding,
- XFA_ATTRIBUTE_LeadDigits,
- XFA_ATTRIBUTE_Permissions,
- XFA_ATTRIBUTE_SpaceAbove,
- XFA_ATTRIBUTE_CodeBase,
- XFA_ATTRIBUTE_Stock,
- XFA_ATTRIBUTE_IsNull,
- XFA_ATTRIBUTE_RestoreState,
- XFA_ATTRIBUTE_ExcludeAllCaps,
- XFA_ATTRIBUTE_FormatTest,
- XFA_ATTRIBUTE_HScrollPolicy,
- XFA_ATTRIBUTE_Join,
- XFA_ATTRIBUTE_KeyCertSign,
- XFA_ATTRIBUTE_Radius,
- XFA_ATTRIBUTE_SourceAbove,
- XFA_ATTRIBUTE_Override,
- XFA_ATTRIBUTE_ClassId,
- XFA_ATTRIBUTE_Disable,
- XFA_ATTRIBUTE_Scope,
- XFA_ATTRIBUTE_Match,
- XFA_ATTRIBUTE_Placement,
- XFA_ATTRIBUTE_Before,
- XFA_ATTRIBUTE_WritingScript,
- XFA_ATTRIBUTE_EndChar,
- XFA_ATTRIBUTE_Lock,
- XFA_ATTRIBUTE_Long,
- XFA_ATTRIBUTE_Intact,
- XFA_ATTRIBUTE_XdpContent,
- XFA_ATTRIBUTE_DecipherOnly,
-};
-enum XFA_ELEMENT {
- XFA_ELEMENT_Ps,
- XFA_ELEMENT_To,
- XFA_ELEMENT_Ui,
- XFA_ELEMENT_RecordSet,
- XFA_ELEMENT_SubsetBelow,
- XFA_ELEMENT_SubformSet,
- XFA_ELEMENT_AdobeExtensionLevel,
- XFA_ELEMENT_Typeface,
- XFA_ELEMENT_Break,
- XFA_ELEMENT_FontInfo,
- XFA_ELEMENT_NumberPattern,
- XFA_ELEMENT_DynamicRender,
- XFA_ELEMENT_PrintScaling,
- XFA_ELEMENT_CheckButton,
- XFA_ELEMENT_DatePatterns,
- XFA_ELEMENT_SourceSet,
- XFA_ELEMENT_Amd,
- XFA_ELEMENT_Arc,
- XFA_ELEMENT_Day,
- XFA_ELEMENT_Era,
- XFA_ELEMENT_Jog,
- XFA_ELEMENT_Log,
- XFA_ELEMENT_Map,
- XFA_ELEMENT_Mdp,
- XFA_ELEMENT_BreakBefore,
- XFA_ELEMENT_Oid,
- XFA_ELEMENT_Pcl,
- XFA_ELEMENT_Pdf,
- XFA_ELEMENT_Ref,
- XFA_ELEMENT_Uri,
- XFA_ELEMENT_Xdc,
- XFA_ELEMENT_Xdp,
- XFA_ELEMENT_Xfa,
- XFA_ELEMENT_Xsl,
- XFA_ELEMENT_Zpl,
- XFA_ELEMENT_Cache,
- XFA_ELEMENT_Margin,
- XFA_ELEMENT_KeyUsage,
- XFA_ELEMENT_Exclude,
- XFA_ELEMENT_ChoiceList,
- XFA_ELEMENT_Level,
- XFA_ELEMENT_LabelPrinter,
- XFA_ELEMENT_CalendarSymbols,
- XFA_ELEMENT_Para,
- XFA_ELEMENT_Part,
- XFA_ELEMENT_Pdfa,
- XFA_ELEMENT_Filter,
- XFA_ELEMENT_Present,
- XFA_ELEMENT_Pagination,
- XFA_ELEMENT_Encoding,
- XFA_ELEMENT_Event,
- XFA_ELEMENT_Whitespace,
- XFA_ELEMENT_DefaultUi,
- XFA_ELEMENT_DataModel,
- XFA_ELEMENT_Barcode,
- XFA_ELEMENT_TimePattern,
- XFA_ELEMENT_BatchOutput,
- XFA_ELEMENT_Enforce,
- XFA_ELEMENT_CurrencySymbols,
- XFA_ELEMENT_AddSilentPrint,
- XFA_ELEMENT_Rename,
- XFA_ELEMENT_Operation,
- XFA_ELEMENT_Typefaces,
- XFA_ELEMENT_SubjectDNs,
- XFA_ELEMENT_Issuers,
- XFA_ELEMENT_SignaturePseudoModel,
- XFA_ELEMENT_WsdlConnection,
- XFA_ELEMENT_Debug,
- XFA_ELEMENT_Delta,
- XFA_ELEMENT_EraNames,
- XFA_ELEMENT_ModifyAnnots,
- XFA_ELEMENT_StartNode,
- XFA_ELEMENT_Button,
- XFA_ELEMENT_Format,
- XFA_ELEMENT_Border,
- XFA_ELEMENT_Area,
- XFA_ELEMENT_Hyphenation,
- XFA_ELEMENT_Text,
- XFA_ELEMENT_Time,
- XFA_ELEMENT_Type,
- XFA_ELEMENT_Overprint,
- XFA_ELEMENT_Certificates,
- XFA_ELEMENT_EncryptionMethods,
- XFA_ELEMENT_SetProperty,
- XFA_ELEMENT_PrinterName,
- XFA_ELEMENT_StartPage,
- XFA_ELEMENT_PageOffset,
- XFA_ELEMENT_DateTime,
- XFA_ELEMENT_Comb,
- XFA_ELEMENT_Pattern,
- XFA_ELEMENT_IfEmpty,
- XFA_ELEMENT_SuppressBanner,
- XFA_ELEMENT_OutputBin,
- XFA_ELEMENT_Field,
- XFA_ELEMENT_Agent,
- XFA_ELEMENT_OutputXSL,
- XFA_ELEMENT_AdjustData,
- XFA_ELEMENT_AutoSave,
- XFA_ELEMENT_ContentArea,
- XFA_ELEMENT_EventPseudoModel,
- XFA_ELEMENT_WsdlAddress,
- XFA_ELEMENT_Solid,
- XFA_ELEMENT_DateTimeSymbols,
- XFA_ELEMENT_EncryptionLevel,
- XFA_ELEMENT_Edge,
- XFA_ELEMENT_Stipple,
- XFA_ELEMENT_Attributes,
- XFA_ELEMENT_VersionControl,
- XFA_ELEMENT_Meridiem,
- XFA_ELEMENT_ExclGroup,
- XFA_ELEMENT_ToolTip,
- XFA_ELEMENT_Compress,
- XFA_ELEMENT_Reason,
- XFA_ELEMENT_Execute,
- XFA_ELEMENT_ContentCopy,
- XFA_ELEMENT_DateTimeEdit,
- XFA_ELEMENT_Config,
- XFA_ELEMENT_Image,
- XFA_ELEMENT_SharpxHTML,
- XFA_ELEMENT_NumberOfCopies,
- XFA_ELEMENT_BehaviorOverride,
- XFA_ELEMENT_TimeStamp,
- XFA_ELEMENT_Month,
- XFA_ELEMENT_ViewerPreferences,
- XFA_ELEMENT_ScriptModel,
- XFA_ELEMENT_Decimal,
- XFA_ELEMENT_Subform,
- XFA_ELEMENT_Select,
- XFA_ELEMENT_Window,
- XFA_ELEMENT_LocaleSet,
- XFA_ELEMENT_Handler,
- XFA_ELEMENT_HostPseudoModel,
- XFA_ELEMENT_Presence,
- XFA_ELEMENT_Record,
- XFA_ELEMENT_Embed,
- XFA_ELEMENT_Version,
- XFA_ELEMENT_Command,
- XFA_ELEMENT_Copies,
- XFA_ELEMENT_Staple,
- XFA_ELEMENT_SubmitFormat,
- XFA_ELEMENT_Boolean,
- XFA_ELEMENT_Message,
- XFA_ELEMENT_Output,
- XFA_ELEMENT_PsMap,
- XFA_ELEMENT_ExcludeNS,
- XFA_ELEMENT_Assist,
- XFA_ELEMENT_Picture,
- XFA_ELEMENT_Traversal,
- XFA_ELEMENT_SilentPrint,
- XFA_ELEMENT_WebClient,
- XFA_ELEMENT_LayoutPseudoModel,
- XFA_ELEMENT_Producer,
- XFA_ELEMENT_Corner,
- XFA_ELEMENT_MsgId,
- XFA_ELEMENT_Color,
- XFA_ELEMENT_Keep,
- XFA_ELEMENT_Query,
- XFA_ELEMENT_Insert,
- XFA_ELEMENT_ImageEdit,
- XFA_ELEMENT_Validate,
- XFA_ELEMENT_DigestMethods,
- XFA_ELEMENT_NumberPatterns,
- XFA_ELEMENT_PageSet,
- XFA_ELEMENT_Integer,
- XFA_ELEMENT_SoapAddress,
- XFA_ELEMENT_Equate,
- XFA_ELEMENT_FormFieldFilling,
- XFA_ELEMENT_PageRange,
- XFA_ELEMENT_Update,
- XFA_ELEMENT_ConnectString,
- XFA_ELEMENT_Mode,
- XFA_ELEMENT_Layout,
- XFA_ELEMENT_Sharpxml,
- XFA_ELEMENT_XsdConnection,
- XFA_ELEMENT_Traverse,
- XFA_ELEMENT_Encodings,
- XFA_ELEMENT_Template,
- XFA_ELEMENT_Acrobat,
- XFA_ELEMENT_ValidationMessaging,
- XFA_ELEMENT_Signing,
- XFA_ELEMENT_DataWindow,
- XFA_ELEMENT_Script,
- XFA_ELEMENT_AddViewerPreferences,
- XFA_ELEMENT_AlwaysEmbed,
- XFA_ELEMENT_PasswordEdit,
- XFA_ELEMENT_NumericEdit,
- XFA_ELEMENT_EncryptionMethod,
- XFA_ELEMENT_Change,
- XFA_ELEMENT_PageArea,
- XFA_ELEMENT_SubmitUrl,
- XFA_ELEMENT_Oids,
- XFA_ELEMENT_Signature,
- XFA_ELEMENT_ADBE_JSConsole,
- XFA_ELEMENT_Caption,
- XFA_ELEMENT_Relevant,
- XFA_ELEMENT_FlipLabel,
- XFA_ELEMENT_ExData,
- XFA_ELEMENT_DayNames,
- XFA_ELEMENT_SoapAction,
- XFA_ELEMENT_DefaultTypeface,
- XFA_ELEMENT_Manifest,
- XFA_ELEMENT_Overflow,
- XFA_ELEMENT_Linear,
- XFA_ELEMENT_CurrencySymbol,
- XFA_ELEMENT_Delete,
- XFA_ELEMENT_Deltas,
- XFA_ELEMENT_DigestMethod,
- XFA_ELEMENT_InstanceManager,
- XFA_ELEMENT_EquateRange,
- XFA_ELEMENT_Medium,
- XFA_ELEMENT_TextEdit,
- XFA_ELEMENT_TemplateCache,
- XFA_ELEMENT_CompressObjectStream,
- XFA_ELEMENT_DataValue,
- XFA_ELEMENT_AccessibleContent,
- XFA_ELEMENT_NodeList,
- XFA_ELEMENT_IncludeXDPContent,
- XFA_ELEMENT_XmlConnection,
- XFA_ELEMENT_ValidateApprovalSignatures,
- XFA_ELEMENT_SignData,
- XFA_ELEMENT_Packets,
- XFA_ELEMENT_DatePattern,
- XFA_ELEMENT_DuplexOption,
- XFA_ELEMENT_Base,
- XFA_ELEMENT_Bind,
- XFA_ELEMENT_Compression,
- XFA_ELEMENT_User,
- XFA_ELEMENT_Rectangle,
- XFA_ELEMENT_EffectiveOutputPolicy,
- XFA_ELEMENT_ADBE_JSDebugger,
- XFA_ELEMENT_Acrobat7,
- XFA_ELEMENT_Interactive,
- XFA_ELEMENT_Locale,
- XFA_ELEMENT_CurrentPage,
- XFA_ELEMENT_Data,
- XFA_ELEMENT_Date,
- XFA_ELEMENT_Desc,
- XFA_ELEMENT_Encrypt,
- XFA_ELEMENT_Draw,
- XFA_ELEMENT_Encryption,
- XFA_ELEMENT_MeridiemNames,
- XFA_ELEMENT_Messaging,
- XFA_ELEMENT_Speak,
- XFA_ELEMENT_DataGroup,
- XFA_ELEMENT_Common,
- XFA_ELEMENT_Sharptext,
- XFA_ELEMENT_PaginationOverride,
- XFA_ELEMENT_Reasons,
- XFA_ELEMENT_SignatureProperties,
- XFA_ELEMENT_Threshold,
- XFA_ELEMENT_AppearanceFilter,
- XFA_ELEMENT_Fill,
- XFA_ELEMENT_Font,
- XFA_ELEMENT_Form,
- XFA_ELEMENT_MediumInfo,
- XFA_ELEMENT_Certificate,
- XFA_ELEMENT_Password,
- XFA_ELEMENT_RunScripts,
- XFA_ELEMENT_Trace,
- XFA_ELEMENT_Float,
- XFA_ELEMENT_RenderPolicy,
- XFA_ELEMENT_LogPseudoModel,
- XFA_ELEMENT_Destination,
- XFA_ELEMENT_Value,
- XFA_ELEMENT_Bookend,
- XFA_ELEMENT_ExObject,
- XFA_ELEMENT_OpenAction,
- XFA_ELEMENT_NeverEmbed,
- XFA_ELEMENT_BindItems,
- XFA_ELEMENT_Calculate,
- XFA_ELEMENT_Print,
- XFA_ELEMENT_Extras,
- XFA_ELEMENT_Proto,
- XFA_ELEMENT_DSigData,
- XFA_ELEMENT_Creator,
- XFA_ELEMENT_Connect,
- XFA_ELEMENT_Permissions,
- XFA_ELEMENT_ConnectionSet,
- XFA_ELEMENT_Submit,
- XFA_ELEMENT_Range,
- XFA_ELEMENT_Linearized,
- XFA_ELEMENT_Packet,
- XFA_ELEMENT_RootElement,
- XFA_ELEMENT_PlaintextMetadata,
- XFA_ELEMENT_NumberSymbols,
- XFA_ELEMENT_PrintHighQuality,
- XFA_ELEMENT_Driver,
- XFA_ELEMENT_IncrementalLoad,
- XFA_ELEMENT_SubjectDN,
- XFA_ELEMENT_CompressLogicalStructure,
- XFA_ELEMENT_IncrementalMerge,
- XFA_ELEMENT_Radial,
- XFA_ELEMENT_Variables,
- XFA_ELEMENT_TimePatterns,
- XFA_ELEMENT_EffectiveInputPolicy,
- XFA_ELEMENT_NameAttr,
- XFA_ELEMENT_Conformance,
- XFA_ELEMENT_Transform,
- XFA_ELEMENT_LockDocument,
- XFA_ELEMENT_BreakAfter,
- XFA_ELEMENT_Line,
- XFA_ELEMENT_List,
- XFA_ELEMENT_Source,
- XFA_ELEMENT_Occur,
- XFA_ELEMENT_PickTrayByPDFSize,
- XFA_ELEMENT_MonthNames,
- XFA_ELEMENT_Severity,
- XFA_ELEMENT_GroupParent,
- XFA_ELEMENT_DocumentAssembly,
- XFA_ELEMENT_NumberSymbol,
- XFA_ELEMENT_Tagged,
- XFA_ELEMENT_Items,
-};
-#define XFA_ELEMENT_UNKNOWN ((XFA_ELEMENT)-1)
-typedef struct _XFA_ELEMENTINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_ELEMENT eName;
- FX_DWORD dwPackets;
- FX_DWORD eObjectType;
-} XFA_ELEMENTINFO, *XFA_LPELEMENTINFO;
-typedef XFA_ELEMENTINFO const* XFA_LPCELEMENTINFO;
-int32_t XFA_GetElementCount();
-XFA_LPCELEMENTINFO XFA_GetElementByName(const CFX_WideStringC& wsName);
-XFA_LPCELEMENTINFO XFA_GetElementByID(XFA_ELEMENT eName);
-enum XFA_ATTRIBUTETYPE {
- XFA_ATTRIBUTETYPE_NOTSURE,
- XFA_ATTRIBUTETYPE_Enum,
- XFA_ATTRIBUTETYPE_Cdata,
- XFA_ATTRIBUTETYPE_Boolean,
- XFA_ATTRIBUTETYPE_Integer,
- XFA_ATTRIBUTETYPE_Measure,
-};
-typedef struct _XFA_ATTRIBUTEINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_ATTRIBUTE eName;
- XFA_ATTRIBUTETYPE eType;
- FX_DWORD dwPackets;
- void* pDefValue;
-} XFA_ATTRIBUTEINFO, *XFA_LPATTRIBUTEINFO;
-typedef XFA_ATTRIBUTEINFO const* XFA_LPCATTRIBUTEINFO;
-int32_t XFA_GetAttributeCount();
-XFA_LPCATTRIBUTEINFO XFA_GetAttributeByName(const CFX_WideStringC& wsName);
-XFA_LPCATTRIBUTEINFO XFA_GetAttributeByID(XFA_ATTRIBUTE eName);
-FX_BOOL XFA_GetAttributeDefaultValue(void*& pValue,
- XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- XFA_ATTRIBUTETYPE eType,
- FX_DWORD dwPacket);
-XFA_ATTRIBUTEENUM XFA_GetAttributeDefaultValue_Enum(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-CFX_WideStringC XFA_GetAttributeDefaultValue_Cdata(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-FX_BOOL XFA_GetAttributeDefaultValue_Boolean(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-int32_t XFA_GetAttributeDefaultValue_Integer(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-CXFA_Measurement XFA_GetAttributeDefaultValue_Measure(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-typedef struct _XFA_ELEMENTHIERARCHY {
- FX_WORD wStart;
- FX_WORD wCount;
- FX_WORD wParentIndex;
-} XFA_ELEMENTHIERARCHY, *XFA_LPELEMENTHIERARCHY;
-typedef XFA_ELEMENTHIERARCHY const* XFA_LPCELEMENTHIERARCHY;
-typedef struct _XFA_SCRIPTHIERARCHY {
- FX_WORD wMethodStart;
- FX_WORD wMethodCount;
- FX_WORD wAttributeStart;
- FX_WORD wAttributeCount;
- int16_t wParentIndex;
-} XFA_SCRIPTHIERARCHY, *XFA_LPSCRIPTHIERARCHY;
-typedef XFA_SCRIPTHIERARCHY const* XFA_LPCSCRIPTHIERARCHY;
-const FX_WORD* XFA_GetElementChildren(XFA_ELEMENT eElement, int32_t& iCount);
-const uint8_t* XFA_GetElementAttributes(XFA_ELEMENT eElement, int32_t& iCount);
-XFA_LPCELEMENTINFO XFA_GetChildOfElement(XFA_ELEMENT eElement,
- XFA_ELEMENT eChild,
- FX_DWORD dwPacket);
-XFA_LPCATTRIBUTEINFO XFA_GetAttributeOfElement(XFA_ELEMENT eElement,
- XFA_ATTRIBUTE eAttribute,
- FX_DWORD dwPacket);
-#define XFA_PROPERTYFLAG_OneOf 0x01
-#define XFA_PROPERTYFLAG_DefaultOneOf 0x02
-typedef struct _XFA_PROPERTY {
- FX_WORD eName;
- uint8_t uOccur;
- uint8_t uFlags;
-} XFA_PROPERTY, *XFA_LPPROPERTY;
-typedef XFA_PROPERTY const* XFA_LPCPROPERTY;
-XFA_LPCPROPERTY XFA_GetElementProperties(XFA_ELEMENT eElement, int32_t& iCount);
-XFA_LPCPROPERTY XFA_GetPropertyOfElement(XFA_ELEMENT eElement,
- XFA_ELEMENT eProperty,
- FX_DWORD dwPacket);
-typedef struct _XFA_ATTRIBUTEENUMINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_ATTRIBUTEENUM eName;
-} XFA_ATTRIBUTEENUMINFO, *XFA_LPATTRIBUTEENUMINFO;
-typedef XFA_ATTRIBUTEENUMINFO const* XFA_LPCATTRIBUTEENUMINFO;
-XFA_LPCATTRIBUTEENUMINFO XFA_GetAttributeEnumByName(
- const CFX_WideStringC& wsName);
-XFA_LPCATTRIBUTEENUMINFO XFA_GetAttributeEnumByID(XFA_ATTRIBUTEENUM eName);
-enum XFA_UNIT {
- XFA_UNIT_Unknown,
- XFA_UNIT_Percent,
- XFA_UNIT_Angle,
- XFA_UNIT_Em,
- XFA_UNIT_Pt,
- XFA_UNIT_In,
- XFA_UNIT_Pc,
- XFA_UNIT_Cm,
- XFA_UNIT_Mm,
- XFA_UNIT_Mp,
-};
-class CXFA_Measurement {
- public:
- void Set(const CFX_WideStringC& wsMeasure);
- void Set(FX_FLOAT fValue, XFA_UNIT eUnit) {
- m_fValue = fValue;
- m_eUnit = eUnit;
- }
-
- XFA_UNIT GetUnit() const { return m_eUnit; }
- FX_FLOAT GetValue() const { return m_fValue; }
- FX_BOOL ToString(CFX_WideString& wsMeasure) const;
- FX_BOOL ToUnit(XFA_UNIT eUnit, FX_FLOAT& fValue) const;
- FX_FLOAT ToUnit(XFA_UNIT eUnit) const {
- FX_FLOAT f;
- return ToUnit(eUnit, f) ? f : 0;
- }
- CXFA_Measurement() { Set(-1, XFA_UNIT_Unknown); }
- CXFA_Measurement(const CFX_WideStringC& wsMeasure) { Set(wsMeasure); }
- CXFA_Measurement(FX_FLOAT fValue, XFA_UNIT eUnit) { Set(fValue, eUnit); }
- static XFA_UNIT GetUnit(const CFX_WideStringC& wsUnit);
-
- protected:
- FX_FLOAT m_fValue;
- XFA_UNIT m_eUnit;
-};
-class CFXJSE_Arguments;
-class CXFA_Object;
-typedef void (CXFA_Object::*XFA_METHOD_CALLBACK)(CFXJSE_Arguments* pArguments);
-typedef struct _XFA_METHODINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_METHOD_CALLBACK lpfnCallback;
-} XFA_METHODINFO, *XFA_LPMETHODINFO;
-typedef XFA_METHODINFO const* XFA_LPCMETHODINFO;
-int32_t XFA_GetMethodCount();
-XFA_LPCMETHODINFO XFA_GetMethodByName(XFA_ELEMENT eElement,
- const CFX_WideStringC& wsMethodName);
-typedef void (CXFA_Object::*XFA_ATTRIBUTE_CALLBACK)(FXJSE_HVALUE hValue,
- FX_BOOL bSetting,
- XFA_ATTRIBUTE eAttribute);
-enum XFA_SCRIPT_TYPE {
- XFA_SCRIPT_Basic,
- XFA_SCRIPT_Object,
-};
-typedef struct _XFA_SCRIPTATTRIBUTEINFO {
- uint32_t uHash;
- const FX_WCHAR* pName;
- XFA_ATTRIBUTE_CALLBACK lpfnCallback;
- int32_t eAttribute;
- FX_WORD eValueType;
-} XFA_SCRIPTATTRIBUTEINFO, *XFA_LPSCRIPTATTRIBUTEINFO;
-typedef XFA_SCRIPTATTRIBUTEINFO const* XFA_LPCSCRIPTATTRIBUTEINFO;
-XFA_LPCSCRIPTATTRIBUTEINFO XFA_GetScriptAttributeByName(
- XFA_ELEMENT eElement,
- const CFX_WideStringC& wsAttributeName);
-#endif
+// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef _FXFA_BASIC_H +#define _FXFA_BASIC_H + +#include "xfa/include/fxjse/fxjse.h" + +class CXFA_Measurement; +#define XFA_HASHCODE_Xfa 0xc56b9ff +#define XFA_HASHCODE_Config 0x4e1e39b6 +#define XFA_HASHCODE_Template 0x803550fc +#define XFA_HASHCODE_Datasets 0x99b95079 +#define XFA_HASHCODE_Data 0xbde9abda +#define XFA_HASHCODE_Form 0xcd309ff4 +#define XFA_HASHCODE_LocaleSet 0x5473b6dc +#define XFA_HASHCODE_ConnectionSet 0xe14c801c +#define XFA_HASHCODE_SourceSet 0x811929d +#define XFA_HASHCODE_Xdc 0xc56afbf +#define XFA_HASHCODE_Pdf 0xb843dba +#define XFA_HASHCODE_Xfdf 0x48d004a8 +#define XFA_HASHCODE_Xmpmeta 0x132a8fbc +#define XFA_HASHCODE_Signature 0x8b036f32 +#define XFA_HASHCODE_Stylesheet 0x6038580a +#define XFA_HASHCODE_XDP 0xc56afcc +#define XFA_HASHCODE_Record 0x5779d65f +#define XFA_HASHCODE_DataWindow 0x83a550d2 +#define XFA_HASHCODE_Host 0xdb075bde +#define XFA_HASHCODE_Log 0x0b1b3d22 +#define XFA_HASHCODE_Event 0x185e41e2 +#define XFA_HASHCODE_Layout 0x7e7e845e +#define XFA_HASHCODE_Occur 0xf7eebe1c +#define XFA_HASHCODE_This 0x2d574d58 +#define XFA_HASHCODE_DataDescription 0x2b5df51e +#define XFA_HASHCODE_Name 0x31b19c1 +enum XFA_PACKET { + XFA_PACKET_USER, + XFA_PACKET_SourceSet, + XFA_PACKET_Pdf, + XFA_PACKET_Xdc, + XFA_PACKET_XDP, + XFA_PACKET_Xmpmeta, + XFA_PACKET_Xfdf, + XFA_PACKET_Config, + XFA_PACKET_LocaleSet, + XFA_PACKET_Stylesheet, + XFA_PACKET_Template, + XFA_PACKET_Signature, + XFA_PACKET_Datasets, + XFA_PACKET_Form, + XFA_PACKET_ConnectionSet, +}; +enum XFA_XDPPACKET { + XFA_XDPPACKET_UNKNOWN = 0, + XFA_XDPPACKET_Config = 1 << XFA_PACKET_Config, + XFA_XDPPACKET_Template = 1 << XFA_PACKET_Template, + XFA_XDPPACKET_Datasets = 1 << XFA_PACKET_Datasets, + XFA_XDPPACKET_Form = 1 << XFA_PACKET_Form, + XFA_XDPPACKET_LocaleSet = 1 << XFA_PACKET_LocaleSet, + XFA_XDPPACKET_ConnectionSet = 1 << XFA_PACKET_ConnectionSet, + XFA_XDPPACKET_SourceSet = 1 << XFA_PACKET_SourceSet, + XFA_XDPPACKET_Xdc = 1 << XFA_PACKET_Xdc, + XFA_XDPPACKET_Pdf = 1 << XFA_PACKET_Pdf, + XFA_XDPPACKET_Xfdf = 1 << XFA_PACKET_Xfdf, + XFA_XDPPACKET_Xmpmeta = 1 << XFA_PACKET_Xmpmeta, + XFA_XDPPACKET_Signature = 1 << XFA_PACKET_Signature, + XFA_XDPPACKET_Stylesheet = 1 << XFA_PACKET_Stylesheet, + XFA_XDPPACKET_USER = 1 << XFA_PACKET_USER, + XFA_XDPPACKET_XDP = 1 << XFA_PACKET_XDP, +}; +enum XFA_XDPPACKET_FLAGS { + XFA_XDPPACKET_FLAGS_COMPLETEMATCH = 1, + XFA_XDPPACKET_FLAGS_PREFIXMATCH = 2, + XFA_XDPPACKET_FLAGS_NOMATCH = 4, + XFA_XDPPACKET_FLAGS_SUPPORTONE = 8, + XFA_XDPPACKET_FLAGS_SUPPORTMANY = 16, +}; +typedef struct _XFA_PACKETINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_XDPPACKET eName; + const FX_WCHAR* pURI; + FX_DWORD eFlags; +} XFA_PACKETINFO, *XFA_LPPACKETINFO; +typedef XFA_PACKETINFO const* XFA_LPCPACKETINFO; +XFA_LPCPACKETINFO XFA_GetPacketByName(const CFX_WideStringC& wsName); +XFA_LPCPACKETINFO XFA_GetPacketByID(FX_DWORD dwPacket); +extern const XFA_PACKETINFO g_XFAPacketData[]; +inline XFA_LPCPACKETINFO XFA_GetPacketByIndex(XFA_PACKET ePacket) { + return g_XFAPacketData + ePacket; +} +enum XFA_ATTRIBUTEENUM { + XFA_ATTRIBUTEENUM_Asterisk, + XFA_ATTRIBUTEENUM_Slash, + XFA_ATTRIBUTEENUM_Backslash, + XFA_ATTRIBUTEENUM_On, + XFA_ATTRIBUTEENUM_Tb, + XFA_ATTRIBUTEENUM_Up, + XFA_ATTRIBUTEENUM_MetaData, + XFA_ATTRIBUTEENUM_Delegate, + XFA_ATTRIBUTEENUM_PostSubmit, + XFA_ATTRIBUTEENUM_Name, + XFA_ATTRIBUTEENUM_Cross, + XFA_ATTRIBUTEENUM_Next, + XFA_ATTRIBUTEENUM_None, + XFA_ATTRIBUTEENUM_ShortEdge, + XFA_ATTRIBUTEENUM_1mod10_1mod11, + XFA_ATTRIBUTEENUM_Height, + XFA_ATTRIBUTEENUM_CrossDiagonal, + XFA_ATTRIBUTEENUM_All, + XFA_ATTRIBUTEENUM_Any, + XFA_ATTRIBUTEENUM_ToRight, + XFA_ATTRIBUTEENUM_MatchTemplate, + XFA_ATTRIBUTEENUM_Dpl, + XFA_ATTRIBUTEENUM_Invisible, + XFA_ATTRIBUTEENUM_Fit, + XFA_ATTRIBUTEENUM_Width, + XFA_ATTRIBUTEENUM_PreSubmit, + XFA_ATTRIBUTEENUM_Ipl, + XFA_ATTRIBUTEENUM_FlateCompress, + XFA_ATTRIBUTEENUM_Med, + XFA_ATTRIBUTEENUM_Odd, + XFA_ATTRIBUTEENUM_Off, + XFA_ATTRIBUTEENUM_Pdf, + XFA_ATTRIBUTEENUM_Row, + XFA_ATTRIBUTEENUM_Top, + XFA_ATTRIBUTEENUM_Xdp, + XFA_ATTRIBUTEENUM_Xfd, + XFA_ATTRIBUTEENUM_Xml, + XFA_ATTRIBUTEENUM_Zip, + XFA_ATTRIBUTEENUM_Zpl, + XFA_ATTRIBUTEENUM_Visible, + XFA_ATTRIBUTEENUM_Exclude, + XFA_ATTRIBUTEENUM_MouseEnter, + XFA_ATTRIBUTEENUM_Pair, + XFA_ATTRIBUTEENUM_Filter, + XFA_ATTRIBUTEENUM_MoveLast, + XFA_ATTRIBUTEENUM_ExportAndImport, + XFA_ATTRIBUTEENUM_Push, + XFA_ATTRIBUTEENUM_Portrait, + XFA_ATTRIBUTEENUM_Default, + XFA_ATTRIBUTEENUM_StoredProc, + XFA_ATTRIBUTEENUM_StayBOF, + XFA_ATTRIBUTEENUM_StayEOF, + XFA_ATTRIBUTEENUM_PostPrint, + XFA_ATTRIBUTEENUM_UsCarrier, + XFA_ATTRIBUTEENUM_Right, + XFA_ATTRIBUTEENUM_PreOpen, + XFA_ATTRIBUTEENUM_Actual, + XFA_ATTRIBUTEENUM_Rest, + XFA_ATTRIBUTEENUM_TopCenter, + XFA_ATTRIBUTEENUM_StandardSymbol, + XFA_ATTRIBUTEENUM_Initialize, + XFA_ATTRIBUTEENUM_JustifyAll, + XFA_ATTRIBUTEENUM_Normal, + XFA_ATTRIBUTEENUM_Landscape, + XFA_ATTRIBUTEENUM_NonInteractive, + XFA_ATTRIBUTEENUM_MouseExit, + XFA_ATTRIBUTEENUM_Minus, + XFA_ATTRIBUTEENUM_DiagonalLeft, + XFA_ATTRIBUTEENUM_SimplexPaginated, + XFA_ATTRIBUTEENUM_Document, + XFA_ATTRIBUTEENUM_Warning, + XFA_ATTRIBUTEENUM_Auto, + XFA_ATTRIBUTEENUM_Below, + XFA_ATTRIBUTEENUM_BottomLeft, + XFA_ATTRIBUTEENUM_BottomCenter, + XFA_ATTRIBUTEENUM_Tcpl, + XFA_ATTRIBUTEENUM_Text, + XFA_ATTRIBUTEENUM_Grouping, + XFA_ATTRIBUTEENUM_SecureSymbol, + XFA_ATTRIBUTEENUM_PreExecute, + XFA_ATTRIBUTEENUM_DocClose, + XFA_ATTRIBUTEENUM_Keyset, + XFA_ATTRIBUTEENUM_Vertical, + XFA_ATTRIBUTEENUM_PreSave, + XFA_ATTRIBUTEENUM_PreSign, + XFA_ATTRIBUTEENUM_Bottom, + XFA_ATTRIBUTEENUM_ToTop, + XFA_ATTRIBUTEENUM_Verify, + XFA_ATTRIBUTEENUM_First, + XFA_ATTRIBUTEENUM_ContentArea, + XFA_ATTRIBUTEENUM_Solid, + XFA_ATTRIBUTEENUM_Pessimistic, + XFA_ATTRIBUTEENUM_DuplexPaginated, + XFA_ATTRIBUTEENUM_Round, + XFA_ATTRIBUTEENUM_Remerge, + XFA_ATTRIBUTEENUM_Ordered, + XFA_ATTRIBUTEENUM_Percent, + XFA_ATTRIBUTEENUM_Even, + XFA_ATTRIBUTEENUM_Exit, + XFA_ATTRIBUTEENUM_ToolTip, + XFA_ATTRIBUTEENUM_OrderedOccurrence, + XFA_ATTRIBUTEENUM_ReadOnly, + XFA_ATTRIBUTEENUM_Currency, + XFA_ATTRIBUTEENUM_Concat, + XFA_ATTRIBUTEENUM_Thai, + XFA_ATTRIBUTEENUM_Embossed, + XFA_ATTRIBUTEENUM_Formdata, + XFA_ATTRIBUTEENUM_Greek, + XFA_ATTRIBUTEENUM_Decimal, + XFA_ATTRIBUTEENUM_Select, + XFA_ATTRIBUTEENUM_LongEdge, + XFA_ATTRIBUTEENUM_Protected, + XFA_ATTRIBUTEENUM_BottomRight, + XFA_ATTRIBUTEENUM_Zero, + XFA_ATTRIBUTEENUM_ForwardOnly, + XFA_ATTRIBUTEENUM_DocReady, + XFA_ATTRIBUTEENUM_Hidden, + XFA_ATTRIBUTEENUM_Include, + XFA_ATTRIBUTEENUM_Dashed, + XFA_ATTRIBUTEENUM_MultiSelect, + XFA_ATTRIBUTEENUM_Inactive, + XFA_ATTRIBUTEENUM_Embed, + XFA_ATTRIBUTEENUM_Static, + XFA_ATTRIBUTEENUM_OnEntry, + XFA_ATTRIBUTEENUM_Cyrillic, + XFA_ATTRIBUTEENUM_NonBlank, + XFA_ATTRIBUTEENUM_TopRight, + XFA_ATTRIBUTEENUM_Hebrew, + XFA_ATTRIBUTEENUM_TopLeft, + XFA_ATTRIBUTEENUM_Center, + XFA_ATTRIBUTEENUM_MoveFirst, + XFA_ATTRIBUTEENUM_Diamond, + XFA_ATTRIBUTEENUM_PageOdd, + XFA_ATTRIBUTEENUM_1mod10, + XFA_ATTRIBUTEENUM_Korean, + XFA_ATTRIBUTEENUM_AboveEmbedded, + XFA_ATTRIBUTEENUM_ZipCompress, + XFA_ATTRIBUTEENUM_Numeric, + XFA_ATTRIBUTEENUM_Circle, + XFA_ATTRIBUTEENUM_ToBottom, + XFA_ATTRIBUTEENUM_Inverted, + XFA_ATTRIBUTEENUM_Update, + XFA_ATTRIBUTEENUM_Isoname, + XFA_ATTRIBUTEENUM_Server, + XFA_ATTRIBUTEENUM_Position, + XFA_ATTRIBUTEENUM_MiddleCenter, + XFA_ATTRIBUTEENUM_Optional, + XFA_ATTRIBUTEENUM_UsePrinterSetting, + XFA_ATTRIBUTEENUM_Outline, + XFA_ATTRIBUTEENUM_IndexChange, + XFA_ATTRIBUTEENUM_Change, + XFA_ATTRIBUTEENUM_PageArea, + XFA_ATTRIBUTEENUM_Once, + XFA_ATTRIBUTEENUM_Only, + XFA_ATTRIBUTEENUM_Open, + XFA_ATTRIBUTEENUM_Caption, + XFA_ATTRIBUTEENUM_Raised, + XFA_ATTRIBUTEENUM_Justify, + XFA_ATTRIBUTEENUM_RefAndDescendants, + XFA_ATTRIBUTEENUM_Short, + XFA_ATTRIBUTEENUM_PageFront, + XFA_ATTRIBUTEENUM_Monospace, + XFA_ATTRIBUTEENUM_Middle, + XFA_ATTRIBUTEENUM_PrePrint, + XFA_ATTRIBUTEENUM_Always, + XFA_ATTRIBUTEENUM_Unknown, + XFA_ATTRIBUTEENUM_ToLeft, + XFA_ATTRIBUTEENUM_Above, + XFA_ATTRIBUTEENUM_DashDot, + XFA_ATTRIBUTEENUM_Gregorian, + XFA_ATTRIBUTEENUM_Roman, + XFA_ATTRIBUTEENUM_MouseDown, + XFA_ATTRIBUTEENUM_Symbol, + XFA_ATTRIBUTEENUM_PageEven, + XFA_ATTRIBUTEENUM_Sign, + XFA_ATTRIBUTEENUM_AddNew, + XFA_ATTRIBUTEENUM_Star, + XFA_ATTRIBUTEENUM_Optimistic, + XFA_ATTRIBUTEENUM_Rl_tb, + XFA_ATTRIBUTEENUM_MiddleRight, + XFA_ATTRIBUTEENUM_Maintain, + XFA_ATTRIBUTEENUM_Package, + XFA_ATTRIBUTEENUM_SimplifiedChinese, + XFA_ATTRIBUTEENUM_ToCenter, + XFA_ATTRIBUTEENUM_Back, + XFA_ATTRIBUTEENUM_Unspecified, + XFA_ATTRIBUTEENUM_BatchOptimistic, + XFA_ATTRIBUTEENUM_Bold, + XFA_ATTRIBUTEENUM_Both, + XFA_ATTRIBUTEENUM_Butt, + XFA_ATTRIBUTEENUM_Client, + XFA_ATTRIBUTEENUM_2mod10, + XFA_ATTRIBUTEENUM_ImageOnly, + XFA_ATTRIBUTEENUM_Horizontal, + XFA_ATTRIBUTEENUM_Dotted, + XFA_ATTRIBUTEENUM_UserControl, + XFA_ATTRIBUTEENUM_DiagonalRight, + XFA_ATTRIBUTEENUM_ConsumeData, + XFA_ATTRIBUTEENUM_Check, + XFA_ATTRIBUTEENUM_Data, + XFA_ATTRIBUTEENUM_Down, + XFA_ATTRIBUTEENUM_SansSerif, + XFA_ATTRIBUTEENUM_Inline, + XFA_ATTRIBUTEENUM_TraditionalChinese, + XFA_ATTRIBUTEENUM_Warn, + XFA_ATTRIBUTEENUM_RefOnly, + XFA_ATTRIBUTEENUM_InteractiveForms, + XFA_ATTRIBUTEENUM_Word, + XFA_ATTRIBUTEENUM_Unordered, + XFA_ATTRIBUTEENUM_Required, + XFA_ATTRIBUTEENUM_ImportOnly, + XFA_ATTRIBUTEENUM_BelowEmbedded, + XFA_ATTRIBUTEENUM_Japanese, + XFA_ATTRIBUTEENUM_Full, + XFA_ATTRIBUTEENUM_Rl_row, + XFA_ATTRIBUTEENUM_Vietnamese, + XFA_ATTRIBUTEENUM_EastEuropeanRoman, + XFA_ATTRIBUTEENUM_MouseUp, + XFA_ATTRIBUTEENUM_ExportOnly, + XFA_ATTRIBUTEENUM_Clear, + XFA_ATTRIBUTEENUM_Click, + XFA_ATTRIBUTEENUM_Base64, + XFA_ATTRIBUTEENUM_Close, + XFA_ATTRIBUTEENUM_Host, + XFA_ATTRIBUTEENUM_Global, + XFA_ATTRIBUTEENUM_Blank, + XFA_ATTRIBUTEENUM_Table, + XFA_ATTRIBUTEENUM_Import, + XFA_ATTRIBUTEENUM_Custom, + XFA_ATTRIBUTEENUM_MiddleLeft, + XFA_ATTRIBUTEENUM_PostExecute, + XFA_ATTRIBUTEENUM_Radix, + XFA_ATTRIBUTEENUM_PostOpen, + XFA_ATTRIBUTEENUM_Enter, + XFA_ATTRIBUTEENUM_Ignore, + XFA_ATTRIBUTEENUM_Lr_tb, + XFA_ATTRIBUTEENUM_Fantasy, + XFA_ATTRIBUTEENUM_Italic, + XFA_ATTRIBUTEENUM_Author, + XFA_ATTRIBUTEENUM_ToEdge, + XFA_ATTRIBUTEENUM_Choice, + XFA_ATTRIBUTEENUM_Disabled, + XFA_ATTRIBUTEENUM_CrossHatch, + XFA_ATTRIBUTEENUM_DataRef, + XFA_ATTRIBUTEENUM_DashDotDot, + XFA_ATTRIBUTEENUM_Square, + XFA_ATTRIBUTEENUM_Dynamic, + XFA_ATTRIBUTEENUM_Manual, + XFA_ATTRIBUTEENUM_Etched, + XFA_ATTRIBUTEENUM_ValidationState, + XFA_ATTRIBUTEENUM_Cursive, + XFA_ATTRIBUTEENUM_Last, + XFA_ATTRIBUTEENUM_Left, + XFA_ATTRIBUTEENUM_Link, + XFA_ATTRIBUTEENUM_Long, + XFA_ATTRIBUTEENUM_InternationalCarrier, + XFA_ATTRIBUTEENUM_PDF1_3, + XFA_ATTRIBUTEENUM_PDF1_6, + XFA_ATTRIBUTEENUM_Serif, + XFA_ATTRIBUTEENUM_PostSave, + XFA_ATTRIBUTEENUM_Ready, + XFA_ATTRIBUTEENUM_PostSign, + XFA_ATTRIBUTEENUM_Arabic, + XFA_ATTRIBUTEENUM_Error, + XFA_ATTRIBUTEENUM_Urlencoded, + XFA_ATTRIBUTEENUM_Lowered, +}; +enum XFA_ATTRIBUTE { + XFA_ATTRIBUTE_H, + XFA_ATTRIBUTE_W, + XFA_ATTRIBUTE_X, + XFA_ATTRIBUTE_Y, + XFA_ATTRIBUTE_Id, + XFA_ATTRIBUTE_To, + XFA_ATTRIBUTE_LineThrough, + XFA_ATTRIBUTE_HAlign, + XFA_ATTRIBUTE_Typeface, + XFA_ATTRIBUTE_BeforeTarget, + XFA_ATTRIBUTE_Name, + XFA_ATTRIBUTE_Next, + XFA_ATTRIBUTE_DataRowCount, + XFA_ATTRIBUTE_Break, + XFA_ATTRIBUTE_VScrollPolicy, + XFA_ATTRIBUTE_FontHorizontalScale, + XFA_ATTRIBUTE_TextIndent, + XFA_ATTRIBUTE_Context, + XFA_ATTRIBUTE_TrayOut, + XFA_ATTRIBUTE_Cap, + XFA_ATTRIBUTE_Max, + XFA_ATTRIBUTE_Min, + XFA_ATTRIBUTE_Ref, + XFA_ATTRIBUTE_Rid, + XFA_ATTRIBUTE_Url, + XFA_ATTRIBUTE_Use, + XFA_ATTRIBUTE_LeftInset, + XFA_ATTRIBUTE_Widows, + XFA_ATTRIBUTE_Level, + XFA_ATTRIBUTE_BottomInset, + XFA_ATTRIBUTE_OverflowTarget, + XFA_ATTRIBUTE_AllowMacro, + XFA_ATTRIBUTE_PagePosition, + XFA_ATTRIBUTE_ColumnWidths, + XFA_ATTRIBUTE_OverflowLeader, + XFA_ATTRIBUTE_Action, + XFA_ATTRIBUTE_NonRepudiation, + XFA_ATTRIBUTE_Rate, + XFA_ATTRIBUTE_AllowRichText, + XFA_ATTRIBUTE_Role, + XFA_ATTRIBUTE_OverflowTrailer, + XFA_ATTRIBUTE_Operation, + XFA_ATTRIBUTE_Timeout, + XFA_ATTRIBUTE_TopInset, + XFA_ATTRIBUTE_Access, + XFA_ATTRIBUTE_CommandType, + XFA_ATTRIBUTE_Format, + XFA_ATTRIBUTE_DataPrep, + XFA_ATTRIBUTE_WidgetData, + XFA_ATTRIBUTE_Abbr, + XFA_ATTRIBUTE_MarginRight, + XFA_ATTRIBUTE_DataDescription, + XFA_ATTRIBUTE_EncipherOnly, + XFA_ATTRIBUTE_KerningMode, + XFA_ATTRIBUTE_Rotate, + XFA_ATTRIBUTE_WordCharacterCount, + XFA_ATTRIBUTE_Type, + XFA_ATTRIBUTE_Reserve, + XFA_ATTRIBUTE_TextLocation, + XFA_ATTRIBUTE_Priority, + XFA_ATTRIBUTE_Underline, + XFA_ATTRIBUTE_ModuleWidth, + XFA_ATTRIBUTE_Hyphenate, + XFA_ATTRIBUTE_Listen, + XFA_ATTRIBUTE_Delimiter, + XFA_ATTRIBUTE_ContentType, + XFA_ATTRIBUTE_StartNew, + XFA_ATTRIBUTE_EofAction, + XFA_ATTRIBUTE_AllowNeutral, + XFA_ATTRIBUTE_Connection, + XFA_ATTRIBUTE_BaselineShift, + XFA_ATTRIBUTE_OverlinePeriod, + XFA_ATTRIBUTE_FracDigits, + XFA_ATTRIBUTE_Orientation, + XFA_ATTRIBUTE_TimeStamp, + XFA_ATTRIBUTE_PrintCheckDigit, + XFA_ATTRIBUTE_MarginLeft, + XFA_ATTRIBUTE_Stroke, + XFA_ATTRIBUTE_ModuleHeight, + XFA_ATTRIBUTE_TransferEncoding, + XFA_ATTRIBUTE_Usage, + XFA_ATTRIBUTE_Presence, + XFA_ATTRIBUTE_RadixOffset, + XFA_ATTRIBUTE_Preserve, + XFA_ATTRIBUTE_AliasNode, + XFA_ATTRIBUTE_MultiLine, + XFA_ATTRIBUTE_Version, + XFA_ATTRIBUTE_StartChar, + XFA_ATTRIBUTE_ScriptTest, + XFA_ATTRIBUTE_StartAngle, + XFA_ATTRIBUTE_CursorType, + XFA_ATTRIBUTE_DigitalSignature, + XFA_ATTRIBUTE_CodeType, + XFA_ATTRIBUTE_Output, + XFA_ATTRIBUTE_BookendTrailer, + XFA_ATTRIBUTE_ImagingBBox, + XFA_ATTRIBUTE_ExcludeInitialCap, + XFA_ATTRIBUTE_Force, + XFA_ATTRIBUTE_CrlSign, + XFA_ATTRIBUTE_Previous, + XFA_ATTRIBUTE_PushCharacterCount, + XFA_ATTRIBUTE_NullTest, + XFA_ATTRIBUTE_RunAt, + XFA_ATTRIBUTE_SpaceBelow, + XFA_ATTRIBUTE_SweepAngle, + XFA_ATTRIBUTE_NumberOfCells, + XFA_ATTRIBUTE_LetterSpacing, + XFA_ATTRIBUTE_LockType, + XFA_ATTRIBUTE_PasswordChar, + XFA_ATTRIBUTE_VAlign, + XFA_ATTRIBUTE_SourceBelow, + XFA_ATTRIBUTE_Inverted, + XFA_ATTRIBUTE_Mark, + XFA_ATTRIBUTE_MaxH, + XFA_ATTRIBUTE_MaxW, + XFA_ATTRIBUTE_Truncate, + XFA_ATTRIBUTE_MinH, + XFA_ATTRIBUTE_MinW, + XFA_ATTRIBUTE_Initial, + XFA_ATTRIBUTE_Mode, + XFA_ATTRIBUTE_Layout, + XFA_ATTRIBUTE_Server, + XFA_ATTRIBUTE_EmbedPDF, + XFA_ATTRIBUTE_OddOrEven, + XFA_ATTRIBUTE_TabDefault, + XFA_ATTRIBUTE_Contains, + XFA_ATTRIBUTE_RightInset, + XFA_ATTRIBUTE_MaxChars, + XFA_ATTRIBUTE_Open, + XFA_ATTRIBUTE_Relation, + XFA_ATTRIBUTE_WideNarrowRatio, + XFA_ATTRIBUTE_Relevant, + XFA_ATTRIBUTE_SignatureType, + XFA_ATTRIBUTE_LineThroughPeriod, + XFA_ATTRIBUTE_Shape, + XFA_ATTRIBUTE_TabStops, + XFA_ATTRIBUTE_OutputBelow, + XFA_ATTRIBUTE_Short, + XFA_ATTRIBUTE_FontVerticalScale, + XFA_ATTRIBUTE_Thickness, + XFA_ATTRIBUTE_CommitOn, + XFA_ATTRIBUTE_RemainCharacterCount, + XFA_ATTRIBUTE_KeyAgreement, + XFA_ATTRIBUTE_ErrorCorrectionLevel, + XFA_ATTRIBUTE_UpsMode, + XFA_ATTRIBUTE_MergeMode, + XFA_ATTRIBUTE_Circular, + XFA_ATTRIBUTE_PsName, + XFA_ATTRIBUTE_Trailer, + XFA_ATTRIBUTE_UnicodeRange, + XFA_ATTRIBUTE_ExecuteType, + XFA_ATTRIBUTE_DuplexImposition, + XFA_ATTRIBUTE_TrayIn, + XFA_ATTRIBUTE_BindingNode, + XFA_ATTRIBUTE_BofAction, + XFA_ATTRIBUTE_Save, + XFA_ATTRIBUTE_TargetType, + XFA_ATTRIBUTE_KeyEncipherment, + XFA_ATTRIBUTE_CredentialServerPolicy, + XFA_ATTRIBUTE_Size, + XFA_ATTRIBUTE_InitialNumber, + XFA_ATTRIBUTE_Slope, + XFA_ATTRIBUTE_CSpace, + XFA_ATTRIBUTE_ColSpan, + XFA_ATTRIBUTE_Binding, + XFA_ATTRIBUTE_Checksum, + XFA_ATTRIBUTE_CharEncoding, + XFA_ATTRIBUTE_Bind, + XFA_ATTRIBUTE_TextEntry, + XFA_ATTRIBUTE_Archive, + XFA_ATTRIBUTE_Uuid, + XFA_ATTRIBUTE_Posture, + XFA_ATTRIBUTE_After, + XFA_ATTRIBUTE_Orphans, + XFA_ATTRIBUTE_QualifiedName, + XFA_ATTRIBUTE_Usehref, + XFA_ATTRIBUTE_Locale, + XFA_ATTRIBUTE_Weight, + XFA_ATTRIBUTE_UnderlinePeriod, + XFA_ATTRIBUTE_Data, + XFA_ATTRIBUTE_Desc, + XFA_ATTRIBUTE_Numbered, + XFA_ATTRIBUTE_DataColumnCount, + XFA_ATTRIBUTE_Overline, + XFA_ATTRIBUTE_UrlPolicy, + XFA_ATTRIBUTE_AnchorType, + XFA_ATTRIBUTE_LabelRef, + XFA_ATTRIBUTE_BookendLeader, + XFA_ATTRIBUTE_MaxLength, + XFA_ATTRIBUTE_AccessKey, + XFA_ATTRIBUTE_CursorLocation, + XFA_ATTRIBUTE_DelayedOpen, + XFA_ATTRIBUTE_Target, + XFA_ATTRIBUTE_DataEncipherment, + XFA_ATTRIBUTE_AfterTarget, + XFA_ATTRIBUTE_Leader, + XFA_ATTRIBUTE_Picker, + XFA_ATTRIBUTE_From, + XFA_ATTRIBUTE_BaseProfile, + XFA_ATTRIBUTE_Aspect, + XFA_ATTRIBUTE_RowColumnRatio, + XFA_ATTRIBUTE_LineHeight, + XFA_ATTRIBUTE_Highlight, + XFA_ATTRIBUTE_ValueRef, + XFA_ATTRIBUTE_MaxEntries, + XFA_ATTRIBUTE_DataLength, + XFA_ATTRIBUTE_Activity, + XFA_ATTRIBUTE_Input, + XFA_ATTRIBUTE_Value, + XFA_ATTRIBUTE_BlankOrNotBlank, + XFA_ATTRIBUTE_AddRevocationInfo, + XFA_ATTRIBUTE_GenericFamily, + XFA_ATTRIBUTE_Hand, + XFA_ATTRIBUTE_Href, + XFA_ATTRIBUTE_TextEncoding, + XFA_ATTRIBUTE_LeadDigits, + XFA_ATTRIBUTE_Permissions, + XFA_ATTRIBUTE_SpaceAbove, + XFA_ATTRIBUTE_CodeBase, + XFA_ATTRIBUTE_Stock, + XFA_ATTRIBUTE_IsNull, + XFA_ATTRIBUTE_RestoreState, + XFA_ATTRIBUTE_ExcludeAllCaps, + XFA_ATTRIBUTE_FormatTest, + XFA_ATTRIBUTE_HScrollPolicy, + XFA_ATTRIBUTE_Join, + XFA_ATTRIBUTE_KeyCertSign, + XFA_ATTRIBUTE_Radius, + XFA_ATTRIBUTE_SourceAbove, + XFA_ATTRIBUTE_Override, + XFA_ATTRIBUTE_ClassId, + XFA_ATTRIBUTE_Disable, + XFA_ATTRIBUTE_Scope, + XFA_ATTRIBUTE_Match, + XFA_ATTRIBUTE_Placement, + XFA_ATTRIBUTE_Before, + XFA_ATTRIBUTE_WritingScript, + XFA_ATTRIBUTE_EndChar, + XFA_ATTRIBUTE_Lock, + XFA_ATTRIBUTE_Long, + XFA_ATTRIBUTE_Intact, + XFA_ATTRIBUTE_XdpContent, + XFA_ATTRIBUTE_DecipherOnly, +}; +enum XFA_ELEMENT { + XFA_ELEMENT_Ps, + XFA_ELEMENT_To, + XFA_ELEMENT_Ui, + XFA_ELEMENT_RecordSet, + XFA_ELEMENT_SubsetBelow, + XFA_ELEMENT_SubformSet, + XFA_ELEMENT_AdobeExtensionLevel, + XFA_ELEMENT_Typeface, + XFA_ELEMENT_Break, + XFA_ELEMENT_FontInfo, + XFA_ELEMENT_NumberPattern, + XFA_ELEMENT_DynamicRender, + XFA_ELEMENT_PrintScaling, + XFA_ELEMENT_CheckButton, + XFA_ELEMENT_DatePatterns, + XFA_ELEMENT_SourceSet, + XFA_ELEMENT_Amd, + XFA_ELEMENT_Arc, + XFA_ELEMENT_Day, + XFA_ELEMENT_Era, + XFA_ELEMENT_Jog, + XFA_ELEMENT_Log, + XFA_ELEMENT_Map, + XFA_ELEMENT_Mdp, + XFA_ELEMENT_BreakBefore, + XFA_ELEMENT_Oid, + XFA_ELEMENT_Pcl, + XFA_ELEMENT_Pdf, + XFA_ELEMENT_Ref, + XFA_ELEMENT_Uri, + XFA_ELEMENT_Xdc, + XFA_ELEMENT_Xdp, + XFA_ELEMENT_Xfa, + XFA_ELEMENT_Xsl, + XFA_ELEMENT_Zpl, + XFA_ELEMENT_Cache, + XFA_ELEMENT_Margin, + XFA_ELEMENT_KeyUsage, + XFA_ELEMENT_Exclude, + XFA_ELEMENT_ChoiceList, + XFA_ELEMENT_Level, + XFA_ELEMENT_LabelPrinter, + XFA_ELEMENT_CalendarSymbols, + XFA_ELEMENT_Para, + XFA_ELEMENT_Part, + XFA_ELEMENT_Pdfa, + XFA_ELEMENT_Filter, + XFA_ELEMENT_Present, + XFA_ELEMENT_Pagination, + XFA_ELEMENT_Encoding, + XFA_ELEMENT_Event, + XFA_ELEMENT_Whitespace, + XFA_ELEMENT_DefaultUi, + XFA_ELEMENT_DataModel, + XFA_ELEMENT_Barcode, + XFA_ELEMENT_TimePattern, + XFA_ELEMENT_BatchOutput, + XFA_ELEMENT_Enforce, + XFA_ELEMENT_CurrencySymbols, + XFA_ELEMENT_AddSilentPrint, + XFA_ELEMENT_Rename, + XFA_ELEMENT_Operation, + XFA_ELEMENT_Typefaces, + XFA_ELEMENT_SubjectDNs, + XFA_ELEMENT_Issuers, + XFA_ELEMENT_SignaturePseudoModel, + XFA_ELEMENT_WsdlConnection, + XFA_ELEMENT_Debug, + XFA_ELEMENT_Delta, + XFA_ELEMENT_EraNames, + XFA_ELEMENT_ModifyAnnots, + XFA_ELEMENT_StartNode, + XFA_ELEMENT_Button, + XFA_ELEMENT_Format, + XFA_ELEMENT_Border, + XFA_ELEMENT_Area, + XFA_ELEMENT_Hyphenation, + XFA_ELEMENT_Text, + XFA_ELEMENT_Time, + XFA_ELEMENT_Type, + XFA_ELEMENT_Overprint, + XFA_ELEMENT_Certificates, + XFA_ELEMENT_EncryptionMethods, + XFA_ELEMENT_SetProperty, + XFA_ELEMENT_PrinterName, + XFA_ELEMENT_StartPage, + XFA_ELEMENT_PageOffset, + XFA_ELEMENT_DateTime, + XFA_ELEMENT_Comb, + XFA_ELEMENT_Pattern, + XFA_ELEMENT_IfEmpty, + XFA_ELEMENT_SuppressBanner, + XFA_ELEMENT_OutputBin, + XFA_ELEMENT_Field, + XFA_ELEMENT_Agent, + XFA_ELEMENT_OutputXSL, + XFA_ELEMENT_AdjustData, + XFA_ELEMENT_AutoSave, + XFA_ELEMENT_ContentArea, + XFA_ELEMENT_EventPseudoModel, + XFA_ELEMENT_WsdlAddress, + XFA_ELEMENT_Solid, + XFA_ELEMENT_DateTimeSymbols, + XFA_ELEMENT_EncryptionLevel, + XFA_ELEMENT_Edge, + XFA_ELEMENT_Stipple, + XFA_ELEMENT_Attributes, + XFA_ELEMENT_VersionControl, + XFA_ELEMENT_Meridiem, + XFA_ELEMENT_ExclGroup, + XFA_ELEMENT_ToolTip, + XFA_ELEMENT_Compress, + XFA_ELEMENT_Reason, + XFA_ELEMENT_Execute, + XFA_ELEMENT_ContentCopy, + XFA_ELEMENT_DateTimeEdit, + XFA_ELEMENT_Config, + XFA_ELEMENT_Image, + XFA_ELEMENT_SharpxHTML, + XFA_ELEMENT_NumberOfCopies, + XFA_ELEMENT_BehaviorOverride, + XFA_ELEMENT_TimeStamp, + XFA_ELEMENT_Month, + XFA_ELEMENT_ViewerPreferences, + XFA_ELEMENT_ScriptModel, + XFA_ELEMENT_Decimal, + XFA_ELEMENT_Subform, + XFA_ELEMENT_Select, + XFA_ELEMENT_Window, + XFA_ELEMENT_LocaleSet, + XFA_ELEMENT_Handler, + XFA_ELEMENT_HostPseudoModel, + XFA_ELEMENT_Presence, + XFA_ELEMENT_Record, + XFA_ELEMENT_Embed, + XFA_ELEMENT_Version, + XFA_ELEMENT_Command, + XFA_ELEMENT_Copies, + XFA_ELEMENT_Staple, + XFA_ELEMENT_SubmitFormat, + XFA_ELEMENT_Boolean, + XFA_ELEMENT_Message, + XFA_ELEMENT_Output, + XFA_ELEMENT_PsMap, + XFA_ELEMENT_ExcludeNS, + XFA_ELEMENT_Assist, + XFA_ELEMENT_Picture, + XFA_ELEMENT_Traversal, + XFA_ELEMENT_SilentPrint, + XFA_ELEMENT_WebClient, + XFA_ELEMENT_LayoutPseudoModel, + XFA_ELEMENT_Producer, + XFA_ELEMENT_Corner, + XFA_ELEMENT_MsgId, + XFA_ELEMENT_Color, + XFA_ELEMENT_Keep, + XFA_ELEMENT_Query, + XFA_ELEMENT_Insert, + XFA_ELEMENT_ImageEdit, + XFA_ELEMENT_Validate, + XFA_ELEMENT_DigestMethods, + XFA_ELEMENT_NumberPatterns, + XFA_ELEMENT_PageSet, + XFA_ELEMENT_Integer, + XFA_ELEMENT_SoapAddress, + XFA_ELEMENT_Equate, + XFA_ELEMENT_FormFieldFilling, + XFA_ELEMENT_PageRange, + XFA_ELEMENT_Update, + XFA_ELEMENT_ConnectString, + XFA_ELEMENT_Mode, + XFA_ELEMENT_Layout, + XFA_ELEMENT_Sharpxml, + XFA_ELEMENT_XsdConnection, + XFA_ELEMENT_Traverse, + XFA_ELEMENT_Encodings, + XFA_ELEMENT_Template, + XFA_ELEMENT_Acrobat, + XFA_ELEMENT_ValidationMessaging, + XFA_ELEMENT_Signing, + XFA_ELEMENT_DataWindow, + XFA_ELEMENT_Script, + XFA_ELEMENT_AddViewerPreferences, + XFA_ELEMENT_AlwaysEmbed, + XFA_ELEMENT_PasswordEdit, + XFA_ELEMENT_NumericEdit, + XFA_ELEMENT_EncryptionMethod, + XFA_ELEMENT_Change, + XFA_ELEMENT_PageArea, + XFA_ELEMENT_SubmitUrl, + XFA_ELEMENT_Oids, + XFA_ELEMENT_Signature, + XFA_ELEMENT_ADBE_JSConsole, + XFA_ELEMENT_Caption, + XFA_ELEMENT_Relevant, + XFA_ELEMENT_FlipLabel, + XFA_ELEMENT_ExData, + XFA_ELEMENT_DayNames, + XFA_ELEMENT_SoapAction, + XFA_ELEMENT_DefaultTypeface, + XFA_ELEMENT_Manifest, + XFA_ELEMENT_Overflow, + XFA_ELEMENT_Linear, + XFA_ELEMENT_CurrencySymbol, + XFA_ELEMENT_Delete, + XFA_ELEMENT_Deltas, + XFA_ELEMENT_DigestMethod, + XFA_ELEMENT_InstanceManager, + XFA_ELEMENT_EquateRange, + XFA_ELEMENT_Medium, + XFA_ELEMENT_TextEdit, + XFA_ELEMENT_TemplateCache, + XFA_ELEMENT_CompressObjectStream, + XFA_ELEMENT_DataValue, + XFA_ELEMENT_AccessibleContent, + XFA_ELEMENT_NodeList, + XFA_ELEMENT_IncludeXDPContent, + XFA_ELEMENT_XmlConnection, + XFA_ELEMENT_ValidateApprovalSignatures, + XFA_ELEMENT_SignData, + XFA_ELEMENT_Packets, + XFA_ELEMENT_DatePattern, + XFA_ELEMENT_DuplexOption, + XFA_ELEMENT_Base, + XFA_ELEMENT_Bind, + XFA_ELEMENT_Compression, + XFA_ELEMENT_User, + XFA_ELEMENT_Rectangle, + XFA_ELEMENT_EffectiveOutputPolicy, + XFA_ELEMENT_ADBE_JSDebugger, + XFA_ELEMENT_Acrobat7, + XFA_ELEMENT_Interactive, + XFA_ELEMENT_Locale, + XFA_ELEMENT_CurrentPage, + XFA_ELEMENT_Data, + XFA_ELEMENT_Date, + XFA_ELEMENT_Desc, + XFA_ELEMENT_Encrypt, + XFA_ELEMENT_Draw, + XFA_ELEMENT_Encryption, + XFA_ELEMENT_MeridiemNames, + XFA_ELEMENT_Messaging, + XFA_ELEMENT_Speak, + XFA_ELEMENT_DataGroup, + XFA_ELEMENT_Common, + XFA_ELEMENT_Sharptext, + XFA_ELEMENT_PaginationOverride, + XFA_ELEMENT_Reasons, + XFA_ELEMENT_SignatureProperties, + XFA_ELEMENT_Threshold, + XFA_ELEMENT_AppearanceFilter, + XFA_ELEMENT_Fill, + XFA_ELEMENT_Font, + XFA_ELEMENT_Form, + XFA_ELEMENT_MediumInfo, + XFA_ELEMENT_Certificate, + XFA_ELEMENT_Password, + XFA_ELEMENT_RunScripts, + XFA_ELEMENT_Trace, + XFA_ELEMENT_Float, + XFA_ELEMENT_RenderPolicy, + XFA_ELEMENT_LogPseudoModel, + XFA_ELEMENT_Destination, + XFA_ELEMENT_Value, + XFA_ELEMENT_Bookend, + XFA_ELEMENT_ExObject, + XFA_ELEMENT_OpenAction, + XFA_ELEMENT_NeverEmbed, + XFA_ELEMENT_BindItems, + XFA_ELEMENT_Calculate, + XFA_ELEMENT_Print, + XFA_ELEMENT_Extras, + XFA_ELEMENT_Proto, + XFA_ELEMENT_DSigData, + XFA_ELEMENT_Creator, + XFA_ELEMENT_Connect, + XFA_ELEMENT_Permissions, + XFA_ELEMENT_ConnectionSet, + XFA_ELEMENT_Submit, + XFA_ELEMENT_Range, + XFA_ELEMENT_Linearized, + XFA_ELEMENT_Packet, + XFA_ELEMENT_RootElement, + XFA_ELEMENT_PlaintextMetadata, + XFA_ELEMENT_NumberSymbols, + XFA_ELEMENT_PrintHighQuality, + XFA_ELEMENT_Driver, + XFA_ELEMENT_IncrementalLoad, + XFA_ELEMENT_SubjectDN, + XFA_ELEMENT_CompressLogicalStructure, + XFA_ELEMENT_IncrementalMerge, + XFA_ELEMENT_Radial, + XFA_ELEMENT_Variables, + XFA_ELEMENT_TimePatterns, + XFA_ELEMENT_EffectiveInputPolicy, + XFA_ELEMENT_NameAttr, + XFA_ELEMENT_Conformance, + XFA_ELEMENT_Transform, + XFA_ELEMENT_LockDocument, + XFA_ELEMENT_BreakAfter, + XFA_ELEMENT_Line, + XFA_ELEMENT_List, + XFA_ELEMENT_Source, + XFA_ELEMENT_Occur, + XFA_ELEMENT_PickTrayByPDFSize, + XFA_ELEMENT_MonthNames, + XFA_ELEMENT_Severity, + XFA_ELEMENT_GroupParent, + XFA_ELEMENT_DocumentAssembly, + XFA_ELEMENT_NumberSymbol, + XFA_ELEMENT_Tagged, + XFA_ELEMENT_Items, +}; +#define XFA_ELEMENT_UNKNOWN ((XFA_ELEMENT)-1) +typedef struct _XFA_ELEMENTINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_ELEMENT eName; + FX_DWORD dwPackets; + FX_DWORD eObjectType; +} XFA_ELEMENTINFO, *XFA_LPELEMENTINFO; +typedef XFA_ELEMENTINFO const* XFA_LPCELEMENTINFO; +int32_t XFA_GetElementCount(); +XFA_LPCELEMENTINFO XFA_GetElementByName(const CFX_WideStringC& wsName); +XFA_LPCELEMENTINFO XFA_GetElementByID(XFA_ELEMENT eName); +enum XFA_ATTRIBUTETYPE { + XFA_ATTRIBUTETYPE_NOTSURE, + XFA_ATTRIBUTETYPE_Enum, + XFA_ATTRIBUTETYPE_Cdata, + XFA_ATTRIBUTETYPE_Boolean, + XFA_ATTRIBUTETYPE_Integer, + XFA_ATTRIBUTETYPE_Measure, +}; +typedef struct _XFA_ATTRIBUTEINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_ATTRIBUTE eName; + XFA_ATTRIBUTETYPE eType; + FX_DWORD dwPackets; + void* pDefValue; +} XFA_ATTRIBUTEINFO, *XFA_LPATTRIBUTEINFO; +typedef XFA_ATTRIBUTEINFO const* XFA_LPCATTRIBUTEINFO; +int32_t XFA_GetAttributeCount(); +XFA_LPCATTRIBUTEINFO XFA_GetAttributeByName(const CFX_WideStringC& wsName); +XFA_LPCATTRIBUTEINFO XFA_GetAttributeByID(XFA_ATTRIBUTE eName); +FX_BOOL XFA_GetAttributeDefaultValue(void*& pValue, + XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + XFA_ATTRIBUTETYPE eType, + FX_DWORD dwPacket); +XFA_ATTRIBUTEENUM XFA_GetAttributeDefaultValue_Enum(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +CFX_WideStringC XFA_GetAttributeDefaultValue_Cdata(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +FX_BOOL XFA_GetAttributeDefaultValue_Boolean(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +int32_t XFA_GetAttributeDefaultValue_Integer(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +CXFA_Measurement XFA_GetAttributeDefaultValue_Measure(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +typedef struct _XFA_ELEMENTHIERARCHY { + FX_WORD wStart; + FX_WORD wCount; + FX_WORD wParentIndex; +} XFA_ELEMENTHIERARCHY, *XFA_LPELEMENTHIERARCHY; +typedef XFA_ELEMENTHIERARCHY const* XFA_LPCELEMENTHIERARCHY; +typedef struct _XFA_SCRIPTHIERARCHY { + FX_WORD wMethodStart; + FX_WORD wMethodCount; + FX_WORD wAttributeStart; + FX_WORD wAttributeCount; + int16_t wParentIndex; +} XFA_SCRIPTHIERARCHY, *XFA_LPSCRIPTHIERARCHY; +typedef XFA_SCRIPTHIERARCHY const* XFA_LPCSCRIPTHIERARCHY; +const FX_WORD* XFA_GetElementChildren(XFA_ELEMENT eElement, int32_t& iCount); +const uint8_t* XFA_GetElementAttributes(XFA_ELEMENT eElement, int32_t& iCount); +XFA_LPCELEMENTINFO XFA_GetChildOfElement(XFA_ELEMENT eElement, + XFA_ELEMENT eChild, + FX_DWORD dwPacket); +XFA_LPCATTRIBUTEINFO XFA_GetAttributeOfElement(XFA_ELEMENT eElement, + XFA_ATTRIBUTE eAttribute, + FX_DWORD dwPacket); +#define XFA_PROPERTYFLAG_OneOf 0x01 +#define XFA_PROPERTYFLAG_DefaultOneOf 0x02 +typedef struct _XFA_PROPERTY { + FX_WORD eName; + uint8_t uOccur; + uint8_t uFlags; +} XFA_PROPERTY, *XFA_LPPROPERTY; +typedef XFA_PROPERTY const* XFA_LPCPROPERTY; +XFA_LPCPROPERTY XFA_GetElementProperties(XFA_ELEMENT eElement, int32_t& iCount); +XFA_LPCPROPERTY XFA_GetPropertyOfElement(XFA_ELEMENT eElement, + XFA_ELEMENT eProperty, + FX_DWORD dwPacket); +typedef struct _XFA_ATTRIBUTEENUMINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_ATTRIBUTEENUM eName; +} XFA_ATTRIBUTEENUMINFO, *XFA_LPATTRIBUTEENUMINFO; +typedef XFA_ATTRIBUTEENUMINFO const* XFA_LPCATTRIBUTEENUMINFO; +XFA_LPCATTRIBUTEENUMINFO XFA_GetAttributeEnumByName( + const CFX_WideStringC& wsName); +XFA_LPCATTRIBUTEENUMINFO XFA_GetAttributeEnumByID(XFA_ATTRIBUTEENUM eName); +enum XFA_UNIT { + XFA_UNIT_Unknown, + XFA_UNIT_Percent, + XFA_UNIT_Angle, + XFA_UNIT_Em, + XFA_UNIT_Pt, + XFA_UNIT_In, + XFA_UNIT_Pc, + XFA_UNIT_Cm, + XFA_UNIT_Mm, + XFA_UNIT_Mp, +}; +class CXFA_Measurement { + public: + void Set(const CFX_WideStringC& wsMeasure); + void Set(FX_FLOAT fValue, XFA_UNIT eUnit) { + m_fValue = fValue; + m_eUnit = eUnit; + } + + XFA_UNIT GetUnit() const { return m_eUnit; } + FX_FLOAT GetValue() const { return m_fValue; } + FX_BOOL ToString(CFX_WideString& wsMeasure) const; + FX_BOOL ToUnit(XFA_UNIT eUnit, FX_FLOAT& fValue) const; + FX_FLOAT ToUnit(XFA_UNIT eUnit) const { + FX_FLOAT f; + return ToUnit(eUnit, f) ? f : 0; + } + CXFA_Measurement() { Set(-1, XFA_UNIT_Unknown); } + CXFA_Measurement(const CFX_WideStringC& wsMeasure) { Set(wsMeasure); } + CXFA_Measurement(FX_FLOAT fValue, XFA_UNIT eUnit) { Set(fValue, eUnit); } + static XFA_UNIT GetUnit(const CFX_WideStringC& wsUnit); + + protected: + FX_FLOAT m_fValue; + XFA_UNIT m_eUnit; +}; +class CFXJSE_Arguments; +class CXFA_Object; +typedef void (CXFA_Object::*XFA_METHOD_CALLBACK)(CFXJSE_Arguments* pArguments); +typedef struct _XFA_METHODINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_METHOD_CALLBACK lpfnCallback; +} XFA_METHODINFO, *XFA_LPMETHODINFO; +typedef XFA_METHODINFO const* XFA_LPCMETHODINFO; +int32_t XFA_GetMethodCount(); +XFA_LPCMETHODINFO XFA_GetMethodByName(XFA_ELEMENT eElement, + const CFX_WideStringC& wsMethodName); +typedef void (CXFA_Object::*XFA_ATTRIBUTE_CALLBACK)(FXJSE_HVALUE hValue, + FX_BOOL bSetting, + XFA_ATTRIBUTE eAttribute); +enum XFA_SCRIPT_TYPE { + XFA_SCRIPT_Basic, + XFA_SCRIPT_Object, +}; +typedef struct _XFA_SCRIPTATTRIBUTEINFO { + uint32_t uHash; + const FX_WCHAR* pName; + XFA_ATTRIBUTE_CALLBACK lpfnCallback; + int32_t eAttribute; + FX_WORD eValueType; +} XFA_SCRIPTATTRIBUTEINFO, *XFA_LPSCRIPTATTRIBUTEINFO; +typedef XFA_SCRIPTATTRIBUTEINFO const* XFA_LPCSCRIPTATTRIBUTEINFO; +XFA_LPCSCRIPTATTRIBUTEINFO XFA_GetScriptAttributeByName( + XFA_ELEMENT eElement, + const CFX_WideStringC& wsAttributeName); +#endif diff --git a/xfa/include/fxfa/fxfa_objectacc.h b/xfa/include/fxfa/fxfa_objectacc.h index 897cb08f99..0c6be3d38a 100644 --- a/xfa/include/fxfa/fxfa_objectacc.h +++ b/xfa/include/fxfa/fxfa_objectacc.h @@ -1,848 +1,848 @@ -// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef FXFA_OBJECTACC_H_
-#define FXFA_OBJECTACC_H_
-
-#include "core/include/fxge/fx_dib.h" // For FX_ARGB.
-
-class CXFA_Node;
-class IFX_Locale;
-class CXFA_Data;
-class CXFA_Font;
-class CXFA_Fill;
-class CXFA_Margin;
-class CXFA_Caption;
-class CXFA_Para;
-class CXFA_Event;
-class CXFA_Script;
-class CXFA_Value;
-class CXFA_Calculate;
-class CXFA_Line;
-class CXFA_Text;
-class CXFA_ExData;
-class CXFA_Image;
-class CXFA_Validate;
-class CXFA_Variables;
-class CXFA_Bind;
-class CXFA_Assist;
-class CXFA_ToolTip;
-class CXFA_Keep;
-class CXFA_Submit;
-class CXFA_BindItems;
-class CXFA_Stroke;
-class CXFA_Corner;
-class CXFA_Edge;
-class CXFA_Box;
-class CXFA_Arc;
-class CXFA_Border;
-class CXFA_Rectangle;
-class CXFA_WidgetData;
-class CXFA_Occur;
-class CXFA_Filter;
-class CXFA_Certificate;
-class CXFA_WrapCertificate;
-class CXFA_Oids;
-class CXFA_SubjectDNs;
-class CXFA_DigestMethods;
-class CXFA_Encodings;
-class CXFA_EncryptionMethods;
-class CXFA_Reasons;
-class CXFA_Manifest;
-inline FX_BOOL XFA_IsSpace(FX_WCHAR c) {
- return (c == 0x20) || (c == 0x0d) || (c == 0x0a) || (c == 0x09);
-}
-inline FX_BOOL XFA_IsDigit(FX_WCHAR c) {
- return c >= '0' && c <= '9';
-}
-typedef CFX_ArrayTemplate<CXFA_Node*> CXFA_NodeArray;
-typedef CFX_ArrayTemplate<CXFA_Object*> CXFA_ObjArray;
-class CXFA_Data {
- public:
- CXFA_Data(CXFA_Node* pNode) : m_pNode(pNode) {}
- operator CXFA_Node*() const { return m_pNode; }
- CXFA_Node* GetNode() { return m_pNode; }
-
- FX_BOOL IsExistInXML() const { return m_pNode != NULL; }
-
- XFA_ELEMENT GetClassID() const;
-
- protected:
- FX_BOOL TryMeasure(XFA_ATTRIBUTE eAttr,
- FX_FLOAT& fValue,
- FX_BOOL bUseDefault = FALSE) const;
- FX_BOOL SetMeasure(XFA_ATTRIBUTE eAttr, FX_FLOAT fValue);
- CXFA_Node* m_pNode;
-};
-class CXFA_Fill : public CXFA_Data {
- public:
- CXFA_Fill(CXFA_Node* pNode);
- ~CXFA_Fill();
-
- int32_t GetPresence();
-
- FX_ARGB GetColor(FX_BOOL bText = FALSE);
-
- void SetColor(FX_ARGB color);
-
- int32_t GetFillType();
-
- int32_t GetPattern(FX_ARGB& foreColor);
-
- int32_t GetStipple(FX_ARGB& stippleColor);
-
- int32_t GetLinear(FX_ARGB& endColor);
-
- int32_t GetRadial(FX_ARGB& endColor);
- FX_BOOL SetPresence(int32_t iPresence);
- FX_BOOL SetFillType(int32_t iType);
- FX_BOOL SetPattern(int32_t iPattern, FX_ARGB foreColor);
- FX_BOOL SetStipple(int32_t iStipple, FX_ARGB stippleColor);
- FX_BOOL SetLinear(int32_t iLinear, FX_ARGB endColor);
- FX_BOOL SetRadial(int32_t iRadial, FX_ARGB endColor);
-};
-class CXFA_Margin : public CXFA_Data {
- public:
- CXFA_Margin(CXFA_Node* pNode);
- FX_BOOL GetLeftInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const;
- FX_BOOL GetTopInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const;
- FX_BOOL GetRightInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const;
- FX_BOOL GetBottomInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const;
- FX_BOOL SetLeftInset(FX_FLOAT fInset);
- FX_BOOL SetTopInset(FX_FLOAT fInset);
- FX_BOOL SetRightInset(FX_FLOAT fInset);
- FX_BOOL SetBottomInset(FX_FLOAT fInset);
-};
-class CXFA_Font : public CXFA_Data {
- public:
- CXFA_Font(CXFA_Node* pNode);
-
- FX_FLOAT GetBaselineShift();
-
- FX_FLOAT GetHorizontalScale();
-
- FX_FLOAT GetVerticalScale();
-
- FX_FLOAT GetLetterSpacing();
-
- int32_t GetLineThrough();
-
- int32_t GetLineThroughPeriod();
-
- int32_t GetOverline();
-
- int32_t GetOverlinePeriod();
-
- int32_t GetUnderline();
-
- int32_t GetUnderlinePeriod();
-
- FX_FLOAT GetFontSize();
-
- void GetTypeface(CFX_WideStringC& wsTypeFace);
-
- FX_BOOL IsBold();
-
- FX_BOOL IsItalic();
-
- FX_BOOL IsUseKerning();
-
- FX_ARGB GetColor();
-
- void SetColor(FX_ARGB color);
- FX_BOOL SetBaselineShift(FX_FLOAT fBaselineShift);
- FX_BOOL SetHorizontalScale(FX_FLOAT fHorizontalScale);
- FX_BOOL SetVerticalScale(FX_FLOAT fVerticalScale);
- FX_BOOL SetLetterSpacing(FX_FLOAT fLetterSpacing, XFA_UNIT eUnit);
- FX_BOOL SetLineThrough(int32_t iLineThrough);
- FX_BOOL SetLineThroughPeriod(int32_t iLineThroughPeriod);
- FX_BOOL SetOverline(int32_t iOverline);
- FX_BOOL SetOverlinePeriod(int32_t iOverlinePeriod);
- FX_BOOL SetUnderline(int32_t iUnderline);
- FX_BOOL SetUnderlinePeriod(int32_t iUnderlinePeriod);
-};
-class CXFA_Caption : public CXFA_Data {
- public:
- CXFA_Caption(CXFA_Node* pNode);
-
- int32_t GetPresence();
-
- int32_t GetPlacementType();
-
- FX_FLOAT GetReserve();
-
- CXFA_Margin GetMargin();
-
- CXFA_Font GetFont();
-
- CXFA_Value GetValue();
-
- CXFA_Para GetPara();
- FX_BOOL SetPresence(int32_t iPresence);
- FX_BOOL SetPlacementType(int32_t iType);
- FX_BOOL SetReserve(FX_FLOAT fReserve);
-};
-class CXFA_Para : public CXFA_Data {
- public:
- CXFA_Para(CXFA_Node* pNode);
-
- int32_t GetHorizontalAlign();
-
- int32_t GetVerticalAlign();
-
- FX_FLOAT GetLineHeight();
- FX_FLOAT GetMarginLeft();
- FX_FLOAT GetMarginRight();
- int32_t GetOrphans();
- FX_FLOAT GetRadixOffset();
- FX_FLOAT GetSpaceAbove();
- FX_FLOAT GetSpaceBelow();
- FX_FLOAT GetTextIndent();
- int32_t GetWidows();
- FX_BOOL SetHorizontalAlign(int32_t iHorizontalAlign);
- FX_BOOL SetVerticalAlign(int32_t iVerticalAlign);
- FX_BOOL SetLineHeight(FX_FLOAT fLineHeight);
- FX_BOOL SetMarginLeft(FX_FLOAT fMarginLeft);
- FX_BOOL SetMarginRight(FX_FLOAT fMarginRight);
- FX_BOOL SetOrphans(int32_t iOrphans);
- FX_BOOL SetRadixOffset(FX_FLOAT fRadixOffset);
- FX_BOOL SetSpaceAbove(FX_FLOAT fSpaceAbove);
- FX_BOOL SetSpaceBelow(FX_FLOAT fSpaceBelow);
- FX_BOOL SetTextIndent(FX_FLOAT fTextIndent);
- FX_BOOL SetWidows(int32_t iWidows);
-};
-class CXFA_Keep : public CXFA_Data {
- public:
- CXFA_Keep(CXFA_Node* pNode, CXFA_Node* pParent);
-
- int32_t GetIntact();
- int32_t GetNext();
- int32_t GetPrevious();
- FX_BOOL SetIntact(int32_t iIntact);
- FX_BOOL SetNext(int32_t iNext);
- FX_BOOL SetPrevious(int32_t iPrevious);
-
- private:
- CXFA_Node* m_pParent;
-};
-enum XFA_TEXTENCODING {
- XFA_TEXTENCODING_None,
- XFA_TEXTENCODING_Big5,
- XFA_TEXTENCODING_FontSpecific,
- XFA_TEXTENCODING_GBK,
- XFA_TEXTENCODING_GB18030,
- XFA_TEXTENCODING_GB2312,
- XFA_TEXTENCODING_ISO8859NN,
- XFA_TEXTENCODING_KSC5601,
- XFA_TEXTENCODING_ShiftJIS,
- XFA_TEXTENCODING_UCS2,
- XFA_TEXTENCODING_UTF16,
- XFA_TEXTENCODING_UTF8
-};
-class CXFA_Event : public CXFA_Data {
- public:
- CXFA_Event(CXFA_Node* pNode);
-
- int32_t GetActivity();
-
- int32_t GetEventType();
- void GetRef(CFX_WideStringC& wsRef);
-
- int32_t GetExecuteRunAt();
- int32_t GetExecuteType();
- void GetExecuteConnection(CFX_WideString& wsConnection);
-
- CXFA_Script GetScript();
-
- CXFA_Submit GetSubmit();
-
- int32_t GetSignDataOperation();
- void GetSignDataTarget(CFX_WideString& wsTarget);
- FX_BOOL SetActivity(int32_t iActivity);
- FX_BOOL SetEventType(int32_t iEventType);
- FX_BOOL SetExecuteRunAt(int32_t iExecuteRunAt);
- FX_BOOL SetExecuteType(int32_t iExecuteType);
- FX_BOOL SetExecuteConnection(const CFX_WideString& wsConnection);
- FX_BOOL SetSignDataOperation(int32_t iOperation);
- FX_BOOL SetSignDataTarget(const CFX_WideString& wsTarget);
-};
-enum XFA_SCRIPTTYPE {
- XFA_SCRIPTTYPE_Formcalc = 0,
- XFA_SCRIPTTYPE_Javascript,
- XFA_SCRIPTTYPE_Unkown,
-};
-class CXFA_Script : public CXFA_Data {
- public:
- CXFA_Script(CXFA_Node* pNode);
- void GetBinding(CFX_WideString& wsBinding);
-
- XFA_SCRIPTTYPE GetContentType();
- int32_t GetRunAt();
- void GetExpression(CFX_WideString& wsExpression);
- FX_BOOL SetBinding(const CFX_WideString& wsBinding);
- FX_BOOL SetContentType(XFA_SCRIPTTYPE eType);
- FX_BOOL SetRunAt(int32_t iRunAt);
- FX_BOOL SetExpression(const CFX_WideString& wsExpression);
-};
-class CXFA_Submit : public CXFA_Data {
- public:
- CXFA_Submit(CXFA_Node* pNode);
- FX_BOOL IsSubmitEmbedPDF();
- int32_t GetSubmitFormat();
- void GetSubmitTarget(CFX_WideStringC& wsTarget);
- XFA_TEXTENCODING GetSubmitTextEncoding();
- void GetSubmitXDPContent(CFX_WideStringC& wsContent);
- FX_BOOL SetSubmitFormat(int32_t iSubmitFormat);
- FX_BOOL SetSubmitTarget(const CFX_WideString& wsTarget);
- FX_BOOL SetSubmitTextEncoding(XFA_TEXTENCODING eTextEncoding);
- FX_BOOL SetSubmitXDPContent(const CFX_WideString& wsContent);
-};
-class CXFA_Value : public CXFA_Data {
- public:
- CXFA_Value(CXFA_Node* pNode) : CXFA_Data(pNode) {}
-
- XFA_ELEMENT GetChildValueClassID();
-
- FX_BOOL GetChildValueContent(CFX_WideString& wsContent);
- CXFA_Arc GetArc();
- CXFA_Line GetLine();
- CXFA_Rectangle GetRectangle();
- CXFA_Text GetText();
- CXFA_ExData GetExData();
- CXFA_Image GetImage();
- FX_BOOL SetChildValueContent(const CFX_WideString& wsContent,
- FX_BOOL bNotify = FALSE,
- XFA_ELEMENT iType = XFA_ELEMENT_UNKNOWN);
-};
-class CXFA_Line : public CXFA_Data {
- public:
- CXFA_Line(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- int32_t GetHand();
- FX_BOOL GetSlop();
- CXFA_Edge GetEdge();
- FX_BOOL SetHand(int32_t iHand);
- FX_BOOL SetSlop(int32_t iSlop);
-};
-class CXFA_Text : public CXFA_Data {
- public:
- CXFA_Text(CXFA_Node* pNode);
- void GetName(CFX_WideStringC& wsName);
- int32_t GetMaxChars();
- void GetRid(CFX_WideStringC& wsRid);
- void GetContent(CFX_WideString& wsText);
- void SetContent(CFX_WideString wsText, FX_BOOL bNotify = TRUE);
- FX_BOOL SetName(const CFX_WideString& wsName);
- FX_BOOL SetMaxChars(int32_t iMaxChars);
- FX_BOOL SetRid(const CFX_WideString& wsRid);
-};
-class CXFA_ExData : public CXFA_Data {
- public:
- CXFA_ExData(CXFA_Node* pNode);
- void GetContentType(CFX_WideStringC& wsContentType);
- void GetHref(CFX_WideStringC& wsHref);
- int32_t GetMaxLength();
- void GetRid(CFX_WideStringC& wsRid);
- int32_t GetTransferEncoding();
- void GetContent(CFX_WideString& wsText);
- FX_BOOL SetContentType(const CFX_WideString& wsContentType);
- FX_BOOL SetHref(const CFX_WideString& wsHref);
- FX_BOOL SetMaxLength(int32_t iMaxLength);
- FX_BOOL SetRid(const CFX_WideString& wsRid);
- FX_BOOL SetTransferEncoding(int32_t iTransferEncoding);
- FX_BOOL SetContent(const CFX_WideString& wsText,
- FX_BOOL bNotify = FALSE,
- FX_BOOL bScriptModify = FALSE,
- FX_BOOL bSyncData = TRUE);
-};
-class CXFA_Image : public CXFA_Data {
- public:
- CXFA_Image(CXFA_Node* pNode, FX_BOOL bDefValue);
- int32_t GetAspect();
- FX_BOOL GetContentType(CFX_WideString& wsContentType);
- FX_BOOL GetHref(CFX_WideString& wsHref);
- int32_t GetTransferEncoding();
- FX_BOOL GetContent(CFX_WideString& wsText);
- FX_BOOL SetAspect(int32_t iAspect);
- FX_BOOL SetContentType(const CFX_WideString& wsContentType);
- FX_BOOL SetHref(const CFX_WideString& wsHref);
- FX_BOOL SetTransferEncoding(int32_t iTransferEncoding);
- FX_BOOL SetContent(const CFX_WideString& wsText);
-
- protected:
- FX_BOOL m_bDefValue;
-};
-class CXFA_Calculate : public CXFA_Data {
- public:
- CXFA_Calculate(CXFA_Node* pNode);
-
- int32_t GetOverride();
- CXFA_Script GetScript();
- void GetMessageText(CFX_WideString& wsMessage);
- FX_BOOL SetOverride(int32_t iOverride);
- FX_BOOL SetMessageText(const CFX_WideString& wsMessage);
-};
-class CXFA_Validate : public CXFA_Data {
- public:
- CXFA_Validate(CXFA_Node* pNode);
- int32_t GetFormatTest();
- FX_BOOL SetFormatTest(CFX_WideString wsValue);
- int32_t GetNullTest();
- FX_BOOL SetNullTest(CFX_WideString wsValue);
- int32_t GetScriptTest();
- void GetFormatMessageText(CFX_WideString& wsMessage);
- void SetFormatMessageText(CFX_WideString wsMessage);
- void GetNullMessageText(CFX_WideString& wsMessage);
- void SetNullMessageText(CFX_WideString wsMessage);
- void GetScriptMessageText(CFX_WideString& wsMessage);
- void SetScriptMessageText(CFX_WideString wsMessage);
- void GetPicture(CFX_WideString& wsPicture);
- CXFA_Script GetScript();
-
- protected:
- void GetMessageText(CFX_WideString& wsMessage,
- const CFX_WideStringC& wsMessageType);
- void SetMessageText(CFX_WideString& wsMessage,
- const CFX_WideStringC& wsMessageType);
- FX_BOOL SetTestValue(int32_t iType,
- CFX_WideString& wsValue,
- XFA_ATTRIBUTEENUM eName);
-};
-class CXFA_Variables : public CXFA_Data {
- public:
- CXFA_Variables(CXFA_Node* pNode);
-
- int32_t CountScripts();
- CXFA_Script GetScript(int32_t nIndex);
-};
-class CXFA_Bind : public CXFA_Data {
- public:
- CXFA_Bind(CXFA_Node* pNode);
- int32_t GetMatch();
- void GetRef(CFX_WideStringC& wsRef);
- void GetPicture(CFX_WideString& wsPicture);
- FX_BOOL SetMatch(int32_t iMatch);
- FX_BOOL SetRef(const CFX_WideString& wsRef);
- FX_BOOL SetPicture(const CFX_WideString& wsPicture);
-};
-class CXFA_Assist : public CXFA_Data {
- public:
- CXFA_Assist(CXFA_Node* pNode);
-
- CXFA_ToolTip GetToolTip();
-};
-class CXFA_ToolTip : public CXFA_Data {
- public:
- CXFA_ToolTip(CXFA_Node* pNode);
- FX_BOOL GetTip(CFX_WideString& wsTip);
- FX_BOOL SetTip(const CFX_WideString& wsTip);
-};
-class CXFA_BindItems : public CXFA_Data {
- public:
- CXFA_BindItems(CXFA_Node* pNode);
- void GetConnection(CFX_WideStringC& wsConnection);
- void GetLabelRef(CFX_WideStringC& wsLabelRef);
- void GetValueRef(CFX_WideStringC& wsValueRef);
- void GetRef(CFX_WideStringC& wsRef);
- FX_BOOL SetConnection(const CFX_WideString& wsConnection);
- FX_BOOL SetLabelRef(const CFX_WideString& wsLabelRef);
- FX_BOOL SetValueRef(const CFX_WideString& wsValueRef);
- FX_BOOL SetRef(const CFX_WideString& wsRef);
-};
-#define XFA_STROKE_SAMESTYLE_NoPresence 1
-#define XFA_STROKE_SAMESTYLE_Corner 2
-class CXFA_Stroke : public CXFA_Data {
- public:
- CXFA_Stroke(CXFA_Node* pNode) : CXFA_Data(pNode) {}
-
- FX_BOOL IsCorner() const { return GetClassID() == XFA_ELEMENT_Corner; }
-
- FX_BOOL IsEdge() const { return GetClassID() == XFA_ELEMENT_Edge; }
-
- int32_t GetPresence() const;
- FX_BOOL IsVisible() const {
- return GetPresence() == XFA_ATTRIBUTEENUM_Visible;
- }
-
- int32_t GetCapType() const;
-
- int32_t GetStrokeType() const;
-
- FX_FLOAT GetThickness() const;
- CXFA_Measurement GetMSThickness() const;
-
- void SetThickness(FX_FLOAT fThickness);
- void SetMSThickness(CXFA_Measurement msThinkness);
-
- FX_ARGB GetColor() const;
-
- void SetColor(FX_ARGB argb);
-
- int32_t GetJoinType() const;
-
- FX_BOOL IsInverted() const;
-
- FX_FLOAT GetRadius() const;
-
- FX_BOOL SameStyles(CXFA_Stroke stroke, FX_DWORD dwFlags = 0) const;
-};
-class CXFA_Corner : public CXFA_Stroke {
- public:
- CXFA_Corner(CXFA_Node* pNode) : CXFA_Stroke(pNode) {}
-};
-class CXFA_Edge : public CXFA_Stroke {
- public:
- CXFA_Edge(CXFA_Node* pNode) : CXFA_Stroke(pNode) {}
-};
-typedef CFX_ArrayTemplate<CXFA_Stroke> CXFA_StrokeArray;
-typedef CFX_ArrayTemplate<CXFA_Edge> CXFA_EdgeArray;
-typedef CFX_ArrayTemplate<CXFA_Corner> CXFA_CornerArray;
-class CXFA_Box : public CXFA_Data {
- public:
- CXFA_Box(CXFA_Node* pNode) : CXFA_Data(pNode) {}
-
- FX_BOOL IsArc() const { return GetClassID() == XFA_ELEMENT_Arc; }
-
- FX_BOOL IsBorder() const { return GetClassID() == XFA_ELEMENT_Border; }
-
- FX_BOOL IsRectangle() const { return GetClassID() == XFA_ELEMENT_Rectangle; }
-
- int32_t GetBreak() const;
-
- int32_t GetHand() const;
-
- int32_t GetPresence() const;
-
- int32_t CountCorners() const;
-
- CXFA_Corner GetCorner(int32_t nIndex) const;
-
- int32_t CountEdges() const;
-
- CXFA_Edge GetEdge(int32_t nIndex = 0) const;
-
- void GetStrokes(CXFA_StrokeArray& strokes) const;
-
- FX_BOOL IsCircular() const;
-
- FX_BOOL GetStartAngle(FX_FLOAT& fStartAngle) const;
- FX_FLOAT GetStartAngle() const {
- FX_FLOAT fStartAngle;
- GetStartAngle(fStartAngle);
- return fStartAngle;
- }
-
- FX_BOOL GetSweepAngle(FX_FLOAT& fSweepAngle) const;
- FX_FLOAT GetSweepAngle() const {
- FX_FLOAT fSweepAngle;
- GetSweepAngle(fSweepAngle);
- return fSweepAngle;
- }
-
- CXFA_Fill GetFill(FX_BOOL bModified = FALSE) const;
-
- CXFA_Margin GetMargin() const;
-
- FX_BOOL SameStyles() const;
-
- int32_t Get3DStyle(FX_BOOL& bVisible, FX_FLOAT& fThickness) const;
-};
-class CXFA_Arc : public CXFA_Box {
- public:
- CXFA_Arc(CXFA_Node* pNode) : CXFA_Box(pNode) {}
-};
-class CXFA_Border : public CXFA_Box {
- public:
- CXFA_Border(CXFA_Node* pNode) : CXFA_Box(pNode) {}
-};
-class CXFA_Rectangle : public CXFA_Box {
- public:
- CXFA_Rectangle(CXFA_Node* pNode) : CXFA_Box(pNode) {}
-};
-enum XFA_CHECKSTATE {
- XFA_CHECKSTATE_On = 0,
- XFA_CHECKSTATE_Off = 1,
- XFA_CHECKSTATE_Neutral = 2,
-};
-enum XFA_VALUEPICTURE {
- XFA_VALUEPICTURE_Raw = 0,
- XFA_VALUEPICTURE_Display,
- XFA_VALUEPICTURE_Edit,
- XFA_VALUEPICTURE_DataBind,
-};
-class CXFA_WidgetData : public CXFA_Data {
- public:
- CXFA_WidgetData(CXFA_Node* pNode);
- CXFA_Node* GetUIChild();
-
- XFA_ELEMENT GetUIType();
- CFX_WideString GetRawValue();
- int32_t GetAccess(FX_BOOL bTemplate = FALSE);
- FX_BOOL GetAccessKey(CFX_WideStringC& wsAccessKey);
- int32_t GetAnchorType();
- int32_t GetColSpan();
- int32_t GetPresence();
- int32_t GetRotate();
- CXFA_Border GetBorder(FX_BOOL bModified = FALSE);
- CXFA_Caption GetCaption(FX_BOOL bModified = FALSE);
- CXFA_Font GetFont(FX_BOOL bModified = FALSE);
- CXFA_Margin GetMargin(FX_BOOL bModified = FALSE);
- CXFA_Para GetPara(FX_BOOL bModified = FALSE);
- CXFA_Keep GetKeep(FX_BOOL bModified = FALSE);
- void GetEventList(CXFA_NodeArray& events);
- int32_t GetEventByActivity(int32_t iActivity,
- CXFA_NodeArray& events,
- FX_BOOL bIsFormReady = FALSE);
- CXFA_Value GetDefaultValue(FX_BOOL bModified = FALSE);
- CXFA_Value GetFormValue(FX_BOOL bModified = FALSE);
- CXFA_Calculate GetCalculate(FX_BOOL bModified = FALSE);
- CXFA_Validate GetValidate(FX_BOOL bModified = FALSE);
- CXFA_Variables GetVariables(FX_BOOL bModified = FALSE);
- CXFA_Bind GetBind(FX_BOOL bModified = FALSE);
- CXFA_Assist GetAssist(FX_BOOL bModified = FALSE);
- void GetRelevant(CFX_WideStringC& wsRelevant);
- FX_DWORD GetRelevantStatus();
- FX_BOOL GetWidth(FX_FLOAT& fWidth);
- FX_BOOL GetHeight(FX_FLOAT& fHeight);
- FX_BOOL GetMinWidth(FX_FLOAT& fMinWidth);
- FX_BOOL GetMinHeight(FX_FLOAT& fMinHeight);
- FX_BOOL GetMaxWidth(FX_FLOAT& fMaxWidth);
- FX_BOOL GetMaxHeight(FX_FLOAT& fMaxHeight);
- CXFA_BindItems GetBindItems();
- FX_BOOL SetAccess(int32_t iAccess, FX_BOOL bNotify = TRUE);
- FX_BOOL SetAccessKey(const CFX_WideString& wsAccessKey);
- FX_BOOL SetAnchorType(int32_t iType);
- FX_BOOL SetColSpan(int32_t iColSpan);
- FX_BOOL SetPresence(int32_t iPresence);
- FX_BOOL SetRotate(int32_t iRotate);
- FX_BOOL SetRelevant(const CFX_WideString& wsRelevant);
- FX_BOOL SetStatus(FX_DWORD dwStatus);
- FX_BOOL SetWidth(FX_FLOAT fWidth);
- FX_BOOL SetHeight(FX_FLOAT fHeight);
- FX_BOOL SetMinWidth(FX_FLOAT fMinWidth);
- FX_BOOL SetMinHeight(FX_FLOAT fMinHeight);
- FX_BOOL SetMaxWidth(FX_FLOAT fMaxWidth);
- FX_BOOL SetMaxHeight(FX_FLOAT fMaxHeight);
- FX_BOOL SetPos(FX_FLOAT x, FX_FLOAT y);
- FX_BOOL SetName(const CFX_WideString& wsName);
- FX_BOOL SetButtonHighlight(int32_t iButtonHighlight);
- FX_BOOL SetButtonRollover(const CFX_WideString& wsRollover,
- FX_BOOL bRichText);
- FX_BOOL SetButtonDown(const CFX_WideString& wsDown, FX_BOOL bRichText);
- FX_BOOL SetCheckButtonShape(int32_t iCheckButtonShape);
- FX_BOOL SetCheckButtonMark(int32_t iCheckButtonMark);
- FX_BOOL SetCheckButtonSize(FX_FLOAT fCheckButtonMark);
- CXFA_Border GetUIBorder(FX_BOOL bModified = FALSE);
- CXFA_Margin GetUIMargin(FX_BOOL bModified = FALSE);
- void GetUIMargin(CFX_RectF& rtUIMargin);
- int32_t GetButtonHighlight();
- FX_BOOL GetButtonRollover(CFX_WideString& wsRollover, FX_BOOL& bRichText);
- FX_BOOL GetButtonDown(CFX_WideString& wsDown, FX_BOOL& bRichText);
- int32_t GetCheckButtonShape();
- int32_t GetCheckButtonMark();
- FX_FLOAT GetCheckButtonSize();
- FX_BOOL IsAllowNeutral();
- FX_BOOL IsRadioButton();
- XFA_CHECKSTATE GetCheckState();
- void SetCheckState(XFA_CHECKSTATE eCheckState, FX_BOOL bNotify = TRUE);
- CXFA_Node* GetExclGroupNode();
- CXFA_Node* GetSelectedMember();
- CXFA_Node* SetSelectedMember(const CFX_WideStringC& wsName,
- FX_BOOL bNotify = TRUE);
- void SetSelectedMemberByValue(const CFX_WideStringC& wsValue,
- FX_BOOL bNotify = TRUE,
- FX_BOOL bScriptModify = FALSE,
- FX_BOOL bSyncData = TRUE);
- CXFA_Node* GetExclGroupFirstMember();
- CXFA_Node* GetExclGroupNextMember(CXFA_Node* pNode);
- int32_t GetChoiceListCommitOn();
- FX_BOOL IsChoiceListAllowTextEntry();
- int32_t GetChoiceListOpen();
- FX_BOOL IsListBox();
- int32_t CountChoiceListItems(FX_BOOL bSaveValue = FALSE);
- FX_BOOL GetChoiceListItem(CFX_WideString& wsText,
- int32_t nIndex,
- FX_BOOL bSaveValue = FALSE);
- void GetChoiceListItems(CFX_WideStringArray& wsTextArray,
- FX_BOOL bSaveValue = FALSE);
- int32_t CountSelectedItems();
- int32_t GetSelectedItem(int32_t nIndex = 0);
- void GetSelectedItems(CFX_Int32Array& iSelArray);
- void GetSelectedItemsValue(CFX_WideStringArray& wsSelTextArray);
- FX_BOOL GetItemState(int32_t nIndex);
- void SetItemState(int32_t nIndex,
- FX_BOOL bSelected,
- FX_BOOL bNotify = FALSE,
- FX_BOOL bScriptModify = FALSE,
- FX_BOOL bSyncData = TRUE);
- void SetSelectdItems(CFX_Int32Array& iSelArray,
- FX_BOOL bNotify = FALSE,
- FX_BOOL bScriptModify = FALSE,
- FX_BOOL bSyncData = TRUE);
- void ClearAllSelections();
- void InsertItem(const CFX_WideString& wsLabel,
- const CFX_WideString& wsValue,
- int32_t nIndex = -1,
- FX_BOOL bNotify = FALSE);
- void GetItemLabel(const CFX_WideStringC& wsValue, CFX_WideString& wsLabel);
- void GetItemValue(const CFX_WideStringC& wsLabel, CFX_WideString& wsValue);
- FX_BOOL DeleteItem(int32_t nIndex,
- FX_BOOL bNotify = FALSE,
- FX_BOOL bScriptModify = FALSE,
- FX_BOOL bSyncData = TRUE);
- int32_t GetHorizontalScrollPolicy();
- int32_t GetNumberOfCells();
- FX_BOOL IsDateTimeEditUsePicker();
- FX_BOOL SetValue(const CFX_WideString& wsValue, XFA_VALUEPICTURE eValueType);
- FX_BOOL GetPictureContent(CFX_WideString& wsPicture,
- XFA_VALUEPICTURE ePicture);
- IFX_Locale* GetLocal();
- FX_BOOL GetValue(CFX_WideString& wsValue, XFA_VALUEPICTURE eValueType);
- FX_BOOL GetNormalizeDataValue(const CFX_WideStringC& wsValue,
- CFX_WideString& wsNormalizeValue);
- FX_BOOL GetFormatDataValue(const CFX_WideStringC& wsValue,
- CFX_WideString& wsFormatedValue);
- void NormalizeNumStr(const CFX_WideString& wsValue, CFX_WideString& wsOutput);
- CFX_WideString GetBarcodeType();
- FX_BOOL GetBarcodeAttribute_CharEncoding(int32_t& val);
- FX_BOOL GetBarcodeAttribute_Checksum(int32_t& val);
- FX_BOOL GetBarcodeAttribute_DataLength(int32_t& val);
- FX_BOOL GetBarcodeAttribute_StartChar(FX_CHAR& val);
- FX_BOOL GetBarcodeAttribute_EndChar(FX_CHAR& val);
- FX_BOOL GetBarcodeAttribute_ECLevel(int32_t& val);
- FX_BOOL GetBarcodeAttribute_ModuleWidth(int32_t& val);
- FX_BOOL GetBarcodeAttribute_ModuleHeight(int32_t& val);
- FX_BOOL GetBarcodeAttribute_PrintChecksum(FX_BOOL& val);
- FX_BOOL GetBarcodeAttribute_TextLocation(int32_t& val);
- FX_BOOL GetBarcodeAttribute_Truncate(FX_BOOL& val);
- FX_BOOL GetBarcodeAttribute_WideNarrowRatio(FX_FLOAT& val);
- void GetPasswordChar(CFX_WideString& wsPassWord);
- FX_BOOL IsAllowRichText();
- FX_BOOL IsMultiLine();
- int32_t GetVerticalScrollPolicy();
- int32_t GetMaxChars(XFA_ELEMENT& eType);
- FX_BOOL GetFracDigits(int32_t& iFracDigits);
- FX_BOOL GetLeadDigits(int32_t& iLeadDigits);
- CXFA_Filter GetFilter(FX_BOOL bModified = FALSE);
- CXFA_Manifest GetManifest(FX_BOOL bModified = FALSE);
-
- FX_BOOL m_bIsNull;
- FX_BOOL m_bPreNull;
-
- protected:
- void SyncValue(const CFX_WideString& wsValue, FX_BOOL bNotify);
- void InsertListTextItem(CXFA_Node* pItems,
- const CFX_WideStringC& wsText,
- int32_t nIndex = -1);
- void FormatNumStr(const CFX_WideString& wsValue,
- IFX_Locale* pLocale,
- CFX_WideString& wsOutput);
-
- CXFA_Node* m_pUiChildNode;
- XFA_ELEMENT m_eUIType;
-};
-class CXFA_Occur : public CXFA_Data {
- public:
- CXFA_Occur(CXFA_Node* pNode);
- int32_t GetMax();
- int32_t GetMin();
- int32_t GetInitial();
- FX_BOOL GetOccurInfo(int32_t& iMin, int32_t& iMax, int32_t& iInit);
- void SetMax(int32_t iMax);
- void SetMin(int32_t iMin);
-};
-class CXFA_Filter : public CXFA_Data {
- public:
- CXFA_Filter(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- CFX_WideString GetFilterString(XFA_ATTRIBUTE eAttribute);
- XFA_ATTRIBUTEENUM GetAppearanceFilterType();
- CFX_WideString GetAppearanceFilterContent();
- XFA_ATTRIBUTEENUM GetCertificatesCredentialServerPolicy();
- CFX_WideString GetCertificatesURL();
- CFX_WideString GetCertificatesURLPolicy();
- CXFA_WrapCertificate GetCertificatesEncryption(FX_BOOL bModified = FALSE);
- CXFA_WrapCertificate GetCertificatesIssuers(FX_BOOL bModified = FALSE);
- CFX_WideString GetCertificatesKeyUsageString(XFA_ATTRIBUTE eAttribute);
- CXFA_Oids GetCertificatesOids();
- CXFA_WrapCertificate GetCertificatesSigning(FX_BOOL bModified = FALSE);
- CXFA_DigestMethods GetDigestMethods(FX_BOOL bModified = FALSE);
- CXFA_Encodings GetEncodings(FX_BOOL bModified = FALSE);
- CXFA_EncryptionMethods GetEncryptionMethods(FX_BOOL bModified = FALSE);
- XFA_ATTRIBUTEENUM GetHandlerType();
- CFX_WideString GetHandlerContent();
- XFA_ATTRIBUTEENUM GetlockDocumentType();
- CFX_WideString GetlockDocumentContent();
- int32_t GetMDPPermissions();
- XFA_ATTRIBUTEENUM GetMDPSignatureType();
-
- CXFA_Reasons GetReasons(FX_BOOL bModified = FALSE);
- CFX_WideString GetTimeStampServer();
- XFA_ATTRIBUTEENUM GetTimeStampType();
-};
-class CXFA_Certificate : public CXFA_Data {
- public:
- CXFA_Certificate(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- CFX_WideString GetCertificateName();
- CFX_WideString GetCertificateContent();
-};
-class CXFA_WrapCertificate : public CXFA_Data {
- public:
- CXFA_WrapCertificate(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetType();
- int32_t CountCertificates();
- CXFA_Certificate GetCertificate(int32_t nIndex);
-};
-class CXFA_Oids : public CXFA_Data {
- public:
- CXFA_Oids(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetOidsType();
- int32_t CountOids();
- CFX_WideString GetOidContent(int32_t nIndex);
-};
-class CXFA_SubjectDNs : public CXFA_Data {
- public:
- CXFA_SubjectDNs(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetSubjectDNsType();
- int32_t CountSubjectDNs();
- CFX_WideString GetSubjectDNString(int32_t nIndex, XFA_ATTRIBUTE eAttribute);
- CFX_WideString GetSubjectDNContent(int32_t nIndex);
-};
-class CXFA_DigestMethods : public CXFA_Data {
- public:
- CXFA_DigestMethods(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetDigestMethodsType();
- int32_t CountDigestMethods();
- CFX_WideString GetDigestMethodContent(int32_t nIndex);
-};
-class CXFA_Encodings : public CXFA_Data {
- public:
- CXFA_Encodings(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetEncodingsType();
- int32_t CountEncodings();
- CFX_WideString GetEncodingContent(int32_t nIndex);
-};
-class CXFA_EncryptionMethods : public CXFA_Data {
- public:
- CXFA_EncryptionMethods(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetEncryptionMethodsType();
- int32_t CountEncryptionMethods();
- CFX_WideString GetEncryptionMethodContent(int32_t nIndex);
-};
-class CXFA_Reasons : public CXFA_Data {
- public:
- CXFA_Reasons(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetReasonsType();
- int32_t CountReasons();
- CFX_WideString GetReasonContent(int32_t nIndex);
-};
-class CXFA_Manifest : public CXFA_Data {
- public:
- CXFA_Manifest(CXFA_Node* pNode) : CXFA_Data(pNode) {}
- XFA_ATTRIBUTEENUM GetAction();
- int32_t CountReives();
- CFX_WideString GetRefContent(int32_t nIndex);
-};
-
-#endif // FXFA_OBJECTACC_H_
+// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef FXFA_OBJECTACC_H_ +#define FXFA_OBJECTACC_H_ + +#include "core/include/fxge/fx_dib.h" // For FX_ARGB. + +class CXFA_Node; +class IFX_Locale; +class CXFA_Data; +class CXFA_Font; +class CXFA_Fill; +class CXFA_Margin; +class CXFA_Caption; +class CXFA_Para; +class CXFA_Event; +class CXFA_Script; +class CXFA_Value; +class CXFA_Calculate; +class CXFA_Line; +class CXFA_Text; +class CXFA_ExData; +class CXFA_Image; +class CXFA_Validate; +class CXFA_Variables; +class CXFA_Bind; +class CXFA_Assist; +class CXFA_ToolTip; +class CXFA_Keep; +class CXFA_Submit; +class CXFA_BindItems; +class CXFA_Stroke; +class CXFA_Corner; +class CXFA_Edge; +class CXFA_Box; +class CXFA_Arc; +class CXFA_Border; +class CXFA_Rectangle; +class CXFA_WidgetData; +class CXFA_Occur; +class CXFA_Filter; +class CXFA_Certificate; +class CXFA_WrapCertificate; +class CXFA_Oids; +class CXFA_SubjectDNs; +class CXFA_DigestMethods; +class CXFA_Encodings; +class CXFA_EncryptionMethods; +class CXFA_Reasons; +class CXFA_Manifest; +inline FX_BOOL XFA_IsSpace(FX_WCHAR c) { + return (c == 0x20) || (c == 0x0d) || (c == 0x0a) || (c == 0x09); +} +inline FX_BOOL XFA_IsDigit(FX_WCHAR c) { + return c >= '0' && c <= '9'; +} +typedef CFX_ArrayTemplate<CXFA_Node*> CXFA_NodeArray; +typedef CFX_ArrayTemplate<CXFA_Object*> CXFA_ObjArray; +class CXFA_Data { + public: + CXFA_Data(CXFA_Node* pNode) : m_pNode(pNode) {} + operator CXFA_Node*() const { return m_pNode; } + CXFA_Node* GetNode() { return m_pNode; } + + FX_BOOL IsExistInXML() const { return m_pNode != NULL; } + + XFA_ELEMENT GetClassID() const; + + protected: + FX_BOOL TryMeasure(XFA_ATTRIBUTE eAttr, + FX_FLOAT& fValue, + FX_BOOL bUseDefault = FALSE) const; + FX_BOOL SetMeasure(XFA_ATTRIBUTE eAttr, FX_FLOAT fValue); + CXFA_Node* m_pNode; +}; +class CXFA_Fill : public CXFA_Data { + public: + CXFA_Fill(CXFA_Node* pNode); + ~CXFA_Fill(); + + int32_t GetPresence(); + + FX_ARGB GetColor(FX_BOOL bText = FALSE); + + void SetColor(FX_ARGB color); + + int32_t GetFillType(); + + int32_t GetPattern(FX_ARGB& foreColor); + + int32_t GetStipple(FX_ARGB& stippleColor); + + int32_t GetLinear(FX_ARGB& endColor); + + int32_t GetRadial(FX_ARGB& endColor); + FX_BOOL SetPresence(int32_t iPresence); + FX_BOOL SetFillType(int32_t iType); + FX_BOOL SetPattern(int32_t iPattern, FX_ARGB foreColor); + FX_BOOL SetStipple(int32_t iStipple, FX_ARGB stippleColor); + FX_BOOL SetLinear(int32_t iLinear, FX_ARGB endColor); + FX_BOOL SetRadial(int32_t iRadial, FX_ARGB endColor); +}; +class CXFA_Margin : public CXFA_Data { + public: + CXFA_Margin(CXFA_Node* pNode); + FX_BOOL GetLeftInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const; + FX_BOOL GetTopInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const; + FX_BOOL GetRightInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const; + FX_BOOL GetBottomInset(FX_FLOAT& fInset, FX_FLOAT fDefInset = 0) const; + FX_BOOL SetLeftInset(FX_FLOAT fInset); + FX_BOOL SetTopInset(FX_FLOAT fInset); + FX_BOOL SetRightInset(FX_FLOAT fInset); + FX_BOOL SetBottomInset(FX_FLOAT fInset); +}; +class CXFA_Font : public CXFA_Data { + public: + CXFA_Font(CXFA_Node* pNode); + + FX_FLOAT GetBaselineShift(); + + FX_FLOAT GetHorizontalScale(); + + FX_FLOAT GetVerticalScale(); + + FX_FLOAT GetLetterSpacing(); + + int32_t GetLineThrough(); + + int32_t GetLineThroughPeriod(); + + int32_t GetOverline(); + + int32_t GetOverlinePeriod(); + + int32_t GetUnderline(); + + int32_t GetUnderlinePeriod(); + + FX_FLOAT GetFontSize(); + + void GetTypeface(CFX_WideStringC& wsTypeFace); + + FX_BOOL IsBold(); + + FX_BOOL IsItalic(); + + FX_BOOL IsUseKerning(); + + FX_ARGB GetColor(); + + void SetColor(FX_ARGB color); + FX_BOOL SetBaselineShift(FX_FLOAT fBaselineShift); + FX_BOOL SetHorizontalScale(FX_FLOAT fHorizontalScale); + FX_BOOL SetVerticalScale(FX_FLOAT fVerticalScale); + FX_BOOL SetLetterSpacing(FX_FLOAT fLetterSpacing, XFA_UNIT eUnit); + FX_BOOL SetLineThrough(int32_t iLineThrough); + FX_BOOL SetLineThroughPeriod(int32_t iLineThroughPeriod); + FX_BOOL SetOverline(int32_t iOverline); + FX_BOOL SetOverlinePeriod(int32_t iOverlinePeriod); + FX_BOOL SetUnderline(int32_t iUnderline); + FX_BOOL SetUnderlinePeriod(int32_t iUnderlinePeriod); +}; +class CXFA_Caption : public CXFA_Data { + public: + CXFA_Caption(CXFA_Node* pNode); + + int32_t GetPresence(); + + int32_t GetPlacementType(); + + FX_FLOAT GetReserve(); + + CXFA_Margin GetMargin(); + + CXFA_Font GetFont(); + + CXFA_Value GetValue(); + + CXFA_Para GetPara(); + FX_BOOL SetPresence(int32_t iPresence); + FX_BOOL SetPlacementType(int32_t iType); + FX_BOOL SetReserve(FX_FLOAT fReserve); +}; +class CXFA_Para : public CXFA_Data { + public: + CXFA_Para(CXFA_Node* pNode); + + int32_t GetHorizontalAlign(); + + int32_t GetVerticalAlign(); + + FX_FLOAT GetLineHeight(); + FX_FLOAT GetMarginLeft(); + FX_FLOAT GetMarginRight(); + int32_t GetOrphans(); + FX_FLOAT GetRadixOffset(); + FX_FLOAT GetSpaceAbove(); + FX_FLOAT GetSpaceBelow(); + FX_FLOAT GetTextIndent(); + int32_t GetWidows(); + FX_BOOL SetHorizontalAlign(int32_t iHorizontalAlign); + FX_BOOL SetVerticalAlign(int32_t iVerticalAlign); + FX_BOOL SetLineHeight(FX_FLOAT fLineHeight); + FX_BOOL SetMarginLeft(FX_FLOAT fMarginLeft); + FX_BOOL SetMarginRight(FX_FLOAT fMarginRight); + FX_BOOL SetOrphans(int32_t iOrphans); + FX_BOOL SetRadixOffset(FX_FLOAT fRadixOffset); + FX_BOOL SetSpaceAbove(FX_FLOAT fSpaceAbove); + FX_BOOL SetSpaceBelow(FX_FLOAT fSpaceBelow); + FX_BOOL SetTextIndent(FX_FLOAT fTextIndent); + FX_BOOL SetWidows(int32_t iWidows); +}; +class CXFA_Keep : public CXFA_Data { + public: + CXFA_Keep(CXFA_Node* pNode, CXFA_Node* pParent); + + int32_t GetIntact(); + int32_t GetNext(); + int32_t GetPrevious(); + FX_BOOL SetIntact(int32_t iIntact); + FX_BOOL SetNext(int32_t iNext); + FX_BOOL SetPrevious(int32_t iPrevious); + + private: + CXFA_Node* m_pParent; +}; +enum XFA_TEXTENCODING { + XFA_TEXTENCODING_None, + XFA_TEXTENCODING_Big5, + XFA_TEXTENCODING_FontSpecific, + XFA_TEXTENCODING_GBK, + XFA_TEXTENCODING_GB18030, + XFA_TEXTENCODING_GB2312, + XFA_TEXTENCODING_ISO8859NN, + XFA_TEXTENCODING_KSC5601, + XFA_TEXTENCODING_ShiftJIS, + XFA_TEXTENCODING_UCS2, + XFA_TEXTENCODING_UTF16, + XFA_TEXTENCODING_UTF8 +}; +class CXFA_Event : public CXFA_Data { + public: + CXFA_Event(CXFA_Node* pNode); + + int32_t GetActivity(); + + int32_t GetEventType(); + void GetRef(CFX_WideStringC& wsRef); + + int32_t GetExecuteRunAt(); + int32_t GetExecuteType(); + void GetExecuteConnection(CFX_WideString& wsConnection); + + CXFA_Script GetScript(); + + CXFA_Submit GetSubmit(); + + int32_t GetSignDataOperation(); + void GetSignDataTarget(CFX_WideString& wsTarget); + FX_BOOL SetActivity(int32_t iActivity); + FX_BOOL SetEventType(int32_t iEventType); + FX_BOOL SetExecuteRunAt(int32_t iExecuteRunAt); + FX_BOOL SetExecuteType(int32_t iExecuteType); + FX_BOOL SetExecuteConnection(const CFX_WideString& wsConnection); + FX_BOOL SetSignDataOperation(int32_t iOperation); + FX_BOOL SetSignDataTarget(const CFX_WideString& wsTarget); +}; +enum XFA_SCRIPTTYPE { + XFA_SCRIPTTYPE_Formcalc = 0, + XFA_SCRIPTTYPE_Javascript, + XFA_SCRIPTTYPE_Unkown, +}; +class CXFA_Script : public CXFA_Data { + public: + CXFA_Script(CXFA_Node* pNode); + void GetBinding(CFX_WideString& wsBinding); + + XFA_SCRIPTTYPE GetContentType(); + int32_t GetRunAt(); + void GetExpression(CFX_WideString& wsExpression); + FX_BOOL SetBinding(const CFX_WideString& wsBinding); + FX_BOOL SetContentType(XFA_SCRIPTTYPE eType); + FX_BOOL SetRunAt(int32_t iRunAt); + FX_BOOL SetExpression(const CFX_WideString& wsExpression); +}; +class CXFA_Submit : public CXFA_Data { + public: + CXFA_Submit(CXFA_Node* pNode); + FX_BOOL IsSubmitEmbedPDF(); + int32_t GetSubmitFormat(); + void GetSubmitTarget(CFX_WideStringC& wsTarget); + XFA_TEXTENCODING GetSubmitTextEncoding(); + void GetSubmitXDPContent(CFX_WideStringC& wsContent); + FX_BOOL SetSubmitFormat(int32_t iSubmitFormat); + FX_BOOL SetSubmitTarget(const CFX_WideString& wsTarget); + FX_BOOL SetSubmitTextEncoding(XFA_TEXTENCODING eTextEncoding); + FX_BOOL SetSubmitXDPContent(const CFX_WideString& wsContent); +}; +class CXFA_Value : public CXFA_Data { + public: + CXFA_Value(CXFA_Node* pNode) : CXFA_Data(pNode) {} + + XFA_ELEMENT GetChildValueClassID(); + + FX_BOOL GetChildValueContent(CFX_WideString& wsContent); + CXFA_Arc GetArc(); + CXFA_Line GetLine(); + CXFA_Rectangle GetRectangle(); + CXFA_Text GetText(); + CXFA_ExData GetExData(); + CXFA_Image GetImage(); + FX_BOOL SetChildValueContent(const CFX_WideString& wsContent, + FX_BOOL bNotify = FALSE, + XFA_ELEMENT iType = XFA_ELEMENT_UNKNOWN); +}; +class CXFA_Line : public CXFA_Data { + public: + CXFA_Line(CXFA_Node* pNode) : CXFA_Data(pNode) {} + int32_t GetHand(); + FX_BOOL GetSlop(); + CXFA_Edge GetEdge(); + FX_BOOL SetHand(int32_t iHand); + FX_BOOL SetSlop(int32_t iSlop); +}; +class CXFA_Text : public CXFA_Data { + public: + CXFA_Text(CXFA_Node* pNode); + void GetName(CFX_WideStringC& wsName); + int32_t GetMaxChars(); + void GetRid(CFX_WideStringC& wsRid); + void GetContent(CFX_WideString& wsText); + void SetContent(CFX_WideString wsText, FX_BOOL bNotify = TRUE); + FX_BOOL SetName(const CFX_WideString& wsName); + FX_BOOL SetMaxChars(int32_t iMaxChars); + FX_BOOL SetRid(const CFX_WideString& wsRid); +}; +class CXFA_ExData : public CXFA_Data { + public: + CXFA_ExData(CXFA_Node* pNode); + void GetContentType(CFX_WideStringC& wsContentType); + void GetHref(CFX_WideStringC& wsHref); + int32_t GetMaxLength(); + void GetRid(CFX_WideStringC& wsRid); + int32_t GetTransferEncoding(); + void GetContent(CFX_WideString& wsText); + FX_BOOL SetContentType(const CFX_WideString& wsContentType); + FX_BOOL SetHref(const CFX_WideString& wsHref); + FX_BOOL SetMaxLength(int32_t iMaxLength); + FX_BOOL SetRid(const CFX_WideString& wsRid); + FX_BOOL SetTransferEncoding(int32_t iTransferEncoding); + FX_BOOL SetContent(const CFX_WideString& wsText, + FX_BOOL bNotify = FALSE, + FX_BOOL bScriptModify = FALSE, + FX_BOOL bSyncData = TRUE); +}; +class CXFA_Image : public CXFA_Data { + public: + CXFA_Image(CXFA_Node* pNode, FX_BOOL bDefValue); + int32_t GetAspect(); + FX_BOOL GetContentType(CFX_WideString& wsContentType); + FX_BOOL GetHref(CFX_WideString& wsHref); + int32_t GetTransferEncoding(); + FX_BOOL GetContent(CFX_WideString& wsText); + FX_BOOL SetAspect(int32_t iAspect); + FX_BOOL SetContentType(const CFX_WideString& wsContentType); + FX_BOOL SetHref(const CFX_WideString& wsHref); + FX_BOOL SetTransferEncoding(int32_t iTransferEncoding); + FX_BOOL SetContent(const CFX_WideString& wsText); + + protected: + FX_BOOL m_bDefValue; +}; +class CXFA_Calculate : public CXFA_Data { + public: + CXFA_Calculate(CXFA_Node* pNode); + + int32_t GetOverride(); + CXFA_Script GetScript(); + void GetMessageText(CFX_WideString& wsMessage); + FX_BOOL SetOverride(int32_t iOverride); + FX_BOOL SetMessageText(const CFX_WideString& wsMessage); +}; +class CXFA_Validate : public CXFA_Data { + public: + CXFA_Validate(CXFA_Node* pNode); + int32_t GetFormatTest(); + FX_BOOL SetFormatTest(CFX_WideString wsValue); + int32_t GetNullTest(); + FX_BOOL SetNullTest(CFX_WideString wsValue); + int32_t GetScriptTest(); + void GetFormatMessageText(CFX_WideString& wsMessage); + void SetFormatMessageText(CFX_WideString wsMessage); + void GetNullMessageText(CFX_WideString& wsMessage); + void SetNullMessageText(CFX_WideString wsMessage); + void GetScriptMessageText(CFX_WideString& wsMessage); + void SetScriptMessageText(CFX_WideString wsMessage); + void GetPicture(CFX_WideString& wsPicture); + CXFA_Script GetScript(); + + protected: + void GetMessageText(CFX_WideString& wsMessage, + const CFX_WideStringC& wsMessageType); + void SetMessageText(CFX_WideString& wsMessage, + const CFX_WideStringC& wsMessageType); + FX_BOOL SetTestValue(int32_t iType, + CFX_WideString& wsValue, + XFA_ATTRIBUTEENUM eName); +}; +class CXFA_Variables : public CXFA_Data { + public: + CXFA_Variables(CXFA_Node* pNode); + + int32_t CountScripts(); + CXFA_Script GetScript(int32_t nIndex); +}; +class CXFA_Bind : public CXFA_Data { + public: + CXFA_Bind(CXFA_Node* pNode); + int32_t GetMatch(); + void GetRef(CFX_WideStringC& wsRef); + void GetPicture(CFX_WideString& wsPicture); + FX_BOOL SetMatch(int32_t iMatch); + FX_BOOL SetRef(const CFX_WideString& wsRef); + FX_BOOL SetPicture(const CFX_WideString& wsPicture); +}; +class CXFA_Assist : public CXFA_Data { + public: + CXFA_Assist(CXFA_Node* pNode); + + CXFA_ToolTip GetToolTip(); +}; +class CXFA_ToolTip : public CXFA_Data { + public: + CXFA_ToolTip(CXFA_Node* pNode); + FX_BOOL GetTip(CFX_WideString& wsTip); + FX_BOOL SetTip(const CFX_WideString& wsTip); +}; +class CXFA_BindItems : public CXFA_Data { + public: + CXFA_BindItems(CXFA_Node* pNode); + void GetConnection(CFX_WideStringC& wsConnection); + void GetLabelRef(CFX_WideStringC& wsLabelRef); + void GetValueRef(CFX_WideStringC& wsValueRef); + void GetRef(CFX_WideStringC& wsRef); + FX_BOOL SetConnection(const CFX_WideString& wsConnection); + FX_BOOL SetLabelRef(const CFX_WideString& wsLabelRef); + FX_BOOL SetValueRef(const CFX_WideString& wsValueRef); + FX_BOOL SetRef(const CFX_WideString& wsRef); +}; +#define XFA_STROKE_SAMESTYLE_NoPresence 1 +#define XFA_STROKE_SAMESTYLE_Corner 2 +class CXFA_Stroke : public CXFA_Data { + public: + CXFA_Stroke(CXFA_Node* pNode) : CXFA_Data(pNode) {} + + FX_BOOL IsCorner() const { return GetClassID() == XFA_ELEMENT_Corner; } + + FX_BOOL IsEdge() const { return GetClassID() == XFA_ELEMENT_Edge; } + + int32_t GetPresence() const; + FX_BOOL IsVisible() const { + return GetPresence() == XFA_ATTRIBUTEENUM_Visible; + } + + int32_t GetCapType() const; + + int32_t GetStrokeType() const; + + FX_FLOAT GetThickness() const; + CXFA_Measurement GetMSThickness() const; + + void SetThickness(FX_FLOAT fThickness); + void SetMSThickness(CXFA_Measurement msThinkness); + + FX_ARGB GetColor() const; + + void SetColor(FX_ARGB argb); + + int32_t GetJoinType() const; + + FX_BOOL IsInverted() const; + + FX_FLOAT GetRadius() const; + + FX_BOOL SameStyles(CXFA_Stroke stroke, FX_DWORD dwFlags = 0) const; +}; +class CXFA_Corner : public CXFA_Stroke { + public: + CXFA_Corner(CXFA_Node* pNode) : CXFA_Stroke(pNode) {} +}; +class CXFA_Edge : public CXFA_Stroke { + public: + CXFA_Edge(CXFA_Node* pNode) : CXFA_Stroke(pNode) {} +}; +typedef CFX_ArrayTemplate<CXFA_Stroke> CXFA_StrokeArray; +typedef CFX_ArrayTemplate<CXFA_Edge> CXFA_EdgeArray; +typedef CFX_ArrayTemplate<CXFA_Corner> CXFA_CornerArray; +class CXFA_Box : public CXFA_Data { + public: + CXFA_Box(CXFA_Node* pNode) : CXFA_Data(pNode) {} + + FX_BOOL IsArc() const { return GetClassID() == XFA_ELEMENT_Arc; } + + FX_BOOL IsBorder() const { return GetClassID() == XFA_ELEMENT_Border; } + + FX_BOOL IsRectangle() const { return GetClassID() == XFA_ELEMENT_Rectangle; } + + int32_t GetBreak() const; + + int32_t GetHand() const; + + int32_t GetPresence() const; + + int32_t CountCorners() const; + + CXFA_Corner GetCorner(int32_t nIndex) const; + + int32_t CountEdges() const; + + CXFA_Edge GetEdge(int32_t nIndex = 0) const; + + void GetStrokes(CXFA_StrokeArray& strokes) const; + + FX_BOOL IsCircular() const; + + FX_BOOL GetStartAngle(FX_FLOAT& fStartAngle) const; + FX_FLOAT GetStartAngle() const { + FX_FLOAT fStartAngle; + GetStartAngle(fStartAngle); + return fStartAngle; + } + + FX_BOOL GetSweepAngle(FX_FLOAT& fSweepAngle) const; + FX_FLOAT GetSweepAngle() const { + FX_FLOAT fSweepAngle; + GetSweepAngle(fSweepAngle); + return fSweepAngle; + } + + CXFA_Fill GetFill(FX_BOOL bModified = FALSE) const; + + CXFA_Margin GetMargin() const; + + FX_BOOL SameStyles() const; + + int32_t Get3DStyle(FX_BOOL& bVisible, FX_FLOAT& fThickness) const; +}; +class CXFA_Arc : public CXFA_Box { + public: + CXFA_Arc(CXFA_Node* pNode) : CXFA_Box(pNode) {} +}; +class CXFA_Border : public CXFA_Box { + public: + CXFA_Border(CXFA_Node* pNode) : CXFA_Box(pNode) {} +}; +class CXFA_Rectangle : public CXFA_Box { + public: + CXFA_Rectangle(CXFA_Node* pNode) : CXFA_Box(pNode) {} +}; +enum XFA_CHECKSTATE { + XFA_CHECKSTATE_On = 0, + XFA_CHECKSTATE_Off = 1, + XFA_CHECKSTATE_Neutral = 2, +}; +enum XFA_VALUEPICTURE { + XFA_VALUEPICTURE_Raw = 0, + XFA_VALUEPICTURE_Display, + XFA_VALUEPICTURE_Edit, + XFA_VALUEPICTURE_DataBind, +}; +class CXFA_WidgetData : public CXFA_Data { + public: + CXFA_WidgetData(CXFA_Node* pNode); + CXFA_Node* GetUIChild(); + + XFA_ELEMENT GetUIType(); + CFX_WideString GetRawValue(); + int32_t GetAccess(FX_BOOL bTemplate = FALSE); + FX_BOOL GetAccessKey(CFX_WideStringC& wsAccessKey); + int32_t GetAnchorType(); + int32_t GetColSpan(); + int32_t GetPresence(); + int32_t GetRotate(); + CXFA_Border GetBorder(FX_BOOL bModified = FALSE); + CXFA_Caption GetCaption(FX_BOOL bModified = FALSE); + CXFA_Font GetFont(FX_BOOL bModified = FALSE); + CXFA_Margin GetMargin(FX_BOOL bModified = FALSE); + CXFA_Para GetPara(FX_BOOL bModified = FALSE); + CXFA_Keep GetKeep(FX_BOOL bModified = FALSE); + void GetEventList(CXFA_NodeArray& events); + int32_t GetEventByActivity(int32_t iActivity, + CXFA_NodeArray& events, + FX_BOOL bIsFormReady = FALSE); + CXFA_Value GetDefaultValue(FX_BOOL bModified = FALSE); + CXFA_Value GetFormValue(FX_BOOL bModified = FALSE); + CXFA_Calculate GetCalculate(FX_BOOL bModified = FALSE); + CXFA_Validate GetValidate(FX_BOOL bModified = FALSE); + CXFA_Variables GetVariables(FX_BOOL bModified = FALSE); + CXFA_Bind GetBind(FX_BOOL bModified = FALSE); + CXFA_Assist GetAssist(FX_BOOL bModified = FALSE); + void GetRelevant(CFX_WideStringC& wsRelevant); + FX_DWORD GetRelevantStatus(); + FX_BOOL GetWidth(FX_FLOAT& fWidth); + FX_BOOL GetHeight(FX_FLOAT& fHeight); + FX_BOOL GetMinWidth(FX_FLOAT& fMinWidth); + FX_BOOL GetMinHeight(FX_FLOAT& fMinHeight); + FX_BOOL GetMaxWidth(FX_FLOAT& fMaxWidth); + FX_BOOL GetMaxHeight(FX_FLOAT& fMaxHeight); + CXFA_BindItems GetBindItems(); + FX_BOOL SetAccess(int32_t iAccess, FX_BOOL bNotify = TRUE); + FX_BOOL SetAccessKey(const CFX_WideString& wsAccessKey); + FX_BOOL SetAnchorType(int32_t iType); + FX_BOOL SetColSpan(int32_t iColSpan); + FX_BOOL SetPresence(int32_t iPresence); + FX_BOOL SetRotate(int32_t iRotate); + FX_BOOL SetRelevant(const CFX_WideString& wsRelevant); + FX_BOOL SetStatus(FX_DWORD dwStatus); + FX_BOOL SetWidth(FX_FLOAT fWidth); + FX_BOOL SetHeight(FX_FLOAT fHeight); + FX_BOOL SetMinWidth(FX_FLOAT fMinWidth); + FX_BOOL SetMinHeight(FX_FLOAT fMinHeight); + FX_BOOL SetMaxWidth(FX_FLOAT fMaxWidth); + FX_BOOL SetMaxHeight(FX_FLOAT fMaxHeight); + FX_BOOL SetPos(FX_FLOAT x, FX_FLOAT y); + FX_BOOL SetName(const CFX_WideString& wsName); + FX_BOOL SetButtonHighlight(int32_t iButtonHighlight); + FX_BOOL SetButtonRollover(const CFX_WideString& wsRollover, + FX_BOOL bRichText); + FX_BOOL SetButtonDown(const CFX_WideString& wsDown, FX_BOOL bRichText); + FX_BOOL SetCheckButtonShape(int32_t iCheckButtonShape); + FX_BOOL SetCheckButtonMark(int32_t iCheckButtonMark); + FX_BOOL SetCheckButtonSize(FX_FLOAT fCheckButtonMark); + CXFA_Border GetUIBorder(FX_BOOL bModified = FALSE); + CXFA_Margin GetUIMargin(FX_BOOL bModified = FALSE); + void GetUIMargin(CFX_RectF& rtUIMargin); + int32_t GetButtonHighlight(); + FX_BOOL GetButtonRollover(CFX_WideString& wsRollover, FX_BOOL& bRichText); + FX_BOOL GetButtonDown(CFX_WideString& wsDown, FX_BOOL& bRichText); + int32_t GetCheckButtonShape(); + int32_t GetCheckButtonMark(); + FX_FLOAT GetCheckButtonSize(); + FX_BOOL IsAllowNeutral(); + FX_BOOL IsRadioButton(); + XFA_CHECKSTATE GetCheckState(); + void SetCheckState(XFA_CHECKSTATE eCheckState, FX_BOOL bNotify = TRUE); + CXFA_Node* GetExclGroupNode(); + CXFA_Node* GetSelectedMember(); + CXFA_Node* SetSelectedMember(const CFX_WideStringC& wsName, + FX_BOOL bNotify = TRUE); + void SetSelectedMemberByValue(const CFX_WideStringC& wsValue, + FX_BOOL bNotify = TRUE, + FX_BOOL bScriptModify = FALSE, + FX_BOOL bSyncData = TRUE); + CXFA_Node* GetExclGroupFirstMember(); + CXFA_Node* GetExclGroupNextMember(CXFA_Node* pNode); + int32_t GetChoiceListCommitOn(); + FX_BOOL IsChoiceListAllowTextEntry(); + int32_t GetChoiceListOpen(); + FX_BOOL IsListBox(); + int32_t CountChoiceListItems(FX_BOOL bSaveValue = FALSE); + FX_BOOL GetChoiceListItem(CFX_WideString& wsText, + int32_t nIndex, + FX_BOOL bSaveValue = FALSE); + void GetChoiceListItems(CFX_WideStringArray& wsTextArray, + FX_BOOL bSaveValue = FALSE); + int32_t CountSelectedItems(); + int32_t GetSelectedItem(int32_t nIndex = 0); + void GetSelectedItems(CFX_Int32Array& iSelArray); + void GetSelectedItemsValue(CFX_WideStringArray& wsSelTextArray); + FX_BOOL GetItemState(int32_t nIndex); + void SetItemState(int32_t nIndex, + FX_BOOL bSelected, + FX_BOOL bNotify = FALSE, + FX_BOOL bScriptModify = FALSE, + FX_BOOL bSyncData = TRUE); + void SetSelectdItems(CFX_Int32Array& iSelArray, + FX_BOOL bNotify = FALSE, + FX_BOOL bScriptModify = FALSE, + FX_BOOL bSyncData = TRUE); + void ClearAllSelections(); + void InsertItem(const CFX_WideString& wsLabel, + const CFX_WideString& wsValue, + int32_t nIndex = -1, + FX_BOOL bNotify = FALSE); + void GetItemLabel(const CFX_WideStringC& wsValue, CFX_WideString& wsLabel); + void GetItemValue(const CFX_WideStringC& wsLabel, CFX_WideString& wsValue); + FX_BOOL DeleteItem(int32_t nIndex, + FX_BOOL bNotify = FALSE, + FX_BOOL bScriptModify = FALSE, + FX_BOOL bSyncData = TRUE); + int32_t GetHorizontalScrollPolicy(); + int32_t GetNumberOfCells(); + FX_BOOL IsDateTimeEditUsePicker(); + FX_BOOL SetValue(const CFX_WideString& wsValue, XFA_VALUEPICTURE eValueType); + FX_BOOL GetPictureContent(CFX_WideString& wsPicture, + XFA_VALUEPICTURE ePicture); + IFX_Locale* GetLocal(); + FX_BOOL GetValue(CFX_WideString& wsValue, XFA_VALUEPICTURE eValueType); + FX_BOOL GetNormalizeDataValue(const CFX_WideStringC& wsValue, + CFX_WideString& wsNormalizeValue); + FX_BOOL GetFormatDataValue(const CFX_WideStringC& wsValue, + CFX_WideString& wsFormatedValue); + void NormalizeNumStr(const CFX_WideString& wsValue, CFX_WideString& wsOutput); + CFX_WideString GetBarcodeType(); + FX_BOOL GetBarcodeAttribute_CharEncoding(int32_t& val); + FX_BOOL GetBarcodeAttribute_Checksum(int32_t& val); + FX_BOOL GetBarcodeAttribute_DataLength(int32_t& val); + FX_BOOL GetBarcodeAttribute_StartChar(FX_CHAR& val); + FX_BOOL GetBarcodeAttribute_EndChar(FX_CHAR& val); + FX_BOOL GetBarcodeAttribute_ECLevel(int32_t& val); + FX_BOOL GetBarcodeAttribute_ModuleWidth(int32_t& val); + FX_BOOL GetBarcodeAttribute_ModuleHeight(int32_t& val); + FX_BOOL GetBarcodeAttribute_PrintChecksum(FX_BOOL& val); + FX_BOOL GetBarcodeAttribute_TextLocation(int32_t& val); + FX_BOOL GetBarcodeAttribute_Truncate(FX_BOOL& val); + FX_BOOL GetBarcodeAttribute_WideNarrowRatio(FX_FLOAT& val); + void GetPasswordChar(CFX_WideString& wsPassWord); + FX_BOOL IsAllowRichText(); + FX_BOOL IsMultiLine(); + int32_t GetVerticalScrollPolicy(); + int32_t GetMaxChars(XFA_ELEMENT& eType); + FX_BOOL GetFracDigits(int32_t& iFracDigits); + FX_BOOL GetLeadDigits(int32_t& iLeadDigits); + CXFA_Filter GetFilter(FX_BOOL bModified = FALSE); + CXFA_Manifest GetManifest(FX_BOOL bModified = FALSE); + + FX_BOOL m_bIsNull; + FX_BOOL m_bPreNull; + + protected: + void SyncValue(const CFX_WideString& wsValue, FX_BOOL bNotify); + void InsertListTextItem(CXFA_Node* pItems, + const CFX_WideStringC& wsText, + int32_t nIndex = -1); + void FormatNumStr(const CFX_WideString& wsValue, + IFX_Locale* pLocale, + CFX_WideString& wsOutput); + + CXFA_Node* m_pUiChildNode; + XFA_ELEMENT m_eUIType; +}; +class CXFA_Occur : public CXFA_Data { + public: + CXFA_Occur(CXFA_Node* pNode); + int32_t GetMax(); + int32_t GetMin(); + int32_t GetInitial(); + FX_BOOL GetOccurInfo(int32_t& iMin, int32_t& iMax, int32_t& iInit); + void SetMax(int32_t iMax); + void SetMin(int32_t iMin); +}; +class CXFA_Filter : public CXFA_Data { + public: + CXFA_Filter(CXFA_Node* pNode) : CXFA_Data(pNode) {} + CFX_WideString GetFilterString(XFA_ATTRIBUTE eAttribute); + XFA_ATTRIBUTEENUM GetAppearanceFilterType(); + CFX_WideString GetAppearanceFilterContent(); + XFA_ATTRIBUTEENUM GetCertificatesCredentialServerPolicy(); + CFX_WideString GetCertificatesURL(); + CFX_WideString GetCertificatesURLPolicy(); + CXFA_WrapCertificate GetCertificatesEncryption(FX_BOOL bModified = FALSE); + CXFA_WrapCertificate GetCertificatesIssuers(FX_BOOL bModified = FALSE); + CFX_WideString GetCertificatesKeyUsageString(XFA_ATTRIBUTE eAttribute); + CXFA_Oids GetCertificatesOids(); + CXFA_WrapCertificate GetCertificatesSigning(FX_BOOL bModified = FALSE); + CXFA_DigestMethods GetDigestMethods(FX_BOOL bModified = FALSE); + CXFA_Encodings GetEncodings(FX_BOOL bModified = FALSE); + CXFA_EncryptionMethods GetEncryptionMethods(FX_BOOL bModified = FALSE); + XFA_ATTRIBUTEENUM GetHandlerType(); + CFX_WideString GetHandlerContent(); + XFA_ATTRIBUTEENUM GetlockDocumentType(); + CFX_WideString GetlockDocumentContent(); + int32_t GetMDPPermissions(); + XFA_ATTRIBUTEENUM GetMDPSignatureType(); + + CXFA_Reasons GetReasons(FX_BOOL bModified = FALSE); + CFX_WideString GetTimeStampServer(); + XFA_ATTRIBUTEENUM GetTimeStampType(); +}; +class CXFA_Certificate : public CXFA_Data { + public: + CXFA_Certificate(CXFA_Node* pNode) : CXFA_Data(pNode) {} + CFX_WideString GetCertificateName(); + CFX_WideString GetCertificateContent(); +}; +class CXFA_WrapCertificate : public CXFA_Data { + public: + CXFA_WrapCertificate(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetType(); + int32_t CountCertificates(); + CXFA_Certificate GetCertificate(int32_t nIndex); +}; +class CXFA_Oids : public CXFA_Data { + public: + CXFA_Oids(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetOidsType(); + int32_t CountOids(); + CFX_WideString GetOidContent(int32_t nIndex); +}; +class CXFA_SubjectDNs : public CXFA_Data { + public: + CXFA_SubjectDNs(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetSubjectDNsType(); + int32_t CountSubjectDNs(); + CFX_WideString GetSubjectDNString(int32_t nIndex, XFA_ATTRIBUTE eAttribute); + CFX_WideString GetSubjectDNContent(int32_t nIndex); +}; +class CXFA_DigestMethods : public CXFA_Data { + public: + CXFA_DigestMethods(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetDigestMethodsType(); + int32_t CountDigestMethods(); + CFX_WideString GetDigestMethodContent(int32_t nIndex); +}; +class CXFA_Encodings : public CXFA_Data { + public: + CXFA_Encodings(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetEncodingsType(); + int32_t CountEncodings(); + CFX_WideString GetEncodingContent(int32_t nIndex); +}; +class CXFA_EncryptionMethods : public CXFA_Data { + public: + CXFA_EncryptionMethods(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetEncryptionMethodsType(); + int32_t CountEncryptionMethods(); + CFX_WideString GetEncryptionMethodContent(int32_t nIndex); +}; +class CXFA_Reasons : public CXFA_Data { + public: + CXFA_Reasons(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetReasonsType(); + int32_t CountReasons(); + CFX_WideString GetReasonContent(int32_t nIndex); +}; +class CXFA_Manifest : public CXFA_Data { + public: + CXFA_Manifest(CXFA_Node* pNode) : CXFA_Data(pNode) {} + XFA_ATTRIBUTEENUM GetAction(); + int32_t CountReives(); + CFX_WideString GetRefContent(int32_t nIndex); +}; + +#endif // FXFA_OBJECTACC_H_ diff --git a/xfa/include/fxfa/fxfa_widget.h b/xfa/include/fxfa/fxfa_widget.h index 3040dafcbc..eda5e5769a 100644 --- a/xfa/include/fxfa/fxfa_widget.h +++ b/xfa/include/fxfa/fxfa_widget.h @@ -1,118 +1,118 @@ -// Copyright 2014 PDFium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
-
-#ifndef _FXFA_WIDGET_H
-#define _FXFA_WIDGET_H
-class CXFA_Node;
-class CXFA_FFDocView;
-class CXFA_FFDoc;
-class CXFA_FFApp;
-class CXFA_Node;
-class CXFA_EventParam;
-class CXFA_FFWidget;
-class CXFA_TextLayout;
-class CXFA_TextProvider;
-class CXFA_WidgetLayoutData;
-class IFX_Font;
-class CXFA_WidgetAcc;
-#include "fxfa_objectacc.h"
-class CXFA_WidgetAcc : public CXFA_WidgetData {
- public:
- CXFA_WidgetAcc(CXFA_FFDocView* pDocView, CXFA_Node* pNode);
- ~CXFA_WidgetAcc();
-
- FX_BOOL GetName(CFX_WideString& wsName, int32_t iNameType = 0);
- FX_BOOL ProcessValueChanged();
-
- public:
- void ResetData();
-
- void SetImageEdit(const CFX_WideStringC& wsContentType,
- const CFX_WideStringC& wsHref,
- const CFX_WideStringC& wsData);
-
- CXFA_WidgetAcc* GetExclGroup();
- CXFA_FFDocView* GetDocView();
- CXFA_FFDoc* GetDoc();
- CXFA_FFApp* GetApp();
- IXFA_AppProvider* GetAppProvider();
-
- int32_t ProcessEvent(int32_t iActivity, CXFA_EventParam* pEventParam);
- int32_t ProcessEvent(CXFA_Event& event, CXFA_EventParam* pEventParam);
- int32_t ProcessCalculate();
- int32_t ProcessValidate(int32_t iFlags = 0);
- int32_t ExecuteScript(CXFA_Script script,
- CXFA_EventParam* pEventParam,
- FXJSE_HVALUE* pRetValue = NULL);
-
- CXFA_FFWidget* GetNextWidget(CXFA_FFWidget* pWidget);
- void StartWidgetLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight);
- FX_BOOL FindSplitPos(int32_t iBlockIndex, FX_FLOAT& fCalcHeight);
- FX_BOOL LoadCaption();
- void LoadText();
- FX_BOOL LoadImageImage();
- FX_BOOL LoadImageEditImage();
- void GetImageDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
- void GetImageEditDpi(int32_t& iImageXDpi, int32_t& iImageYDpi);
- CXFA_TextLayout* GetCaptionTextLayout();
- CXFA_TextLayout* GetTextLayout();
- CFX_DIBitmap* GetImageImage();
- CFX_DIBitmap* GetImageEditImage();
- void SetImageImage(CFX_DIBitmap* newImage);
- void SetImageEditImage(CFX_DIBitmap* newImage);
- void UpdateUIDisplay(CXFA_FFWidget* pExcept = NULL);
- void NotifyEvent(FX_DWORD dwEvent,
- CXFA_FFWidget* pWidget = NULL,
- void* pParam = NULL,
- void* pAdditional = NULL);
-
- CXFA_Node* GetDatasets();
- IFX_Font* GetFDEFont();
- FX_FLOAT GetFontSize();
- FX_ARGB GetTextColor();
- FX_FLOAT GetLineHeight();
- CXFA_WidgetLayoutData* GetWidgetLayoutData();
-
- protected:
- void ProcessScriptTestValidate(CXFA_Validate validate,
- int32_t iRet,
- FXJSE_HVALUE pRetValue,
- FX_BOOL bVersionFlag);
- int32_t ProcessFormatTestValidate(CXFA_Validate validate,
- FX_BOOL bVersionFlag);
- int32_t ProcessNullTestValidate(CXFA_Validate validate,
- int32_t iFlags,
- FX_BOOL bVersionFlag);
- void GetValidateCaptionName(CFX_WideString& wsCaptionName,
- FX_BOOL bVersionFlag);
- void GetValidateMessage(IXFA_AppProvider* pAppProvider,
- CFX_WideString& wsMessage,
- FX_BOOL bError,
- FX_BOOL bVersionFlag);
- void CalcCaptionSize(CFX_SizeF& szCap);
- FX_BOOL CalculateFieldAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateWidgetAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateTextEditAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateCheckButtonAutoSize(CFX_SizeF& size);
- FX_BOOL CalculatePushButtonAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateImageEditAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateImageAutoSize(CFX_SizeF& size);
- FX_BOOL CalculateTextAutoSize(CFX_SizeF& size);
- FX_FLOAT CalculateWidgetAutoHeight(FX_FLOAT fHeightCalc);
- FX_FLOAT CalculateWidgetAutoWidth(FX_FLOAT fWidthCalc);
- FX_FLOAT GetWidthWithoutMargin(FX_FLOAT fWidthCalc);
- FX_FLOAT GetHeightWithoutMargin(FX_FLOAT fHeightCalc);
- void CalculateTextContentSize(CFX_SizeF& size);
- void CalculateAccWidthAndHeight(XFA_ELEMENT eUIType,
- FX_FLOAT& fWidth,
- FX_FLOAT& fCalcHeight);
- void InitLayoutData();
- void StartTextLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight);
- CXFA_FFDocView* m_pDocView;
- CXFA_WidgetLayoutData* m_pLayoutData;
- uint32_t m_nRecursionDepth;
-};
-#endif
+// Copyright 2014 PDFium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com + +#ifndef _FXFA_WIDGET_H +#define _FXFA_WIDGET_H +class CXFA_Node; +class CXFA_FFDocView; +class CXFA_FFDoc; +class CXFA_FFApp; +class CXFA_Node; +class CXFA_EventParam; +class CXFA_FFWidget; +class CXFA_TextLayout; +class CXFA_TextProvider; +class CXFA_WidgetLayoutData; +class IFX_Font; +class CXFA_WidgetAcc; +#include "fxfa_objectacc.h" +class CXFA_WidgetAcc : public CXFA_WidgetData { + public: + CXFA_WidgetAcc(CXFA_FFDocView* pDocView, CXFA_Node* pNode); + ~CXFA_WidgetAcc(); + + FX_BOOL GetName(CFX_WideString& wsName, int32_t iNameType = 0); + FX_BOOL ProcessValueChanged(); + + public: + void ResetData(); + + void SetImageEdit(const CFX_WideStringC& wsContentType, + const CFX_WideStringC& wsHref, + const CFX_WideStringC& wsData); + + CXFA_WidgetAcc* GetExclGroup(); + CXFA_FFDocView* GetDocView(); + CXFA_FFDoc* GetDoc(); + CXFA_FFApp* GetApp(); + IXFA_AppProvider* GetAppProvider(); + + int32_t ProcessEvent(int32_t iActivity, CXFA_EventParam* pEventParam); + int32_t ProcessEvent(CXFA_Event& event, CXFA_EventParam* pEventParam); + int32_t ProcessCalculate(); + int32_t ProcessValidate(int32_t iFlags = 0); + int32_t ExecuteScript(CXFA_Script script, + CXFA_EventParam* pEventParam, + FXJSE_HVALUE* pRetValue = NULL); + + CXFA_FFWidget* GetNextWidget(CXFA_FFWidget* pWidget); + void StartWidgetLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight); + FX_BOOL FindSplitPos(int32_t iBlockIndex, FX_FLOAT& fCalcHeight); + FX_BOOL LoadCaption(); + void LoadText(); + FX_BOOL LoadImageImage(); + FX_BOOL LoadImageEditImage(); + void GetImageDpi(int32_t& iImageXDpi, int32_t& iImageYDpi); + void GetImageEditDpi(int32_t& iImageXDpi, int32_t& iImageYDpi); + CXFA_TextLayout* GetCaptionTextLayout(); + CXFA_TextLayout* GetTextLayout(); + CFX_DIBitmap* GetImageImage(); + CFX_DIBitmap* GetImageEditImage(); + void SetImageImage(CFX_DIBitmap* newImage); + void SetImageEditImage(CFX_DIBitmap* newImage); + void UpdateUIDisplay(CXFA_FFWidget* pExcept = NULL); + void NotifyEvent(FX_DWORD dwEvent, + CXFA_FFWidget* pWidget = NULL, + void* pParam = NULL, + void* pAdditional = NULL); + + CXFA_Node* GetDatasets(); + IFX_Font* GetFDEFont(); + FX_FLOAT GetFontSize(); + FX_ARGB GetTextColor(); + FX_FLOAT GetLineHeight(); + CXFA_WidgetLayoutData* GetWidgetLayoutData(); + + protected: + void ProcessScriptTestValidate(CXFA_Validate validate, + int32_t iRet, + FXJSE_HVALUE pRetValue, + FX_BOOL bVersionFlag); + int32_t ProcessFormatTestValidate(CXFA_Validate validate, + FX_BOOL bVersionFlag); + int32_t ProcessNullTestValidate(CXFA_Validate validate, + int32_t iFlags, + FX_BOOL bVersionFlag); + void GetValidateCaptionName(CFX_WideString& wsCaptionName, + FX_BOOL bVersionFlag); + void GetValidateMessage(IXFA_AppProvider* pAppProvider, + CFX_WideString& wsMessage, + FX_BOOL bError, + FX_BOOL bVersionFlag); + void CalcCaptionSize(CFX_SizeF& szCap); + FX_BOOL CalculateFieldAutoSize(CFX_SizeF& size); + FX_BOOL CalculateWidgetAutoSize(CFX_SizeF& size); + FX_BOOL CalculateTextEditAutoSize(CFX_SizeF& size); + FX_BOOL CalculateCheckButtonAutoSize(CFX_SizeF& size); + FX_BOOL CalculatePushButtonAutoSize(CFX_SizeF& size); + FX_BOOL CalculateImageEditAutoSize(CFX_SizeF& size); + FX_BOOL CalculateImageAutoSize(CFX_SizeF& size); + FX_BOOL CalculateTextAutoSize(CFX_SizeF& size); + FX_FLOAT CalculateWidgetAutoHeight(FX_FLOAT fHeightCalc); + FX_FLOAT CalculateWidgetAutoWidth(FX_FLOAT fWidthCalc); + FX_FLOAT GetWidthWithoutMargin(FX_FLOAT fWidthCalc); + FX_FLOAT GetHeightWithoutMargin(FX_FLOAT fHeightCalc); + void CalculateTextContentSize(CFX_SizeF& size); + void CalculateAccWidthAndHeight(XFA_ELEMENT eUIType, + FX_FLOAT& fWidth, + FX_FLOAT& fCalcHeight); + void InitLayoutData(); + void StartTextLayout(FX_FLOAT& fCalcWidth, FX_FLOAT& fCalcHeight); + CXFA_FFDocView* m_pDocView; + CXFA_WidgetLayoutData* m_pLayoutData; + uint32_t m_nRecursionDepth; +}; +#endif |