KChart::AutoSpacerLayoutItem
#include <KChartLayoutItems.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 |
| void | setGeometry (const QRect &r) override |
| QSize | sizeHint () const override |
Public Member Functions inherited from KChart::AbstractLayoutItem | |
| AbstractLayoutItem (Qt::Alignment itemAlignment=Qt::Alignment()) | |
| virtual void | paintAll (QPainter &painter) |
| virtual void | paintCtx (PaintContext *context) |
| QLayout * | parentLayout () |
| void | removeFromParentLayout () |
| void | setParentLayout (QLayout *lay) |
| virtual void | setParentWidget (QWidget *widget) |
| virtual void | sizeHintChanged () const |
Public Member Functions inherited from QLayoutItem | |
| QLayoutItem (Qt::Alignment alignment) | |
| Qt::Alignment | alignment () const const |
| virtual QSizePolicy::ControlTypes | controlTypes () const const |
| virtual bool | hasHeightForWidth () const const |
| virtual int | heightForWidth (int) const const |
| virtual void | invalidate () |
| virtual QLayout * | layout () |
| virtual int | minimumHeightForWidth (int w) const const |
| void | setAlignment (Qt::Alignment alignment) |
| virtual QSpacerItem * | spacerItem () |
| virtual QWidget * | widget () const const |
Additional Inherited Members | |
Protected Attributes inherited from KChart::AbstractLayoutItem | |
| QWidget * | mParent |
| QLayout * | mParentLayout |
Detailed Description
@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. KChart'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 KChart - that is if you did not call KChart::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 463 of file KChartLayoutItems.h.
Constructor & Destructor Documentation
◆ AutoSpacerLayoutItem()
| KChart::AutoSpacerLayoutItem::AutoSpacerLayoutItem | ( | bool | layoutIsAtTopPosition, |
| QHBoxLayout * | rightLeftLayout, | ||
| bool | layoutIsAtLeftPosition, | ||
| QVBoxLayout * | topBottomLayout ) |
Definition at line 845 of file KChartLayoutItems.cpp.
Member Function Documentation
◆ expandingDirections()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 856 of file KChartLayoutItems.cpp.
◆ geometry()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 861 of file KChartLayoutItems.cpp.
◆ isEmpty()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 866 of file KChartLayoutItems.cpp.
◆ maximumSize()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 871 of file KChartLayoutItems.cpp.
◆ minimumSize()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 876 of file KChartLayoutItems.cpp.
◆ paint()
|
overridevirtual |
Implements KChart::AbstractLayoutItem.
Definition at line 948 of file KChartLayoutItems.cpp.
◆ setGeometry()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 881 of file KChartLayoutItems.cpp.
◆ sizeHint()
|
overridevirtual |
Implements QLayoutItem.
Definition at line 906 of file KChartLayoutItems.cpp.
The documentation for this class was generated from the following files:
Documentation copyright © 1996-2025 The KDE developers.
Generated on Fri May 2 2025 11:54:25 by doxygen 1.13.2 written by Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.
Public Member Functions inherited from