kchart

KDChartRingPainter.h

00001 /* -*- Mode: C++ -*-
00002    KDChart - a multi-platform charting engine
00003    */
00004 
00005 /****************************************************************************
00006  ** Copyright (C) 2001-2003 Klarälvdalens Datakonsult AB.  All rights reserved.
00007  **
00008  ** This file is part of the KDChart 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 KDChart licenses may use this file in
00016  ** accordance with the KDChart 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.klaralvdalens-datakonsult.se/?page=products for
00023  **   information about KDChart Commercial License Agreements.
00024  **
00025  ** Contact info@klaralvdalens-datakonsult.se if any conditions of this
00026  ** licensing are not clear to you.
00027  **
00028  **********************************************************************/
00029 #ifndef __KDCHARTRINGPAINTER_H__
00030 #define __KDCHARTRINGPAINTER_H__
00031 
00032 #include <KDChartPainter.h>
00033 #include <KDChartTable.h>
00034 
00035 class KDChartParams;
00036 
00037 class KDChartRingPainter : public KDChartPainter
00038 {
00039     friend class KDChartPainter;
00040     protected:
00041     KDChartRingPainter( KDChartParams* params );
00042     virtual ~KDChartRingPainter();
00043 
00044     virtual void paintData( QPainter* painter, 
00045             KDChartTableDataBase* data,
00046             bool paint2nd,
00047             KDChartDataRegionList* regions = 0 );
00048     void drawOneSegment( QPainter* painter,
00049             uint outerRadius, uint innerRadius,
00050             double startAngle, double angles,
00051             uint dataset, uint value, uint chart,
00052             bool explode,
00053             KDChartDataRegionList* regions = 0 );
00054 
00055     virtual QString fallbackLegendText( uint dataset ) const;
00056     virtual uint numLegendFallbackTexts( KDChartTableDataBase* data ) const;
00057 
00058     QRect _position;
00059     int _size;
00060     int _numValues; // PENDING(kalle) Move to base class
00061 }
00062 ;
00063 
00064 #endif
KDE Home | KDE Accessibility Home | Description of Access Keys