KChart::RelativePosition
#include <KChartRelativePosition.h>
Public Member Functions | |
RelativePosition (const RelativePosition &) | |
Qt::Alignment | alignment () const |
const QPointF | calculatedPoint (const QSizeF &autoSize) const |
Measure | horizontalPadding () const |
bool | operator!= (const RelativePosition &other) const |
RelativePosition & | operator= (const RelativePosition &other) |
bool | operator== (const RelativePosition &) const |
QObject * | referenceArea () const |
const QPointF | referencePoint (qreal *polarDegrees=nullptr) const |
const PositionPoints | referencePoints () const |
Position | referencePosition () const |
void | resetReferencePosition () |
qreal | rotation () const |
void | setAlignment (Qt::Alignment flags) |
void | setHorizontalPadding (const Measure &padding) |
void | setReferenceArea (QObject *area) |
void | setReferencePoints (const PositionPoints &points) |
void | setReferencePosition (Position position) |
void | setRotation (qreal rot) |
void | setVerticalPadding (const Measure &padding) |
Measure | verticalPadding () const |
Detailed Description
Defines relative position information: reference area, position in this area (reference position), horizontal / vertical padding, and rotation.
See detailed description of KChart::Position for an illustration of the different possible reference positions.
Using RelativePosition you can specify the relative parts of some position information, and you can specify the absolute parts: the reference area, and the position in this area.
- Note
- To get an absolute position, you have three options:
- either you declare both, the relative and the absolute parts, using setReferenceArea for the latter,
- or you specify a set of points, using setReferencePoints,
- or you don't use either, leaving it to KChart to find a suitable reference area.
Definition at line 43 of file KChartRelativePosition.h.
Constructor & Destructor Documentation
◆ RelativePosition() [1/2]
RelativePosition::RelativePosition | ( | ) |
Definition at line 52 of file KChartRelativePosition.cpp.
◆ RelativePosition() [2/2]
RelativePosition::RelativePosition | ( | const RelativePosition & | r | ) |
Definition at line 58 of file KChartRelativePosition.cpp.
◆ ~RelativePosition()
RelativePosition::~RelativePosition | ( | ) |
Definition at line 70 of file KChartRelativePosition.cpp.
Member Function Documentation
◆ alignment()
Qt::Alignment RelativePosition::alignment | ( | ) | const |
Definition at line 112 of file KChartRelativePosition.cpp.
◆ calculatedPoint()
Calculate a point, accordin to the reference area/position and the padding.
This method is called at drawing time: The returned point is used as anchor point. Note that it is the task of the calling code to place the content, taking the alignment property into account. This class does not know the size of the content so it cannot place it.
- See also
- referencePoint, setReferenceArea, setReferencePosition, setHorizontalPadding, setVerticalPadding
Definition at line 172 of file KChartRelativePosition.cpp.
◆ horizontalPadding()
Measure RelativePosition::horizontalPadding | ( | ) | const |
Definition at line 120 of file KChartRelativePosition.cpp.
◆ operator!=()
|
inline |
Definition at line 193 of file KChartRelativePosition.h.
◆ operator=()
RelativePosition & RelativePosition::operator= | ( | const RelativePosition & | other | ) |
Definition at line 64 of file KChartRelativePosition.cpp.
◆ operator==()
bool RelativePosition::operator== | ( | const RelativePosition & | r | ) | const |
Definition at line 192 of file KChartRelativePosition.cpp.
◆ referenceArea()
QObject * RelativePosition::referenceArea | ( | ) | const |
Definition at line 83 of file KChartRelativePosition.cpp.
◆ referencePoint()
const QPointF RelativePosition::referencePoint | ( | qreal * | polarDegrees = nullptr | ) | const |
Return the reference point, according to the reference area/position, and ignoring padding.
This method is called at drawing time. The returned point is used to test if the label of a data value is to be printed: a label is printed only if its reference point is inside or touching the coordinate plane.
If polarDegrees is set, the degree information will be returned that was stored for the respective point. This is used by the PieDiagram class to determine how vertical/horizontal padding settings should affect the position of the data value texts' reference points.
- See also
- calculatedPoint, setReferenceArea, setReferencePosition, setHorizontalPadding, setVerticalPadding
Definition at line 141 of file KChartRelativePosition.cpp.
◆ referencePoints()
const PositionPoints RelativePosition::referencePoints | ( | ) | const |
Definition at line 92 of file KChartRelativePosition.cpp.
◆ referencePosition()
Position RelativePosition::referencePosition | ( | ) | const |
Definition at line 104 of file KChartRelativePosition.cpp.
◆ resetReferencePosition()
void RelativePosition::resetReferencePosition | ( | ) |
Resets the position of the anchor point to the built-in default.
If the anchor point of a RelativePosition is reset (or never changed from the default setting) KChart will choose an appropriate Position at run-time.
e.g. BarDiagrams will use Position::North / Position::South for positive / negative values.
- See also
- setReferencePosition, setReferenceArea, setAlignment, setHorizontalPadding, setVerticalPadding, KChart::Position
Definition at line 100 of file KChartRelativePosition.cpp.
◆ rotation()
qreal RelativePosition::rotation | ( | ) | const |
Definition at line 136 of file KChartRelativePosition.cpp.
◆ setAlignment()
void RelativePosition::setAlignment | ( | Qt::Alignment | flags | ) |
Set the alignment of the content placed by this RelativePosition.
Padding is applied first to obtain the final reference point for the content's alignment
- Note
- To print centered content, besides calling setAlignment( Qt::AlignCenter ) you might also want to set zero padding to have your text centered more precisely.
Definition at line 108 of file KChartRelativePosition.cpp.
◆ setHorizontalPadding()
void RelativePosition::setHorizontalPadding | ( | const Measure & | padding | ) |
Set the width of the horizontal padding between the anchor point and the content placed by this RelativePosition.
- Note
- When printing data value texts this Measure is used to find the alignment point for this text, then alignment() is use to determine how to align the text relative to that point. The font height is used as reference size for both horizontal and vertical padding if the respective padding's Measure is using automatic reference area detection.
Definition at line 116 of file KChartRelativePosition.cpp.
◆ setReferenceArea()
void RelativePosition::setReferenceArea | ( | QObject * | area | ) |
Set the reference area to be used to find the anchor point.
The reference area's type can be either a QWidget subclass or a KChart::AbstractArea subclass.
- Note
- Usage of reference area and reference points is mutually exclusive: Only one can be used, so any previously set reference points are cleared when you call setReferenceArea.
Also note: In a few cases KChart will ignore your area (or points, resp.) settings! Relative positioning of data value texts is an example: For these the reference area is always taken to be the data area.
Definition at line 77 of file KChartRelativePosition.cpp.
◆ setReferencePoints()
void RelativePosition::setReferencePoints | ( | const PositionPoints & | points | ) |
Set a set of points from which the anchor point will be selected.
- Note
- Usage of reference area and reference points is mutually exclusive: Only one can be used, so any previously set reference area is cleared when you call setReferencePoints.
Also note: In a few cases KChart will ignore your points (or area, resp.) settings! Relative positioning of data value texts is an example: For these the reference area is always taken to be the data area.
- See also
- setReferenceArea, setReferencePosition, setAlignment, setHorizontalPadding, setVerticalPadding
Definition at line 87 of file KChartRelativePosition.cpp.
◆ setReferencePosition()
void RelativePosition::setReferencePosition | ( | Position | position | ) |
Set the position of the anchor point.
The anchor point of a RelativePosition may be one of the pre-defined points of it's reference area - for details see KChart::Position.
See detailed description of KChart::Position for an illustration of the different possible reference positions.
- See also
- resetReferencePosition, setReferenceArea, setAlignment, setHorizontalPadding, setVerticalPadding, KChart::Position
Definition at line 96 of file KChartRelativePosition.cpp.
◆ setRotation()
void RelativePosition::setRotation | ( | qreal | rot | ) |
Definition at line 132 of file KChartRelativePosition.cpp.
◆ setVerticalPadding()
void RelativePosition::setVerticalPadding | ( | const Measure & | padding | ) |
Set the height of the vertical padding between the anchor point and the content placed by this RelativePosition.
- Note
- When printing data value texts this Measure is used to find the alignment point for this text, then alignment() is use to determine how to align the text relative to that point. The font height is used as reference size for both horizontal and vertical padding if the respective padding's Measure is using automatic reference area detection.
Definition at line 124 of file KChartRelativePosition.cpp.
◆ verticalPadding()
Measure RelativePosition::verticalPadding | ( | ) | const |
Definition at line 128 of file KChartRelativePosition.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2024 The KDE developers.
Generated on Mon Nov 18 2024 12:09:30 by doxygen 1.12.0 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.