![]() |
KD Chart 2
[rev.2.8]
|
#include <KDChartLayoutItems.h>


Public Member Functions | |
| AutoSpacerLayoutItem (bool layoutIsAtTopPosition, QHBoxLayout *rightLeftLayout, bool layoutIsAtLeftPosition, QVBoxLayout *topBottomLayout) | |
| Qt::Orientations | expandingDirections () const override |
| QRect | geometry () const override |
| bool | isEmpty () const override |
| QSize | maximumSize () const override |
| QSize | minimumSize () const override |
| void | paint (QPainter *) override |
| virtual void | paintAll (QPainter &painter) |
| Default impl: just call paint. More... | |
| virtual void | paintCtx (PaintContext *context) |
| Default impl: Paint the complete item using its layouted position and size. More... | |
| QLayout * | parentLayout () |
| void | removeFromParentLayout () |
| void | setGeometry (const QRect &r) override |
| void | setParentLayout (QLayout *lay) |
| virtual void | setParentWidget (QWidget *widget) |
| Inform the item about its widget: This enables the item, to trigger that widget's update, whenever the size of the item's contents has changed. More... | |
| QSize | sizeHint () const override |
| virtual void | sizeHintChanged () const |
| Report changed size hint: ask the parent widget to recalculate the layout. More... | |
Protected Attributes | |
| QWidget * | mParent |
| QLayout * | mParentLayout |
@brief An empty layout item \internal The AutoSpacerLayoutItem is automatically put into each corner cell of the planeLayout grid: one of its reference-layouts is a QVBoxLayout (for the top, or bottom axes resp.), the other one is a QHBoxLayout (for the left/right sided axes). The spacer reserves enough space so all of the AbstractAreas contained in the two reference-layouts can display not only their in-bounds content but also their overlapping content reaching out of their area. KD Chart's layouting is applying this schema:
+------------------+-------------------------+-----------------+
| +--------------+ | +---------------------+ | +-------------+ |
| | | | | QVBoxLayout for | | | | |
| | AUTO | | | the top axis/axes | | | AUTO | |
| | SPACER | | +---------------------+ | | SPACER | |
| | ITEM | | | | | | ITEM | |
| | | | | | | | | |
| +--------------+ | +---------------------+ | +-------------+ |
+------------------+-------------------------+-----------------+
| +--------+-----+ | +---------------------+ | +-------+-----+ |
| | | | | | | | | | | |
| | | | | | | | | | | |
| | QHBox- | | | | | | | Right | | |
| | Layout | | | | | | | | | |
| | | | | | | | | axes | | |
| | for | | | | | | | | | |
| | | | | | | | | layout| | |
| | the | | | | DIAGRAM(s) | | | | | |
| | | | | | | | | | | |
| | left | | | | | | | | | |
| | | | | | | | | | | |
| | axis | | | | | | | | | |
| | or | | | | | | | | | |
| | axes | | | | | | | | | |
| | | | | | | | | | | |
| +--------+-----+ | +---------------------+ | +-------+-----+ |
+------------------+-------------------------+-----------------+
| +--------------+ | +---------------------+ | +-------------+ |
| | | | | QVBoxLayout for | | | | |
| | AUTO | | | the bottom axes | | | AUTO | |
| | SPACER | | +---------------------+ | | SPACER | |
| | ITEM | | | | | | ITEM | |
| | | | | | | | | |
| +--------------+ | +---------------------+ | +-------------+ |
+------------------+-------------------------+-----------------+
A typical use case is an Abscissa axis with long labels:
2 -|
|
1 -|
|
0 -+------------------------------------
| | | | |
Monday Tuesday Wednesday Thursday Friday
The last letters of the word "Friday" would have been cut off in previous versions of KD Chart - that is if you did not call KDChart::Chart::setGlobalLeading().
Now the word will be shown completely because there is an auto-spacer-item taking care for the additional space needed in the lower/right corner.
Definition at line 448 of file KDChartLayoutItems.h.
| KDChart::AutoSpacerLayoutItem::AutoSpacerLayoutItem | ( | bool | layoutIsAtTopPosition, |
| QHBoxLayout * | rightLeftLayout, | ||
| bool | layoutIsAtLeftPosition, | ||
| QVBoxLayout * | topBottomLayout | ||
| ) |
Definition at line 885 of file KDChartLayoutItems.cpp.
|
override |
Definition at line 896 of file KDChartLayoutItems.cpp.
|
override |
Definition at line 901 of file KDChartLayoutItems.cpp.
|
override |
Definition at line 906 of file KDChartLayoutItems.cpp.
|
override |
Definition at line 911 of file KDChartLayoutItems.cpp.
|
override |
Definition at line 916 of file KDChartLayoutItems.cpp.
|
overridevirtual |
Implements KDChart::AbstractLayoutItem.
Definition at line 988 of file KDChartLayoutItems.cpp.
|
virtualinherited |
Default impl: just call paint.
Derived classes like KDChart::AbstractArea are providing additional action here.
Reimplemented in KDChart::TextArea, KDChart::AbstractArea, and KDChart::TernaryAxis.
Definition at line 64 of file KDChartLayoutItems.cpp.
|
virtualinherited |
Default impl: Paint the complete item using its layouted position and size.
Reimplemented in KDChart::TernaryAxis, KDChart::LeveyJenningsAxis, and KDChart::CartesianAxis.
Definition at line 72 of file KDChartLayoutItems.cpp.
References KDChart::PaintContext::painter().
|
inherited |
Definition at line 77 of file KDChartLayoutItems.h.
|
inherited |
Definition at line 81 of file KDChartLayoutItems.h.
Referenced by KDChart::Chart::takeCoordinatePlane(), and KDChart::Chart::takeHeaderFooter().
|
override |
Definition at line 921 of file KDChartLayoutItems.cpp.
|
inherited |
Definition at line 73 of file KDChartLayoutItems.h.
Referenced by KDChart::Chart::addHeaderFooter(), and KDChart::Chart::takeHeaderFooter().
|
virtualinherited |
Inform the item about its widget: This enables the item, to trigger that widget's update, whenever the size of the item's contents has changed.
Thus, you need to call setParentWidget on every item, that has a non-fixed size.
Definition at line 59 of file KDChartLayoutItems.cpp.
References KDChart::AbstractLayoutItem::mParent.
Referenced by KDChart::HeaderFooter::setParent(), and KDChart::AbstractCartesianDiagram::takeAxis().
|
override |
Definition at line 946 of file KDChartLayoutItems.cpp.
References KDChart::AbstractArea::bottomOverlap(), KDChart::AbstractArea::leftOverlap(), KDChart::AbstractArea::rightOverlap(), KDChart::AbstractArea::topOverlap(), and updateCommonBrush().
|
virtualinherited |
Report changed size hint: ask the parent widget to recalculate the layout.
Definition at line 81 of file KDChartLayoutItems.cpp.
|
protectedinherited |
Definition at line 91 of file KDChartLayoutItems.h.
Referenced by KDChart::AbstractLayoutItem::setParentWidget().
|
protectedinherited |
Definition at line 92 of file KDChartLayoutItems.h.