diff qt/QGlobal.d @ 254:34a37904ff77

(none)
author maxter
date Sun, 30 Aug 2009 10:59:56 +0000
parents 37eed70de029
children 17b5e13364b7 0d2094800bdb
line wrap: on
line diff
--- a/qt/QGlobal.d	Sun Aug 30 09:59:12 2009 +0000
+++ b/qt/QGlobal.d	Sun Aug 30 10:59:56 2009 +0000
@@ -20,6 +20,11 @@
                    core.memory;
 }
 
+T static_cast(T, U)(U obj)
+{
+    return cast(T)cast(void*)obj;
+}
+
 template QT_BEGIN_NAMESPACE() {
 }
 
@@ -35,13 +40,21 @@
 mixin QT_BEGIN_HEADER;
 mixin QT_BEGIN_NAMESPACE;
 
-extern(C) void __qtd_dummy() {}
+//TODO: this sucks
+extern(C) void qtd_dummy() {}
+// Defined in QObject.d
+extern(C) void qtd_delete_d_qobject(void* dPtr);
 
 version(cpp_shared)
 {
-    extern (C) void __qtd_qtd_core_initCallBacks(void* toUtf8, void* dummy);
+    extern (C) void qtd_core_initCallBacks(void* toUtf8, void* dummy);
     static this() {
-        __qtd_qtd_core_initCallBacks(&_d_toUtf8, &__qtd_dummy);
+        qtd_core_initCallBacks(&qtd_toUtf8, &qtd_dummy);
+    }
+
+    extern (C) void qtd_QObjectEntity_initCallBacks(void* del_d_obj);
+    static this() {
+        qtd_QObjectEntity_initCallBacks(&qtd_delete_d_qobject);
     }
 }
 
@@ -694,6 +707,7 @@
     const InterfaceCountImpl = TInterfaces.length;
 }
 
+/+
 scope class StackObject(C)
 {
     byte[InstanceSize!(C)] data;
@@ -719,6 +733,7 @@
         }
     }
 }
++/
 
 mixin QT_END_HEADER;