.Simulation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Pages
Public Member Functions | Public Attributes | Protected Types | Protected Member Functions | Protected Attributes | List of all members
QCPlot::QCPItemText Class Reference

A text label. More...

Inheritance diagram for QCPlot::QCPItemText:
QCPlot::QCPAbstractItem QCPlot::QCPLayerable

Public Member Functions

 QCPItemText (QCustomPlot *parentPlot)
 Creates a text item and sets default values. More...
 
QColor color () const
 
QColor selectedColor () const
 
QPen pen () const
 
QPen selectedPen () const
 
QBrush brush () const
 
QBrush selectedBrush () const
 
QFont font () const
 
QFont selectedFont () const
 
QString text () const
 
Qt::Alignment positionAlignment () const
 
Qt::Alignment textAlignment () const
 
double rotation () const
 
QMargins padding () const
 
void setColor (const QColor &color)
 Sets the color of the text.
 
void setSelectedColor (const QColor &color)
 Sets the color of the text that will be used when the item is selected.
 
void setPen (const QPen &pen)
 Sets the pen that will be used do draw a rectangular border around the text. More...
 
void setSelectedPen (const QPen &pen)
 Sets the pen that will be used do draw a rectangular border around the text, when the item is selected. More...
 
void setBrush (const QBrush &brush)
 Sets the brush that will be used do fill the background of the text. More...
 
void setSelectedBrush (const QBrush &brush)
 Sets the brush that will be used do fill the background of the text, when the item is selected. More...
 
void setFont (const QFont &font)
 Sets the font of the text. More...
 
void setSelectedFont (const QFont &font)
 Sets the font of the text that will be used when the item is selected. More...
 
void setText (const QString &text)
 Sets the text that will be displayed. More...
 
void setPositionAlignment (Qt::Alignment alignment)
 Sets which point of the text rect shall be aligned with position. More...
 
void setTextAlignment (Qt::Alignment alignment)
 Controls how (multi-lined) text is aligned inside the text rect (typically Qt::AlignLeft, Qt::AlignCenter or Qt::AlignRight).
 
void setRotation (double degrees)
 Sets the angle in degrees by which the text (and the text rectangle, if visible) will be rotated around position.
 
void setPadding (const QMargins &padding)
 Sets the distance between the border of the text rectangle and the text. More...
 
virtual double selectTest (const QPointF &pos) const
 This function is used to decide whether a click hits an item or not. More...
 
- Public Member Functions inherited from QCPlot::QCPAbstractItem
 QCPAbstractItem (QCustomPlot *parentPlot)
 Base class constructor which initializes base class members.
 
bool clipToAxisRect () const
 
QCPAxisclipKeyAxis () const
 
QCPAxisclipValueAxis () const
 
bool selectable () const
 
bool selected () const
 
void setClipToAxisRect (bool clip)
 Sets whether the item shall be clipped to the axis rect or whether it shall be visible on the entire QCustomPlot. More...
 
void setClipAxes (QCPAxis *keyAxis, QCPAxis *valueAxis)
 Sets both clip axes. More...
 
void setClipKeyAxis (QCPAxis *axis)
 Sets the clip key axis. More...
 
void setClipValueAxis (QCPAxis *axis)
 Sets the clip value axis. More...
 
void setSelectable (bool selectable)
 Sets whether the user can (de-)select this item by clicking on the QCustomPlot surface. More...
 
void setSelected (bool selected)
 Sets whether this item is selected or not. More...
 
QList< QCPItemPosition * > positions () const
 Returns all positions of the item in a list. More...
 
QList< QCPItemAnchor * > anchors () const
 Returns all anchors of the item in a list. More...
 
QCPItemPositionposition (const QString &name) const
 Returns the QCPItemPosition with the specified name. More...
 
QCPItemAnchoranchor (const QString &name) const
 Returns the QCPItemAnchor with the specified name. More...
 
bool hasAnchor (const QString &name) const
 Returns whether this item has an anchor with the specified name. More...
 
- Public Member Functions inherited from QCPlot::QCPLayerable
 QCPLayerable (QCustomPlot *parentPlot)
 Creates a new QCPLayerable instance. More...
 
bool visible () const
 
QCustomPlotparentPlot () const
 
QCPLayerlayer () const
 
bool antialiased () const
 
void setVisible (bool on)
 Sets the visibility of this layerable object. More...
 
bool setLayer (QCPLayer *layer)
 Sets the layer of this layerable object. More...
 
bool setLayer (const QString &layerName)
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. Sets the layer of this layerable object by name. More...
 
void setAntialiased (bool enabled)
 Sets whether this object will be drawn antialiased or not. More...
 

Public Attributes

QCPItemPosition *const position
 
QCPItemAnchor *const topLeft
 
QCPItemAnchor *const top
 
QCPItemAnchor *const topRight
 
QCPItemAnchor *const right
 
QCPItemAnchor *const bottomRight
 
QCPItemAnchor *const bottom
 
QCPItemAnchor *const bottomLeft
 
QCPItemAnchor *const left
 

Protected Types

enum  AnchorIndex {
  aiTopLeft, aiTop, aiTopRight, aiRight,
  aiBottomRight, aiBottom, aiBottomLeft, aiLeft
}
 

Protected Member Functions

virtual void draw (QCPPainter *painter)
 
virtual QPointF anchorPixelPoint (int anchorId) const
 
QPointF getTextDrawPoint (const QPointF &pos, const QRectF &rect, Qt::Alignment positionAlignment) const
 
QFont mainFont () const
 
QColor mainColor () const
 
QPen mainPen () const
 
QBrush mainBrush () const
 
- Protected Member Functions inherited from QCPlot::QCPAbstractItem
virtual QRect clipRect () const
 
