comparison generator/typesystem_core.xml @ 354:18bd68f586c6

removed superfluous destructors
author Max Samukha <maxter@spambox.com>
date Mon, 24 May 2010 23:43:30 +0300
parents 96a75b1e5b26
children 08c1ca7975ab
comparison
equal deleted inserted replaced
353:0a671b1382d7 354:18bd68f586c6
2361 </object-type> 2361 </object-type>
2362 2362
2363 <object-type name="QObject"> 2363 <object-type name="QObject">
2364 <inject-code class="native"> 2364 <inject-code class="native">
2365 2365
2366 #ifdef CPP_SHARED
2367 QTD_EXPORT_VAR(qtd_delete_d_qobject);
2368
2369 extern "C" DLL_PUBLIC void qtd_QObjectEntity_initCallBacks(pfunc_abstr del_d_qobj)
2370 {
2371 QTD_EXPORT_VAR_SET(qtd_delete_d_qobject, del_d_qobj);
2372 }
2373 #endif
2374
2375
2376 extern "C" DLL_PUBLIC void* qtd_get_d_qobject(void *nativeId) 2366 extern "C" DLL_PUBLIC void* qtd_get_d_qobject(void *nativeId)
2377 { 2367 {
2378 QtD_QObjectEntity *entity = QtD_QObjectEntity::getQObjectEntity((QObject*)nativeId); 2368 QtD_QObjectEntity *entity = QtD_QObjectEntity::getQObjectEntity((QObject*)nativeId);
2379 return entity ? entity-&gt;dId : NULL; 2369 return entity ? entity-&gt;dId : NULL;
2380 }
2381
2382 extern "C" DLL_PUBLIC void qtd_delete_qobject(void *nativeId)
2383 {
2384 delete (QObject*)nativeId;
2385 } 2370 }
2386 2371
2387 extern "C" DLL_PUBLIC void qtd_create_qobject_entity(void* nativeId, void *dId) 2372 extern "C" DLL_PUBLIC void qtd_create_qobject_entity(void* nativeId, void *dId)
2388 { 2373 {
2389 new QtD_QObjectEntity((QObject*)nativeId, dId); 2374 new QtD_QObjectEntity((QObject*)nativeId, dId);
2414 2399
2415 </inject-code> 2400 </inject-code>
2416 2401
2417 <inject-code class="java-free"> 2402 <inject-code class="java-free">
2418 extern(C) void* qtd_get_d_qobject(void* nativeId); 2403 extern(C) void* qtd_get_d_qobject(void* nativeId);
2419 extern(C) void qtd_delete_qobject(void* nativeId);
2420 extern(C) void* qtd_create_qobject_entity(void* nativeId, void* dId); 2404 extern(C) void* qtd_create_qobject_entity(void* nativeId, void* dId);
2421 extern(C) void* qtd_QObject_metaObject(void* nativeId); 2405 extern(C) void* qtd_QObject_metaObject(void* nativeId);
2422 extern(C) void qtd_connect(void *nativeId, cstringz signal, int id, bool dynamicEntity); 2406 extern(C) void qtd_connect(void *nativeId, cstringz signal, int id, bool dynamicEntity);
2423 extern(C) void qtd_disconnect(void *nativeId, cstringz signal, int id, bool dynamicEntity); 2407 extern(C) void qtd_disconnect(void *nativeId, cstringz signal, int id, bool dynamicEntity);
2424 2408
2425 extern(C) void qtd_delete_d_qobject(void* dId)
2426 {
2427 auto obj = cast(QObject)dId;
2428
2429 if (!(obj.__flags &amp; QtdObjectFlags.dOwnership))
2430 {
2431 // Avoid deleting native object twice
2432 obj.__setFlags(QtdObjectFlags.nativeOwnership, true);
2433 delete obj;
2434 }
2435 }
2436 </inject-code> 2409 </inject-code>
2437 2410
2438 <modify-function signature="childEvent(QChildEvent*)"> 2411 <modify-function signature="childEvent(QChildEvent*)">
2439 <modify-argument index="1" invalidate-after-use="yes"/> 2412 <modify-argument index="1" invalidate-after-use="yes"/>
2440 </modify-function> 2413 </modify-function>