view cpp/qt_gui/UrlHandler_shell.cpp @ 248:7664de4a55e5

Fixed #23. QtD_QObjectEntity is not created dynamically for shell classes any more. Class initialization is now performed by static constructors. When wrapping QObjects returned from functions, their run-time types are now taken into account. QObjects are allocated on GC heap, a doubly-linked list is used to prevent them from been collected (arguably a better solution than allocating on C heap and adding GC ranges) Minor changes (including unnecessary).
author maxter
date Thu, 20 Aug 2009 14:47:17 +0000
parents 846b89285e2b
children 37eed70de029
line wrap: on
line source

#include "UrlHandler_shell.h"

#include "qtd_core.h"

UrlHandler::UrlHandler(void *d_ptr, QObject*  parent0)
    : QObject(parent0),
      QtD_QObjectEntity(this, d_ptr)
{
}

#ifdef CPP_SHARED
extern "C" typedef void (*pfqtd_UrlHandler_handleUrl_QUrl_dispatch)(void *dId, void* arg__1);
pfqtd_UrlHandler_handleUrl_QUrl_dispatch qtd_UrlHandler_handleUrl_QUrl_dispatch;
#else
extern "C" void qtd_UrlHandler_handleUrl_QUrl_dispatch(void *dId, void* name1);
#endif
void UrlHandler::handleUrl(const QUrl &url)
{
    qtd_UrlHandler_handleUrl_QUrl_dispatch(this->dId, &(QUrl& )url);
}

extern "C" DLL_PUBLIC void qtd_UrlHandler_destructor(void *ptr)
{
    delete (UrlHandler *)ptr;
}

extern "C" DLL_PUBLIC void* qtd_UrlHandler_UrlHandler_QObject
(void *d_ptr,
 void* parent0)
{
    QObject*  __qt_parent0 = (QObject* ) parent0;
    UrlHandler *__qt_this = new UrlHandler(d_ptr, (QObject* )__qt_parent0);
    return (void *) __qt_this;
}

#ifdef CPP_SHARED
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;
}
#endif