00001 /**************************************************************************** 00002 ** Copyright (C) 2007 Klaralvdalens 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 00027 #ifndef PAINTCONTEXT_H 00028 #define PAINTCONTEXT_H 00029 00030 class QPainter; 00031 00032 #include <QRectF> 00033 #include "KDChartGlobal.h" 00034 00035 namespace KDChart { 00036 00037 class AbstractCoordinatePlane; 00038 00043 class KDCHART_EXPORT PaintContext 00044 { 00045 public: 00046 PaintContext(); 00047 ~PaintContext(); 00048 00049 const QRectF rectangle () const; 00050 void setRectangle( const QRectF& rect ); 00051 00052 QPainter* painter() const; 00053 void setPainter( QPainter* painter ); 00054 00055 AbstractCoordinatePlane* coordinatePlane() const; 00056 void setCoordinatePlane( AbstractCoordinatePlane* plane ); 00057 00058 private: 00059 class Private; 00060 Private * _d; 00061 Private * d_func() { return _d; } 00062 const Private * d_func() const { return _d; } 00063 }; 00064 00065 } 00066 00067 #endif /* PAINTCONTEXT_H */ 00068