Go to the documentation of this file.
13#ifndef __KCHARTGLOBAL_H__
14#define __KCHARTGLOBAL_H__
18#include "kchart_export.h"
20#ifndef KDAB_SET_OBJECT_NAME
22inline T & __kdab__dereference_for_methodcall( T & o ) {
27inline T & __kdab__dereference_for_methodcall( T * o ) {
31#define KDAB_SET_OBJECT_NAME( x ) __kdab__dereference_for_methodcall( x ).setObjectName( QLatin1String( #x ) )
34#define KCHART_DECLARE_PRIVATE_DERIVED( X ) \
38 inline Private * d_func(); \
39 inline const Private * d_func() const; \
40 explicit inline X( Private * ); \
44#define KCHART_DECLARE_PRIVATE_DERIVED_PARENT( X, ParentType ) \
48 inline Private * d_func(); \
49 inline const Private * d_func() const; \
50 explicit inline X( Private *, ParentType ); \
54#define KCHART_DECLARE_PRIVATE_DERIVED_QWIDGET( X ) \
55 KCHART_DECLARE_PRIVATE_DERIVED_PARENT( X, QWidget* )
57#define KCHART_DECLARE_PRIVATE_BASE_VALUE( X ) \
59 inline void swap( X & other ) { qSwap( _d, other._d ); } \
62 Private * d_func() { return _d; } \
63 const Private * d_func() const { return _d; } \
68#define KCHART_DECLARE_PRIVATE_BASE_POLYMORPHIC( X ) \
72 Private * d_func() { return _d; } \
73 const Private * d_func() const { return _d; } \
74 explicit inline X( Private * ); \
79#define KCHART_DECLARE_PRIVATE_BASE_POLYMORPHIC_QWIDGET( X ) \
83 Private * d_func() { return _d; } \
84 const Private * d_func() const { return _d; } \
85 explicit inline X( Private *, QWidget* ); \
90#define KCHART_DERIVED_PRIVATE_FOOTER( CLASS, PARENT ) \
91inline CLASS::CLASS( Private * p ) \
92 : PARENT( p ) { init(); } \
93inline CLASS::Private * CLASS::d_func() \
94{ return static_cast<Private*>( PARENT::d_func() ); } \
95inline const CLASS::Private * CLASS::d_func() const \
96{ return static_cast<const Private*>( PARENT::d_func() ); }
99#define KCHART_DECLARE_DERIVED_DIAGRAM( X, PLANE ) \
103 inline Private * d_func(); \
104 inline const Private * d_func() const; \
105 explicit inline X( Private * ); \
106 explicit inline X( Private *, QWidget *, PLANE * ); \
110#define KCHART_IMPL_DERIVED_DIAGRAM( CLASS, PARENT, PLANE ) \
111inline CLASS::CLASS( Private * p ) \
112 : PARENT( p ) { init(); } \
113inline CLASS::CLASS( \
114 Private * p, QWidget* parent, PLANE * plane ) \
115 : PARENT( p, parent, plane ) { init(); } \
116inline CLASS::Private * CLASS::d_func() \
117 { return static_cast<Private *>( PARENT::d_func() ); } \
118inline const CLASS::Private * CLASS::d_func() const \
119 { return static_cast<const Private *>( PARENT::d_func() ); }
122#define KCHART_IMPL_DERIVED_PLANE( CLASS, BASEPLANE ) \
123inline CLASS::CLASS( Private * p, Chart* parent ) \
124 : BASEPLANE( p, parent ) { init(); } \
125inline CLASS::Private * CLASS::d_func() \
126 { return static_cast<Private *>( BASEPLANE::d_func() ); } \
127inline const CLASS::Private * CLASS::d_func() const \
128 { return static_cast<const Private *>( BASEPLANE::d_func() ); }
131#include <QtAlgorithms>
134#define KCHART_DECLARE_SWAP_SPECIALISATION( X ) \
136 template <> inline void qSwap<X>( X & lhs, X & rhs ) \
137 { lhs.swap( rhs ); } \
140 template <> inline void swap<X>( X & lhs, X & rhs ) \
141 { lhs.swap( rhs ); } \
144#define KCHART_DECLARE_SWAP_SPECIALISATION( X ) \
146 template <> inline void qSwap<X>( X & lhs, X & rhs ) \
147 { lhs.swap( rhs ); } \
151#define KCHART_DECLARE_SWAP_SPECIALISATION_DERIVED( X ) \
152 KCHART_DECLARE_SWAP_SPECIALISATION( X )
154#define KCHART_DECLARE_SWAP_BASE( X ) \
156 void doSwap( X& other ) \
157 { qSwap( _d, other._d); }
159#define KCHART_DECLARE_SWAP_DERIVED( X ) \
160 void swap( X& other ) { doSwap( other ); }
162#if defined(Q_OS_WIN) && defined(QT_DLL)
163#if defined(_MSC_VER) && _MSC_VER >= 1300
180 DatasetPenRole = 0x0A79EF95,
182 DataValueLabelAttributesRole,
183 ThreeDAttributesRole,
185 ThreeDLineAttributesRole,
187 StockBarAttributesRole,
188 ThreeDBarAttributesRole,
190 ThreeDPieAttributesRole,
192 ValueTrackerAttributesRole,
This file is part of the KDE documentation.
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:09:30 by
doxygen 1.12.0 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.