diff options
-rw-r--r-- | xfa/fxfa/include/fxfa_basic.h | 1 | ||||
-rw-r--r-- | xfa/fxfa/parser/xfa_basic_data.cpp | 301 | ||||
-rw-r--r-- | xfa/fxfa/parser/xfa_basic_imp.cpp | 9 |
3 files changed, 13 insertions, 298 deletions
diff --git a/xfa/fxfa/include/fxfa_basic.h b/xfa/fxfa/include/fxfa_basic.h index 05e152acac..fc5b931895 100644 --- a/xfa/fxfa/include/fxfa_basic.h +++ b/xfa/fxfa/include/fxfa_basic.h @@ -987,7 +987,6 @@ struct XFA_SCRIPTHIERARCHY { int16_t wParentIndex; }; -const uint16_t* XFA_GetElementChildren(XFA_ELEMENT eElement, int32_t& iCount); const uint8_t* XFA_GetElementAttributes(XFA_ELEMENT eElement, int32_t& iCount); const XFA_ATTRIBUTEINFO* XFA_GetAttributeOfElement(XFA_ELEMENT eElement, diff --git a/xfa/fxfa/parser/xfa_basic_data.cpp b/xfa/fxfa/parser/xfa_basic_data.cpp index a2ffe4c6c1..82ca8d87f5 100644 --- a/xfa/fxfa/parser/xfa_basic_data.cpp +++ b/xfa/fxfa/parser/xfa_basic_data.cpp @@ -292,6 +292,7 @@ const XFA_ATTRIBUTEENUMINFO g_XFAEnumData[] = { }; const int32_t g_iXFAEnumCount = sizeof(g_XFAEnumData) / sizeof(XFA_ATTRIBUTEENUMINFO); + static const CXFA_Measurement g_XFAMeasurementData[] = { CXFA_Measurement(0, XFA_UNIT_In), CXFA_Measurement(0, XFA_UNIT_Pt), @@ -303,6 +304,7 @@ static const CXFA_Measurement g_XFAMeasurementData[] = { CXFA_Measurement(360, XFA_UNIT_Angle), CXFA_Measurement(0.5, XFA_UNIT_Pt), }; + const XFA_ATTRIBUTEINFO g_XFAAttributeData[] = { {0x68, L"h", XFA_ATTRIBUTE_H, XFA_ATTRIBUTETYPE_Measure, XFA_XDPPACKET_Template | XFA_XDPPACKET_Form, @@ -968,6 +970,7 @@ const XFA_ATTRIBUTEINFO g_XFAAttributeData[] = { }; const int32_t g_iXFAAttributeCount = sizeof(g_XFAAttributeData) / sizeof(XFA_ATTRIBUTEINFO); + const XFA_NOTSUREATTRIBUTE g_XFANotsureAttributes[] = { {XFA_ELEMENT_SubformSet, XFA_ATTRIBUTE_Relation, XFA_ATTRIBUTETYPE_Enum, (void*)XFA_ATTRIBUTEENUM_Ordered}, @@ -1067,6 +1070,7 @@ const XFA_NOTSUREATTRIBUTE g_XFANotsureAttributes[] = { }; const int32_t g_iXFANotsureCount = sizeof(g_XFANotsureAttributes) / sizeof(XFA_NOTSUREATTRIBUTE); + const XFA_ELEMENTINFO g_XFAElementData[] = { {0x23ee3, L"ps", XFA_ELEMENT_Ps, XFA_XDPPACKET_Config, XFA_OBJECTTYPE_Node}, {0x25363, L"to", XFA_ELEMENT_To, XFA_XDPPACKET_Config, @@ -1717,6 +1721,7 @@ const XFA_ELEMENTINFO g_XFAElementData[] = { }; const int32_t g_iXFAElementCount = sizeof(g_XFAElementData) / sizeof(XFA_ELEMENTINFO); + const XFA_ELEMENTHIERARCHY g_XFAElementPropertyIndex[] = { {0, 8}, {8, 0}, {8, 14}, {22, 0}, {22, 0}, {22, 6}, {28, 0}, {28, 0}, {28, 1}, {29, 3}, {32, 0}, {32, 0}, {32, 0}, {32, 3}, @@ -1764,6 +1769,7 @@ const XFA_ELEMENTHIERARCHY g_XFAElementPropertyIndex[] = { {423, 0}, {423, 1}, {424, 1}, {425, 0}, {425, 1}, {426, 0}, {426, 0}, {426, 0}, {426, 0}, {426, 0}, {426, 0}, }; + const XFA_PROPERTY g_XFAElementPropertyData[] = { {XFA_ELEMENT_FontInfo, 1, 0}, {XFA_ELEMENT_Jog, 1, 0}, @@ -2193,295 +2199,7 @@ const XFA_PROPERTY g_XFAElementPropertyData[] = { {XFA_ELEMENT_Extras, 1, 0}, {XFA_ELEMENT_Month, 12, 0}, }; -const XFA_ELEMENTHIERARCHY g_XFAElementChildrenIndex[] = { - {0, 0}, {0, 0}, {0, 0}, {0, 1}, {1, 0}, {1, 4}, {5, 0}, - {5, 0}, {5, 0}, {5, 3}, {8, 0}, {8, 0}, {8, 0}, {8, 0}, - {8, 0}, {8, 1}, {9, 0}, {9, 0}, {9, 0}, {9, 0}, {9, 0}, - {9, 0}, {9, 2}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, - {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, - {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, - {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 0}, {11, 8}, {19, 0}, - {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 0}, - {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 0}, {19, 1}, - {20, 1}, {21, 1}, {22, 0}, {22, 0}, {22, 0}, {22, 0}, {22, 0}, - {22, 0}, {22, 0}, {22, 0}, {22, 0}, {22, 0}, {22, 7}, {29, 0}, - {29, 0}, {29, 0}, {29, 0}, {29, 0}, {29, 0}, {29, 1}, {30, 1}, - {31, 0}, {31, 0}, {31, 0}, {31, 0}, {31, 0}, {31, 0}, {31, 0}, - {31, 0}, {31, 0}, {31, 4}, {35, 2}, {37, 0}, {37, 0}, {37, 0}, - {37, 0}, {37, 0}, {37, 0}, {37, 0}, {37, 0}, {37, 0}, {37, 0}, - {37, 0}, {37, 0}, {37, 0}, {37, 0}, {37, 4}, {41, 0}, {41, 0}, - {41, 0}, {41, 0}, {41, 0}, {41, 0}, {41, 2}, {43, 0}, {43, 0}, - {43, 0}, {43, 0}, {43, 0}, {43, 0}, {43, 0}, {43, 0}, {43, 0}, - {43, 13}, {56, 0}, {56, 0}, {56, 1}, {57, 0}, {57, 0}, {57, 0}, - {57, 0}, {57, 0}, {57, 0}, {57, 0}, {57, 0}, {57, 0}, {57, 0}, - {57, 0}, {57, 1}, {58, 0}, {58, 1}, {59, 0}, {59, 0}, {59, 0}, - {59, 1}, {60, 0}, {60, 0}, {60, 0}, {60, 0}, {60, 0}, {60, 0}, - {60, 0}, {60, 0}, {60, 1}, {61, 0}, {61, 0}, {61, 0}, {61, 1}, - {62, 0}, {62, 2}, {64, 0}, {64, 0}, {64, 0}, {64, 0}, {64, 0}, - {64, 0}, {64, 0}, {64, 0}, {64, 0}, {64, 0}, {64, 0}, {64, 0}, - {64, 1}, {65, 1}, {66, 1}, {67, 0}, {67, 1}, {68, 0}, {68, 0}, - {68, 0}, {68, 0}, {68, 0}, {68, 0}, {68, 0}, {68, 0}, {68, 6}, - {74, 0}, {74, 1}, {75, 0}, {75, 0}, {75, 0}, {75, 0}, {75, 0}, - {75, 0}, {75, 0}, {75, 0}, {75, 0}, {75, 1}, {76, 0}, {76, 0}, - {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, - {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, - {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, - {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, {76, 0}, - {76, 0}, {76, 0}, {76, 0}, {76, 2}, {78, 0}, {78, 0}, {78, 0}, - {78, 1}, {79, 0}, {79, 0}, {79, 1}, {80, 0}, {80, 0}, {80, 1}, - {81, 0}, {81, 0}, {81, 1}, {82, 0}, {82, 0}, {82, 0}, {82, 0}, - {82, 0}, {82, 0}, {82, 0}, {82, 0}, {82, 0}, {82, 0}, {82, 1}, - {83, 0}, {83, 0}, {83, 0}, {83, 0}, {83, 0}, {83, 0}, {83, 11}, - {94, 0}, {94, 0}, {94, 0}, {94, 0}, {94, 0}, {94, 11}, {105, 106}, - {211, 0}, {211, 0}, {211, 1}, {212, 0}, {212, 3}, {215, 1}, {216, 0}, - {216, 0}, {216, 0}, {216, 0}, {216, 0}, {216, 0}, {216, 0}, {216, 0}, - {216, 0}, {216, 0}, {216, 0}, {216, 0}, {216, 0}, {216, 12}, {228, 0}, - {228, 0}, {228, 0}, {228, 0}, {228, 0}, {228, 0}, {228, 0}, {228, 0}, - {228, 0}, {228, 2}, {230, 0}, {230, 0}, {230, 0}, {230, 0}, {230, 0}, - {230, 0}, {230, 0}, {230, 0}, {230, 10}, -}; -const uint16_t g_XFAElementChildrenData[] = { - XFA_ELEMENT_Extras, - XFA_ELEMENT_SubformSet, - XFA_ELEMENT_BreakBefore, - XFA_ELEMENT_Subform, - XFA_ELEMENT_BreakAfter, - XFA_ELEMENT_AlwaysEmbed, - XFA_ELEMENT_DefaultTypeface, - XFA_ELEMENT_NeverEmbed, - XFA_ELEMENT_Source, - XFA_ELEMENT_Equate, - XFA_ELEMENT_EquateRange, - XFA_ELEMENT_Ps, - XFA_ELEMENT_Pcl, - XFA_ELEMENT_Pdf, - XFA_ELEMENT_Zpl, - XFA_ELEMENT_LabelPrinter, - XFA_ELEMENT_WebClient, - XFA_ELEMENT_SubmitUrl, - XFA_ELEMENT_Driver, - XFA_ELEMENT_Typeface, - XFA_ELEMENT_SubjectDN, - XFA_ELEMENT_Certificate, - XFA_ELEMENT_SubformSet, - XFA_ELEMENT_Area, - XFA_ELEMENT_Field, - XFA_ELEMENT_ExclGroup, - XFA_ELEMENT_Subform, - XFA_ELEMENT_Draw, - XFA_ELEMENT_ExObject, - XFA_ELEMENT_EncryptionMethod, - XFA_ELEMENT_Ref, - XFA_ELEMENT_Event, - XFA_ELEMENT_SetProperty, - XFA_ELEMENT_BindItems, - XFA_ELEMENT_Connect, - XFA_ELEMENT_Pdf, - XFA_ELEMENT_Destination, - XFA_ELEMENT_Event, - XFA_ELEMENT_SetProperty, - XFA_ELEMENT_Field, - XFA_ELEMENT_Connect, - XFA_ELEMENT_Agent, - XFA_ELEMENT_PsMap, - XFA_ELEMENT_SubformSet, - XFA_ELEMENT_BreakBefore, - XFA_ELEMENT_Event, - XFA_ELEMENT_Area, - XFA_ELEMENT_SetProperty, - XFA_ELEMENT_Field, - XFA_ELEMENT_ExclGroup, - XFA_ELEMENT_Subform, - XFA_ELEMENT_Draw, - XFA_ELEMENT_ExObject, - XFA_ELEMENT_Proto, - XFA_ELEMENT_Connect, - XFA_ELEMENT_BreakAfter, - XFA_ELEMENT_Locale, - XFA_ELEMENT_Text, - XFA_ELEMENT_Font, - XFA_ELEMENT_Traverse, - XFA_ELEMENT_Map, - XFA_ELEMENT_DigestMethod, - XFA_ELEMENT_PageSet, - XFA_ELEMENT_PageArea, - XFA_ELEMENT_Encoding, - XFA_ELEMENT_Subform, - XFA_ELEMENT_SubmitUrl, - XFA_ELEMENT_Certificate, - XFA_ELEMENT_Area, - XFA_ELEMENT_Field, - XFA_ELEMENT_ContentArea, - XFA_ELEMENT_ExclGroup, - XFA_ELEMENT_Subform, - XFA_ELEMENT_Draw, - XFA_ELEMENT_Oid, - XFA_ELEMENT_Ref, - XFA_ELEMENT_ExcludeNS, - XFA_ELEMENT_Transform, - XFA_ELEMENT_SetProperty, - XFA_ELEMENT_Message, - XFA_ELEMENT_Log, - XFA_ELEMENT_Reason, - XFA_ELEMENT_Area, - XFA_ELEMENT_Text, - XFA_ELEMENT_Time, - XFA_ELEMENT_DateTime, - XFA_ELEMENT_Image, - XFA_ELEMENT_Decimal, - XFA_ELEMENT_Boolean, - XFA_ELEMENT_Integer, - XFA_ELEMENT_ExData, - XFA_ELEMENT_Date, - XFA_ELEMENT_Float, - XFA_ELEMENT_ExObject, - XFA_ELEMENT_Text, - XFA_ELEMENT_Time, - XFA_ELEMENT_DateTime, - XFA_ELEMENT_Image, - XFA_ELEMENT_Decimal, - XFA_ELEMENT_Boolean, - XFA_ELEMENT_Integer, - XFA_ELEMENT_ExData, - XFA_ELEMENT_Date, - XFA_ELEMENT_Float, - XFA_ELEMENT_Extras, - XFA_ELEMENT_Ui, - XFA_ELEMENT_SubformSet, - XFA_ELEMENT_Break, - XFA_ELEMENT_CheckButton, - XFA_ELEMENT_Arc, - XFA_ELEMENT_Mdp, - XFA_ELEMENT_BreakBefore, - XFA_ELEMENT_Oid, - XFA_ELEMENT_Ref, - XFA_ELEMENT_Margin, - XFA_ELEMENT_KeyUsage, - XFA_ELEMENT_ChoiceList, - XFA_ELEMENT_Para, - XFA_ELEMENT_Filter, - XFA_ELEMENT_Encoding, - XFA_ELEMENT_Event, - XFA_ELEMENT_DefaultUi, - XFA_ELEMENT_Barcode, - XFA_ELEMENT_SubjectDNs, - XFA_ELEMENT_Issuers, - XFA_ELEMENT_Button, - XFA_ELEMENT_Format, - XFA_ELEMENT_Border, - XFA_ELEMENT_Area, - XFA_ELEMENT_Hyphenation, - XFA_ELEMENT_Text, - XFA_ELEMENT_Time, - XFA_ELEMENT_Certificates, - XFA_ELEMENT_SetProperty, - XFA_ELEMENT_DateTime, - XFA_ELEMENT_Comb, - XFA_ELEMENT_Pattern, - XFA_ELEMENT_Field, - XFA_ELEMENT_ContentArea, - XFA_ELEMENT_Solid, - XFA_ELEMENT_Edge, - XFA_ELEMENT_Stipple, - XFA_ELEMENT_ExclGroup, - XFA_ELEMENT_ToolTip, - XFA_ELEMENT_Reason, - XFA_ELEMENT_Execute, - XFA_ELEMENT_DateTimeEdit, - XFA_ELEMENT_Image, - XFA_ELEMENT_TimeStamp, - XFA_ELEMENT_Decimal, - XFA_ELEMENT_Subform, - XFA_ELEMENT_Handler, - XFA_ELEMENT_Boolean, - XFA_ELEMENT_Message, - XFA_ELEMENT_Assist, - XFA_ELEMENT_Picture, - XFA_ELEMENT_Traversal, - XFA_ELEMENT_Corner, - XFA_ELEMENT_Color, - XFA_ELEMENT_Keep, - XFA_ELEMENT_ImageEdit, - XFA_ELEMENT_Validate, - XFA_ELEMENT_DigestMethods, - XFA_ELEMENT_PageSet, - XFA_ELEMENT_Integer, - XFA_ELEMENT_Traverse, - XFA_ELEMENT_Encodings, - XFA_ELEMENT_Signing, - XFA_ELEMENT_Script, - XFA_ELEMENT_PasswordEdit, - XFA_ELEMENT_NumericEdit, - XFA_ELEMENT_PageArea, - XFA_ELEMENT_Oids, - XFA_ELEMENT_Signature, - XFA_ELEMENT_Caption, - XFA_ELEMENT_ExData, - XFA_ELEMENT_Manifest, - XFA_ELEMENT_Overflow, - XFA_ELEMENT_Linear, - XFA_ELEMENT_DigestMethod, - XFA_ELEMENT_Medium, - XFA_ELEMENT_TextEdit, - XFA_ELEMENT_SignData, - XFA_ELEMENT_Rectangle, - XFA_ELEMENT_Date, - XFA_ELEMENT_Desc, - XFA_ELEMENT_Encrypt, - XFA_ELEMENT_Draw, - XFA_ELEMENT_Speak, - XFA_ELEMENT_Reasons, - XFA_ELEMENT_AppearanceFilter, - XFA_ELEMENT_Fill, - XFA_ELEMENT_Font, - XFA_ELEMENT_Certificate, - XFA_ELEMENT_Float, - XFA_ELEMENT_Value, - XFA_ELEMENT_Bookend, - XFA_ELEMENT_ExObject, - XFA_ELEMENT_BindItems, - XFA_ELEMENT_Calculate, - XFA_ELEMENT_Extras, - XFA_ELEMENT_Connect, - XFA_ELEMENT_Submit, - XFA_ELEMENT_SubjectDN, - XFA_ELEMENT_Radial, - XFA_ELEMENT_Variables, - XFA_ELEMENT_LockDocument, - XFA_ELEMENT_BreakAfter, - XFA_ELEMENT_Line, - XFA_ELEMENT_Occur, - XFA_ELEMENT_Items, - XFA_ELEMENT_Extras, - XFA_ELEMENT_WsdlConnection, - XFA_ELEMENT_XsdConnection, - XFA_ELEMENT_XmlConnection, - XFA_ELEMENT_SignData, - XFA_ELEMENT_Text, - XFA_ELEMENT_Time, - XFA_ELEMENT_DateTime, - XFA_ELEMENT_Image, - XFA_ELEMENT_Decimal, - XFA_ELEMENT_Boolean, - XFA_ELEMENT_Integer, - XFA_ELEMENT_Script, - XFA_ELEMENT_ExData, - XFA_ELEMENT_Manifest, - XFA_ELEMENT_Date, - XFA_ELEMENT_Float, - XFA_ELEMENT_Command, - XFA_ELEMENT_Bind, - XFA_ELEMENT_Text, - XFA_ELEMENT_Time, - XFA_ELEMENT_DateTime, - XFA_ELEMENT_Image, - XFA_ELEMENT_Decimal, - XFA_ELEMENT_Boolean, - XFA_ELEMENT_Integer, - XFA_ELEMENT_ExData, - XFA_ELEMENT_Date, - XFA_ELEMENT_Float, -}; + const XFA_ELEMENTHIERARCHY g_XFAElementAttributeIndex[] = { {0, 3}, {3, 2}, {5, 3}, {8, 10}, {18, 2}, {20, 6}, {26, 2}, {28, 1}, {29, 13}, {42, 2}, {44, 1}, {45, 2}, {47, 2}, {49, 7}, @@ -2529,6 +2247,7 @@ const XFA_ELEMENTHIERARCHY g_XFAElementAttributeIndex[] = { {1096, 0}, {1096, 4}, {1100, 6}, {1106, 2}, {1108, 1}, {1109, 2}, {1111, 2}, {1113, 2}, {1115, 1}, {1116, 2}, {1118, 7}, }; + const uint8_t g_XFAElementAttributeData[] = { XFA_ATTRIBUTE_Name, XFA_ATTRIBUTE_Desc, @@ -3656,6 +3375,7 @@ const uint8_t g_XFAElementAttributeData[] = { XFA_ATTRIBUTE_Save, XFA_ATTRIBUTE_Usehref, }; + const XFA_PACKETINFO g_XFAPacketData[] = { {0x0, NULL, XFA_XDPPACKET_USER, NULL, XFA_XDPPACKET_FLAGS_NOMATCH | XFA_XDPPACKET_FLAGS_SUPPORTMANY}, @@ -3700,6 +3420,7 @@ const XFA_PACKETINFO g_XFAPacketData[] = { }; const int32_t g_iXFAPacketCount = sizeof(g_XFAPacketData) / sizeof(XFA_PACKETINFO); + const XFA_SCRIPTHIERARCHY g_XFAScriptIndex[] = { {0, 0, 0, 2, 316}, {0, 0, 2, 2, 316}, {0, 0, 4, 2, 316}, {0, 0, 6, 8, 316}, {0, 0, 14, 4, 316}, {0, 0, 18, 5, 317}, @@ -3809,6 +3530,7 @@ const XFA_SCRIPTHIERARCHY g_XFAScriptIndex[] = { {120, 2, 1060, 8, 312}, {122, 11, 1068, 6, 315}, {133, 2, 1074, 0, 316}, {135, 0, 1074, 0, 316}, {135, 3, 1074, 2, 316}, {138, 0, 1076, 2, 316}, }; + const XFA_METHODINFO g_SomMethodData[] = { {0x3c752495, L"verify", (XFA_METHOD_CALLBACK)&CScript_SignaturePseudoModel:: Script_SignaturePseudoModel_Verify}, @@ -4102,6 +3824,7 @@ const XFA_METHODINFO g_SomMethodData[] = { }; const int32_t g_iSomMethodCount = sizeof(g_SomMethodData) / sizeof(XFA_METHODINFO); + const XFA_SCRIPTATTRIBUTEINFO g_SomAttributeData[] = { {0xbe52dfbf, L"desc", (XFA_ATTRIBUTE_CALLBACK)&CXFA_Node::Script_Attribute_String, diff --git a/xfa/fxfa/parser/xfa_basic_imp.cpp b/xfa/fxfa/parser/xfa_basic_imp.cpp index 8367462b60..2b8074fe04 100644 --- a/xfa/fxfa/parser/xfa_basic_imp.cpp +++ b/xfa/fxfa/parser/xfa_basic_imp.cpp @@ -197,14 +197,7 @@ const XFA_ELEMENTINFO* XFA_GetElementByName(const CFX_WideStringC& wsName) { const XFA_ELEMENTINFO* XFA_GetElementByID(XFA_ELEMENT eName) { return (eName < g_iXFAElementCount) ? (g_XFAElementData + eName) : NULL; } -const uint16_t* XFA_GetElementChildren(XFA_ELEMENT eElement, int32_t& iCount) { - if (eElement >= g_iXFAElementCount) { - return NULL; - } - const XFA_ELEMENTHIERARCHY* pElement = g_XFAElementChildrenIndex + eElement; - iCount = pElement->wCount; - return g_XFAElementChildrenData + pElement->wStart; -} + const uint8_t* XFA_GetElementAttributes(XFA_ELEMENT eElement, int32_t& iCount) { if (eElement >= g_iXFAElementCount) { return NULL; |