From 68704cd8e541d7febe37f684a39fb71f875a5cde Mon Sep 17 00:00:00 2001 From: Jakub Melka Date: Fri, 29 Oct 2021 14:28:26 +0200 Subject: [PATCH] XFA: template tree definition --- CodeGenerator/codegenerator.cpp | 96 +- CodeGenerator/codegenerator.h | 14 +- Pdf4QtLib/sources/pdfxfaengine.cpp | 3022 +++++++++++++++++++++++++++- Pdf4QtLib/sources/pdfxfaengine.h | 5 +- xfa/xfa-spec.xml | 2 +- 5 files changed, 3134 insertions(+), 5 deletions(-) diff --git a/CodeGenerator/codegenerator.cpp b/CodeGenerator/codegenerator.cpp index 1c7d243..5bb0857 100644 --- a/CodeGenerator/codegenerator.cpp +++ b/CodeGenerator/codegenerator.cpp @@ -1486,6 +1486,13 @@ void XFACodeGenerator::loadClasses(const QDomDocument& document) // Class name myClass.className = element.attribute("name"); + QDomElement valueElement = element.firstChildElement("value"); + if (!valueElement.isNull()) + { + QString valueType = valueElement.attribute("type"); + myClass.valueType = createType("node_value", "nodeValue", valueType); + } + // Attributes QDomNodeList attributes = element.elementsByTagName("property"); const int attributeCount = attributes.size(); @@ -1505,6 +1512,24 @@ void XFACodeGenerator::loadClasses(const QDomDocument& document) myClass.attributes.emplace_back(std::move(attribute)); } + // Subnodes + QDomNodeList subnodes = element.elementsByTagName("item"); + const int subnodeCount = subnodes.size(); + for (int ai = 0; ai < subnodeCount; ++ai) + { + QDomElement subnodeElement = subnodes.item(ai).toElement(); + QString className = subnodeElement.attribute("class"); + QString min = subnodeElement.attribute("min"); + QString max = subnodeElement.attribute("max"); + + Subnode subnode; + subnode.subnodeName = std::move(className); + subnode.min = min.toInt(); + subnode.max = (max == "n") ? std::numeric_limits::max() : max.toInt(); + + myClass.subnodes.emplace_back(std::move(subnode)); + } + m_classes.emplace_back(std::move(myClass)); } } @@ -1555,11 +1580,13 @@ const XFACodeGenerator::Type* XFACodeGenerator::createType(QString id, QString n QString finalTypeName = typeName; int i = 1; - while (m_types.count(finalTypeName)) + while (m_usedTypes.count(finalTypeName)) { finalTypeName = typeName + QString::number(i++); } + m_usedTypes.insert(finalTypeName); + QString enumValues = enumValuesString.remove(QChar::Space); type.enumValues = enumValues.split("|"); @@ -1585,6 +1612,14 @@ QString XFACodeGenerator::generateSource() const stream << "namespace xfa" << Qt::endl; stream << "{" << Qt::endl << Qt::endl; + // Forward declarations + for (const Class& myClass : m_classes) + { + stream << QString("class XFA_%1;").arg(myClass.className) << Qt::endl; + } + + stream << Qt::endl; + stream << "class XFA_BaseNode : public XFA_AbstractNode" << Qt::endl; stream << "{" << Qt::endl; stream << "public:" << Qt::endl; @@ -1630,12 +1665,55 @@ QString XFACodeGenerator::generateSource() const attributeGetters << attributeGetter; } + stream << Qt::endl; + + QStringList subnodeGetters; + QStringList subnodeDeclarations; + for (const Subnode& subnode : myClass.subnodes) + { + if (subnode.max == 1) + { + QString subnodeFieldName = QString("m_%1").arg(subnode.subnodeName); + QString subnodeTypeName = QString("XFA_%1").arg(subnode.subnodeName); + QString subnodeGetterName = subnode.subnodeName; + subnodeGetterName[0] = subnodeGetterName.front().toUpper(); + QString subnodeDeclaration = QString(" XFA_Node<%1> %2;").arg(subnodeTypeName, subnodeFieldName); + QString subnodeGetter = QString(" const %1* get%2() const { return %3.getValue(); }").arg(subnodeTypeName, subnodeGetterName, subnodeFieldName); + subnodeDeclarations << subnodeDeclaration; + subnodeGetters << subnodeGetter; + } + else + { + QString subnodeFieldName = QString("m_%1").arg(subnode.subnodeName); + QString subnodeTypeName = QString("std::vector>").arg(subnode.subnodeName); + QString subnodeGetterName = subnode.subnodeName; + subnodeGetterName[0] = subnodeGetterName.front().toUpper(); + QString subnodeDeclaration = QString(" %1 %2;").arg(subnodeTypeName, subnodeFieldName); + QString subnodeGetter = QString(" const %1& get%2() const { return %3; }").arg(subnodeTypeName, subnodeGetterName, subnodeFieldName); + subnodeDeclarations << subnodeDeclaration; + subnodeGetters << subnodeGetter; + } + } + for (const QString& getter : attributeGetters) { stream << getter << Qt::endl; } stream << Qt::endl; + + for (const QString& getter : subnodeGetters) + { + stream << getter << Qt::endl; + } + + stream << Qt::endl; + + if (myClass.valueType) + { + stream << QString(" const %1* getNodeValue() const { return m_nodeValue.getValue(); }").arg(myClass.valueType->typeName) << Qt::endl << Qt::endl; + } + stream << "private:" << Qt::endl; stream << " /* properties */" << Qt::endl; @@ -1646,6 +1724,19 @@ QString XFACodeGenerator::generateSource() const stream << Qt::endl; + stream << " /* subnodes */" << Qt::endl; + + for (const QString& getter : subnodeDeclarations) + { + stream << getter << Qt::endl; + } + + if (myClass.valueType) + { + stream << Qt::endl; + stream << QString(" XFA_Value<%1> m_nodeValue;").arg(myClass.valueType->typeName) << Qt::endl; + } + stream << "};" << Qt::endl << Qt::endl; } @@ -1668,6 +1759,9 @@ QString XFACodeGenerator::getEnumValueName(QString enumName) const } enumName.replace("-", "_"); + enumName.replace('\\', "Backslash"); + enumName.replace('/', "Slash"); + enumName.replace('.', "_"); } return enumName; diff --git a/CodeGenerator/codegenerator.h b/CodeGenerator/codegenerator.h index bdac1e7..724a2a1 100644 --- a/CodeGenerator/codegenerator.h +++ b/CodeGenerator/codegenerator.h @@ -26,6 +26,8 @@ #include #include +#include + namespace codegen { @@ -469,11 +471,20 @@ private: QString defaultValue; }; + struct Subnode + { + QString subnodeName; + int min = 0; + int max = 0; + }; + struct Class { QString className; - QString valueType; + const Type* valueType = nullptr; + QString nodeValue; std::vector attributes; + std::vector subnodes; }; void loadClasses(const QDomDocument& document); @@ -485,6 +496,7 @@ private: std::vector m_classes; std::map m_types; + std::set m_usedTypes; }; } // namespace codegen diff --git a/Pdf4QtLib/sources/pdfxfaengine.cpp b/Pdf4QtLib/sources/pdfxfaengine.cpp index dec76b3..f1825e8 100644 --- a/Pdf4QtLib/sources/pdfxfaengine.cpp +++ b/Pdf4QtLib/sources/pdfxfaengine.cpp @@ -17,7 +17,6 @@ #include "pdfxfaengine.h" - namespace pdf { @@ -26,6 +25,120 @@ namespace pdf namespace xfa { +class XFA_appearanceFilter; +class XFA_arc; +class XFA_area; +class XFA_assist; +class XFA_barcode; +class XFA_bind; +class XFA_bindItems; +class XFA_bookend; +class XFA_boolean; +class XFA_border; +class XFA_break; +class XFA_breakAfter; +class XFA_breakBefore; +class XFA_button; +class XFA_calculate; +class XFA_caption; +class XFA_certificate; +class XFA_certificates; +class XFA_checkButton; +class XFA_choiceList; +class XFA_color; +class XFA_comb; +class XFA_connect; +class XFA_contentArea; +class XFA_corner; +class XFA_date; +class XFA_dateTime; +class XFA_dateTimeEdit; +class XFA_decimal; +class XFA_defaultUi; +class XFA_desc; +class XFA_digestMethod; +class XFA_digestMethods; +class XFA_draw; +class XFA_edge; +class XFA_encoding; +class XFA_encodings; +class XFA_encrypt; +class XFA_encryptData; +class XFA_encryption; +class XFA_encryptionMethod; +class XFA_encryptionMethods; +class XFA_event; +class XFA_exData; +class XFA_exObject; +class XFA_exclGroup; +class XFA_execute; +class XFA_extras; +class XFA_field; +class XFA_fill; +class XFA_filter; +class XFA_float; +class XFA_font; +class XFA_format; +class XFA_handler; +class XFA_hyphenation; +class XFA_image; +class XFA_imageEdit; +class XFA_integer; +class XFA_issuers; +class XFA_items; +class XFA_keep; +class XFA_keyUsage; +class XFA_line; +class XFA_linear; +class XFA_lockDocument; +class XFA_manifest; +class XFA_margin; +class XFA_mdp; +class XFA_medium; +class XFA_message; +class XFA_numericEdit; +class XFA_occur; +class XFA_oid; +class XFA_oids; +class XFA_overflow; +class XFA_pageArea; +class XFA_pageSet; +class XFA_para; +class XFA_passwordEdit; +class XFA_pattern; +class XFA_picture; +class XFA_proto; +class XFA_radial; +class XFA_reason; +class XFA_reasons; +class XFA_rectangle; +class XFA_ref; +class XFA_script; +class XFA_setProperty; +class XFA_signData; +class XFA_signature; +class XFA_signing; +class XFA_solid; +class XFA_speak; +class XFA_stipple; +class XFA_subform; +class XFA_subformSet; +class XFA_subjectDN; +class XFA_subjectDNs; +class XFA_submit; +class XFA_template; +class XFA_text; +class XFA_textEdit; +class XFA_time; +class XFA_timeStamp; +class XFA_toolTip; +class XFA_traversal; +class XFA_traverse; +class XFA_ui; +class XFA_validate; +class XFA_value; +class XFA_variables; + class XFA_BaseNode : public XFA_AbstractNode { public: @@ -37,6 +150,14 @@ public: Protected, ReadOnly, }; + + enum class ACTION + { + Include, + All, + Exclude, + }; + enum class ACTIVITY { Click, @@ -67,6 +188,7 @@ public: Ready, ValidationState, }; + enum class AFTER { Auto, @@ -75,6 +197,7 @@ public: PageEven, PageOdd, }; + enum class ANCHORTYPE { TopLeft, @@ -87,6 +210,22 @@ public: TopCenter, TopRight, }; + + enum class ASPECT + { + Fit, + Actual, + Height, + None, + Width, + }; + + enum class BASEPROFILE + { + Full, + InteractiveForms, + }; + enum class BEFORE { Auto, @@ -95,17 +234,27 @@ public: PageEven, PageOdd, }; + + enum class BLANKORNOTBLANK + { + Any, + Blank, + NotBlank, + }; + enum class BREAK { Close, Open, }; + enum class CAP { Square, Butt, Round, }; + enum class CHECKSUM { None, @@ -114,26 +263,60 @@ public: _2mod10, Auto, }; + enum class COMMITON { Select, Exit, }; + enum class CREDENTIALSERVERPOLICY { Optional, Required, }; + enum class DATAPREP { None, FlateCompress, }; + + enum class DATA + { + Link, + Embed, + }; + + enum class DUPLEXIMPOSITION + { + LongEdge, + ShortEdge, + }; + enum class EXECUTETYPE { Import, Remerge, }; + + enum class FORMATTEST + { + Warning, + Disabled, + Error, + }; + + enum class FORMAT + { + Xdp, + Formdata, + Pdf, + Urlencoded, + Xfd, + Xml, + }; + enum class HALIGN { Left, @@ -143,18 +326,21 @@ public: Radix, Right, }; + enum class HSCROLLPOLICY { Auto, Off, On, }; + enum class HAND { Even, Left, Right, }; + enum class HIGHLIGHT { Inverted, @@ -162,16 +348,26 @@ public: Outline, Push, }; + + enum class INTACT + { + None, + ContentArea, + PageArea, + }; + enum class JOIN { Square, Round, }; + enum class KERNINGMODE { None, Pair, }; + enum class LAYOUT { Position, @@ -182,11 +378,26 @@ public: Table, Tb, }; + + enum class LINETHROUGHPERIOD + { + All, + Word, + }; + + enum class LINETHROUGH + { + _0, + _1, + _2, + }; + enum class LISTEN { RefOnly, RefAndDescendents, }; + enum class MARK { Default, @@ -197,6 +408,7 @@ public: Square, Star, }; + enum class MATCH { Once, @@ -204,6 +416,40 @@ public: Global, None, }; + + enum class MERGEMODE + { + ConsumeData, + MatchTemplate, + }; + + enum class MULTILINE + { + _1, + _0, + }; + + enum class NEXT + { + None, + ContentArea, + PageArea, + }; + + enum class NULLTEST + { + Disabled, + Error, + Warning, + }; + + enum class ODDOREVEN + { + Any, + Even, + Odd, + }; + enum class OPEN { UserControl, @@ -211,11 +457,50 @@ public: MultiSelect, OnEntry, }; + enum class OPERATION { Encrypt, Decrypt, }; + + enum class OPERATION2 + { + Next, + Back, + Down, + First, + Left, + Right, + Up, + }; + + enum class OPERATION1 + { + Sign, + Clear, + Verify, + }; + + enum class ORIENTATION + { + Portrait, + Landscape, + }; + + enum class OVERLINEPERIOD + { + All, + Word, + }; + + enum class OVERLINE + { + _0, + _1, + _2, + }; + enum class OVERRIDE { Disabled, @@ -223,11 +508,29 @@ public: Ignore, Warning, }; + + enum class PAGEPOSITION + { + Any, + First, + Last, + Only, + Rest, + }; + + enum class PERMISSIONS + { + _2, + _1, + _3, + }; + enum class PICKER { Host, None, }; + enum class PLACEMENT { Left, @@ -236,6 +539,13 @@ public: Right, Top, }; + + enum class POSTURE + { + Normal, + Italic, + }; + enum class PRESENCE { Visible, @@ -243,17 +553,80 @@ public: Inactive, Invisible, }; + + enum class PREVIOUS + { + None, + ContentArea, + PageArea, + }; + + enum class PRIORITY + { + Custom, + Caption, + Name, + ToolTip, + }; + + enum class RELATION1 + { + Ordered, + Choice, + Unordered, + }; + + enum class RELATION + { + OrderedOccurrence, + DuplexPaginated, + SimplexPaginated, + }; + + enum class RESTORESTATE + { + Manual, + Auto, + }; + enum class RUNAT { Client, Both, Server, }; + + enum class SCOPE + { + Name, + None, + }; + + enum class SCRIPTTEST + { + Error, + Disabled, + Warning, + }; + enum class SHAPE { Square, Round, }; + + enum class SIGNATURETYPE + { + Filler, + Author, + }; + + enum class SLOPE + { + Backslash, + Slash, + }; + enum class STROKE { Solid, @@ -266,6 +639,7 @@ public: Lowered, Raised, }; + enum class TARGETTYPE { Auto, @@ -274,6 +648,7 @@ public: PageEven, PageOdd, }; + enum class TEXTLOCATION { Below, @@ -282,17 +657,83 @@ public: BelowEmbedded, None, }; + + enum class TRANSFERENCODING1 + { + Base64, + None, + Package, + }; + enum class TRANSFERENCODING { None, Base64, Package, }; + + enum class TRAYIN + { + Auto, + Delegate, + PageFront, + }; + + enum class TRAYOUT + { + Auto, + Delegate, + }; + + enum class TYPE4 + { + PDF1_3, + PDF1_6, + }; + + enum class TYPE2 + { + CrossHatch, + CrossDiagonal, + DiagonalLeft, + DiagonalRight, + Horizontal, + Vertical, + }; + enum class TYPE { Optional, Required, }; + + enum class TYPE3 + { + ToEdge, + ToCenter, + }; + + enum class TYPE1 + { + ToRight, + ToBottom, + ToLeft, + ToTop, + }; + + enum class UNDERLINEPERIOD + { + All, + Word, + }; + + enum class UNDERLINE + { + _0, + _1, + _2, + }; + enum class UPSMODE { UsCarrier, @@ -300,22 +741,48 @@ public: SecureSymbol, StandardSymbol, }; + enum class USAGE { ExportAndImport, ExportOnly, ImportOnly, }; + + enum class VALIGN + { + Top, + Bottom, + Middle, + }; + + enum class VSCROLLPOLICY + { + Auto, + Off, + On, + }; + + enum class WEIGHT + { + Normal, + Bold, + }; + }; class XFA_appearanceFilter : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const TYPE* getType() const { return m_type.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -323,11 +790,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_arc : public XFA_BaseNode { public: + const bool* getCircular() const { return m_circular.getValue(); } const HAND* getHand() const { return m_hand.getValue(); } const QString* getId() const { return m_id.getValue(); } @@ -336,6 +807,9 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_edge* getEdge() const { return m_edge.getValue(); } + const XFA_fill* getFill() const { return m_fill.getValue(); } + private: /* properties */ XFA_Attribute m_circular; @@ -346,11 +820,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_edge; + XFA_Node m_fill; }; class XFA_area : public XFA_BaseNode { public: + const PDFInteger* getColSpan() const { return m_colSpan.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } @@ -360,6 +838,16 @@ public: const XFA_Measurement* getX() const { return m_x.getValue(); } const XFA_Measurement* getY() const { return m_y.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const std::vector>& getArea() const { return m_area; } + const std::vector>& getDraw() const { return m_draw; } + const std::vector>& getExObject() const { return m_exObject; } + const std::vector>& getExclGroup() const { return m_exclGroup; } + const std::vector>& getField() const { return m_field; } + const std::vector>& getSubform() const { return m_subform; } + const std::vector>& getSubformSet() const { return m_subformSet; } + private: /* properties */ XFA_Attribute m_colSpan; @@ -371,16 +859,30 @@ private: XFA_Attribute m_x; XFA_Attribute m_y; + /* subnodes */ + XFA_Node m_desc; + XFA_Node m_extras; + std::vector> m_area; + std::vector> m_draw; + std::vector> m_exObject; + std::vector> m_exclGroup; + std::vector> m_field; + std::vector> m_subform; + std::vector> m_subformSet; }; class XFA_assist : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getRole() const { return m_role.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_speak* getSpeak() const { return m_speak.getValue(); } + const XFA_toolTip* getToolTip() const { return m_toolTip.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -388,11 +890,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_speak; + XFA_Node m_toolTip; }; class XFA_barcode : public XFA_BaseNode { public: + const QString* getCharEncoding() const { return m_charEncoding.getValue(); } const CHECKSUM* getChecksum() const { return m_checksum.getValue(); } const QString* getDataColumnCount() const { return m_dataColumnCount.getValue(); } @@ -415,6 +921,9 @@ public: const QString* getUsehref() const { return m_usehref.getValue(); } const QString* getWideNarrowRatio() const { return m_wideNarrowRatio.getValue(); } + const XFA_encrypt* getEncrypt() const { return m_encrypt.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_charEncoding; @@ -439,29 +948,39 @@ private: XFA_Attribute m_usehref; XFA_Attribute m_wideNarrowRatio; + /* subnodes */ + XFA_Node m_encrypt; + XFA_Node m_extras; }; class XFA_bind : public XFA_BaseNode { public: + const MATCH* getMatch() const { return m_match.getValue(); } const QString* getRef() const { return m_ref.getValue(); } + const XFA_picture* getPicture() const { return m_picture.getValue(); } + private: /* properties */ XFA_Attribute m_match; XFA_Attribute m_ref; + /* subnodes */ + XFA_Node m_picture; }; class XFA_bindItems : public XFA_BaseNode { public: + const QString* getConnection() const { return m_connection.getValue(); } const QString* getLabelRef() const { return m_labelRef.getValue(); } const QString* getRef() const { return m_ref.getValue(); } const QString* getValueRef() const { return m_valueRef.getValue(); } + private: /* properties */ XFA_Attribute m_connection; @@ -469,17 +988,20 @@ private: XFA_Attribute m_ref; XFA_Attribute m_valueRef; + /* subnodes */ }; class XFA_bookend : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getLeader() const { return m_leader.getValue(); } const QString* getTrailer() const { return m_trailer.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -488,16 +1010,21 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ }; class XFA_boolean : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -505,11 +1032,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_border : public XFA_BaseNode { public: + const BREAK* getBreak() const { return m_break.getValue(); } const HAND* getHand() const { return m_hand.getValue(); } const QString* getId() const { return m_id.getValue(); } @@ -518,6 +1049,12 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getCorner() const { return m_corner; } + const std::vector>& getEdge() const { return m_edge; } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_fill* getFill() const { return m_fill.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + private: /* properties */ XFA_Attribute m_break; @@ -528,11 +1065,18 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_corner; + std::vector> m_edge; + XFA_Node m_extras; + XFA_Node m_fill; + XFA_Node m_margin; }; class XFA_break : public XFA_BaseNode { public: + const AFTER* getAfter() const { return m_after.getValue(); } const QString* getAfterTarget() const { return m_afterTarget.getValue(); } const BEFORE* getBefore() const { return m_before.getValue(); } @@ -547,6 +1091,8 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_after; @@ -563,11 +1109,14 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; }; class XFA_breakAfter : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getLeader() const { return m_leader.getValue(); } const bool* getStartNew() const { return m_startNew.getValue(); } @@ -577,6 +1126,8 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -588,11 +1139,14 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_script; }; class XFA_breakBefore : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getLeader() const { return m_leader.getValue(); } const bool* getStartNew() const { return m_startNew.getValue(); } @@ -602,6 +1156,8 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -613,16 +1169,21 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_script; }; class XFA_button : public XFA_BaseNode { public: + const HIGHLIGHT* getHighlight() const { return m_highlight.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_highlight; @@ -630,16 +1191,23 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; }; class XFA_calculate : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const OVERRIDE* getOverride() const { return m_override.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_message* getMessage() const { return m_message.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -647,11 +1215,16 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_message; + XFA_Node m_script; }; class XFA_caption : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const PLACEMENT* getPlacement() const { return m_placement.getValue(); } const PRESENCE* getPresence() const { return m_presence.getValue(); } @@ -659,6 +1232,12 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_font* getFont() const { return m_font.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + const XFA_para* getPara() const { return m_para.getValue(); } + const XFA_value* getValue() const { return m_value.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -668,16 +1247,26 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_font; + XFA_Node m_margin; + XFA_Node m_para; + XFA_Node m_value; }; class XFA_certificate : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -685,11 +1274,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_certificates : public XFA_BaseNode { public: + const CREDENTIALSERVERPOLICY* getCredentialServerPolicy() const { return m_credentialServerPolicy.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getUrl() const { return m_url.getValue(); } @@ -697,6 +1290,13 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_encryption* getEncryption() const { return m_encryption.getValue(); } + const XFA_issuers* getIssuers() const { return m_issuers.getValue(); } + const XFA_keyUsage* getKeyUsage() const { return m_keyUsage.getValue(); } + const XFA_oids* getOids() const { return m_oids.getValue(); } + const XFA_signing* getSigning() const { return m_signing.getValue(); } + const XFA_subjectDNs* getSubjectDNs() const { return m_subjectDNs.getValue(); } + private: /* properties */ XFA_Attribute m_credentialServerPolicy; @@ -706,11 +1306,19 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_encryption; + XFA_Node m_issuers; + XFA_Node m_keyUsage; + XFA_Node m_oids; + XFA_Node m_signing; + XFA_Node m_subjectDNs; }; class XFA_checkButton : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const MARK* getMark() const { return m_mark.getValue(); } const SHAPE* getShape() const { return m_shape.getValue(); } @@ -718,6 +1326,10 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -727,11 +1339,16 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_border; + XFA_Node m_extras; + XFA_Node m_margin; }; class XFA_choiceList : public XFA_BaseNode { public: + const COMMITON* getCommitOn() const { return m_commitOn.getValue(); } const QString* getId() const { return m_id.getValue(); } const OPEN* getOpen() const { return m_open.getValue(); } @@ -739,6 +1356,10 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + private: /* properties */ XFA_Attribute m_commitOn; @@ -748,17 +1369,24 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_border; + XFA_Node m_extras; + XFA_Node m_margin; }; class XFA_color : public XFA_BaseNode { public: + const QString* getCSpace() const { return m_cSpace.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } const QString* getValue() const { return m_value.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_cSpace; @@ -767,16 +1395,20 @@ private: XFA_Attribute m_usehref; XFA_Attribute m_value; + /* subnodes */ + XFA_Node m_extras; }; class XFA_comb : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const PDFInteger* getNumberOfCells() const { return m_numberOfCells.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -784,11 +1416,13 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ }; class XFA_connect : public XFA_BaseNode { public: + const QString* getConnection() const { return m_connection.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getRef() const { return m_ref.getValue(); } @@ -796,6 +1430,8 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_picture* getPicture() const { return m_picture.getValue(); } + private: /* properties */ XFA_Attribute m_connection; @@ -805,11 +1441,14 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_picture; }; class XFA_contentArea : public XFA_BaseNode { public: + const XFA_Measurement* getH() const { return m_h.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } @@ -820,6 +1459,9 @@ public: const XFA_Measurement* getX() const { return m_x.getValue(); } const XFA_Measurement* getY() const { return m_y.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_h; @@ -832,11 +1474,15 @@ private: XFA_Attribute m_x; XFA_Attribute m_y; + /* subnodes */ + XFA_Node m_desc; + XFA_Node m_extras; }; class XFA_corner : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const bool* getInverted() const { return m_inverted.getValue(); } const JOIN* getJoin() const { return m_join.getValue(); } @@ -847,6 +1493,9 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -859,16 +1508,23 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; }; class XFA_date : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -876,16 +1532,23 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_dateTime : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -893,17 +1556,26 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_dateTimeEdit : public XFA_BaseNode { public: + const HSCROLLPOLICY* getHScrollPolicy() const { return m_hScrollPolicy.getValue(); } const QString* getId() const { return m_id.getValue(); } const PICKER* getPicker() const { return m_picker.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_comb* getComb() const { return m_comb.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + private: /* properties */ XFA_Attribute m_hScrollPolicy; @@ -912,11 +1584,17 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_border; + XFA_Node m_comb; + XFA_Node m_extras; + XFA_Node m_margin; }; class XFA_decimal : public XFA_BaseNode { public: + const PDFInteger* getFracDigits() const { return m_fracDigits.getValue(); } const QString* getId() const { return m_id.getValue(); } const PDFInteger* getLeadDigits() const { return m_leadDigits.getValue(); } @@ -924,6 +1602,9 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_fracDigits; @@ -933,61 +1614,102 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_defaultUi : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; }; class XFA_desc : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTime() const { return m_time; } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_boolean; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_decimal; + std::vector> m_exData; + std::vector> m_float; + std::vector> m_image; + std::vector> m_integer; + std::vector> m_text; + std::vector> m_time; }; class XFA_digestMethod : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_digestMethods : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const TYPE* getType() const { return m_type.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getDigestMethod() const { return m_digestMethod; } + private: /* properties */ XFA_Attribute m_id; @@ -995,11 +1717,14 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_digestMethod; }; class XFA_draw : public XFA_BaseNode { public: + const ANCHORTYPE* getAnchorType() const { return m_anchorType.getValue(); } const PDFInteger* getColSpan() const { return m_colSpan.getValue(); } const XFA_Measurement* getH() const { return m_h.getValue(); } @@ -1020,6 +1745,20 @@ public: const XFA_Measurement* getX() const { return m_x.getValue(); } const XFA_Measurement* getY() const { return m_y.getValue(); } + const XFA_assist* getAssist() const { return m_assist.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_caption* getCaption() const { return m_caption.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_font* getFont() const { return m_font.getValue(); } + const XFA_keep* getKeep() const { return m_keep.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + const XFA_para* getPara() const { return m_para.getValue(); } + const XFA_traversal* getTraversal() const { return m_traversal.getValue(); } + const XFA_ui* getUi() const { return m_ui.getValue(); } + const XFA_value* getValue() const { return m_value.getValue(); } + const std::vector>& getSetProperty() const { return m_setProperty; } + private: /* properties */ XFA_Attribute m_anchorType; @@ -1042,11 +1781,26 @@ private: XFA_Attribute m_x; XFA_Attribute m_y; + /* subnodes */ + XFA_Node m_assist; + XFA_Node m_border; + XFA_Node m_caption; + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_font; + XFA_Node m_keep; + XFA_Node m_margin; + XFA_Node m_para; + XFA_Node m_traversal; + XFA_Node m_ui; + XFA_Node m_value; + std::vector> m_setProperty; }; class XFA_edge : public XFA_BaseNode { public: + const CAP* getCap() const { return m_cap.getValue(); } const QString* getId() const { return m_id.getValue(); } const PRESENCE* getPresence() const { return m_presence.getValue(); } @@ -1055,6 +1809,9 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + private: /* properties */ XFA_Attribute m_cap; @@ -1065,31 +1822,44 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; }; class XFA_encoding : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_encodings : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const TYPE* getType() const { return m_type.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getEncoding() const { return m_encoding; } + private: /* properties */ XFA_Attribute m_id; @@ -1097,32 +1867,43 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_encoding; }; class XFA_encrypt : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_certificate* getCertificate() const { return m_certificate.getValue(); } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_certificate; }; class XFA_encryptData : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const OPERATION* getOperation() const { return m_operation.getValue(); } const QString* getTarget() const { return m_target.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_filter* getFilter() const { return m_filter.getValue(); } + const XFA_manifest* getManifest() const { return m_manifest.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -1131,16 +1912,22 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_filter; + XFA_Node m_manifest; }; class XFA_encryption : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const TYPE* getType() const { return m_type.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getCertificate() const { return m_certificate; } + private: /* properties */ XFA_Attribute m_id; @@ -1148,31 +1935,43 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_certificate; }; class XFA_encryptionMethod : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_encryptionMethods : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const TYPE* getType() const { return m_type.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getEncryptionMethod() const { return m_encryptionMethod; } + private: /* properties */ XFA_Attribute m_id; @@ -1180,11 +1979,14 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_encryptionMethod; }; class XFA_event : public XFA_BaseNode { public: + const ACTIVITY* getActivity() const { return m_activity.getValue(); } const QString* getId() const { return m_id.getValue(); } const LISTEN* getListen() const { return m_listen.getValue(); } @@ -1193,6 +1995,13 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_encryptData* getEncryptData() const { return m_encryptData.getValue(); } + const XFA_execute* getExecute() const { return m_execute.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + const XFA_signData* getSignData() const { return m_signData.getValue(); } + const XFA_submit* getSubmit() const { return m_submit.getValue(); } + private: /* properties */ XFA_Attribute m_activity; @@ -1203,11 +2012,19 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_encryptData; + XFA_Node m_execute; + XFA_Node m_script; + XFA_Node m_signData; + XFA_Node m_submit; }; class XFA_exData : public XFA_BaseNode { public: + const QString* getContentType() const { return m_contentType.getValue(); } const QString* getHref() const { return m_href.getValue(); } const QString* getId() const { return m_id.getValue(); } @@ -1218,6 +2035,9 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_contentType; @@ -1230,11 +2050,15 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_exObject : public XFA_BaseNode { public: + const QString* getArchive() const { return m_archive.getValue(); } const QString* getClassId() const { return m_classId.getValue(); } const QString* getCodeBase() const { return m_codeBase.getValue(); } @@ -1244,6 +2068,19 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getExObject() const { return m_exObject; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTime() const { return m_time; } + private: /* properties */ XFA_Attribute m_archive; @@ -1255,11 +2092,25 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_extras; + std::vector> m_boolean; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_decimal; + std::vector> m_exData; + std::vector> m_exObject; + std::vector> m_float; + std::vector> m_image; + std::vector> m_integer; + std::vector> m_text; + std::vector> m_time; }; class XFA_exclGroup : public XFA_BaseNode { public: + const ACCESS* getAccess() const { return m_access.getValue(); } const QString* getAccessKey() const { return m_accessKey.getValue(); } const ANCHORTYPE* getAnchorType() const { return m_anchorType.getValue(); } @@ -1281,6 +2132,22 @@ public: const XFA_Measurement* getX() const { return m_x.getValue(); } const XFA_Measurement* getY() const { return m_y.getValue(); } + const XFA_assist* getAssist() const { return m_assist.getValue(); } + const XFA_bind* getBind() const { return m_bind.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_calculate* getCalculate() const { return m_calculate.getValue(); } + const XFA_caption* getCaption() const { return m_caption.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + const XFA_para* getPara() const { return m_para.getValue(); } + const XFA_traversal* getTraversal() const { return m_traversal.getValue(); } + const XFA_validate* getValidate() const { return m_validate.getValue(); } + const std::vector>& getConnect() const { return m_connect; } + const std::vector>& getEvent() const { return m_event; } + const std::vector>& getField() const { return m_field; } + const std::vector>& getSetProperty() const { return m_setProperty; } + private: /* properties */ XFA_Attribute m_access; @@ -1304,11 +2171,28 @@ private: XFA_Attribute m_x; XFA_Attribute m_y; + /* subnodes */ + XFA_Node m_assist; + XFA_Node m_bind; + XFA_Node m_border; + XFA_Node m_calculate; + XFA_Node m_caption; + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_margin; + XFA_Node m_para; + XFA_Node m_traversal; + XFA_Node m_validate; + std::vector> m_connect; + std::vector> m_event; + std::vector> m_field; + std::vector> m_setProperty; }; class XFA_execute : public XFA_BaseNode { public: + const QString* getConnection() const { return m_connection.getValue(); } const EXECUTETYPE* getExecuteType() const { return m_executeType.getValue(); } const QString* getId() const { return m_id.getValue(); } @@ -1316,6 +2200,7 @@ public: const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + private: /* properties */ XFA_Attribute m_connection; @@ -1325,16 +2210,30 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ }; class XFA_extras : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getExtras() const { return m_extras; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTime() const { return m_time; } + private: /* properties */ XFA_Attribute m_id; @@ -1342,11 +2241,24 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + std::vector> m_boolean; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_decimal; + std::vector> m_exData; + std::vector> m_extras; + std::vector> m_float; + std::vector> m_image; + std::vector> m_integer; + std::vector> m_text; + std::vector> m_time; }; class XFA_field : public XFA_BaseNode { public: + const ACCESS* getAccess() const { return m_access.getValue(); } const QString* getAccessKey() const { return m_accessKey.getValue(); } const ANCHORTYPE* getAnchorType() const { return m_anchorType.getValue(); } @@ -1369,6 +2281,28 @@ public: const XFA_Measurement* getX() const { return m_x.getValue(); } const XFA_Measurement* getY() const { return m_y.getValue(); } + const XFA_assist* getAssist() const { return m_assist.getValue(); } + const XFA_bind* getBind() const { return m_bind.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_calculate* getCalculate() const { return m_calculate.getValue(); } + const XFA_caption* getCaption() const { return m_caption.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_font* getFont() const { return m_font.getValue(); } + const XFA_format* getFormat() const { return m_format.getValue(); } + const std::vector>& getItems() const { return m_items; } + const XFA_keep* getKeep() const { return m_keep.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + const XFA_para* getPara() const { return m_para.getValue(); } + const XFA_traversal* getTraversal() const { return m_traversal.getValue(); } + const XFA_ui* getUi() const { return m_ui.getValue(); } + const XFA_validate* getValidate() const { return m_validate.getValue(); } + const XFA_value* getValue() const { return m_value.getValue(); } + const std::vector>& getBindItems() const { return m_bindItems; } + const std::vector>& getConnect() const { return m_connect; } + const std::vector>& getEvent() const { return m_event; } + const std::vector>& getSetProperty() const { return m_setProperty; } + private: /* properties */ XFA_Attribute m_access; @@ -1393,16 +2327,47 @@ private: XFA_Attribute m_x; XFA_Attribute m_y; + /* subnodes */ + XFA_Node m_assist; + XFA_Node m_bind; + XFA_Node m_border; + XFA_Node m_calculate; + XFA_Node m_caption; + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_font; + XFA_Node m_format; + std::vector> m_items; + XFA_Node m_keep; + XFA_Node m_margin; + XFA_Node m_para; + XFA_Node m_traversal; + XFA_Node m_ui; + XFA_Node m_validate; + XFA_Node m_value; + std::vector> m_bindItems; + std::vector> m_connect; + std::vector> m_event; + std::vector> m_setProperty; }; class XFA_fill : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const PRESENCE* getPresence() const { return m_presence.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_linear* getLinear() const { return m_linear.getValue(); } + const XFA_pattern* getPattern() const { return m_pattern.getValue(); } + const XFA_radial* getRadial() const { return m_radial.getValue(); } + const XFA_solid* getSolid() const { return m_solid.getValue(); } + const XFA_stipple* getStipple() const { return m_stipple.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -1410,11 +2375,20 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; + XFA_Node m_linear; + XFA_Node m_pattern; + XFA_Node m_radial; + XFA_Node m_solid; + XFA_Node m_stipple; }; class XFA_filter : public XFA_BaseNode { public: + const QString* getAddRevocationInfo() const { return m_addRevocationInfo.getValue(); } const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } @@ -1422,6 +2396,17 @@ public: const QString* getUsehref() const { return m_usehref.getValue(); } const QString* getVersion() const { return m_version.getValue(); } + const XFA_appearanceFilter* getAppearanceFilter() const { return m_appearanceFilter.getValue(); } + const XFA_certificates* getCertificates() const { return m_certificates.getValue(); } + const XFA_digestMethods* getDigestMethods() const { return m_digestMethods.getValue(); } + const XFA_encodings* getEncodings() const { return m_encodings.getValue(); } + const XFA_encryptionMethods* getEncryptionMethods() const { return m_encryptionMethods.getValue(); } + const XFA_handler* getHandler() const { return m_handler.getValue(); } + const XFA_lockDocument* getLockDocument() const { return m_lockDocument.getValue(); } + const XFA_mdp* getMdp() const { return m_mdp.getValue(); } + const XFA_reasons* getReasons() const { return m_reasons.getValue(); } + const XFA_timeStamp* getTimeStamp() const { return m_timeStamp.getValue(); } + private: /* properties */ XFA_Attribute m_addRevocationInfo; @@ -1431,16 +2416,31 @@ private: XFA_Attribute m_usehref; XFA_Attribute m_version; + /* subnodes */ + XFA_Node m_appearanceFilter; + XFA_Node m_certificates; + XFA_Node m_digestMethods; + XFA_Node m_encodings; + XFA_Node m_encryptionMethods; + XFA_Node m_handler; + XFA_Node m_lockDocument; + XFA_Node m_mdp; + XFA_Node m_reasons; + XFA_Node m_timeStamp; }; class XFA_float : public XFA_BaseNode { public: + const QString* getId() const { return m_id.getValue(); } const QString* getName() const { return m_name.getValue(); } const QString* getUse() const { return m_use.getValue(); } const QString* getUsehref() const { return m_usehref.getValue(); } + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + private: /* properties */ XFA_Attribute m_id; @@ -1448,16 +2448,36 @@ private: XFA_Attribute m_use; XFA_Attribute m_usehref; + /* subnodes */ + + XFA_Value m_nodeValue; }; class XFA_font : public XFA_BaseNode { public: + const XFA_Measurement* getBaselineShift() const { return m_baselineShift.getValue(); } const QString* getFontHorizontalScale() const { return m_fontHorizontalScale.getValue(); } const QString* getFontVerticalScale() const { return m_fontVerticalScale.getValue(); } const QString* getId() const { return m_id.getValue(); } const KERNINGMODE* getKerningMode() const { return m_kerningMode.getValue(); } + const QString* getLetterSpacing() const { return m_letterSpacing.getValue(); } + const LINETHROUGH* getLineThrough() const { return m_lineThrough.getValue(); } + const LINETHROUGHPERIOD* getLineThroughPeriod() const { return m_lineThroughPeriod.getValue(); } + const OVERLINE* getOverline() const { return m_overline.getValue(); } + const OVERLINEPERIOD* getOverlinePeriod() const { return m_overlinePeriod.getValue(); } + const POSTURE* getPosture() const { return m_posture.getValue(); } + const XFA_Measurement* getSize() const { return m_size.getValue(); } + const QString* getTypeface() const { return m_typeface.getValue(); } + const UNDERLINE* getUnderline() const { return m_underline.getValue(); } + const UNDERLINEPERIOD* getUnderlinePeriod() const { return m_underlinePeriod.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const WEIGHT* getWeight() const { return m_weight.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_fill* getFill() const { return m_fill.getValue(); } private: /* properties */ @@ -1466,7 +2486,2007 @@ private: XFA_Attribute m_fontVerticalScale; XFA_Attribute m_id; XFA_Attribute m_kerningMode; + XFA_Attribute m_letterSpacing; + XFA_Attribute m_lineThrough; + XFA_Attribute m_lineThroughPeriod; + XFA_Attribute m_overline; + XFA_Attribute m_overlinePeriod; + XFA_Attribute m_posture; + XFA_Attribute m_size; + XFA_Attribute m_typeface; + XFA_Attribute m_underline; + XFA_Attribute m_underlinePeriod; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_weight; + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_fill; +}; + +class XFA_format : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_picture* getPicture() const { return m_picture.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_picture; +}; + +class XFA_handler : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_hyphenation : public XFA_BaseNode +{ +public: + + const bool* getExcludeAllCaps() const { return m_excludeAllCaps.getValue(); } + const bool* getExcludeInitialCap() const { return m_excludeInitialCap.getValue(); } + const bool* getHyphenate() const { return m_hyphenate.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const PDFInteger* getPushCharacterCount() const { return m_pushCharacterCount.getValue(); } + const PDFInteger* getRemainCharacterCount() const { return m_remainCharacterCount.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const PDFInteger* getWordCharacterCount() const { return m_wordCharacterCount.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_excludeAllCaps; + XFA_Attribute m_excludeInitialCap; + XFA_Attribute m_hyphenate; + XFA_Attribute m_id; + XFA_Attribute m_pushCharacterCount; + XFA_Attribute m_remainCharacterCount; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_wordCharacterCount; + + /* subnodes */ +}; + +class XFA_image : public XFA_BaseNode +{ +public: + + const ASPECT* getAspect() const { return m_aspect.getValue(); } + const QString* getContentType() const { return m_contentType.getValue(); } + const QString* getHref() const { return m_href.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const TRANSFERENCODING1* getTransferEncoding() const { return m_transferEncoding.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_aspect; + XFA_Attribute m_contentType; + XFA_Attribute m_href; + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_transferEncoding; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_imageEdit : public XFA_BaseNode +{ +public: + + const DATA* getData() const { return m_data.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + +private: + /* properties */ + XFA_Attribute m_data; + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_border; + XFA_Node m_extras; + XFA_Node m_margin; +}; + +class XFA_integer : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_issuers : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getCertificate() const { return m_certificate; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_certificate; +}; + +class XFA_items : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const PRESENCE* getPresence() const { return m_presence.getValue(); } + const QString* getRef() const { return m_ref.getValue(); } + const bool* getSave() const { return m_save.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTime() const { return m_time; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_presence; + XFA_Attribute m_ref; + XFA_Attribute m_save; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_boolean; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_decimal; + std::vector> m_exData; + std::vector> m_float; + std::vector> m_image; + std::vector> m_integer; + std::vector> m_text; + std::vector> m_time; +}; + +class XFA_keep : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const INTACT* getIntact() const { return m_intact.getValue(); } + const NEXT* getNext() const { return m_next.getValue(); } + const PREVIOUS* getPrevious() const { return m_previous.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_intact; + XFA_Attribute m_next; + XFA_Attribute m_previous; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; +}; + +class XFA_keyUsage : public XFA_BaseNode +{ +public: + + const QString* getCrlSign() const { return m_crlSign.getValue(); } + const QString* getDataEncipherment() const { return m_dataEncipherment.getValue(); } + const QString* getDecipherOnly() const { return m_decipherOnly.getValue(); } + const QString* getDigitalSignature() const { return m_digitalSignature.getValue(); } + const QString* getEncipherOnly() const { return m_encipherOnly.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getKeyAgreement() const { return m_keyAgreement.getValue(); } + const QString* getKeyCertSign() const { return m_keyCertSign.getValue(); } + const QString* getKeyEncipherment() const { return m_keyEncipherment.getValue(); } + const QString* getNonRepudiation() const { return m_nonRepudiation.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_crlSign; + XFA_Attribute m_dataEncipherment; + XFA_Attribute m_decipherOnly; + XFA_Attribute m_digitalSignature; + XFA_Attribute m_encipherOnly; + XFA_Attribute m_id; + XFA_Attribute m_keyAgreement; + XFA_Attribute m_keyCertSign; + XFA_Attribute m_keyEncipherment; + XFA_Attribute m_nonRepudiation; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ +}; + +class XFA_line : public XFA_BaseNode +{ +public: + + const HAND* getHand() const { return m_hand.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const SLOPE* getSlope() const { return m_slope.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_edge* getEdge() const { return m_edge.getValue(); } + +private: + /* properties */ + XFA_Attribute m_hand; + XFA_Attribute m_id; + XFA_Attribute m_slope; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_edge; +}; + +class XFA_linear : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE1* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; +}; + +class XFA_lockDocument : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_manifest : public XFA_BaseNode +{ +public: + + const ACTION* getAction() const { return m_action.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const std::vector>& getRef() const { return m_ref; } + +private: + /* properties */ + XFA_Attribute m_action; + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + std::vector> m_ref; +}; + +class XFA_margin : public XFA_BaseNode +{ +public: + + const XFA_Measurement* getBottomInset() const { return m_bottomInset.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const XFA_Measurement* getLeftInset() const { return m_leftInset.getValue(); } + const XFA_Measurement* getRightInset() const { return m_rightInset.getValue(); } + const XFA_Measurement* getTopInset() const { return m_topInset.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_bottomInset; + XFA_Attribute m_id; + XFA_Attribute m_leftInset; + XFA_Attribute m_rightInset; + XFA_Attribute m_topInset; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; +}; + +class XFA_mdp : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const PERMISSIONS* getPermissions() const { return m_permissions.getValue(); } + const SIGNATURETYPE* getSignatureType() const { return m_signatureType.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_permissions; + XFA_Attribute m_signatureType; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ +}; + +class XFA_medium : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getImagingBBox() const { return m_imagingBBox.getValue(); } + const XFA_Measurement* getLong() const { return m_long.getValue(); } + const ORIENTATION* getOrientation() const { return m_orientation.getValue(); } + const XFA_Measurement* getShort() const { return m_short.getValue(); } + const QString* getStock() const { return m_stock.getValue(); } + const TRAYIN* getTrayIn() const { return m_trayIn.getValue(); } + const TRAYOUT* getTrayOut() const { return m_trayOut.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_imagingBBox; + XFA_Attribute m_long; + XFA_Attribute m_orientation; + XFA_Attribute m_short; + XFA_Attribute m_stock; + XFA_Attribute m_trayIn; + XFA_Attribute m_trayOut; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ +}; + +class XFA_message : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getText() const { return m_text; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_text; +}; + +class XFA_numericEdit : public XFA_BaseNode +{ +public: + + const HSCROLLPOLICY* getHScrollPolicy() const { return m_hScrollPolicy.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_comb* getComb() const { return m_comb.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + +private: + /* properties */ + XFA_Attribute m_hScrollPolicy; + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_border; + XFA_Node m_comb; + XFA_Node m_extras; + XFA_Node m_margin; +}; + +class XFA_occur : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const PDFInteger* getInitial() const { return m_initial.getValue(); } + const PDFInteger* getMax() const { return m_max.getValue(); } + const PDFInteger* getMin() const { return m_min.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_initial; + XFA_Attribute m_max; + XFA_Attribute m_min; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; +}; + +class XFA_oid : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_oids : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getOid() const { return m_oid; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_oid; +}; + +class XFA_overflow : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getLeader() const { return m_leader.getValue(); } + const QString* getTarget() const { return m_target.getValue(); } + const QString* getTrailer() const { return m_trailer.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_leader; + XFA_Attribute m_target; + XFA_Attribute m_trailer; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ +}; + +class XFA_pageArea : public XFA_BaseNode +{ +public: + + const BLANKORNOTBLANK* getBlankOrNotBlank() const { return m_blankOrNotBlank.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const PDFInteger* getInitialNumber() const { return m_initialNumber.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const PDFInteger* getNumbered() const { return m_numbered.getValue(); } + const ODDOREVEN* getOddOrEven() const { return m_oddOrEven.getValue(); } + const PAGEPOSITION* getPagePosition() const { return m_pagePosition.getValue(); } + const QString* getRelevant() const { return m_relevant.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_medium* getMedium() const { return m_medium.getValue(); } + const XFA_occur* getOccur() const { return m_occur.getValue(); } + const std::vector>& getArea() const { return m_area; } + const std::vector>& getContentArea() const { return m_contentArea; } + const std::vector>& getDraw() const { return m_draw; } + const std::vector>& getExclGroup() const { return m_exclGroup; } + const std::vector>& getField() const { return m_field; } + const std::vector>& getSubform() const { return m_subform; } + +private: + /* properties */ + XFA_Attribute m_blankOrNotBlank; + XFA_Attribute m_id; + XFA_Attribute m_initialNumber; + XFA_Attribute m_name; + XFA_Attribute m_numbered; + XFA_Attribute m_oddOrEven; + XFA_Attribute m_pagePosition; + XFA_Attribute m_relevant; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_medium; + XFA_Node m_occur; + std::vector> m_area; + std::vector> m_contentArea; + std::vector> m_draw; + std::vector> m_exclGroup; + std::vector> m_field; + std::vector> m_subform; +}; + +class XFA_pageSet : public XFA_BaseNode +{ +public: + + const DUPLEXIMPOSITION* getDuplexImposition() const { return m_duplexImposition.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const RELATION* getRelation() const { return m_relation.getValue(); } + const QString* getRelevant() const { return m_relevant.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_occur* getOccur() const { return m_occur.getValue(); } + const std::vector>& getPageArea() const { return m_pageArea; } + const std::vector>& getPageSet() const { return m_pageSet; } + +private: + /* properties */ + XFA_Attribute m_duplexImposition; + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_relation; + XFA_Attribute m_relevant; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_occur; + std::vector> m_pageArea; + std::vector> m_pageSet; +}; + +class XFA_para : public XFA_BaseNode +{ +public: + + const HALIGN* getHAlign() const { return m_hAlign.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const XFA_Measurement* getLineHeight() const { return m_lineHeight.getValue(); } + const XFA_Measurement* getMarginLeft() const { return m_marginLeft.getValue(); } + const XFA_Measurement* getMarginRight() const { return m_marginRight.getValue(); } + const PDFInteger* getOrphans() const { return m_orphans.getValue(); } + const QString* getPreserve() const { return m_preserve.getValue(); } + const XFA_Measurement* getRadixOffset() const { return m_radixOffset.getValue(); } + const XFA_Measurement* getSpaceAbove() const { return m_spaceAbove.getValue(); } + const XFA_Measurement* getSpaceBelow() const { return m_spaceBelow.getValue(); } + const QString* getTabDefault() const { return m_tabDefault.getValue(); } + const QString* getTabStops() const { return m_tabStops.getValue(); } + const XFA_Measurement* getTextIndent() const { return m_textIndent.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const VALIGN* getVAlign() const { return m_vAlign.getValue(); } + const PDFInteger* getWidows() const { return m_widows.getValue(); } + + const XFA_hyphenation* getHyphenation() const { return m_hyphenation.getValue(); } + +private: + /* properties */ + XFA_Attribute m_hAlign; + XFA_Attribute m_id; + XFA_Attribute m_lineHeight; + XFA_Attribute m_marginLeft; + XFA_Attribute m_marginRight; + XFA_Attribute m_orphans; + XFA_Attribute m_preserve; + XFA_Attribute m_radixOffset; + XFA_Attribute m_spaceAbove; + XFA_Attribute m_spaceBelow; + XFA_Attribute m_tabDefault; + XFA_Attribute m_tabStops; + XFA_Attribute m_textIndent; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_vAlign; + XFA_Attribute m_widows; + + /* subnodes */ + XFA_Node m_hyphenation; +}; + +class XFA_passwordEdit : public XFA_BaseNode +{ +public: + + const HSCROLLPOLICY* getHScrollPolicy() const { return m_hScrollPolicy.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getPasswordChar() const { return m_passwordChar.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + +private: + /* properties */ + XFA_Attribute m_hScrollPolicy; + XFA_Attribute m_id; + XFA_Attribute m_passwordChar; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_border; + XFA_Node m_extras; + XFA_Node m_margin; +}; + +class XFA_pattern : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE2* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; +}; + +class XFA_picture : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_proto : public XFA_BaseNode +{ +public: + + + const std::vector>& getAppearanceFilter() const { return m_appearanceFilter; } + const std::vector>& getArc() const { return m_arc; } + const std::vector>& getArea() const { return m_area; } + const std::vector>& getAssist() const { return m_assist; } + const std::vector>& getBarcode() const { return m_barcode; } + const std::vector>& getBindItems() const { return m_bindItems; } + const std::vector>& getBookend() const { return m_bookend; } + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getBorder() const { return m_border; } + const std::vector>& getBreak() const { return m_break; } + const std::vector>& getBreakAfter() const { return m_breakAfter; } + const std::vector>& getBreakBefore() const { return m_breakBefore; } + const std::vector>& getButton() const { return m_button; } + const std::vector>& getCalculate() const { return m_calculate; } + const std::vector>& getCaption() const { return m_caption; } + const std::vector>& getCertificate() const { return m_certificate; } + const std::vector>& getCertificates() const { return m_certificates; } + const std::vector>& getCheckButton() const { return m_checkButton; } + const std::vector>& getChoiceList() const { return m_choiceList; } + const std::vector>& getColor() const { return m_color; } + const std::vector>& getComb() const { return m_comb; } + const std::vector>& getConnect() const { return m_connect; } + const std::vector>& getContentArea() const { return m_contentArea; } + const std::vector>& getCorner() const { return m_corner; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDateTimeEdit() const { return m_dateTimeEdit; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getDefaultUi() const { return m_defaultUi; } + const std::vector>& getDesc() const { return m_desc; } + const std::vector>& getDigestMethod() const { return m_digestMethod; } + const std::vector>& getDigestMethods() const { return m_digestMethods; } + const std::vector>& getDraw() const { return m_draw; } + const std::vector>& getEdge() const { return m_edge; } + const std::vector>& getEncoding() const { return m_encoding; } + const std::vector>& getEncodings() const { return m_encodings; } + const std::vector>& getEncrypt() const { return m_encrypt; } + const std::vector>& getEncryptData() const { return m_encryptData; } + const std::vector>& getEncryption() const { return m_encryption; } + const std::vector>& getEncryptionMethod() const { return m_encryptionMethod; } + const std::vector>& getEncryptionMethods() const { return m_encryptionMethods; } + const std::vector>& getEvent() const { return m_event; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getExObject() const { return m_exObject; } + const std::vector>& getExclGroup() const { return m_exclGroup; } + const std::vector>& getExecute() const { return m_execute; } + const std::vector>& getExtras() const { return m_extras; } + const std::vector>& getField() const { return m_field; } + const std::vector>& getFill() const { return m_fill; } + const std::vector>& getFilter() const { return m_filter; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getFont() const { return m_font; } + const std::vector>& getFormat() const { return m_format; } + const std::vector>& getHandler() const { return m_handler; } + const std::vector>& getHyphenation() const { return m_hyphenation; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getImageEdit() const { return m_imageEdit; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getIssuers() const { return m_issuers; } + const std::vector>& getItems() const { return m_items; } + const std::vector>& getKeep() const { return m_keep; } + const std::vector>& getKeyUsage() const { return m_keyUsage; } + const std::vector>& getLine() const { return m_line; } + const std::vector>& getLinear() const { return m_linear; } + const std::vector>& getLockDocument() const { return m_lockDocument; } + const std::vector>& getManifest() const { return m_manifest; } + const std::vector>& getMargin() const { return m_margin; } + const std::vector>& getMdp() const { return m_mdp; } + const std::vector>& getMedium() const { return m_medium; } + const std::vector>& getMessage() const { return m_message; } + const std::vector>& getNumericEdit() const { return m_numericEdit; } + const std::vector>& getOccur() const { return m_occur; } + const std::vector>& getOid() const { return m_oid; } + const std::vector>& getOids() const { return m_oids; } + const std::vector>& getOverflow() const { return m_overflow; } + const std::vector>& getPageArea() const { return m_pageArea; } + const std::vector>& getPageSet() const { return m_pageSet; } + const std::vector>& getPara() const { return m_para; } + const std::vector>& getPasswordEdit() const { return m_passwordEdit; } + const std::vector>& getPattern() const { return m_pattern; } + const std::vector>& getPicture() const { return m_picture; } + const std::vector>& getRadial() const { return m_radial; } + const std::vector>& getReason() const { return m_reason; } + const std::vector>& getReasons() const { return m_reasons; } + const std::vector>& getRectangle() const { return m_rectangle; } + const std::vector>& getRef() const { return m_ref; } + const std::vector>& getScript() const { return m_script; } + const std::vector>& getSetProperty() const { return m_setProperty; } + const std::vector>& getSignData() const { return m_signData; } + const std::vector>& getSignature() const { return m_signature; } + const std::vector>& getSigning() const { return m_signing; } + const std::vector>& getSolid() const { return m_solid; } + const std::vector>& getSpeak() const { return m_speak; } + const std::vector>& getStipple() const { return m_stipple; } + const std::vector>& getSubform() const { return m_subform; } + const std::vector>& getSubformSet() const { return m_subformSet; } + const std::vector>& getSubjectDN() const { return m_subjectDN; } + const std::vector>& getSubjectDNs() const { return m_subjectDNs; } + const std::vector>& getSubmit() const { return m_submit; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTextEdit() const { return m_textEdit; } + const std::vector>& getTime() const { return m_time; } + const std::vector>& getTimeStamp() const { return m_timeStamp; } + const std::vector>& getToolTip() const { return m_toolTip; } + const std::vector>& getTraversal() const { return m_traversal; } + const std::vector>& getTraverse() const { return m_traverse; } + const std::vector>& getUi() const { return m_ui; } + const std::vector>& getValidate() const { return m_validate; } + const std::vector>& getValue() const { return m_value; } + const std::vector>& getVariables() const { return m_variables; } + +private: + /* properties */ + + /* subnodes */ + std::vector> m_appearanceFilter; + std::vector> m_arc; + std::vector> m_area; + std::vector> m_assist; + std::vector> m_barcode; + std::vector> m_bindItems; + std::vector> m_bookend; + std::vector> m_boolean; + std::vector> m_border; + std::vector> m_break; + std::vector> m_breakAfter; + std::vector> m_breakBefore; + std::vector> m_button; + std::vector> m_calculate; + std::vector> m_caption; + std::vector> m_certificate; + std::vector> m_certificates; + std::vector> m_checkButton; + std::vector> m_choiceList; + std::vector> m_color; + std::vector> m_comb; + std::vector> m_connect; + std::vector> m_contentArea; + std::vector> m_corner; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_dateTimeEdit; + std::vector> m_decimal; + std::vector> m_defaultUi; + std::vector> m_desc; + std::vector> m_digestMethod; + std::vector> m_digestMethods; + std::vector> m_draw; + std::vector> m_edge; + std::vector> m_encoding; + std::vector> m_encodings; + std::vector> m_encrypt; + std::vector> m_encryptData; + std::vector> m_encryption; + std::vector> m_encryptionMethod; + std::vector> m_encryptionMethods; + std::vector> m_event; + std::vector> m_exData; + std::vector> m_exObject; + std::vector> m_exclGroup; + std::vector> m_execute; + std::vector> m_extras; + std::vector> m_field; + std::vector> m_fill; + std::vector> m_filter; + std::vector> m_float; + std::vector> m_font; + std::vector> m_format; + std::vector> m_handler; + std::vector> m_hyphenation; + std::vector> m_image; + std::vector> m_imageEdit; + std::vector> m_integer; + std::vector> m_issuers; + std::vector> m_items; + std::vector> m_keep; + std::vector> m_keyUsage; + std::vector> m_line; + std::vector> m_linear; + std::vector> m_lockDocument; + std::vector> m_manifest; + std::vector> m_margin; + std::vector> m_mdp; + std::vector> m_medium; + std::vector> m_message; + std::vector> m_numericEdit; + std::vector> m_occur; + std::vector> m_oid; + std::vector> m_oids; + std::vector> m_overflow; + std::vector> m_pageArea; + std::vector> m_pageSet; + std::vector> m_para; + std::vector> m_passwordEdit; + std::vector> m_pattern; + std::vector> m_picture; + std::vector> m_radial; + std::vector> m_reason; + std::vector> m_reasons; + std::vector> m_rectangle; + std::vector> m_ref; + std::vector> m_script; + std::vector> m_setProperty; + std::vector> m_signData; + std::vector> m_signature; + std::vector> m_signing; + std::vector> m_solid; + std::vector> m_speak; + std::vector> m_stipple; + std::vector> m_subform; + std::vector> m_subformSet; + std::vector> m_subjectDN; + std::vector> m_subjectDNs; + std::vector> m_submit; + std::vector> m_text; + std::vector> m_textEdit; + std::vector> m_time; + std::vector> m_timeStamp; + std::vector> m_toolTip; + std::vector> m_traversal; + std::vector> m_traverse; + std::vector> m_ui; + std::vector> m_validate; + std::vector> m_value; + std::vector> m_variables; +}; + +class XFA_radial : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE3* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; +}; + +class XFA_reason : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_reasons : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getReason() const { return m_reason; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_reason; +}; + +class XFA_rectangle : public XFA_BaseNode +{ +public: + + const HAND* getHand() const { return m_hand.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getCorner() const { return m_corner; } + const std::vector>& getEdge() const { return m_edge; } + const XFA_fill* getFill() const { return m_fill.getValue(); } + +private: + /* properties */ + XFA_Attribute m_hand; + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_corner; + std::vector> m_edge; + XFA_Node m_fill; +}; + +class XFA_ref : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_script : public XFA_BaseNode +{ +public: + + const QString* getBinding() const { return m_binding.getValue(); } + const QString* getContentType() const { return m_contentType.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const RUNAT* getRunAt() const { return m_runAt.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_binding; + XFA_Attribute m_contentType; + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_runAt; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_setProperty : public XFA_BaseNode +{ +public: + + const QString* getConnection() const { return m_connection.getValue(); } + const QString* getRef() const { return m_ref.getValue(); } + const QString* getTarget() const { return m_target.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_connection; + XFA_Attribute m_ref; + XFA_Attribute m_target; + + /* subnodes */ +}; + +class XFA_signData : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const OPERATION1* getOperation() const { return m_operation.getValue(); } + const QString* getRef() const { return m_ref.getValue(); } + const QString* getTarget() const { return m_target.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_filter* getFilter() const { return m_filter.getValue(); } + const XFA_manifest* getManifest() const { return m_manifest.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_operation; + XFA_Attribute m_ref; + XFA_Attribute m_target; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_filter; + XFA_Node m_manifest; +}; + +class XFA_signature : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE4* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_filter* getFilter() const { return m_filter.getValue(); } + const XFA_manifest* getManifest() const { return m_manifest.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_border; + XFA_Node m_extras; + XFA_Node m_filter; + XFA_Node m_manifest; + XFA_Node m_margin; +}; + +class XFA_signing : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getCertificate() const { return m_certificate; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_certificate; +}; + +class XFA_solid : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; +}; + +class XFA_speak : public XFA_BaseNode +{ +public: + + const bool* getDisable() const { return m_disable.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const PRIORITY* getPriority() const { return m_priority.getValue(); } + const QString* getRid() const { return m_rid.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_disable; + XFA_Attribute m_id; + XFA_Attribute m_priority; + XFA_Attribute m_rid; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_stipple : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const PDFInteger* getRate() const { return m_rate.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_color* getColor() const { return m_color.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_rate; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_color; + XFA_Node m_extras; +}; + +class XFA_subform : public XFA_BaseNode +{ +public: + + const ACCESS* getAccess() const { return m_access.getValue(); } + const bool* getAllowMacro() const { return m_allowMacro.getValue(); } + const ANCHORTYPE* getAnchorType() const { return m_anchorType.getValue(); } + const PDFInteger* getColSpan() const { return m_colSpan.getValue(); } + const QString* getColumnWidths() const { return m_columnWidths.getValue(); } + const XFA_Measurement* getH() const { return m_h.getValue(); } + const HALIGN* getHAlign() const { return m_hAlign.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const LAYOUT* getLayout() const { return m_layout.getValue(); } + const QString* getLocale() const { return m_locale.getValue(); } + const XFA_Measurement* getMaxH() const { return m_maxH.getValue(); } + const XFA_Measurement* getMaxW() const { return m_maxW.getValue(); } + const MERGEMODE* getMergeMode() const { return m_mergeMode.getValue(); } + const XFA_Measurement* getMinH() const { return m_minH.getValue(); } + const XFA_Measurement* getMinW() const { return m_minW.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const PRESENCE* getPresence() const { return m_presence.getValue(); } + const QString* getRelevant() const { return m_relevant.getValue(); } + const RESTORESTATE* getRestoreState() const { return m_restoreState.getValue(); } + const SCOPE* getScope() const { return m_scope.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const XFA_Measurement* getW() const { return m_w.getValue(); } + const XFA_Measurement* getX() const { return m_x.getValue(); } + const XFA_Measurement* getY() const { return m_y.getValue(); } + + const XFA_assist* getAssist() const { return m_assist.getValue(); } + const XFA_bind* getBind() const { return m_bind.getValue(); } + const XFA_bookend* getBookend() const { return m_bookend.getValue(); } + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_break* getBreak() const { return m_break.getValue(); } + const XFA_calculate* getCalculate() const { return m_calculate.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_keep* getKeep() const { return m_keep.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + const XFA_occur* getOccur() const { return m_occur.getValue(); } + const XFA_overflow* getOverflow() const { return m_overflow.getValue(); } + const XFA_pageSet* getPageSet() const { return m_pageSet.getValue(); } + const XFA_para* getPara() const { return m_para.getValue(); } + const XFA_traversal* getTraversal() const { return m_traversal.getValue(); } + const XFA_validate* getValidate() const { return m_validate.getValue(); } + const XFA_variables* getVariables() const { return m_variables.getValue(); } + const std::vector>& getArea() const { return m_area; } + const std::vector>& getBreakAfter() const { return m_breakAfter; } + const std::vector>& getBreakBefore() const { return m_breakBefore; } + const std::vector>& getConnect() const { return m_connect; } + const std::vector>& getDraw() const { return m_draw; } + const std::vector>& getEvent() const { return m_event; } + const std::vector>& getExObject() const { return m_exObject; } + const std::vector>& getExclGroup() const { return m_exclGroup; } + const std::vector>& getField() const { return m_field; } + const std::vector>& getProto() const { return m_proto; } + const std::vector>& getSetProperty() const { return m_setProperty; } + const std::vector>& getSubform() const { return m_subform; } + const std::vector>& getSubformSet() const { return m_subformSet; } + +private: + /* properties */ + XFA_Attribute m_access; + XFA_Attribute m_allowMacro; + XFA_Attribute m_anchorType; + XFA_Attribute m_colSpan; + XFA_Attribute m_columnWidths; + XFA_Attribute m_h; + XFA_Attribute m_hAlign; + XFA_Attribute m_id; + XFA_Attribute m_layout; + XFA_Attribute m_locale; + XFA_Attribute m_maxH; + XFA_Attribute m_maxW; + XFA_Attribute m_mergeMode; + XFA_Attribute m_minH; + XFA_Attribute m_minW; + XFA_Attribute m_name; + XFA_Attribute m_presence; + XFA_Attribute m_relevant; + XFA_Attribute m_restoreState; + XFA_Attribute m_scope; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_w; + XFA_Attribute m_x; + XFA_Attribute m_y; + + /* subnodes */ + XFA_Node m_assist; + XFA_Node m_bind; + XFA_Node m_bookend; + XFA_Node m_border; + XFA_Node m_break; + XFA_Node m_calculate; + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_keep; + XFA_Node m_margin; + XFA_Node m_occur; + XFA_Node m_overflow; + XFA_Node m_pageSet; + XFA_Node m_para; + XFA_Node m_traversal; + XFA_Node m_validate; + XFA_Node m_variables; + std::vector> m_area; + std::vector> m_breakAfter; + std::vector> m_breakBefore; + std::vector> m_connect; + std::vector> m_draw; + std::vector> m_event; + std::vector> m_exObject; + std::vector> m_exclGroup; + std::vector> m_field; + std::vector> m_proto; + std::vector> m_setProperty; + std::vector> m_subform; + std::vector> m_subformSet; +}; + +class XFA_subformSet : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const RELATION1* getRelation() const { return m_relation.getValue(); } + const QString* getRelevant() const { return m_relevant.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_bookend* getBookend() const { return m_bookend.getValue(); } + const XFA_break* getBreak() const { return m_break.getValue(); } + const XFA_desc* getDesc() const { return m_desc.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_occur* getOccur() const { return m_occur.getValue(); } + const XFA_overflow* getOverflow() const { return m_overflow.getValue(); } + const std::vector>& getBreakAfter() const { return m_breakAfter; } + const std::vector>& getBreakBefore() const { return m_breakBefore; } + const std::vector>& getSubform() const { return m_subform; } + const std::vector>& getSubformSet() const { return m_subformSet; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_relation; + XFA_Attribute m_relevant; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_bookend; + XFA_Node m_break; + XFA_Node m_desc; + XFA_Node m_extras; + XFA_Node m_occur; + XFA_Node m_overflow; + std::vector> m_breakAfter; + std::vector> m_breakBefore; + std::vector> m_subform; + std::vector> m_subformSet; +}; + +class XFA_subjectDN : public XFA_BaseNode +{ +public: + + const QString* getDelimiter() const { return m_delimiter.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_delimiter; + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_subjectDNs : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getSubjectDN() const { return m_subjectDN; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_subjectDN; +}; + +class XFA_submit : public XFA_BaseNode +{ +public: + + const bool* getEmbedPDF() const { return m_embedPDF.getValue(); } + const FORMAT* getFormat() const { return m_format.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const QString* getTarget() const { return m_target.getValue(); } + const QString* getTextEncoding() const { return m_textEncoding.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const QString* getXdpContent() const { return m_xdpContent.getValue(); } + + const XFA_encrypt* getEncrypt() const { return m_encrypt.getValue(); } + const std::vector>& getEncryptData() const { return m_encryptData; } + const std::vector>& getSignData() const { return m_signData; } + +private: + /* properties */ + XFA_Attribute m_embedPDF; + XFA_Attribute m_format; + XFA_Attribute m_id; + XFA_Attribute m_target; + XFA_Attribute m_textEncoding; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_xdpContent; + + /* subnodes */ + XFA_Node m_encrypt; + std::vector> m_encryptData; + std::vector> m_signData; +}; + +class XFA_template : public XFA_BaseNode +{ +public: + + const BASEPROFILE* getBaseProfile() const { return m_baseProfile.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const std::vector>& getSubform() const { return m_subform; } + +private: + /* properties */ + XFA_Attribute m_baseProfile; + + /* subnodes */ + XFA_Node m_extras; + std::vector> m_subform; +}; + +class XFA_text : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const PDFInteger* getMaxChars() const { return m_maxChars.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getRid() const { return m_rid.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_maxChars; + XFA_Attribute m_name; + XFA_Attribute m_rid; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_textEdit : public XFA_BaseNode +{ +public: + + const bool* getAllowRichText() const { return m_allowRichText.getValue(); } + const HSCROLLPOLICY* getHScrollPolicy() const { return m_hScrollPolicy.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const MULTILINE* getMultiLine() const { return m_multiLine.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + const VSCROLLPOLICY* getVScrollPolicy() const { return m_vScrollPolicy.getValue(); } + + const XFA_border* getBorder() const { return m_border.getValue(); } + const XFA_comb* getComb() const { return m_comb.getValue(); } + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_margin* getMargin() const { return m_margin.getValue(); } + +private: + /* properties */ + XFA_Attribute m_allowRichText; + XFA_Attribute m_hScrollPolicy; + XFA_Attribute m_id; + XFA_Attribute m_multiLine; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + XFA_Attribute m_vScrollPolicy; + + /* subnodes */ + XFA_Node m_border; + XFA_Node m_comb; + XFA_Node m_extras; + XFA_Node m_margin; +}; + +class XFA_time : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getName() const { return m_name.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_name; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_timeStamp : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getServer() const { return m_server.getValue(); } + const TYPE* getType() const { return m_type.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_server; + XFA_Attribute m_type; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ +}; + +class XFA_toolTip : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getRid() const { return m_rid.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + + const QString* getNodeValue() const { return m_nodeValue.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_rid; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + + XFA_Value m_nodeValue; +}; + +class XFA_traversal : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const std::vector>& getTraverse() const { return m_traverse; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + std::vector> m_traverse; +}; + +class XFA_traverse : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const OPERATION2* getOperation() const { return m_operation.getValue(); } + const QString* getRef() const { return m_ref.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_operation; + XFA_Attribute m_ref; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_script; +}; + +class XFA_ui : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_picture* getPicture() const { return m_picture.getValue(); } + const XFA_barcode* getBarcode() const { return m_barcode.getValue(); } + const XFA_button* getButton() const { return m_button.getValue(); } + const XFA_checkButton* getCheckButton() const { return m_checkButton.getValue(); } + const XFA_choiceList* getChoiceList() const { return m_choiceList.getValue(); } + const XFA_dateTimeEdit* getDateTimeEdit() const { return m_dateTimeEdit.getValue(); } + const XFA_defaultUi* getDefaultUi() const { return m_defaultUi.getValue(); } + const XFA_imageEdit* getImageEdit() const { return m_imageEdit.getValue(); } + const XFA_numericEdit* getNumericEdit() const { return m_numericEdit.getValue(); } + const XFA_passwordEdit* getPasswordEdit() const { return m_passwordEdit.getValue(); } + const XFA_signature* getSignature() const { return m_signature.getValue(); } + const XFA_textEdit* getTextEdit() const { return m_textEdit.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_picture; + XFA_Node m_barcode; + XFA_Node m_button; + XFA_Node m_checkButton; + XFA_Node m_choiceList; + XFA_Node m_dateTimeEdit; + XFA_Node m_defaultUi; + XFA_Node m_imageEdit; + XFA_Node m_numericEdit; + XFA_Node m_passwordEdit; + XFA_Node m_signature; + XFA_Node m_textEdit; +}; + +class XFA_validate : public XFA_BaseNode +{ +public: + + const FORMATTEST* getFormatTest() const { return m_formatTest.getValue(); } + const QString* getId() const { return m_id.getValue(); } + const NULLTEST* getNullTest() const { return m_nullTest.getValue(); } + const SCRIPTTEST* getScriptTest() const { return m_scriptTest.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_extras* getExtras() const { return m_extras.getValue(); } + const XFA_message* getMessage() const { return m_message.getValue(); } + const XFA_picture* getPicture() const { return m_picture.getValue(); } + const XFA_script* getScript() const { return m_script.getValue(); } + +private: + /* properties */ + XFA_Attribute m_formatTest; + XFA_Attribute m_id; + XFA_Attribute m_nullTest; + XFA_Attribute m_scriptTest; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_extras; + XFA_Node m_message; + XFA_Node m_picture; + XFA_Node m_script; +}; + +class XFA_value : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const bool* getOverride() const { return m_override.getValue(); } + const QString* getRelevant() const { return m_relevant.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const XFA_arc* getArc() const { return m_arc.getValue(); } + const XFA_boolean* getBoolean() const { return m_boolean.getValue(); } + const XFA_date* getDate() const { return m_date.getValue(); } + const XFA_dateTime* getDateTime() const { return m_dateTime.getValue(); } + const XFA_decimal* getDecimal() const { return m_decimal.getValue(); } + const XFA_exData* getExData() const { return m_exData.getValue(); } + const XFA_float* getFloat() const { return m_float.getValue(); } + const XFA_image* getImage() const { return m_image.getValue(); } + const XFA_integer* getInteger() const { return m_integer.getValue(); } + const XFA_line* getLine() const { return m_line.getValue(); } + const XFA_rectangle* getRectangle() const { return m_rectangle.getValue(); } + const XFA_text* getText() const { return m_text.getValue(); } + const XFA_time* getTime() const { return m_time.getValue(); } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_override; + XFA_Attribute m_relevant; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + XFA_Node m_arc; + XFA_Node m_boolean; + XFA_Node m_date; + XFA_Node m_dateTime; + XFA_Node m_decimal; + XFA_Node m_exData; + XFA_Node m_float; + XFA_Node m_image; + XFA_Node m_integer; + XFA_Node m_line; + XFA_Node m_rectangle; + XFA_Node m_text; + XFA_Node m_time; +}; + +class XFA_variables : public XFA_BaseNode +{ +public: + + const QString* getId() const { return m_id.getValue(); } + const QString* getUse() const { return m_use.getValue(); } + const QString* getUsehref() const { return m_usehref.getValue(); } + + const std::vector>& getBoolean() const { return m_boolean; } + const std::vector>& getDate() const { return m_date; } + const std::vector>& getDateTime() const { return m_dateTime; } + const std::vector>& getDecimal() const { return m_decimal; } + const std::vector>& getExData() const { return m_exData; } + const std::vector>& getFloat() const { return m_float; } + const std::vector>& getImage() const { return m_image; } + const std::vector>& getInteger() const { return m_integer; } + const std::vector>& getManifest() const { return m_manifest; } + const std::vector>& getScript() const { return m_script; } + const std::vector>& getText() const { return m_text; } + const std::vector>& getTime() const { return m_time; } + +private: + /* properties */ + XFA_Attribute m_id; + XFA_Attribute m_use; + XFA_Attribute m_usehref; + + /* subnodes */ + std::vector> m_boolean; + std::vector> m_date; + std::vector> m_dateTime; + std::vector> m_decimal; + std::vector> m_exData; + std::vector> m_float; + std::vector> m_image; + std::vector> m_integer; + std::vector> m_manifest; + std::vector> m_script; + std::vector> m_text; + std::vector> m_time; }; } // namespace xfa diff --git a/Pdf4QtLib/sources/pdfxfaengine.h b/Pdf4QtLib/sources/pdfxfaengine.h index 385d279..8d32f4d 100644 --- a/Pdf4QtLib/sources/pdfxfaengine.h +++ b/Pdf4QtLib/sources/pdfxfaengine.h @@ -80,7 +80,10 @@ template using XFA_Attribute = PDFXFAValueHolder; template -using XFA_Node = PDFXFAValueHolder; +using XFA_Node = PDFXFAValueHolder; + +template +using XFA_Value = PDFXFAValueHolder; class XFA_Measurement { diff --git a/xfa/xfa-spec.xml b/xfa/xfa-spec.xml index 7d91359..1b9bb14 100644 --- a/xfa/xfa-spec.xml +++ b/xfa/xfa-spec.xml @@ -682,7 +682,7 @@ - +