# HG changeset patch # User eldar # Date 1247582243 0 # Node ID 11f1760d1700b0342cde7284a60629f985928dee # Parent 26036621830e61b71522d6e71b4989b9e4ac88c3 UrlHandler windows fix diff -r 26036621830e -r 11f1760d1700 build/windows.makefile --- a/build/windows.makefile Tue Jul 14 13:22:48 2009 +0000 +++ b/build/windows.makefile Tue Jul 14 14:37:23 2009 +0000 @@ -8,7 +8,7 @@ LIB_NAME_PREFIX = LIB_LINK = mingw32 qtmain BIN_EXT = .exe -GEN = release/generator$(BIN_EXT) +GEN = release\generator$(BIN_EXT) MKDIR = build\mkdir.bat RM = build\rm.exe SL = \\ diff -r 26036621830e -r 11f1760d1700 cpp/qt_gui/UrlHandler_shell.cpp --- a/cpp/qt_gui/UrlHandler_shell.cpp Tue Jul 14 13:22:48 2009 +0000 +++ b/cpp/qt_gui/UrlHandler_shell.cpp Tue Jul 14 14:37:23 2009 +0000 @@ -8,7 +8,12 @@ { } +#ifdef CPP_SHARED +extern "C" typedef void (*pfqtd_UrlHandler_handleUrl_QUrl_dispatch)(void *d_entity, void* arg__1); +pfqtd_UrlHandler_handleUrl_QUrl_dispatch qtd_UrlHandler_handleUrl_QUrl_dispatch; +#else extern "C" void qtd_UrlHandler_handleUrl_QUrl_dispatch(void *d_entity, void* name1); +#endif void UrlHandler::handleUrl(const QUrl &url) { qtd_UrlHandler_handleUrl_QUrl_dispatch(this->d_entity(), &(QUrl& )url); @@ -28,7 +33,10 @@ return (void *) __qt_this; } - +extern "C" DLL_PUBLIC void qtd_UrlHandler_initCallBacks(pfunc_abstr *virts, pfunc_abstr qobj_del) { + qtd_UrlHandler_handleUrl_QUrl_dispatch = (pfqtd_UrlHandler_handleUrl_QUrl_dispatch) virts[0]; +// qtd_D_QWidget_delete = (qtd_pf_D_QWidget_delete)qobj_del; +} /* ---------------------------------------- */ #if !defined(Q_MOC_OUTPUT_REVISION) @@ -95,4 +103,4 @@ } return _id; } -QT_END_MOC_NAMESPACE \ No newline at end of file +QT_END_MOC_NAMESPACE diff -r 26036621830e -r 11f1760d1700 qt/gui/UrlHandler.d --- a/qt/gui/UrlHandler.d Tue Jul 14 13:22:48 2009 +0000 +++ b/qt/gui/UrlHandler.d Tue Jul 14 14:37:23 2009 +0000 @@ -41,3 +41,14 @@ scope name1_d_ref = new QUrl(name1, true); d_object.handleUrl(name1_d_ref); } + +private extern (C) void qtd_UrlHandler_initCallBacks(void* virtuals, void* qobj_del); + +static this() { + void*[1] virt_arr; + virt_arr[0] = &qtd_UrlHandler_handleUrl_QUrl_dispatch; + + void *qobj_del; +// qobj_del = &qtd_D_QWidget_delete; + qtd_UrlHandler_initCallBacks(virt_arr.ptr, null); +}