# KDChartPieAttributes.cpp

Go to the documentation of this file.

    00001 /****************************************************************************
    00002  ** Copyright (C) 2007 Klarälvdalens Datakonsult AB.  All rights reserved.
    00003  **
    00004  ** This file is part of the KD Chart library.
    00005  **
    00006  ** This file may be distributed and/or modified under the terms of the
    00007  ** GNU General Public License version 2 as published by the Free Software
    00008  ** Foundation and appearing in the file LICENSE.GPL included in the
    00009  ** packaging of this file.
    00010  **
    00011  ** Licensees holding valid commercial KD Chart licenses may use this file in
    00012  ** accordance with the KD Chart Commercial License Agreement provided with
    00013  ** the Software.
    00014  **
    00015  ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
    00016  ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
    00017  **
    00018  ** See http://www.kdab.net/kdchart for
    00019  **   information about KDChart Commercial License Agreements.
    00020  **
    00021  ** Contact info@kdab.net if any conditions of this
    00022  ** licensing are not clear to you.
    00023  **
    00024  **********************************************************************/
    00025
    00026 #include "KDChartPieAttributes.h"
    00027 #include "KDChartPieAttributes_p.h"
    00028
    00029 #include <QDebug>
    00030
    00031 #include <KDABLibFakes>
    00032
    00033 #define d d_func()
    00034
    00035
    00036 using namespace KDChart;
    00037
    00038
    00039 PieAttributes::Private::Private()
    00040     : explodeFactor( 0.0 )
    00041 {
    00042 }
    00043
    00044
    00045 PieAttributes::PieAttributes()
    00046     : _d( new Private() )
    00047 {
    00048 }
    00049
    00050 PieAttributes::PieAttributes( const PieAttributes& r )
    00051     : _d( new Private( *r.d ) )
    00052 {
    00053 }
    00054
    00055 PieAttributes& PieAttributes::operator= ( const PieAttributes& r )
    00056 {
    00057     if( this == &r )
    00058         return *this;
    00059
    00060     *d = *r.d;
    00061
    00062     return *this;
    00063 }
    00064
    00065 PieAttributes::~PieAttributes()
    00066 {
    00067     delete _d; _d = 0;
    00068 }
    00069
    00070
    00071 bool PieAttributes::operator==( const PieAttributes& r ) const
    00072 {
    00073     if( explodeFactor() == r.explodeFactor() )
    00074         return true;
    00075     else
    00076         return false;
    00077 }
    00078
    00079
    00080 void PieAttributes::init( )
    00081 {
    00082
    00083 }
    00084
    00085 void PieAttributes::setExplode( bool enabled )
    00086 {
    00087     d->explodeFactor = (enabled ? 0.1 : 0.0);
    00088 }
    00089
    00090 bool PieAttributes::explode() const
    00091 {
    00092     return (d->explodeFactor != 0.0);
    00093 }
    00094
    00095 void PieAttributes::setExplodeFactor( qreal factor )
    00096 {
    00097     d->explodeFactor = factor;
    00098 }
    00099
    00100 qreal PieAttributes::explodeFactor() const
    00101 {
    00102     return d->explodeFactor;
    00103 }
    00104
    00105 #if !defined(QT_NO_DEBUG_STREAM)
    00106 QDebug operator<<(QDebug dbg, const KDChart::PieAttributes& a)
    00107 {
    00108     dbg << "KDChart::PieAttributes(";
    00109     dbg << "explodeFactor="<< a.explodeFactor() << ")";
    00110     return dbg;
    00111 }
    00112 #endif /* QT_NO_DEBUG_STREAM */
    00113