pyside6_qtxml_python.h 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. // Copyright (C) 2022 The Qt Company Ltd.
  2. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
  3. #ifndef SBK_QTXML_PYTHON_H
  4. #define SBK_QTXML_PYTHON_H
  5. #include <sbkpython.h>
  6. #include <sbkmodule.h>
  7. #include <sbkconverter.h>
  8. // Module Includes
  9. #include <pyside6_qtcore_python.h>
  10. // Bound library includes
  11. #include <QtXml/qdom.h>
  12. QT_BEGIN_NAMESPACE
  13. class QDomAttr;
  14. class QDomCDATASection;
  15. class QDomCharacterData;
  16. class QDomComment;
  17. class QDomDocumentFragment;
  18. class QDomDocumentType;
  19. class QDomElement;
  20. class QDomEntity;
  21. class QDomEntityReference;
  22. class QDomNamedNodeMap;
  23. class QDomNodeList;
  24. class QDomNotation;
  25. class QDomProcessingInstruction;
  26. class QDomText;
  27. QT_END_NAMESPACE
  28. // Type indices
  29. enum [[deprecated]] : int {
  30. SBK_QDOMATTR_IDX = 0,
  31. SBK_QDOMCDATASECTION_IDX = 2,
  32. SBK_QDOMCHARACTERDATA_IDX = 4,
  33. SBK_QDOMCOMMENT_IDX = 6,
  34. SBK_QDOMDOCUMENT_PARSEOPTION_IDX = 10,
  35. SBK_QFLAGS_QDOMDOCUMENT_PARSEOPTION_IDX = 44,
  36. SBK_QDOMDOCUMENT_IDX = 8,
  37. SBK_QDOMDOCUMENT_PARSERESULT_IDX = 12,
  38. SBK_QDOMDOCUMENTFRAGMENT_IDX = 14,
  39. SBK_QDOMDOCUMENTTYPE_IDX = 16,
  40. SBK_QDOMELEMENT_IDX = 18,
  41. SBK_QDOMENTITY_IDX = 20,
  42. SBK_QDOMENTITYREFERENCE_IDX = 22,
  43. SBK_QDOMIMPLEMENTATION_INVALIDDATAPOLICY_IDX = 26,
  44. SBK_QDOMIMPLEMENTATION_IDX = 24,
  45. SBK_QDOMNAMEDNODEMAP_IDX = 28,
  46. SBK_QDOMNODE_NODETYPE_IDX = 34,
  47. SBK_QDOMNODE_ENCODINGPOLICY_IDX = 32,
  48. SBK_QDOMNODE_IDX = 30,
  49. SBK_QDOMNODELIST_IDX = 36,
  50. SBK_QDOMNOTATION_IDX = 38,
  51. SBK_QDOMPROCESSINGINSTRUCTION_IDX = 40,
  52. SBK_QDOMTEXT_IDX = 42,
  53. SBK_QTXML_IDX_COUNT = 46,
  54. };
  55. // Type indices
  56. enum : int {
  57. SBK_QDomAttr_IDX = 0,
  58. SBK_QDomCDATASection_IDX = 1,
  59. SBK_QDomCharacterData_IDX = 2,
  60. SBK_QDomComment_IDX = 3,
  61. SBK_QDomDocument_ParseOption_IDX = 5,
  62. SBK_QFlags_QDomDocument_ParseOption_IDX = 22,
  63. SBK_QDomDocument_IDX = 4,
  64. SBK_QDomDocument_ParseResult_IDX = 6,
  65. SBK_QDomDocumentFragment_IDX = 7,
  66. SBK_QDomDocumentType_IDX = 8,
  67. SBK_QDomElement_IDX = 9,
  68. SBK_QDomEntity_IDX = 10,
  69. SBK_QDomEntityReference_IDX = 11,
  70. SBK_QDomImplementation_InvalidDataPolicy_IDX = 13,
  71. SBK_QDomImplementation_IDX = 12,
  72. SBK_QDomNamedNodeMap_IDX = 14,
  73. SBK_QDomNode_NodeType_IDX = 17,
  74. SBK_QDomNode_EncodingPolicy_IDX = 16,
  75. SBK_QDomNode_IDX = 15,
  76. SBK_QDomNodeList_IDX = 18,
  77. SBK_QDomNotation_IDX = 19,
  78. SBK_QDomProcessingInstruction_IDX = 20,
  79. SBK_QDomText_IDX = 21,
  80. SBK_QtXml_IDX_COUNT = 23,
  81. };
  82. // This variable stores all Python types exported by this module.
  83. extern Shiboken::Module::TypeInitStruct *SbkPySide6_QtXmlTypeStructs;
  84. // This variable stores all Python types exported by this module in a backwards compatible way with identical indexing.
  85. [[deprecated]] extern PyTypeObject **SbkPySide6_QtXmlTypes;
  86. // This variable stores the Python module object exported by this module.
  87. extern PyObject *SbkPySide6_QtXmlModuleObject;
  88. // This variable stores all type converters exported by this module.
  89. extern SbkConverter **SbkPySide6_QtXmlTypeConverters;
  90. // Converter indices
  91. enum [[deprecated]] : int {
  92. SBK_QTXML_QLIST_INT_IDX = 0, // QList<int>
  93. SBK_QTXML_QLIST_QVARIANT_IDX = 1, // QList<QVariant>
  94. SBK_QTXML_QLIST_QSTRING_IDX = 2, // QList<QString>
  95. SBK_QTXML_QMAP_QSTRING_QVARIANT_IDX = 3, // QMap<QString,QVariant>
  96. SBK_QTXML_CONVERTERS_IDX_COUNT = 4,
  97. };
  98. // Converter indices
  99. enum : int {
  100. SBK_QtXml_QList_int_IDX = 0, // QList<int>
  101. SBK_QtXml_QList_QVariant_IDX = 1, // QList<QVariant>
  102. SBK_QtXml_QList_QString_IDX = 2, // QList<QString>
  103. SBK_QtXml_QMap_QString_QVariant_IDX = 3, // QMap<QString,QVariant>
  104. SBK_QtXml_CONVERTERS_IDX_COUNT = 4,
  105. };
  106. // Macros for type check
  107. QT_WARNING_PUSH
  108. QT_WARNING_DISABLE_DEPRECATED
  109. namespace Shiboken
  110. {
  111. // PyType functions, to get the PyObjectType for a type T
  112. template<> inline PyTypeObject *SbkType< ::QDomAttr >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomAttr_IDX]); }
  113. template<> inline PyTypeObject *SbkType< ::QDomCDATASection >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomCDATASection_IDX]); }
  114. template<> inline PyTypeObject *SbkType< ::QDomCharacterData >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomCharacterData_IDX]); }
  115. template<> inline PyTypeObject *SbkType< ::QDomComment >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomComment_IDX]); }
  116. template<> inline PyTypeObject *SbkType< ::QDomDocument::ParseOption >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomDocument_ParseOption_IDX]); }
  117. template<> inline PyTypeObject *SbkType< ::QFlags<QDomDocument::ParseOption> >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QFlags_QDomDocument_ParseOption_IDX]); }
  118. template<> inline PyTypeObject *SbkType< ::QDomDocument >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomDocument_IDX]); }
  119. template<> inline PyTypeObject *SbkType< ::QDomDocument::ParseResult >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomDocument_ParseResult_IDX]); }
  120. template<> inline PyTypeObject *SbkType< ::QDomDocumentFragment >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomDocumentFragment_IDX]); }
  121. template<> inline PyTypeObject *SbkType< ::QDomDocumentType >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomDocumentType_IDX]); }
  122. template<> inline PyTypeObject *SbkType< ::QDomElement >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomElement_IDX]); }
  123. template<> inline PyTypeObject *SbkType< ::QDomEntity >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomEntity_IDX]); }
  124. template<> inline PyTypeObject *SbkType< ::QDomEntityReference >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomEntityReference_IDX]); }
  125. template<> inline PyTypeObject *SbkType< ::QDomImplementation::InvalidDataPolicy >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomImplementation_InvalidDataPolicy_IDX]); }
  126. template<> inline PyTypeObject *SbkType< ::QDomImplementation >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomImplementation_IDX]); }
  127. template<> inline PyTypeObject *SbkType< ::QDomNamedNodeMap >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNamedNodeMap_IDX]); }
  128. template<> inline PyTypeObject *SbkType< ::QDomNode::NodeType >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNode_NodeType_IDX]); }
  129. template<> inline PyTypeObject *SbkType< ::QDomNode::EncodingPolicy >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNode_EncodingPolicy_IDX]); }
  130. template<> inline PyTypeObject *SbkType< ::QDomNode >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNode_IDX]); }
  131. template<> inline PyTypeObject *SbkType< ::QDomNodeList >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNodeList_IDX]); }
  132. template<> inline PyTypeObject *SbkType< ::QDomNotation >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomNotation_IDX]); }
  133. template<> inline PyTypeObject *SbkType< ::QDomProcessingInstruction >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomProcessingInstruction_IDX]); }
  134. template<> inline PyTypeObject *SbkType< ::QDomText >() { return Shiboken::Module::get(SbkPySide6_QtXmlTypeStructs[SBK_QDomText_IDX]); }
  135. } // namespace Shiboken
  136. QT_WARNING_POP
  137. #endif // SBK_QTXML_PYTHON_H