TreeFrogFramework  2.8
tdeclexport.h
Go to the documentation of this file.
1 #pragma once
2 #include <QtGlobal>
3 //
4 // Create Treefrog DLL if TF_MAKEDLL is defined (Windows only)
5 //
6 
7 #if defined(Q_OS_WIN)
8 #if defined(TF_MAKEDLL) // Create a Treefrog DLL
9 #define T_CORE_EXPORT Q_DECL_EXPORT
10 #define T_MODEL_EXPORT
11 #define T_VIEW_EXPORT
12 #define T_CONTROLLER_EXPORT
13 #define T_HELPER_EXPORT
14 #elif defined(TF_DLL) // Use a Treefrog DLL
15 #define T_CORE_EXPORT Q_DECL_IMPORT
16 #define T_MODEL_EXPORT Q_DECL_EXPORT
17 #define T_VIEW_EXPORT Q_DECL_EXPORT
18 #define T_CONTROLLER_EXPORT Q_DECL_EXPORT
19 #define T_HELPER_EXPORT Q_DECL_EXPORT
20 #else
21 #define T_CORE_EXPORT
22 #define T_MODEL_EXPORT
23 #define T_VIEW_EXPORT
24 #define T_CONTROLLER_EXPORT
25 #define T_HELPER_EXPORT
26 #endif
27 #else
28 #define T_CORE_EXPORT
29 #define T_MODEL_EXPORT
30 #define T_VIEW_EXPORT
31 #define T_CONTROLLER_EXPORT
32 #define T_HELPER_EXPORT
33 #endif
34 
35 
36 // Some classes do not permit copies and moves to be made of an object.
37 #define T_DISABLE_COPY(Class) \
38  Class(const Class &) = delete; \
39  Class &operator=(const Class &) = delete;
40 
41 #define T_DISABLE_MOVE(Class) \
42  Class(Class &&) = delete; \
43  Class &operator=(Class &&) = delete;