qwt_plot_marker.h
/******************************************************************************
* Qwt Widget Library
* Copyright (C) 1997 Josef Wilgen
* Copyright (C) 2002 Uwe Rathmann
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the Qwt License, Version 1.0
*****************************************************************************/
#ifndef QWT_PLOT_MARKER_H
#define QWT_PLOT_MARKER_H
#include "qwt_global.h"
#include "qwt_plot_item.h"
class QString;
class QRectF;
class QwtText;
class QwtSymbol;
class QWT_EXPORT QwtPlotMarker : public QwtPlotItem
{
public:
enum LineStyle
{
NoLine,
HLine,
VLine,
Cross
};
explicit QwtPlotMarker();
explicit QwtPlotMarker( const QString& title );
explicit QwtPlotMarker( const QwtText& title );
virtual ~QwtPlotMarker();
virtual int rtti() const QWT_OVERRIDE;
double xValue() const;
double yValue() const;
QPointF value() const;
void setXValue( double );
void setYValue( double );
void setValue( double, double );
void setValue( const QPointF& );
void setLineStyle( LineStyle );
LineStyle lineStyle() const;
void setLinePen( const QColor&, qreal width = 0.0, Qt::PenStyle = Qt::SolidLine );
void setLinePen( const QPen& );
const QPen& linePen() const;
void setSymbol( const QwtSymbol* );
const QwtSymbol* symbol() const;
void setLabel( const QwtText& );
QwtText label() const;
void setLabelAlignment( Qt::Alignment );
Qt::Alignment labelAlignment() const;
void setLabelOrientation( Qt::Orientation );
Qt::Orientation labelOrientation() const;
void setSpacing( int );
int spacing() const;
virtual void draw( QPainter*,
const QwtScaleMap& xMap, const QwtScaleMap& yMap,
const QRectF& ) const QWT_OVERRIDE;
virtual QRectF boundingRect() const QWT_OVERRIDE;
virtual QwtGraphic legendIcon(
int index, const QSizeF& ) const QWT_OVERRIDE;
protected:
virtual void drawLines( QPainter*,
const QRectF&, const QPointF& ) const;
virtual void drawSymbol( QPainter*,
const QRectF&, const QPointF& ) const;
virtual void drawLabel( QPainter*,
const QRectF&, const QPointF& ) const;
private:
class PrivateData;
PrivateData* m_data;
};
#endif
QwtGraphic
A paint device for scalable graphics.
Definition: qwt_graphic.h:76
QwtPlotItem
Base class for items on the plot canvas.
Definition: qwt_plot_item.h:67
QwtPlotItem::rtti
virtual int rtti() const
Definition: qwt_plot_item.cpp:136
QwtPlotMarker
A class for drawing markers.
Definition: qwt_plot_marker.h:46
QwtPlotMarker::LineStyle
LineStyle
Definition: qwt_plot_marker.h:54
QwtPlotMarker::HLine
@ HLine
A horizontal line.
Definition: qwt_plot_marker.h:59
QwtPlotMarker::NoLine
@ NoLine
No line.
Definition: qwt_plot_marker.h:56
QwtPlotMarker::VLine
@ VLine
A vertical line.
Definition: qwt_plot_marker.h:62
QwtScaleMap
A scale map.
Definition: qwt_scale_map.h:27
QwtSymbol
A class for drawing symbols.
Definition: qwt_symbol.h:32
QwtText
A class representing a text.
Definition: qwt_text.h:52