24 #define TTK_CREATE_PRIVATE(Class) (*new Class##Private)
26 #define TTK_DECLARE_PRIVATE(Class) \
27 friend class Class##Private; \
28 TTKPrivateInterface<Class, Class##Private> ttk_d;
30 #define TTK_DECLARE_PUBLIC(Class) \
33 #define TTK_INIT_PRIVATE(Class) \
34 ttk_d.setPrivate(new Class##Private); \
35 ttk_d.setPublic(this);
37 #define TTK_INIT_PRIVATE_D(PVT) \
38 ttk_d.setPrivate(&PVT); \
39 ttk_d.setPublic(this);
41 #define TTK_D(Class) Class##Private *const d = TTKStaticCast(Class##Private*, ttk_d())
42 #define TTK_Q(Class) Class *const q = TTKStaticCast(Class*, ttk_q())
44 template <
typename PUB>
88 template <
typename PUB,
typename PVT>
133 m_dptr->setPublic(pub);
150 #endif // TTKPRIVATE_H
#define TTKStaticCast(x, y)
#define TTK_MODULE_EXPORT
void setPrivate(PVT *pvt)
TTKPrivate< PUB > * m_dptr
TTKPrivateInterface(PVT *pvt)
The class of the ttk private interface.
#define TTK_DISABLE_COPY(Class)
The class of the ttk private base.