A class for drawing markers. More...
#include <qwt_plot_marker.h>
Classes | |
class | PrivateData |
Public Types | |
enum | LineStyle { NoLine, HLine, VLine, Cross } |
Public Types inherited from QwtPlotItem | |
enum | ItemAttribute { Legend = 0x01, AutoScale = 0x02, Margins = 0x04 } |
Plot Item Attributes. More... | |
typedef QFlags< ItemAttribute > | ItemAttributes |
Plot Item Attributes. More... | |
enum | ItemInterest { ScaleInterest = 0x01, LegendInterest = 0x02 } |
Plot Item Interests. More... | |
typedef QFlags< ItemInterest > | ItemInterests |
Plot Item Interests. More... | |
enum | RenderHint { RenderAntialiased = 0x1 } |
Render hints. More... | |
typedef QFlags< RenderHint > | RenderHints |
Render hints. More... | |
enum | RttiValues { Rtti_PlotItem = 0, Rtti_PlotGrid, Rtti_PlotScale, Rtti_PlotLegend, Rtti_PlotMarker, Rtti_PlotCurve, Rtti_PlotSpectroCurve, Rtti_PlotIntervalCurve, Rtti_PlotHistogram, Rtti_PlotSpectrogram, Rtti_PlotSVG, Rtti_PlotTradingCurve, Rtti_PlotBarChart, Rtti_PlotMultiBarChart, Rtti_PlotShape, Rtti_PlotTextLabel, Rtti_PlotZone, Rtti_PlotUserItem = 1000 } |
Runtime type information. More... | |
Public Member Functions | |
virtual QRectF | boundingRect () const |
virtual void | draw (QPainter *, const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &) const |
QwtText | label () const |
Qt::Alignment | labelAlignment () const |
Qt::Orientation | labelOrientation () const |
virtual QwtGraphic | legendIcon (int index, const QSizeF &) const |
const QPen & | linePen () const |
LineStyle | lineStyle () const |
QwtPlotMarker (const QString &title=QString()) | |
Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine. More... | |
QwtPlotMarker (const QwtText &title) | |
Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine. More... | |
virtual int | rtti () const |
void | setLabel (const QwtText &) |
Set the label. More... | |
void | setLabelAlignment (Qt::Alignment) |
Set the alignment of the label. More... | |
void | setLabelOrientation (Qt::Orientation) |
Set the orientation of the label. More... | |
void | setLinePen (const QColor &, qreal width=0.0, Qt::PenStyle=Qt::SolidLine) |
void | setLinePen (const QPen &p) |
void | setLineStyle (LineStyle st) |
Set the line style. More... | |
void | setSpacing (int) |
Set the spacing. More... | |
void | setSymbol (const QwtSymbol *) |
Assign a symbol. More... | |
void | setValue (double, double) |
Set Value. More... | |
void | setValue (const QPointF &) |
Set Value. More... | |
void | setXValue (double) |
Set X Value. More... | |
void | setYValue (double) |
Set Y Value. More... | |
int | spacing () const |
const QwtSymbol * | symbol () const |
QPointF | value () const |
Return Value. More... | |
double | xValue () const |
Return x Value. More... | |
double | yValue () const |
Return y Value. More... | |
virtual | ~QwtPlotMarker () |
Destructor. More... | |
Public Member Functions inherited from QwtPlotItem | |
void | attach (QwtPlot *plot) |
Attach the item to a plot. More... | |
void | detach () |
This method detaches a QwtPlotItem from any QwtPlot it has been associated with. More... | |
virtual void | getCanvasMarginHint (const QwtScaleMap &xMap, const QwtScaleMap &yMap, const QRectF &canvasSize, double &left, double &top, double &right, double &bottom) const |
Calculate a hint for the canvas margin. More... | |
void | hide () |
Hide the item. More... | |
bool | isVisible () const |
virtual void | itemChanged () |
virtual void | legendChanged () |
virtual QList< QwtLegendData > | legendData () const |
Return all information, that is needed to represent the item on the legend. More... | |
QSize | legendIconSize () const |
QRectF | paintRect (const QwtScaleMap &, const QwtScaleMap &) const |
Calculate the bounding paint rectangle of 2 maps. More... | |
QwtPlot * | plot () const |
Return attached plot. More... | |
QwtPlotItem (const QwtText &title=QwtText()) | |
uint | renderThreadCount () const |
QRectF | scaleRect (const QwtScaleMap &, const QwtScaleMap &) const |
Calculate the bounding scale rectangle of 2 maps. More... | |
void | setAxes (int xAxis, int yAxis) |
void | setItemAttribute (ItemAttribute, bool on=true) |
void | setItemInterest (ItemInterest, bool on=true) |
void | setLegendIconSize (const QSize &) |
void | setRenderHint (RenderHint, bool on=true) |
void | setRenderThreadCount (uint numThreads) |
void | setTitle (const QString &title) |
void | setTitle (const QwtText &title) |
virtual void | setVisible (bool) |
void | setXAxis (int axis) |
void | setYAxis (int axis) |
void | setZ (double z) |
Set the z value. More... | |
void | show () |
Show the item. More... | |
bool | testItemAttribute (ItemAttribute) const |
bool | testItemInterest (ItemInterest) const |
bool | testRenderHint (RenderHint) const |
const QwtText & | title () const |
virtual void | updateLegend (const QwtPlotItem *, const QList< QwtLegendData > &) |
Update the item to changes of the legend info. More... | |
virtual void | updateScaleDiv (const QwtScaleDiv &, const QwtScaleDiv &) |
Update the item to changes of the axes scale division. More... | |
int | xAxis () const |
Return xAxis. More... | |
int | yAxis () const |
Return yAxis. More... | |
double | z () const |
virtual | ~QwtPlotItem () |
Destroy the QwtPlotItem. More... | |
Protected Member Functions | |
virtual void | drawLabel (QPainter *, const QRectF &, const QPointF &) const |
virtual void | drawLines (QPainter *, const QRectF &, const QPointF &) const |
virtual void | drawSymbol (QPainter *, const QRectF &, const QPointF &) const |
Protected Member Functions inherited from QwtPlotItem | |
QwtGraphic | defaultIcon (const QBrush &, const QSizeF &) const |
Return a default icon from a brush. More... | |
Private Attributes | |
PrivateData * | d_data |
A class for drawing markers.
A marker can be a horizontal line, a vertical line, a symbol, a label or any combination of them, which can be drawn around a center point inside a bounding rectangle.
The setSymbol() member assigns a symbol to the marker. The symbol is drawn at the specified point.
With setLabel(), a label can be assigned to the marker. The setLabelAlignment() member specifies where the label is drawn. All the Align*-constants in Qt::AlignmentFlags (see Qt documentation) are valid. The interpretation of the alignment depends on the marker's line style. The alignment refers to the center point of the marker, which means, for example, that the label would be printed left above the center point if the alignment was set to Qt::AlignLeft | Qt::AlignTop.
Definition at line 48 of file qwt_plot_marker.h.
Line styles.
Enumerator | |
---|---|
NoLine |
No line. |
HLine |
A horizontal line. |
VLine |
A vertical line. |
Cross |
A crosshair. |
Definition at line 56 of file qwt_plot_marker.h.
|
explicit |
Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.
Definition at line 51 of file qwt_plot_marker.cpp.
|
explicit |
Sets alignment to Qt::AlignCenter, and style to QwtPlotMarker::NoLine.
Definition at line 59 of file qwt_plot_marker.cpp.
|
virtual |
Destructor.
Definition at line 67 of file qwt_plot_marker.cpp.
|
virtual |
Reimplemented from QwtPlotItem.
Definition at line 563 of file qwt_plot_marker.cpp.
|
virtual |
Draw the marker
painter | Painter |
xMap | x Scale Map |
yMap | y Scale Map |
canvasRect | Contents rectangle of the canvas in painter coordinates |
Implements QwtPlotItem.
Definition at line 133 of file qwt_plot_marker.cpp.
|
protectedvirtual |
Align and draw the text label of the marker
painter | Painter |
canvasRect | Contents rectangle of the canvas in painter coordinates |
pos | Position of the marker, translated into widget coordinates |
Definition at line 223 of file qwt_plot_marker.cpp.
|
protectedvirtual |
Draw the lines marker
painter | Painter |
canvasRect | Contents rectangle of the canvas in painter coordinates |
pos | Position of the marker, translated into widget coordinates |
Definition at line 154 of file qwt_plot_marker.cpp.
|
protectedvirtual |
Draw the symbol of the marker
painter | Painter |
canvasRect | Contents rectangle of the canvas in painter coordinates |
pos | Position of the marker, translated into widget coordinates |
Definition at line 194 of file qwt_plot_marker.cpp.
QwtText QwtPlotMarker::label | ( | ) | const |
Qt::Alignment QwtPlotMarker::labelAlignment | ( | ) | const |
Definition at line 456 of file qwt_plot_marker.cpp.
Qt::Orientation QwtPlotMarker::labelOrientation | ( | ) | const |
Definition at line 484 of file qwt_plot_marker.cpp.
|
virtual |
index | Index of the legend entry ( usually there is only one ) |
size | Icon size |
Reimplemented from QwtPlotItem.
Definition at line 577 of file qwt_plot_marker.cpp.
const QPen & QwtPlotMarker::linePen | ( | ) | const |
QwtPlotMarker::LineStyle QwtPlotMarker::lineStyle | ( | ) | const |
|
virtual |
Reimplemented from QwtPlotItem.
Definition at line 73 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLabel | ( | const QwtText & | label | ) |
Set the label.
label | Label text |
Definition at line 411 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLabelAlignment | ( | Qt::Alignment | align | ) |
Set the alignment of the label.
In case of QwtPlotMarker::HLine the alignment is relative to the y position of the marker, but the horizontal flags correspond to the canvas rectangle. In case of QwtPlotMarker::VLine the alignment is relative to the x position of the marker, but the vertical flags correspond to the canvas rectangle.
In all other styles the alignment is relative to the marker's position.
align | Alignment. |
Definition at line 443 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLabelOrientation | ( | Qt::Orientation | orientation | ) |
Set the orientation of the label.
When orientation is Qt::Vertical the label is rotated by 90.0 degrees ( from bottom to top ).
orientation | Orientation of the label |
Definition at line 471 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLinePen | ( | const QColor & | color, |
qreal | width = 0.0 , |
||
Qt::PenStyle | style = Qt::SolidLine |
||
) |
Build and assign a line pen
In Qt5 the default pen width is 1.0 ( 0.0 in Qt4 ) what makes it non cosmetic ( see QPen::isCosmetic() ). This method has been introduced to hide this incompatibility.
color | Pen color |
width | Pen width |
style | Pen style |
Definition at line 532 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLinePen | ( | const QPen & | pen | ) |
Specify a pen for the line.
pen | New pen |
Definition at line 543 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setLineStyle | ( | LineStyle | style | ) |
Set the line style.
style | Line style. |
Definition at line 357 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setSpacing | ( | int | spacing | ) |
Set the spacing.
When the label is not centered on the marker position, the spacing is the distance between the position and the label.
spacing | Spacing |
Definition at line 498 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setSymbol | ( | const QwtSymbol * | symbol | ) |
Assign a symbol.
symbol | New symbol |
Definition at line 382 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setValue | ( | double | x, |
double | y | ||
) |
Set Value.
Definition at line 103 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setValue | ( | const QPointF & | pos | ) |
Set Value.
Definition at line 97 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setXValue | ( | double | x | ) |
Set X Value.
Definition at line 114 of file qwt_plot_marker.cpp.
void QwtPlotMarker::setYValue | ( | double | y | ) |
Set Y Value.
Definition at line 120 of file qwt_plot_marker.cpp.
int QwtPlotMarker::spacing | ( | ) | const |
const QwtSymbol * QwtPlotMarker::symbol | ( | ) | const |
Definition at line 401 of file qwt_plot_marker.cpp.
QPointF QwtPlotMarker::value | ( | ) | const |
Return Value.
Definition at line 79 of file qwt_plot_marker.cpp.
double QwtPlotMarker::xValue | ( | ) | const |
Return x Value.
Definition at line 85 of file qwt_plot_marker.cpp.
double QwtPlotMarker::yValue | ( | ) | const |
Return y Value.
Definition at line 91 of file qwt_plot_marker.cpp.
|
private |
Definition at line 129 of file qwt_plot_marker.h.