Mercurial > projects > qtd
diff cpp/qt_core/QMetaType_shell.cpp @ 87:f46133029d8b
qtd: Implement QMetaType. QVariant may save D types now.
author | SokoL_SD |
---|---|
date | Tue, 26 May 2009 10:59:07 +0000 |
parents | |
children | 9784459f0750 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cpp/qt_core/QMetaType_shell.cpp Tue May 26 10:59:07 2009 +0000 @@ -0,0 +1,28 @@ + +#include <QMetaType> +#include "qtd_core.h" + +typedef void * Ctor (const void *copy); +typedef void Dtor(void *obj); + +extern "C" DLL_PUBLIC int qtd_registerType(char* namePtr, Ctor ctor, Dtor dtor) +{ + return QMetaType::registerType(namePtr, dtor, ctor); +} + +typedef void (*SaveOperator)(void *, void *); +typedef void (*LoadOperator)(void *, void *); + + +extern "C" DLL_PUBLIC void qtd_registerStreamOperators(const char *typeName, SaveOperator saveOp, + LoadOperator loadOp) +{ + QMetaType::registerStreamOperators(typeName, reinterpret_cast<QMetaType::SaveOperator>(saveOp), + reinterpret_cast<QMetaType::LoadOperator>(loadOp)); +} + + +extern "C" DLL_PUBLIC int qtd_MetatypeId(char *id) +{ + return QMetaType::type(id); +}