comparison d2/qtd/QtdObject.d @ 315:2049c3abd348 lifetime

more cleanup
author maxter <spambox@d-coding.com>
date Wed, 23 Dec 2009 23:54:39 +0200
parents 80b52f5e97b6
children
comparison
equal deleted inserted replaced
314:80b52f5e97b6 315:2049c3abd348
288 } 288 }
289 289
290 /** 290 /**
291 291
292 */ 292 */
293 /+
293 void __ownership(QtdOwnership native) 294 void __ownership(QtdOwnership native)
294 { 295 {
295 switch(own) 296 switch(own)
296 { 297 {
297 case QtdOwnership.cpp: 298 case QtdOwnership.cpp:
308 __pin; 309 __pin;
309 default: 310 default:
310 assert(false); 311 assert(false);
311 } 312 }
312 } 313 }
314 +/
313 315
314 /** 316 /**
315 Returns true if garbage collection for this object is disabled. 317 Returns true if garbage collection for this object is disabled.
316 */ 318 */
317 final bool __isPinned() 319 final bool __isPinned()
349 Constructs the object. 351 Constructs the object.
350 */ 352 */
351 this(void* nativeId, QtdObjectFlags flags = QtdObjectFlags.none) 353 this(void* nativeId, QtdObjectFlags flags = QtdObjectFlags.none)
352 { 354 {
353 super(nativeId, flags); 355 super(nativeId, flags);
354 if (!(__flags & QtdObjectFlags.canHaveDups) 356 if (!(__flags & QtdObjectFlags.hasDId))
355 && !(__flags & QtdObjectFlags.hasDId))
356 metaObject.addRef(this); 357 metaObject.addRef(this);
357 } 358 }
358 359
359 ~this() 360 ~this()
360 { 361 {
361 if (!(__flags & QtdObjectFlags.canHaveDups) 362 if (!(__flags & QtdObjectFlags.hasDId))
362 && !(__flags & QtdObjectFlags.hasDId))
363 metaObject.removeRef(this); 363 metaObject.removeRef(this);
364 } 364 }
365 365
366 mixin SignalHandlerOps; 366 mixin SignalHandlerOps;
367 } 367 }
377 obj.__flags |= QtdObjectFlags.skipNativeDelete; 377 obj.__flags |= QtdObjectFlags.skipNativeDelete;
378 delete obj; 378 delete obj;
379 } 379 }
380 } 380 }
381 381
382 /+
382 extern(C) void qtd_ownership(void* dId, QtdOwnership own) 383 extern(C) void qtd_ownership(void* dId, QtdOwnership own)
383 { 384 {
384 auto obj = cast(QtdObjectBase)dId; 385 auto obj = cast(QtdObjectBase)dId;
385 obj.__ownership = own; 386 obj.__ownership = own;
386 } 387 }
388 +/