pyqt5-cura-crash.patch 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560
  1. diff -ur --new-file PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquick_register_type.cpp PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquick_register_type.cpp
  2. --- PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquick_register_type.cpp 2018-02-27 11:43:52.000000000 +0100
  3. +++ PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquick_register_type.cpp 2018-03-29 03:32:17.000000000 +0200
  4. @@ -22,6 +22,8 @@
  5. #include "qpyquickframebufferobject.h"
  6. #include "qpyquickitem.h"
  7. #include "qpyquickpainteditem.h"
  8. +#include "qpyquickview.h"
  9. +#include "qpyquickwindow.h"
  10. #include "sipAPIQtQuick.h"
  11. @@ -30,6 +32,9 @@
  12. const QMetaObject *mo, const QByteArray &ptr_name,
  13. const QByteArray &list_name, QQmlPrivate::RegisterType **rtp)
  14. {
  15. + // Make sure the types are tested in the right order (ie. more specific
  16. + // types first).
  17. +
  18. #if QT_VERSION >= 0x050200
  19. if (PyType_IsSubtype(py_type, sipTypeAsPyTypeObject(sipType_QQuickFramebufferObject)))
  20. return ((*rtp = QPyQuickFramebufferObject::addType(py_type, mo, ptr_name, list_name)) ? sipErrorNone : sipErrorFail);
  21. @@ -41,6 +46,12 @@
  22. if (PyType_IsSubtype(py_type, sipTypeAsPyTypeObject(sipType_QQuickItem)))
  23. return ((*rtp = QPyQuickItem::addType(py_type, mo, ptr_name, list_name)) ? sipErrorNone : sipErrorFail);
  24. + if (PyType_IsSubtype(py_type, sipTypeAsPyTypeObject(sipType_QQuickView)))
  25. + return ((*rtp = QPyQuickView::addType(py_type, mo, ptr_name, list_name)) ? sipErrorNone : sipErrorFail);
  26. +
  27. + if (PyType_IsSubtype(py_type, sipTypeAsPyTypeObject(sipType_QQuickWindow)))
  28. + return ((*rtp = QPyQuickWindow::addType(py_type, mo, ptr_name, list_name)) ? sipErrorNone : sipErrorFail);
  29. +
  30. // We don't recognise the type.
  31. return sipErrorContinue;
  32. }
  33. diff -ur --new-file PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickview.cpp PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickview.cpp
  34. --- PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickview.cpp 1970-01-01 01:00:00.000000000 +0100
  35. +++ PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickview.cpp 2018-03-29 03:32:17.000000000 +0200
  36. @@ -0,0 +1,155 @@
  37. +// This is the implementation of the QPyQuickWindow classes.
  38. +//
  39. +// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
  40. +//
  41. +// This file is part of PyQt5.
  42. +//
  43. +// This file may be used under the terms of the GNU General Public License
  44. +// version 3.0 as published by the Free Software Foundation and appearing in
  45. +// the file LICENSE included in the packaging of this file. Please review the
  46. +// following information to ensure the GNU General Public License version 3.0
  47. +// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  48. +//
  49. +// If you do not wish to use this file under the terms of the GPL version 3.0
  50. +// then you may purchase a commercial license. For more information contact
  51. +// info@riverbankcomputing.com.
  52. +//
  53. +// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  54. +// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  55. +
  56. +
  57. +#include <Python.h>
  58. +
  59. +#include <QQmlListProperty>
  60. +
  61. +#include "qpyquickview.h"
  62. +
  63. +#include "sipAPIQtQuick.h"
  64. +
  65. +
  66. +// The maximum number of Python QQuickView types.
  67. +const int NrOfQuickViewTypes = 20;
  68. +
  69. +// The list of registered Python types.
  70. +static QList<PyTypeObject *> pyqt_types;
  71. +
  72. +// The registration data for the canned types.
  73. +static QQmlPrivate::RegisterType canned_types[NrOfQuickViewTypes];
  74. +
  75. +
  76. +#define QPYQUICKVIEW_INIT(n) \
  77. + case n##U: \
  78. + QPyQuickView##n::staticMetaObject = *mo; \
  79. + rt->typeId = qRegisterNormalizedMetaType<QPyQuickView##n *>(ptr_name); \
  80. + rt->listId = qRegisterNormalizedMetaType<QQmlListProperty<QPyQuickView##n> >(list_name); \
  81. + rt->objectSize = sizeof(QPyQuickView##n); \
  82. + rt->create = QQmlPrivate::createInto<QPyQuickView##n>; \
  83. + rt->metaObject = mo; \
  84. + rt->attachedPropertiesFunction = QQmlPrivate::attachedPropertiesFunc<QPyQuickView##n>(); \
  85. + rt->attachedPropertiesMetaObject = QQmlPrivate::attachedPropertiesMetaObject<QPyQuickView##n>(); \
  86. + rt->parserStatusCast = QQmlPrivate::StaticCastSelector<QPyQuickView##n,QQmlParserStatus>::cast(); \
  87. + rt->valueSourceCast = QQmlPrivate::StaticCastSelector<QPyQuickView##n,QQmlPropertyValueSource>::cast(); \
  88. + rt->valueInterceptorCast = QQmlPrivate::StaticCastSelector<QPyQuickView##n,QQmlPropertyValueInterceptor>::cast(); \
  89. + break
  90. +
  91. +
  92. +// The ctor.
  93. +QPyQuickView::QPyQuickView(QWindow *parent) : sipQQuickView(parent)
  94. +{
  95. +}
  96. +
  97. +
  98. +// Add a new Python type and return its number.
  99. +QQmlPrivate::RegisterType *QPyQuickView::addType(PyTypeObject *type,
  100. + const QMetaObject *mo, const QByteArray &ptr_name,
  101. + const QByteArray &list_name)
  102. +{
  103. + int type_nr = pyqt_types.size();
  104. +
  105. + // Check we have a spare canned type.
  106. + if (type_nr >= NrOfQuickViewTypes)
  107. + {
  108. + PyErr_Format(PyExc_TypeError,
  109. + "a maximum of %d QQuickView types may be registered with QML",
  110. + NrOfQuickViewTypes);
  111. + return 0;
  112. + }
  113. +
  114. + pyqt_types.append(type);
  115. +
  116. + QQmlPrivate::RegisterType *rt = &canned_types[type_nr];
  117. +
  118. + // Initialise those members that depend on the C++ type.
  119. + switch (type_nr)
  120. + {
  121. + QPYQUICKVIEW_INIT(0);
  122. + QPYQUICKVIEW_INIT(1);
  123. + QPYQUICKVIEW_INIT(2);
  124. + QPYQUICKVIEW_INIT(3);
  125. + QPYQUICKVIEW_INIT(4);
  126. + QPYQUICKVIEW_INIT(5);
  127. + QPYQUICKVIEW_INIT(6);
  128. + QPYQUICKVIEW_INIT(7);
  129. + QPYQUICKVIEW_INIT(8);
  130. + QPYQUICKVIEW_INIT(9);
  131. + QPYQUICKVIEW_INIT(10);
  132. + QPYQUICKVIEW_INIT(11);
  133. + QPYQUICKVIEW_INIT(12);
  134. + QPYQUICKVIEW_INIT(13);
  135. + QPYQUICKVIEW_INIT(14);
  136. + QPYQUICKVIEW_INIT(15);
  137. + QPYQUICKVIEW_INIT(16);
  138. + QPYQUICKVIEW_INIT(17);
  139. + QPYQUICKVIEW_INIT(18);
  140. + QPYQUICKVIEW_INIT(19);
  141. + }
  142. +
  143. + return rt;
  144. +}
  145. +
  146. +
  147. +// Create the Python instance.
  148. +void QPyQuickView::createPyObject(QWindow *parent)
  149. +{
  150. + SIP_BLOCK_THREADS
  151. +
  152. + // Assume C++ owns everything.
  153. + PyObject *obj = sipConvertFromNewPyType(this, pyqt_types.at(typeNr()),
  154. + NULL, &sipPySelf, "D", parent, sipType_QWindow, NULL);
  155. +
  156. + if (!obj)
  157. + pyqt5_qtquick_err_print();
  158. +
  159. + SIP_UNBLOCK_THREADS
  160. +}
  161. +
  162. +
  163. +// The canned type implementations.
  164. +#define QPYQUICKVIEW_IMPL(n) \
  165. +QPyQuickView##n::QPyQuickView##n(QWindow *parent) : QPyQuickView(parent) \
  166. +{ \
  167. + createPyObject(parent); \
  168. +} \
  169. +QMetaObject QPyQuickView##n::staticMetaObject
  170. +
  171. +
  172. +QPYQUICKVIEW_IMPL(0);
  173. +QPYQUICKVIEW_IMPL(1);
  174. +QPYQUICKVIEW_IMPL(2);
  175. +QPYQUICKVIEW_IMPL(3);
  176. +QPYQUICKVIEW_IMPL(4);
  177. +QPYQUICKVIEW_IMPL(5);
  178. +QPYQUICKVIEW_IMPL(6);
  179. +QPYQUICKVIEW_IMPL(7);
  180. +QPYQUICKVIEW_IMPL(8);
  181. +QPYQUICKVIEW_IMPL(9);
  182. +QPYQUICKVIEW_IMPL(10);
  183. +QPYQUICKVIEW_IMPL(11);
  184. +QPYQUICKVIEW_IMPL(12);
  185. +QPYQUICKVIEW_IMPL(13);
  186. +QPYQUICKVIEW_IMPL(14);
  187. +QPYQUICKVIEW_IMPL(15);
  188. +QPYQUICKVIEW_IMPL(16);
  189. +QPYQUICKVIEW_IMPL(17);
  190. +QPYQUICKVIEW_IMPL(18);
  191. +QPYQUICKVIEW_IMPL(19);
  192. diff -ur --new-file PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickview.h PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickview.h
  193. --- PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickview.h 1970-01-01 01:00:00.000000000 +0100
  194. +++ PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickview.h 2018-03-29 03:32:17.000000000 +0200
  195. @@ -0,0 +1,87 @@
  196. +// This is the definition of the QPyQuickView classes.
  197. +//
  198. +// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
  199. +//
  200. +// This file is part of PyQt5.
  201. +//
  202. +// This file may be used under the terms of the GNU General Public License
  203. +// version 3.0 as published by the Free Software Foundation and appearing in
  204. +// the file LICENSE included in the packaging of this file. Please review the
  205. +// following information to ensure the GNU General Public License version 3.0
  206. +// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  207. +//
  208. +// If you do not wish to use this file under the terms of the GPL version 3.0
  209. +// then you may purchase a commercial license. For more information contact
  210. +// info@riverbankcomputing.com.
  211. +//
  212. +// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  213. +// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  214. +
  215. +
  216. +#ifndef _QPYQUICKVIEW_H
  217. +#define _QPYQUICKVIEW_H
  218. +
  219. +
  220. +#include <Python.h>
  221. +
  222. +#include <qqmlprivate.h>
  223. +#include <QByteArray>
  224. +#include <QMetaObject>
  225. +#include <QQuickView>
  226. +
  227. +#include "sipAPIQtQuick.h"
  228. +
  229. +
  230. +class QPyQuickView : public sipQQuickView
  231. +{
  232. +public:
  233. + QPyQuickView(QWindow *parent = 0);
  234. +
  235. + virtual int typeNr() const = 0;
  236. +
  237. + static QQmlPrivate::RegisterType *addType(PyTypeObject *type,
  238. + const QMetaObject *mo, const QByteArray &ptr_name,
  239. + const QByteArray &list_name);
  240. + void createPyObject(QWindow *parent);
  241. +
  242. +private:
  243. + QPyQuickView(const QPyQuickView &);
  244. +};
  245. +
  246. +
  247. +// The canned type declarations.
  248. +#define QPYQUICKVIEW_DECL(n) \
  249. +class QPyQuickView##n : public QPyQuickView \
  250. +{ \
  251. +public: \
  252. + QPyQuickView##n(QWindow *parent = 0); \
  253. + static QMetaObject staticMetaObject; \
  254. + virtual int typeNr() const {return n##U;} \
  255. +private: \
  256. + QPyQuickView##n(const QPyQuickView##n &); \
  257. +}
  258. +
  259. +
  260. +QPYQUICKVIEW_DECL(0);
  261. +QPYQUICKVIEW_DECL(1);
  262. +QPYQUICKVIEW_DECL(2);
  263. +QPYQUICKVIEW_DECL(3);
  264. +QPYQUICKVIEW_DECL(4);
  265. +QPYQUICKVIEW_DECL(5);
  266. +QPYQUICKVIEW_DECL(6);
  267. +QPYQUICKVIEW_DECL(7);
  268. +QPYQUICKVIEW_DECL(8);
  269. +QPYQUICKVIEW_DECL(9);
  270. +QPYQUICKVIEW_DECL(10);
  271. +QPYQUICKVIEW_DECL(11);
  272. +QPYQUICKVIEW_DECL(12);
  273. +QPYQUICKVIEW_DECL(13);
  274. +QPYQUICKVIEW_DECL(14);
  275. +QPYQUICKVIEW_DECL(15);
  276. +QPYQUICKVIEW_DECL(16);
  277. +QPYQUICKVIEW_DECL(17);
  278. +QPYQUICKVIEW_DECL(18);
  279. +QPYQUICKVIEW_DECL(19);
  280. +
  281. +
  282. +#endif
  283. diff -ur --new-file PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickwindow.cpp PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickwindow.cpp
  284. --- PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickwindow.cpp 1970-01-01 01:00:00.000000000 +0100
  285. +++ PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickwindow.cpp 2018-03-29 03:32:17.000000000 +0200
  286. @@ -0,0 +1,155 @@
  287. +// This is the implementation of the QPyQuickWindow classes.
  288. +//
  289. +// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
  290. +//
  291. +// This file is part of PyQt5.
  292. +//
  293. +// This file may be used under the terms of the GNU General Public License
  294. +// version 3.0 as published by the Free Software Foundation and appearing in
  295. +// the file LICENSE included in the packaging of this file. Please review the
  296. +// following information to ensure the GNU General Public License version 3.0
  297. +// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  298. +//
  299. +// If you do not wish to use this file under the terms of the GPL version 3.0
  300. +// then you may purchase a commercial license. For more information contact
  301. +// info@riverbankcomputing.com.
  302. +//
  303. +// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  304. +// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  305. +
  306. +
  307. +#include <Python.h>
  308. +
  309. +#include <QQmlListProperty>
  310. +
  311. +#include "qpyquickwindow.h"
  312. +
  313. +#include "sipAPIQtQuick.h"
  314. +
  315. +
  316. +// The maximum number of Python QQuickWindow types.
  317. +const int NrOfQuickWindowTypes = 20;
  318. +
  319. +// The list of registered Python types.
  320. +static QList<PyTypeObject *> pyqt_types;
  321. +
  322. +// The registration data for the canned types.
  323. +static QQmlPrivate::RegisterType canned_types[NrOfQuickWindowTypes];
  324. +
  325. +
  326. +#define QPYQUICKWINDOW_INIT(n) \
  327. + case n##U: \
  328. + QPyQuickWindow##n::staticMetaObject = *mo; \
  329. + rt->typeId = qRegisterNormalizedMetaType<QPyQuickWindow##n *>(ptr_name); \
  330. + rt->listId = qRegisterNormalizedMetaType<QQmlListProperty<QPyQuickWindow##n> >(list_name); \
  331. + rt->objectSize = sizeof(QPyQuickWindow##n); \
  332. + rt->create = QQmlPrivate::createInto<QPyQuickWindow##n>; \
  333. + rt->metaObject = mo; \
  334. + rt->attachedPropertiesFunction = QQmlPrivate::attachedPropertiesFunc<QPyQuickWindow##n>(); \
  335. + rt->attachedPropertiesMetaObject = QQmlPrivate::attachedPropertiesMetaObject<QPyQuickWindow##n>(); \
  336. + rt->parserStatusCast = QQmlPrivate::StaticCastSelector<QPyQuickWindow##n,QQmlParserStatus>::cast(); \
  337. + rt->valueSourceCast = QQmlPrivate::StaticCastSelector<QPyQuickWindow##n,QQmlPropertyValueSource>::cast(); \
  338. + rt->valueInterceptorCast = QQmlPrivate::StaticCastSelector<QPyQuickWindow##n,QQmlPropertyValueInterceptor>::cast(); \
  339. + break
  340. +
  341. +
  342. +// The ctor.
  343. +QPyQuickWindow::QPyQuickWindow(QWindow *parent) : sipQQuickWindow(parent)
  344. +{
  345. +}
  346. +
  347. +
  348. +// Add a new Python type and return its number.
  349. +QQmlPrivate::RegisterType *QPyQuickWindow::addType(PyTypeObject *type,
  350. + const QMetaObject *mo, const QByteArray &ptr_name,
  351. + const QByteArray &list_name)
  352. +{
  353. + int type_nr = pyqt_types.size();
  354. +
  355. + // Check we have a spare canned type.
  356. + if (type_nr >= NrOfQuickWindowTypes)
  357. + {
  358. + PyErr_Format(PyExc_TypeError,
  359. + "a maximum of %d QQuickWindow types may be registered with QML",
  360. + NrOfQuickWindowTypes);
  361. + return 0;
  362. + }
  363. +
  364. + pyqt_types.append(type);
  365. +
  366. + QQmlPrivate::RegisterType *rt = &canned_types[type_nr];
  367. +
  368. + // Initialise those members that depend on the C++ type.
  369. + switch (type_nr)
  370. + {
  371. + QPYQUICKWINDOW_INIT(0);
  372. + QPYQUICKWINDOW_INIT(1);
  373. + QPYQUICKWINDOW_INIT(2);
  374. + QPYQUICKWINDOW_INIT(3);
  375. + QPYQUICKWINDOW_INIT(4);
  376. + QPYQUICKWINDOW_INIT(5);
  377. + QPYQUICKWINDOW_INIT(6);
  378. + QPYQUICKWINDOW_INIT(7);
  379. + QPYQUICKWINDOW_INIT(8);
  380. + QPYQUICKWINDOW_INIT(9);
  381. + QPYQUICKWINDOW_INIT(10);
  382. + QPYQUICKWINDOW_INIT(11);
  383. + QPYQUICKWINDOW_INIT(12);
  384. + QPYQUICKWINDOW_INIT(13);
  385. + QPYQUICKWINDOW_INIT(14);
  386. + QPYQUICKWINDOW_INIT(15);
  387. + QPYQUICKWINDOW_INIT(16);
  388. + QPYQUICKWINDOW_INIT(17);
  389. + QPYQUICKWINDOW_INIT(18);
  390. + QPYQUICKWINDOW_INIT(19);
  391. + }
  392. +
  393. + return rt;
  394. +}
  395. +
  396. +
  397. +// Create the Python instance.
  398. +void QPyQuickWindow::createPyObject(QWindow *parent)
  399. +{
  400. + SIP_BLOCK_THREADS
  401. +
  402. + // Assume C++ owns everything.
  403. + PyObject *obj = sipConvertFromNewPyType(this, pyqt_types.at(typeNr()),
  404. + NULL, &sipPySelf, "D", parent, sipType_QWindow, NULL);
  405. +
  406. + if (!obj)
  407. + pyqt5_qtquick_err_print();
  408. +
  409. + SIP_UNBLOCK_THREADS
  410. +}
  411. +
  412. +
  413. +// The canned type implementations.
  414. +#define QPYQUICKWINDOW_IMPL(n) \
  415. +QPyQuickWindow##n::QPyQuickWindow##n(QWindow *parent) : QPyQuickWindow(parent) \
  416. +{ \
  417. + createPyObject(parent); \
  418. +} \
  419. +QMetaObject QPyQuickWindow##n::staticMetaObject
  420. +
  421. +
  422. +QPYQUICKWINDOW_IMPL(0);
  423. +QPYQUICKWINDOW_IMPL(1);
  424. +QPYQUICKWINDOW_IMPL(2);
  425. +QPYQUICKWINDOW_IMPL(3);
  426. +QPYQUICKWINDOW_IMPL(4);
  427. +QPYQUICKWINDOW_IMPL(5);
  428. +QPYQUICKWINDOW_IMPL(6);
  429. +QPYQUICKWINDOW_IMPL(7);
  430. +QPYQUICKWINDOW_IMPL(8);
  431. +QPYQUICKWINDOW_IMPL(9);
  432. +QPYQUICKWINDOW_IMPL(10);
  433. +QPYQUICKWINDOW_IMPL(11);
  434. +QPYQUICKWINDOW_IMPL(12);
  435. +QPYQUICKWINDOW_IMPL(13);
  436. +QPYQUICKWINDOW_IMPL(14);
  437. +QPYQUICKWINDOW_IMPL(15);
  438. +QPYQUICKWINDOW_IMPL(16);
  439. +QPYQUICKWINDOW_IMPL(17);
  440. +QPYQUICKWINDOW_IMPL(18);
  441. +QPYQUICKWINDOW_IMPL(19);
  442. diff -ur --new-file PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickwindow.h PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickwindow.h
  443. --- PyQt5_gpl-5.10.1/qpy/QtQuick/qpyquickwindow.h 1970-01-01 01:00:00.000000000 +0100
  444. +++ PyQt5_gpl-5.10.2.dev1803281228/qpy/QtQuick/qpyquickwindow.h 2018-03-29 03:32:17.000000000 +0200
  445. @@ -0,0 +1,87 @@
  446. +// This is the definition of the QPyQuickWindow classes.
  447. +//
  448. +// Copyright (c) 2018 Riverbank Computing Limited <info@riverbankcomputing.com>
  449. +//
  450. +// This file is part of PyQt5.
  451. +//
  452. +// This file may be used under the terms of the GNU General Public License
  453. +// version 3.0 as published by the Free Software Foundation and appearing in
  454. +// the file LICENSE included in the packaging of this file. Please review the
  455. +// following information to ensure the GNU General Public License version 3.0
  456. +// requirements will be met: http://www.gnu.org/copyleft/gpl.html.
  457. +//
  458. +// If you do not wish to use this file under the terms of the GPL version 3.0
  459. +// then you may purchase a commercial license. For more information contact
  460. +// info@riverbankcomputing.com.
  461. +//
  462. +// This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
  463. +// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  464. +
  465. +
  466. +#ifndef _QPYQUICKWINDOW_H
  467. +#define _QPYQUICKWINDOW_H
  468. +
  469. +
  470. +#include <Python.h>
  471. +
  472. +#include <qqmlprivate.h>
  473. +#include <QByteArray>
  474. +#include <QMetaObject>
  475. +#include <QQuickWindow>
  476. +
  477. +#include "sipAPIQtQuick.h"
  478. +
  479. +
  480. +class QPyQuickWindow : public sipQQuickWindow
  481. +{
  482. +public:
  483. + QPyQuickWindow(QWindow *parent = 0);
  484. +
  485. + virtual int typeNr() const = 0;
  486. +
  487. + static QQmlPrivate::RegisterType *addType(PyTypeObject *type,
  488. + const QMetaObject *mo, const QByteArray &ptr_name,
  489. + const QByteArray &list_name);
  490. + void createPyObject(QWindow *parent);
  491. +
  492. +private:
  493. + QPyQuickWindow(const QPyQuickWindow &);
  494. +};
  495. +
  496. +
  497. +// The canned type declarations.
  498. +#define QPYQUICKWINDOW_DECL(n) \
  499. +class QPyQuickWindow##n : public QPyQuickWindow \
  500. +{ \
  501. +public: \
  502. + QPyQuickWindow##n(QWindow *parent = 0); \
  503. + static QMetaObject staticMetaObject; \
  504. + virtual int typeNr() const {return n##U;} \
  505. +private: \
  506. + QPyQuickWindow##n(const QPyQuickWindow##n &); \
  507. +}
  508. +
  509. +
  510. +QPYQUICKWINDOW_DECL(0);
  511. +QPYQUICKWINDOW_DECL(1);
  512. +QPYQUICKWINDOW_DECL(2);
  513. +QPYQUICKWINDOW_DECL(3);
  514. +QPYQUICKWINDOW_DECL(4);
  515. +QPYQUICKWINDOW_DECL(5);
  516. +QPYQUICKWINDOW_DECL(6);
  517. +QPYQUICKWINDOW_DECL(7);
  518. +QPYQUICKWINDOW_DECL(8);
  519. +QPYQUICKWINDOW_DECL(9);
  520. +QPYQUICKWINDOW_DECL(10);
  521. +QPYQUICKWINDOW_DECL(11);
  522. +QPYQUICKWINDOW_DECL(12);
  523. +QPYQUICKWINDOW_DECL(13);
  524. +QPYQUICKWINDOW_DECL(14);
  525. +QPYQUICKWINDOW_DECL(15);
  526. +QPYQUICKWINDOW_DECL(16);
  527. +QPYQUICKWINDOW_DECL(17);
  528. +QPYQUICKWINDOW_DECL(18);
  529. +QPYQUICKWINDOW_DECL(19);
  530. +
  531. +
  532. +#endif
  533. diff -ur --new-file PyQt5_gpl-5.10.1/sip/QtQuick/qquickview.sip PyQt5_gpl-5.10.2.dev1803281228/sip/QtQuick/qquickview.sip
  534. --- PyQt5_gpl-5.10.1/sip/QtQuick/qquickview.sip 2018-02-27 11:43:53.000000000 +0100
  535. +++ PyQt5_gpl-5.10.2.dev1803281228/sip/QtQuick/qquickview.sip 2018-03-29 03:32:18.000000000 +0200
  536. @@ -20,7 +20,7 @@
  537. // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  538. -class QQuickView : QQuickWindow
  539. +class QQuickView : QQuickWindow /ExportDerived/
  540. {
  541. %TypeHeaderCode
  542. #include <qquickview.h>
  543. diff -ur --new-file PyQt5_gpl-5.10.1/sip/QtQuick/qquickwindow.sip PyQt5_gpl-5.10.2.dev1803281228/sip/QtQuick/qquickwindow.sip
  544. --- PyQt5_gpl-5.10.1/sip/QtQuick/qquickwindow.sip 2018-02-27 11:43:53.000000000 +0100
  545. +++ PyQt5_gpl-5.10.2.dev1803281228/sip/QtQuick/qquickwindow.sip 2018-03-29 03:32:18.000000000 +0200
  546. @@ -20,7 +20,7 @@
  547. // WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
  548. -class QQuickWindow : QWindow
  549. +class QQuickWindow : QWindow /ExportDerived/
  550. {
  551. %TypeHeaderCode
  552. #include <qquickwindow.h>