File indexing completed on 2024-05-12 15:54:18

0001 /*
0002  * Copyright (C) 2001-2015 Klaralvdalens Datakonsult AB.  All rights reserved.
0003  *
0004  * This file is part of the KD Chart library.
0005  *
0006  * This program is free software; you can redistribute it and/or
0007  * modify it under the terms of the GNU General Public License as
0008  * published by the Free Software Foundation; either version 2 of
0009  * the License, or (at your option) any later version.
0010  *
0011  * This program is distributed in the hope that it will be useful,
0012  * but WITHOUT ANY WARRANTY; without even the implied warranty of
0013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
0014  * GNU General Public License for more details.
0015  *
0016  * You should have received a copy of the GNU General Public License
0017  * along with this program.  If not, see <https://www.gnu.org/licenses/>.
0018  */
0019 
0020 #include "KChartPaintContext.h"
0021 #include "KChartAbstractCoordinatePlane.h"
0022 
0023 #include "KChartMath_p.h"
0024 
0025 #include <QRectF>
0026 #include <QPainter>
0027 
0028 using namespace KChart;
0029 
0030 #define d (d_func())
0031 
0032 class Q_DECL_HIDDEN PaintContext::Private {
0033 
0034 public:
0035     QPainter* painter;
0036     QRectF rect;
0037     AbstractCoordinatePlane* plane;
0038 
0039     Private()
0040         : painter( nullptr )
0041         , plane ( nullptr )
0042     {}
0043 };
0044 
0045 PaintContext::PaintContext()
0046     : _d ( new Private() )
0047 {
0048 }
0049 
0050 PaintContext::~PaintContext()
0051 {
0052     delete _d;
0053 }
0054 
0055 const QRectF PaintContext::rectangle() const
0056 {
0057     return d->rect;
0058 }
0059 
0060 void PaintContext::setRectangle ( const QRectF& rect )
0061 {
0062     d->rect = rect;
0063 }
0064 
0065 QPainter* PaintContext::painter() const
0066 {
0067     return d->painter;
0068 }
0069 
0070 void PaintContext::setPainter( QPainter* painter )
0071 {
0072     d->painter = painter;
0073 }
0074 
0075 AbstractCoordinatePlane* PaintContext::coordinatePlane() const
0076 {
0077     return d->plane;
0078 }
0079 
0080 void PaintContext::setCoordinatePlane( AbstractCoordinatePlane* plane)
0081 {
0082     d->plane = plane;
0083 }