Mercurial > projects > qtd
comparison mini/test1/main.d @ 362:bcbfffef4f9e
Undecorated D types can be registered with Qt
author | Max Samukha <maxter@maxter.com> |
---|---|
date | Wed, 09 Jun 2010 16:37:24 +0300 |
parents | beaf4a2974d7 |
children | 185df9220ea7 |
comparison
equal
deleted
inserted
replaced
361:beaf4a2974d7 | 362:bcbfffef4f9e |
---|---|
25 } | 25 } |
26 } | 26 } |
27 | 27 |
28 void main(string[] args) | 28 void main(string[] args) |
29 { | 29 { |
30 int id = qRegisterMetaType!A(); | |
31 qRegisterMetaTypeStreamOperators!A(); | |
32 | |
33 foreach (i; 0..10) | |
34 { | |
35 writeln("Iter ", i); | |
36 | |
37 void foo(int x, int y, int z) | |
38 { | |
39 auto a = new A("A" ~ to!string(i)); | |
40 auto b = cast(A)QMetaType.construct(id, cast(void*)a); | |
41 writeln(b.name); | |
42 | |
43 QMetaType.destroy(id, cast(void*)a); | |
44 QMetaType.destroy(id, cast(void*)b); | |
45 | |
46 scope ds = new QDataStream(cast(void*)3, QtdObjectFlags.nativeOwnership); | |
47 QMetaType.save(ds, id, cast(void*)i); | |
48 QMetaType.load(ds, id, cast(void*)i); | |
49 writeln("Done iterating ", x, " ", y, " ", z); | |
50 } | |
51 | |
52 foo(i + 1, i + 2, i + 3); | |
53 } | |
54 /+ | |
55 | |
56 writeln("Great!"); | |
57 | |
58 | |
59 writeln("Even greater!"); | |
60 +/ | |
61 | |
62 } | 30 } |