00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
#ifndef QWT_MARKER_H
00013
#define QWT_MARKER_H
00014
00015
#include <qpen.h>
00016
#include <qfont.h>
00017
#include <qstring.h>
00018
#include "qwt_global.h"
00019
#include "qwt_symbol.h"
00020
#include "qwt_text.h"
00021
00022
class QRect;
00023
00043 class QWT_EXPORT QwtMarker
00044 {
00045
public:
00046
00051 enum LineStyle {NoLine, HLine, VLine, Cross};
00052
00053 QwtMarker();
00054
virtual ~QwtMarker();
00055
00056 QwtMarker(
const QwtMarker&);
00057 QwtMarker &operator=(
const QwtMarker&);
00058
00059
void setLineStyle(LineStyle st);
00060 LineStyle lineStyle() const;
00061
00062
void setSymbol(const
QwtSymbol &s);
00063 const
QwtSymbol &symbol() const;
00064
00065
void setLabel(const QString &text, const QFont &font = QFont(),
00066 const QColor &color = QColor(), const QPen &pen = QPen(Qt::NoPen),
00067 const QBrush &brush = QBrush(Qt::NoBrush));
00068
00069
void setLabelText(const QString &text);
00070 const QString label() const;
00071
00072
void setLabelAlignment(
int align);
00073
int labelAlignment() const;
00074
00075
void setLabelColor(const QColor &c);
00076 const QColor labelColor() const;
00077
00078
void setLabelPen(const QPen &p);
00079 const QPen labelPen() const;
00080
00081
void setLinePen(const QPen &p);
00082 const QPen &linePen() const;
00083
00084
void setFont(const QFont &f);
00085 const QFont font() const;
00086
00087 virtual
void draw(QPainter *p,
int x,
int y, const QRect &r);
00088
00089 protected:
00090 virtual
void markerChanged();
00091
00092 private:
00093
QwtText *d_label;
00094
int d_align;
00095 QPen d_pen;
00096
QwtSymbol d_sym;
00097 LineStyle d_style;
00098 };
00099
00100 #endif
00101
00102
00103
00104
00105
00106