Mercurial > projects > qtd
changeset 214:11f1760d1700
UrlHandler windows fix
author | eldar |
---|---|
date | Tue, 14 Jul 2009 14:37:23 +0000 |
parents | 26036621830e |
children | 8aaa84d48451 |
files | build/windows.makefile cpp/qt_gui/UrlHandler_shell.cpp qt/gui/UrlHandler.d |
diffstat | 3 files changed, 22 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- 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 = \\
--- 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
--- 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); +}