virtual void applyDefaultAntialiasingHint (QCPPainter *painter) const
 
double distSqrToLine (const QPointF &start, const QPointF &end, const QPointF &point) const
 
double rectSelectTest (const QRectF &rect, const QPointF &pos, bool filledRect) const
 
QCPItemPositioncreatePosition (const QString &name)
 
QCPItemAnchorcreateAnchor (const QString &name, int anchorId)
 
- Protected Member Functions inherited from QCPlot::QCPLayerable
bool moveToLayer (QCPLayer *layer, bool prepend)
 
void applyAntialiasingHint (QCPPainter *painter, bool localAntialiased, QCP::AntialiasedElement overrideElement) const
 

Protected Attributes

QColor mColor
 
QColor mSelectedColor
 
QPen mPen
 
QPen mSelectedPen
 
QBrush mBrush
 
QBrush mSelectedBrush
 
QFont mFont
 
QFont mSelectedFont
 
QString mText
 
Qt::Alignment mPositionAlignment
 
Qt::Alignment mTextAlignment
 
double mRotation
 
QMargins mPadding
 
- Protected Attributes inherited from QCPlot::QCPAbstractItem
bool mClipToAxisRect
 
QCPAxismClipKeyAxis
 
QCPAxismClipValueAxis
 
bool mSelectable
 
bool mSelected
 
QList< QCPItemPosition * > mPositions
 
QList< QCPItemAnchor * > mAnchors
 
- Protected Attributes inherited from QCPlot::QCPLayerable
bool mVisible
 
QCustomPlotmParentPlot
 
QCPLayermLayer
 
bool mAntialiased
 

Additional Inherited Members

- Signals inherited from QCPlot::QCPAbstractItem
void selectionChanged (bool selected)
 This signal is emitted when the selection state of this item has changed, either by user interaction or by a direct call to setSelected.
 

Detailed Description

A text label.

QCPItemText.png
Text example. Blue dotted circles are anchors, solid blue discs are positions.

Its position is defined by the member position and the setting of setPositionAlignment. The latter controls which part of the text rect shall be aligned with position.

The text alignment itself (i.e. left, center, right) can be controlled with setTextAlignment.

The text may be rotated around the position point with setRotation.

Constructor & Destructor Documentation

QCPlot::QCPItemText::QCPItemText ( QCustomPlot parentPlot)

Creates a text item and sets default values.

The constructed item can be added to the plot with QCustomPlot::addItem.

Member Function Documentation

double QCPlot::QCPItemText::selectTest ( const QPointF &  pos) const
virtual

This function is used to decide whether a click hits an item or not.

pos is a point in pixel coordinates on the QCustomPlot surface. This function returns the shortest pixel distance of this point to the item. If the item is either invisible or the distance couldn't be determined, -1.0 is returned. setSelectable has no influence on the return value of this function.

If the item is represented not by single lines but by an area like QCPItemRect or QCPItemText, a click inside the area returns a constant value greater zero (typically 99% of the selectionTolerance of the parent QCustomPlot). If the click lies outside the area, this function returns -1.0.

Providing a constant value for area objects allows selecting line objects even when they are obscured by such area objects, by clicking close to the lines (i.e. closer than 0.99*selectionTolerance).

The actual setting of the selection state is not done by this function. This is handled by the parent QCustomPlot when the mouseReleaseEvent occurs.

See Also
setSelected, QCustomPlot::setInteractions

Implements QCPlot::QCPAbstractItem.

void QCPlot::QCPItemText::setBrush ( const QBrush &  brush)

Sets the brush that will be used do fill the background of the text.

To disable the background, set brush to Qt::NoBrush.

See Also
setSelectedBrush, setPen, setPadding
void QCPlot::QCPItemText::setFont ( const QFont &  font)

Sets the font of the text.

See Also
setSelectedFont, setColor
void QCPlot::QCPItemText::setPadding ( const QMargins &  padding)

Sets the distance between the border of the text rectangle and the text.

The appearance (and visibility) of the text rectangle can be controlled with setPen and setBrush.

void QCPlot::QCPItemText::setPen ( const QPen &  pen)

Sets the pen that will be used do draw a rectangular border around the text.

To disable the border, set pen to Qt::NoPen.

See Also
setSelectedPen, setBrush, setPadding
void QCPlot::QCPItemText::setPositionAlignment ( Qt::Alignment  alignment)

Sets which point of the text rect shall be aligned with position.

Examples:

  • If alignment is Qt::AlignHCenter | Qt::AlignTop, the text will be positioned such that the top of the text rect will be horizontally centered on position.
  • If alignment is Qt::AlignLeft | Qt::AlignBottom, position will indicate the bottom left corner of the text rect.

If you want to control the alignment of (multi-lined) text within the text rect, use setTextAlignment.

void QCPlot::QCPItemText::setSelectedBrush ( const QBrush &  brush)

Sets the brush that will be used do fill the background of the text, when the item is selected.

To disable the background, set brush to Qt::NoBrush.

See Also
setBrush
void QCPlot::QCPItemText::setSelectedFont ( const QFont &  font)

Sets the font of the text that will be used when the item is selected.

See Also
setFont
void QCPlot::QCPItemText::setSelectedPen ( const QPen &  pen)

Sets the pen that will be used do draw a rectangular border around the text, when the item is selected.

To disable the border, set pen to Qt::NoPen.

See Also
setPen
void QCPlot::QCPItemText::setText ( const QString &  text)

Sets the text that will be displayed.

Multi-line texts are supported by inserting a line break character, e.g. '
'.

See Also
setFont, setColor, setTextAlignment

The documentation for this class was generated from the following files: