From dadc34655c3ab961b0b0b94a10eaaba710f0b5e8 Mon Sep 17 00:00:00 2001 From: tpearson Date: Mon, 4 Jul 2011 22:38:03 +0000 Subject: Added kmymoney git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/kmymoney@1239792 283d02a7-25f6-0310-bc7c-ecb5cbfe19da --- libkdchart/KDChart.h | 97 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 97 insertions(+) create mode 100644 libkdchart/KDChart.h (limited to 'libkdchart/KDChart.h') diff --git a/libkdchart/KDChart.h b/libkdchart/KDChart.h new file mode 100644 index 0000000..4d4944e --- /dev/null +++ b/libkdchart/KDChart.h @@ -0,0 +1,97 @@ +/* -*- Mode: C++ -*- + KDChart - a multi-platform charting engine + */ + +/**************************************************************************** + ** Copyright (C) 2001-2003 Klarälvdalens Datakonsult AB. All rights reserved. + ** + ** This file is part of the KDChart library. + ** + ** This file may be distributed and/or modified under the terms of the + ** GNU General Public License version 2 as published by the Free Software + ** Foundation and appearing in the file LICENSE.GPL included in the + ** packaging of this file. + ** + ** Licensees holding valid commercial KDChart licenses may use this file in + ** accordance with the KDChart Commercial License Agreement provided with + ** the Software. + ** + ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. + ** + ** See http://www.klaralvdalens-datakonsult.se/?page=products for + ** information about KDChart Commercial License Agreements. + ** + ** Contact info@klaralvdalens-datakonsult.se if any conditions of this + ** licensing are not clear to you. + ** + **********************************************************************/ +#ifndef __KDCHART_H__ +#define __KDCHART_H__ + +#ifdef QSA +#include +#endif // QSA + +#include "KDChartGlobal.h" +#include "KDChartTable.h" +#include "KDChartUnknownTypeException.h" +#include "KDChartParams.h" +#include "KDChartDataRegion.h" + +/** \file KDChart.h + \brief Definition of a single entry-point to the charting engine for + applications that wish to provide their own QPainter. + + It is not useful to instantiate the KDChart class as it only contains + static methods. + */ + +class KDChartPainter; +class QPainter; +class QSInterpreter; + + +class KDCHART_EXPORT KDChart +{ + friend void cleanupPainter(); + + public: + static bool setupGeometry( QPainter* painter, + KDChartParams* params, + KDChartTableDataBase* data, + const QRect& drawRect ); + + static bool painterToDrawRect( QPainter* painter, QRect& drawRect ); + + static void paint( QPainter*, KDChartParams*, KDChartTableDataBase*, + KDChartDataRegionList* regions = 0, + const QRect* rect = 0, + bool mustCalculateGeometry = true ); + + static void print( QPainter*, KDChartParams*, KDChartTableDataBase*, + KDChartDataRegionList* regions = 0, + const QRect* rect = 0, + bool mustCalculateGeometry = true ); + +#ifdef QSA + static void initInterpreter( QSInterpreter* ); + static void initProject( QSProject* ); +#endif + + private: + KDChart(); // prevent instantiations + + static KDChartParams* oldParams; + static KDChartPainter* cpainter; + static KDChartPainter* cpainter2; + static KDChartParams::ChartType cpainterType; + static KDChartParams::ChartType cpainterType2; + +#ifdef QSA + static QString globals(); + static void privateInitInterpreter( QSInterpreter* interpreter ); +#endif +}; + +#endif -- cgit v1.2.1