00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029 #ifndef KDCHARTCARTESIANAXIS_H
00030 #define KDCHARTCARTESIANAXIS_H
00031
00032 #include <QList>
00033
00034 #include "KDChartAbstractAxis.h"
00035
00036 namespace KDChart {
00037
00038 class AbstractCartesianDiagram;
00039
00048 class KDCHART_EXPORT CartesianAxis : public AbstractAxis
00049 {
00050 Q_OBJECT
00051
00052 Q_DISABLE_COPY( CartesianAxis )
00053 KDCHART_DECLARE_PRIVATE_DERIVED_PARENT( CartesianAxis, AbstractDiagram* )
00054
00055 public:
00056 enum Position {
00057 Bottom,
00058 Top,
00059 Right,
00060 Left
00061 };
00062
00073 explicit CartesianAxis ( AbstractCartesianDiagram* diagram = 0 );
00074 ~CartesianAxis();
00075
00079 bool compare( const CartesianAxis* other )const;
00080
00082 virtual void paint( QPainter* );
00084 virtual void paintCtx( PaintContext* );
00085
00086 void setTitleText( const QString& text );
00087 QString titleText() const;
00088
00089 void setTitleTextAttributes( const TextAttributes &a );
00097 TextAttributes titleTextAttributes() const;
00104 void resetTitleTextAttributes();
00105 bool hasDefaultTitleTextAttributes() const;
00106
00107 virtual void setPosition ( Position p );
00108 virtual const Position position () const;
00109
00110 virtual void layoutPlanes();
00111
00112 virtual bool isAbscissa() const;
00113 virtual bool isOrdinate() const;
00114
00115
00116
00118 virtual bool isEmpty() const;
00120 virtual Qt::Orientations expandingDirections() const;
00122 virtual QSize maximumSize() const;
00124 virtual QSize minimumSize() const;
00126 virtual QSize sizeHint() const;
00128 virtual void setGeometry( const QRect& r );
00130 virtual QRect geometry() const;
00131
00132 int tickLength( bool subUnitTicks = false ) const;
00133 };
00134
00135 typedef QList<CartesianAxis*> CartesianAxisList;
00136 }
00137
00138 #endif