Qwt Polar User's Guide 1.0.0

qwt_polar_marker.h

00001 /* -*- mode: C++ ; c-file-style: "stroustrup" -*- *****************************
00002  * QwtPolar Widget Library
00003  * Copyright (C) 2008   Uwe Rathmann
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the Qwt License, Version 1.0
00007  *****************************************************************************/
00008 
00009 #ifndef QWT_POLAR_MARKER_H
00010 #define QWT_POLAR_MARKER_H
00011 
00012 #include "qwt_polar_global.h"
00013 #include "qwt_polar_item.h"
00014 #include <qwt_point_polar.h>
00015 #include <qstring.h>
00016 
00017 class QRect;
00018 class QwtText;
00019 class QwtSymbol;
00020 
00038 class QWT_POLAR_EXPORT QwtPolarMarker: public QwtPolarItem
00039 {
00040 public:
00041     explicit QwtPolarMarker();
00042     virtual ~QwtPolarMarker();
00043 
00044     virtual int rtti() const;
00045 
00046     void setPosition( const QwtPointPolar & );
00047     QwtPointPolar position() const;
00048 
00049     void setSymbol( const QwtSymbol *s );
00050     const QwtSymbol *symbol() const;
00051 
00052     void setLabel( const QwtText& );
00053     QwtText label() const;
00054 
00055     void setLabelAlignment( Qt::Alignment );
00056     Qt::Alignment labelAlignment() const;
00057 
00058     virtual void draw( QPainter *painter,
00059         const QwtScaleMap &azimuthMap, const QwtScaleMap &radialMap,
00060         const QPointF &pole, double radius,
00061         const QRectF &canvasRect ) const;
00062 
00063     virtual QwtInterval boundingInterval( int scaleId ) const;
00064 
00065 private:
00066     class PrivateData;
00067     PrivateData *d_data;
00068 };
00069 
00070 #endif