00001 /* -*- Mode: C++ -*- 00002 KDChart - a multi-platform charting engine 00003 */ 00004 00005 /**************************************************************************** 00006 ** Copyright (C) 2005-2007 Klarälvdalens Datakonsult AB. All rights reserved. 00007 ** 00008 ** This file is part of the KD Chart library. 00009 ** 00010 ** This file may be distributed and/or modified under the terms of the 00011 ** GNU General Public License version 2 as published by the Free Software 00012 ** Foundation and appearing in the file LICENSE.GPL included in the 00013 ** packaging of this file. 00014 ** 00015 ** Licensees holding valid commercial KD Chart licenses may use this file in 00016 ** accordance with the KD Chart Commercial License Agreement provided with 00017 ** the Software. 00018 ** 00019 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 00020 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 00021 ** 00022 ** See http://www.kdab.net/kdchart for 00023 ** information about KD Chart Commercial License Agreements. 00024 ** 00025 ** Contact info@kdab.net if any conditions of this 00026 ** licensing are not clear to you. 00027 ** 00028 **********************************************************************/ 00029 00030 #ifndef KDCHARTABSTRACTTHREEDATTRIBUTES_H 00031 #define KDCHARTABSTRACTTHREEDATTRIBUTES_H 00032 00033 #include <QMetaType> 00034 #include "KDChartGlobal.h" 00035 00036 namespace KDChart { 00037 00041 class KDCHART_EXPORT AbstractThreeDAttributes 00042 { 00043 public: 00044 AbstractThreeDAttributes(); 00045 AbstractThreeDAttributes( const AbstractThreeDAttributes& ); 00046 AbstractThreeDAttributes &operator= ( const AbstractThreeDAttributes& ); 00047 00048 virtual ~AbstractThreeDAttributes() = 0; 00049 00050 void setEnabled( bool enabled ); 00051 bool isEnabled() const; 00052 00053 void setDepth( double depth ); 00054 double depth() const; 00055 00056 // returns the depth(), if is isEnabled() is true, otherwise returns 0.0 00057 double validDepth() const; 00058 00059 bool operator==( const AbstractThreeDAttributes& ) const; 00060 inline bool operator!=( const AbstractThreeDAttributes& other ) const { return !operator==(other); } 00061 00062 KDCHART_DECLARE_PRIVATE_BASE_POLYMORPHIC(AbstractThreeDAttributes) 00063 00064 KDCHART_DECLARE_SWAP_BASE(AbstractThreeDAttributes) 00065 00066 }; // End of class AbstractThreeDAttributes 00067 00068 } 00069 00070 #if !defined(QT_NO_DEBUG_STREAM) 00071 KDCHART_EXPORT QDebug operator<<(QDebug, const KDChart::AbstractThreeDAttributes& ); 00072 #endif /* QT_NO_DEBUG_STREAM */ 00073 00074 00075 00076 #endif // KDCHARTABSTRACTTHREEDATTRIBUTES_H