view cpp/qt_core/QString_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 7dd099050621
children 5173835bb372
line wrap: on
line source

#include <QString>
#include "qtd_core.h"

extern "C" DLL_PUBLIC const ushort* __qtd_QString_utf16
(void* __this_nativeId)
{
    QString *__qt_this = (QString *) __this_nativeId;
    return __qt_this->utf16();
}

extern "C" DLL_PUBLIC int __qtd_QString_size
(void* __this_nativeId)
{
    QString *__qt_this = (QString *) __this_nativeId;
    return __qt_this->size();
}

extern "C" DLL_PUBLIC void __qtd_QString_operatorAssign
(void* __this_nativeId,
 DArray text)
{
    QString *__qt_this = (QString *) __this_nativeId;
    *__qt_this = QString::fromUtf8((const char *)text.ptr, text.length);
}