Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

KDChartAbstractAxis.h

Go to the documentation of this file.
00001   /* -*- Mode: C++ -*-
00002    KDChart - a multi-platform charting engine
00003    */
00004 
00005 /****************************************************************************
00006  ** Copyright (C) 2005-2006 Klarälvdalens Datakonsult AB.  All rights reserved.
00007  **
00008  ** This file is part of the KD Chart 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 KD Chart licenses may use this file in
00016  ** accordance with the KD Chart 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.kdab.net/kdchart for
00023  **   information about KD Chart Commercial License Agreements.
00024  **
00025  ** Contact info@kdab.net if any conditions of this
00026  ** licensing are not clear to you.
00027  **
00028  **********************************************************************/
00029 
00030 #ifndef KDCHARTAXIS_H
00031 #define KDCHARTAXIS_H
00032 
00033 // #include <QObject>
00034 // #include <QRectF>
00035 // #include <QWidget>
00036 
00037 #include "kdchart_export.h"
00038 #include "KDChartGlobal.h"
00039 #include "KDChartAbstractArea.h"
00040 #include "KDChartTextAttributes.h"
00041 
00042 
00043 class QPainter;
00044 class QSizeF;
00045 // class QRectF;
00046 
00047 
00048 namespace KDChart {
00049 
00050     class Area;
00051     class AbstractCoordinatePlane;
00052     class PaintContext;
00053     class AbstractDiagram;
00054 
00063     class KDCHART_EXPORT AbstractAxis : public AbstractArea
00064     {
00065         Q_OBJECT
00066 
00067         Q_DISABLE_COPY( AbstractAxis )
00068         KDCHART_DECLARE_PRIVATE_DERIVED_PARENT( AbstractAxis, AbstractDiagram* )
00069 
00070     public:
00071         explicit AbstractAxis( AbstractDiagram* diagram = 0 );
00072         virtual ~AbstractAxis();
00073 
00074         // FIXME implement when code os ready for it:
00075         // virtual Area* clone() const = 0;
00076 
00077         // FIXME (Mirko) readd when needed
00078         // void copyRelevantDetailsFrom( const KDChartAxis* axis );
00079 
00080         /*    virtual void paint( PaintContext* ) const = 0;
00081               virtual QSize sizeHint() const = 0;*/
00082         //virtual void paintEvent( QPaintEvent* event) = 0;
00083 
00098         virtual const QString customizedLabel( const QString& label )const;
00099 
00103         bool compare( const AbstractAxis* other )const;
00104 
00105         void createObserver( AbstractDiagram* diagram );
00106         void deleteObserver( AbstractDiagram* diagram );
00107         const AbstractDiagram* diagram() const;
00108         bool observedBy( AbstractDiagram* diagram ) const;
00109         virtual void connectSignals();
00110 
00111         void setTextAttributes( const TextAttributes &a );
00112         TextAttributes textAttributes() const;
00113 
00114         void setLabels( const QStringList& list );
00115         QStringList labels() const;
00116         void setShortLabels( const QStringList& list );
00117         QStringList shortLabels() const;
00118 
00119         virtual void setGeometry( const QRect& rect ) = 0;
00120         virtual QRect geometry() const = 0;
00121 
00122         const AbstractCoordinatePlane* coordinatePlane() const;
00123 
00124     protected Q_SLOTS:
00126         virtual void delayedInit();
00127 
00128     public Q_SLOTS:
00129         void update();
00130     };
00131 }
00132 
00133 #endif // KDCHARTAXIS_H

Generated on Thu May 10 11:06:24 2007 for KD Chart 2 by doxygen 1.3.6