annotate include/qtd_core.h @ 254:34a37904ff77

(none)
author maxter
date Sun, 30 Aug 2009 10:59:56 +0000
parents 37eed70de029
children 17b5e13364b7 adae77fdc1ea
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 #ifndef QTD_CORE_H
e78566595089 initial import
mandel
parents:
diff changeset
13 #define QTD_CORE_H
e78566595089 initial import
mandel
parents:
diff changeset
14
e78566595089 initial import
mandel
parents:
diff changeset
15 #include <QAbstractItemModel>
e78566595089 initial import
mandel
parents:
diff changeset
16
e78566595089 initial import
mandel
parents:
diff changeset
17 #if defined WIN32
e78566595089 initial import
mandel
parents:
diff changeset
18 #define DLL_PUBLIC __declspec(dllexport)
e78566595089 initial import
mandel
parents:
diff changeset
19 #else
e78566595089 initial import
mandel
parents:
diff changeset
20 #define DLL_PUBLIC
e78566595089 initial import
mandel
parents:
diff changeset
21 #endif
e78566595089 initial import
mandel
parents:
diff changeset
22
e78566595089 initial import
mandel
parents:
diff changeset
23 #ifdef CPP_SHARED
254
maxter
parents: 252
diff changeset
24 #define QTD_EXPORT(TYPE, NAME, ARGS) \
1
e78566595089 initial import
mandel
parents:
diff changeset
25 extern "C" typedef TYPE (*pf_##NAME)ARGS; \
e78566595089 initial import
mandel
parents:
diff changeset
26 extern "C" pf_##NAME qtd_get_##NAME();
e78566595089 initial import
mandel
parents:
diff changeset
27 #define QTD_EXPORT_VAR(NAME) \
e78566595089 initial import
mandel
parents:
diff changeset
28 pf_##NAME m_##NAME; \
e78566595089 initial import
mandel
parents:
diff changeset
29 extern "C" DLL_PUBLIC pf_##NAME qtd_get_##NAME() { return m_##NAME; }
254
maxter
parents: 252
diff changeset
30 #define QTD_EXPORT_VAR_SET(NAME, VALUE) \
1
e78566595089 initial import
mandel
parents:
diff changeset
31 m_##NAME = (pf_##NAME) VALUE
e78566595089 initial import
mandel
parents:
diff changeset
32 #else
254
maxter
parents: 252
diff changeset
33 #define QTD_EXPORT(TYPE, NAME, ARGS) \
1
e78566595089 initial import
mandel
parents:
diff changeset
34 extern "C" TYPE NAME ARGS;
e78566595089 initial import
mandel
parents:
diff changeset
35 #endif
e78566595089 initial import
mandel
parents:
diff changeset
36
e78566595089 initial import
mandel
parents:
diff changeset
37 struct QModelIndexAccessor {
e78566595089 initial import
mandel
parents:
diff changeset
38 int row;
e78566595089 initial import
mandel
parents:
diff changeset
39 int col;
e78566595089 initial import
mandel
parents:
diff changeset
40 void *ptr;
e78566595089 initial import
mandel
parents:
diff changeset
41 QAbstractItemModel *model;
e78566595089 initial import
mandel
parents:
diff changeset
42 };
e78566595089 initial import
mandel
parents:
diff changeset
43
e78566595089 initial import
mandel
parents:
diff changeset
44 struct DArray {
e78566595089 initial import
mandel
parents:
diff changeset
45 size_t length;
e78566595089 initial import
mandel
parents:
diff changeset
46 void* ptr;
e78566595089 initial import
mandel
parents:
diff changeset
47 };
e78566595089 initial import
mandel
parents:
diff changeset
48
254
maxter
parents: 252
diff changeset
49 enum QtdObjectFlags
maxter
parents: 252
diff changeset
50 {
maxter
parents: 252
diff changeset
51 qNone,
maxter
parents: 252
diff changeset
52 qNativeOwnership = 0x01,
maxter
parents: 252
diff changeset
53 qDOwnership = 0x02
maxter
parents: 252
diff changeset
54 //gcManaged = 0x04
maxter
parents: 252
diff changeset
55 };
maxter
parents: 252
diff changeset
56
maxter
parents: 252
diff changeset
57 class QtD_Entity
maxter
parents: 252
diff changeset
58 {
maxter
parents: 252
diff changeset
59 public:
maxter
parents: 252
diff changeset
60 void* dId;
maxter
parents: 252
diff changeset
61
maxter
parents: 252
diff changeset
62 QtD_Entity(void* id) : dId(id)
maxter
parents: 252
diff changeset
63 {
maxter
parents: 252
diff changeset
64 }
maxter
parents: 252
diff changeset
65 };
105
3aa118a9ae71 each QObject now has associated child QObject for handling signals. fixes #15
eldar
parents: 35
diff changeset
66
33
cf8a415f3f32 gui package is fully wrapped now. lots of fixes in the generator
eldar
parents: 1
diff changeset
67 #define Array DArray
cf8a415f3f32 gui package is fully wrapped now. lots of fixes in the generator
eldar
parents: 1
diff changeset
68
1
e78566595089 initial import
mandel
parents:
diff changeset
69 #ifdef CPP_SHARED
e78566595089 initial import
mandel
parents:
diff changeset
70 typedef void (*pfunc_abstr)();
e78566595089 initial import
mandel
parents:
diff changeset
71 #endif
e78566595089 initial import
mandel
parents:
diff changeset
72
254
maxter
parents: 252
diff changeset
73 QTD_EXPORT(void, qtd_toUtf8, (const unsigned short* arr, uint size, void* str))
maxter
parents: 252
diff changeset
74 QTD_EXPORT(void, qtd_dummy, ())
1
e78566595089 initial import
mandel
parents:
diff changeset
75
e78566595089 initial import
mandel
parents:
diff changeset
76 #ifdef CPP_SHARED
254
maxter
parents: 252
diff changeset
77 #define qtd_toUtf8 qtd_get_qtd_toUtf8()
maxter
parents: 252
diff changeset
78 #define qtd_dummy qtd_get_qtd_dummy()
1
e78566595089 initial import
mandel
parents:
diff changeset
79 #endif
e78566595089 initial import
mandel
parents:
diff changeset
80
e78566595089 initial import
mandel
parents:
diff changeset
81 extern "C" QModelIndex qtd_to_QModelIndex(QModelIndexAccessor mia);
e78566595089 initial import
mandel
parents:
diff changeset
82 extern "C" QModelIndexAccessor qtd_from_QModelIndex(const QModelIndex &index);
e78566595089 initial import
mandel
parents:
diff changeset
83
254
maxter
parents: 252
diff changeset
84
maxter
parents: 252
diff changeset
85
1
e78566595089 initial import
mandel
parents:
diff changeset
86 #endif // QTD_CORE_H