Mercurial > projects > qtd
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 +/ |