Skip to content

Commit e558014

Browse files
author
florianlink
committed
added ownership handling to central Qt classes
git-svn-id: http://svn.code.sf.net/p/pythonqt/code/trunk@380 ea8d5007-eb21-0410-b261-ccb3ea6e24a9
1 parent f5eb178 commit e558014

File tree

3 files changed

+862
-35
lines changed

3 files changed

+862
-35
lines changed

generator/typesystem_core.xml

Lines changed: 76 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -814,6 +814,11 @@
814814
<object-type name="QDirIterator"/>
815815
<object-type name="QAbstractFileEngineIterator"/>
816816
<object-type name="QAbstractItemModel">
817+
<modify-function signature="mimeData(const QList&lt;QModelIndex&gt;&amp;)const">
818+
<modify-argument index="return">
819+
<define-ownership owner="python" />
820+
</modify-argument>
821+
</modify-function>
817822
</object-type>
818823

819824
<object-type name="QAbstractListModel">
@@ -1003,16 +1008,71 @@
10031008

10041009
<object-type name="QAbstractAnimation"/>
10051010
<object-type name="QVariantAnimation"/>
1006-
<object-type name="QAnimationGroup"/>
1011+
<object-type name="QAnimationGroup">
1012+
<modify-function signature="addAnimation(QAbstractAnimation*)">
1013+
<modify-argument index="1">
1014+
<define-ownership owner="c++" />
1015+
</modify-argument>
1016+
</modify-function>
1017+
<modify-function signature="insertAnimation(int, QAbstractAnimation*)">
1018+
<modify-argument index="2">
1019+
<define-ownership owner="c++" />
1020+
</modify-argument>
1021+
</modify-function>
1022+
1023+
<modify-function signature="removeAnimation(QAbstractAnimation*)">
1024+
<modify-argument index="1">
1025+
<define-ownership owner="python" />
1026+
</modify-argument>
1027+
</modify-function>
1028+
1029+
<modify-function signature="takeAnimation(int)">
1030+
<modify-argument index="return">
1031+
<define-ownership owner="python" />
1032+
</modify-argument>
1033+
</modify-function>
1034+
</object-type>
10071035
<object-type name="QPauseAnimation"/>
10081036
<object-type name="QParallelAnimationGroup"/>
10091037
<object-type name="QSequentialAnimationGroup"/>
10101038
<object-type name="QPropertyAnimation"/>
10111039

10121040
<object-type name="QAbstractState"/>
10131041
<object-type name="QAbstractTransition"/>
1014-
<object-type name="QState"/>
1015-
<object-type name="QStateMachine"/>
1042+
1043+
<object-type name="QState">
1044+
<modify-function signature="addTransition(QAbstractTransition*)">
1045+
<modify-argument index="1">
1046+
<define-ownership owner="c++" />
1047+
</modify-argument>
1048+
</modify-function>
1049+
1050+
<modify-function signature="addTransition(QAbstractState*)">
1051+
<modify-argument index="1">
1052+
<define-ownership owner="c++" />
1053+
</modify-argument>
1054+
</modify-function>
1055+
1056+
<modify-function signature="removeTransition(QAbstractTransition*)">
1057+
<modify-argument index="1">
1058+
<define-ownership owner="python" />
1059+
</modify-argument>
1060+
</modify-function>
1061+
</object-type>
1062+
1063+
<object-type name="QStateMachine">
1064+
<modify-function signature="addState(QAbstractState *)">
1065+
<modify-argument index="1">
1066+
<define-ownership owner="c++" />
1067+
</modify-argument>
1068+
</modify-function>
1069+
<modify-function signature="removeState(QAbstractState *)">
1070+
<modify-argument index="1">
1071+
<define-ownership owner="python" />
1072+
</modify-argument>
1073+
</modify-function>
1074+
</object-type>
1075+
10161076
<object-type name="QHistoryState"/>
10171077
<object-type name="QSignalTransition"/>
10181078
<object-type name="QEventTransition"/>
@@ -1173,6 +1233,17 @@
11731233
<include file-name="QStringList" location="global"/>
11741234
</extra-includes>
11751235

1236+
<modify-function signature="postEvent(QObject*,QEvent*)">
1237+
<modify-argument index="2">
1238+
<define-ownership owner="c++"/>
1239+
</modify-argument>
1240+
</modify-function>
1241+
<modify-function signature="postEvent(QObject*,QEvent*, int)">
1242+
<modify-argument index="2">
1243+
<define-ownership owner="c++"/>
1244+
</modify-argument>
1245+
</modify-function>
1246+
11761247
<modify-function signature="argv()" remove="all"/>
11771248
<!-- Obsolete -->
11781249
<modify-function signature="argc()" remove="all"/>
@@ -1636,7 +1707,8 @@
16361707
<suppress-warning text="WARNING(MetaJavaBuilder) :: namespace '*' for enum '*' is not declared"/>
16371708
<suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function '*', unmatched parameter type '*'"/>
16381709
<suppress-warning text="WARNING(MetaJavaBuilder) :: skipping function '*', unmatched return type '*'"/>
1639-
<suppress-warning text="WARNING(MetaJavaBuilder) :: signature '*' for function modification in '*' not found. Possible candidates: "/>
1710+
<!-- <suppress-warning text="WARNING(MetaJavaBuilder) :: signature '*' for function modification in '*' not found. Possible candidates: "/>
1711+
-->
16401712
<suppress-warning text="WARNING(MetaJavaBuilder) :: namespace '*' does not have a type entry"/>
16411713
<suppress-warning text="WARNING(MetaJavaBuilder) :: unsupported default value '*' of argument in function '*', class '*'"/>
16421714
<suppress-warning text="WARNING(MetaJavaBuilder) :: Shadowing: * and *; Java code will not compile"/>

0 commit comments

Comments
 (0)