KD Chart 2 [rev.2.4]
|
00001 /**************************************************************************** 00002 ** Copyright (C) 2001-2012 Klaralvdalens Datakonsult AB. All rights reserved. 00003 ** 00004 ** This file is part of the KD Chart library. 00005 ** 00006 ** Licensees holding valid commercial KD Chart licenses may use this file in 00007 ** accordance with the KD Chart Commercial License Agreement provided with 00008 ** the Software. 00009 ** 00010 ** 00011 ** This file may be distributed and/or modified under the terms of the 00012 ** GNU General Public License version 2 and version 3 as published by the 00013 ** Free Software Foundation and appearing in the file LICENSE.GPL.txt included. 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 ** Contact info@kdab.com if any conditions of this licensing are not 00019 ** clear to you. 00020 ** 00021 **********************************************************************/ 00022 00023 #ifndef KDCHARTABSTRACTAREA_H 00024 #define KDCHARTABSTRACTAREA_H 00025 00026 #include <QObject> 00027 00028 #include "KDChartGlobal.h" 00029 #include "KDChartAbstractAreaBase.h" 00030 #include "KDChartLayoutItems.h" 00031 00032 namespace KDChart { 00033 00034 00047 class KDCHART_EXPORT AbstractArea : public QObject, 00048 public AbstractAreaBase, 00049 public AbstractLayoutItem 00050 { 00051 Q_OBJECT 00052 00053 Q_DISABLE_COPY( AbstractArea ) 00054 KDCHART_DECLARE_PRIVATE_DERIVED( AbstractArea ) 00055 00056 00057 public: 00058 virtual ~AbstractArea() ; 00059 00060 // virtual AbstractArea * clone() const = 0; 00067 virtual void paintIntoRect( QPainter& painter, const QRect& rect ); 00068 00073 virtual void paintAll( QPainter& painter ); 00074 00087 virtual int leftOverlap( bool doNotRecalculate=false ) const; 00100 virtual int rightOverlap( bool doNotRecalculate=false ) const; 00113 virtual int topOverlap( bool doNotRecalculate=false ) const; 00126 virtual int bottomOverlap( bool doNotRecalculate=false ) const; 00127 00128 protected: 00129 AbstractArea(); 00130 virtual QRect areaGeometry() const; 00131 virtual void positionHasChanged(); 00132 00133 Q_SIGNALS: 00134 void positionChanged( AbstractArea * ); 00135 00136 //KDCHART_DECLARE_PRIVATE_DERIVED(AbstractArea) 00137 }; // End of class AbstractArea 00138 00139 } 00140 #endif // KDCHARTABSTRACTAREA_H