annotate cpp/qt_qtd/qtd_core.cpp @ 257:17b5e13364b7 lifetime

(none)
author maxter
date Wed, 16 Sep 2009 13:56:02 +0000
parents 073b9153ed8a
children 2049c3abd348
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
e78566595089 initial import
mandel
parents:
diff changeset
1 /**
e78566595089 initial import
mandel
parents:
diff changeset
2 *
e78566595089 initial import
mandel
parents:
diff changeset
3 * Copyright: Copyright QtD Team, 2008-2009
e78566595089 initial import
mandel
parents:
diff changeset
4 * License: <a href="http://www.boost.org/LICENSE_1_0.txt>Boost License 1.0</a>
e78566595089 initial import
mandel
parents:
diff changeset
5 *
e78566595089 initial import
mandel
parents:
diff changeset
6 * Copyright QtD Team, 2008-2009
e78566595089 initial import
mandel
parents:
diff changeset
7 * Distributed under the Boost Software License, Version 1.0.
e78566595089 initial import
mandel
parents:
diff changeset
8 * (See accompanying file boost-license-1.0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
e78566595089 initial import
mandel
parents:
diff changeset
9 *
e78566595089 initial import
mandel
parents:
diff changeset
10 */
e78566595089 initial import
mandel
parents:
diff changeset
11
e78566595089 initial import
mandel
parents:
diff changeset
12 #include "qtd_core.h"
e78566595089 initial import
mandel
parents:
diff changeset
13 #include <iostream>
257
maxter
parents: 253
diff changeset
14 #include <QCryptographicHash>
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
15
257
maxter
parents: 253
diff changeset
16 extern "C" DLL_PUBLIC void* qtd_test_Object()
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
17 {
257
maxter
parents: 253
diff changeset
18 return new QCryptographicHash(QCryptographicHash::Md5);
maxter
parents: 253
diff changeset
19 }
maxter
parents: 253
diff changeset
20
maxter
parents: 253
diff changeset
21 extern "C" DLL_PUBLIC void qtd_test_delete_Object(void* obj)
maxter
parents: 253
diff changeset
22 {
maxter
parents: 253
diff changeset
23 delete (QCryptographicHash*)obj;
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
24 }
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
25
1
e78566595089 initial import
mandel
parents:
diff changeset
26 extern "C" DLL_PUBLIC QModelIndex qtd_to_QModelIndex(QModelIndexAccessor mia)
e78566595089 initial import
mandel
parents:
diff changeset
27 {
e78566595089 initial import
mandel
parents:
diff changeset
28 return * (QModelIndex *) (&mia) ;
e78566595089 initial import
mandel
parents:
diff changeset
29 }
e78566595089 initial import
mandel
parents:
diff changeset
30
e78566595089 initial import
mandel
parents:
diff changeset
31 extern "C" DLL_PUBLIC QModelIndexAccessor qtd_from_QModelIndex(const QModelIndex &index)
e78566595089 initial import
mandel
parents:
diff changeset
32 {
e78566595089 initial import
mandel
parents:
diff changeset
33 QModelIndexAccessor mia = {
e78566595089 initial import
mandel
parents:
diff changeset
34 index.row(),
e78566595089 initial import
mandel
parents:
diff changeset
35 index.column(),
e78566595089 initial import
mandel
parents:
diff changeset
36 index.internalPointer(),
e78566595089 initial import
mandel
parents:
diff changeset
37 (QAbstractItemModel *) index.model()
e78566595089 initial import
mandel
parents:
diff changeset
38 };
e78566595089 initial import
mandel
parents:
diff changeset
39
e78566595089 initial import
mandel
parents:
diff changeset
40 return mia;
e78566595089 initial import
mandel
parents:
diff changeset
41 }
e78566595089 initial import
mandel
parents:
diff changeset
42
247
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
43 extern "C" DLL_PUBLIC const char* qtd_qVersion()
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
44 {
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
45 return qVersion();
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
46 }
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
47
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
48 extern "C" DLL_PUBLIC bool qtd_qSharedBuild()
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
49 {
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
50 return qSharedBuild();
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
51 }
27497bbe62a1 Implemented qVersion, qSharedBuild. Fixes #31
maxter
parents: 57
diff changeset
52
1
e78566595089 initial import
mandel
parents:
diff changeset
53 #ifdef CPP_SHARED
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
54 QTD_EXPORT_VAR(qtd_toUtf8);
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
55 QTD_EXPORT_VAR(qtd_dummy);
257
maxter
parents: 253
diff changeset
56 QTD_EXPORT_VAR(qtd_delete_d_object);
1
e78566595089 initial import
mandel
parents:
diff changeset
57
257
maxter
parents: 253
diff changeset
58 extern "C" DLL_PUBLIC void qtd_core_initCallBacks(pfunc_abstr d_func, pfunc_abstr dummy
maxter
parents: 253
diff changeset
59 , pfunc_abstr del_d_obj) {
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
60 QTD_EXPORT_VAR_SET(qtd_toUtf8, d_func);
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
61 QTD_EXPORT_VAR_SET(qtd_dummy, dummy);
257
maxter
parents: 253
diff changeset
62 QTD_EXPORT_VAR_SET(qtd_delete_d_object, del_d_obj);
253
073b9153ed8a Rev. 264 done right.
maxter
parents: 252
diff changeset
63 //std::cout << "qtd_core initialized" << std::endl;
1
e78566595089 initial import
mandel
parents:
diff changeset
64 }
e78566595089 initial import
mandel
parents:
diff changeset
65 #endif
57
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
66
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
67 extern bool qRegisterResourceData
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
68 (int, const unsigned char *, const unsigned char *, const unsigned char *);
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
69
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
70 extern bool qUnregisterResourceData
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
71 (int, const unsigned char *, const unsigned char *, const unsigned char *);
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
72
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
73 extern "C" DLL_PUBLIC bool qtd_register_resource_data(int version, const unsigned char *tree,
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
74 const unsigned char *name, const unsigned char *data)
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
75 {
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
76 return qRegisterResourceData(version, tree, name, data);
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
77 }
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
78
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
79 extern "C" DLL_PUBLIC bool qtd_unregister_resource_data(int version, const unsigned char *tree,
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
80 const unsigned char *name, const unsigned char *data)
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
81 {
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
82 return qUnregisterResourceData(version, tree, name, data);
7be693ea7070 drcc, resource compiler, see interview demo
eldar
parents: 1
diff changeset
83 }
257
maxter
parents: 253
diff changeset
84
maxter
parents: 253
diff changeset
85
maxter
parents: 253
diff changeset
86 QtD_QObjectEntity::QtD_QObjectEntity(QObject *qObject, void *dId) : QtD_Entity(dId)
maxter
parents: 253
diff changeset
87 {
maxter
parents: 253
diff changeset
88 qObject->setUserData(userDataId, this);
maxter
parents: 253
diff changeset
89 }
maxter
parents: 253
diff changeset
90
maxter
parents: 253
diff changeset
91 QtD_QObjectEntity::~QtD_QObjectEntity()
maxter
parents: 253
diff changeset
92 {
maxter
parents: 253
diff changeset
93 if (dId)
maxter
parents: 253
diff changeset
94 destroyEntity();
maxter
parents: 253
diff changeset
95 }
maxter
parents: 253
diff changeset
96
maxter
parents: 253
diff changeset
97 void QtD_QObjectEntity::destroyEntity(QObject *qObject)
maxter
parents: 253
diff changeset
98 {
maxter
parents: 253
diff changeset
99 Q_ASSERT(dId);
maxter
parents: 253
diff changeset
100 qtd_delete_d_object(dId);
maxter
parents: 253
diff changeset
101 if (qObject)
maxter
parents: 253
diff changeset
102 {
maxter
parents: 253
diff changeset
103 qObject->setUserData(userDataId, NULL);
maxter
parents: 253
diff changeset
104 dId = NULL;
maxter
parents: 253
diff changeset
105 }
maxter
parents: 253
diff changeset
106 }
maxter
parents: 253
diff changeset
107
maxter
parents: 253
diff changeset
108 QtD_QObjectEntity* QtD_QObjectEntity::getQObjectEntity(const QObject *qObject)
maxter
parents: 253
diff changeset
109 {
maxter
parents: 253
diff changeset
110 return static_cast<QtD_QObjectEntity*>(qObject->userData(userDataId));
maxter
parents: 253
diff changeset
111 }