QwtDynGridLayout(3)

NAME
QwtDynGridLayout - The QwtDynGridLayout class lays out widgets in a grid, adjusting the number of columns and rows to the current size.

SYNOPSIS

#include <qwt_dyngrid_layout.h>

Inherits QLayout.

  Public Member Functions
QwtDynGridLayout (QWidget *, int margin=0, int spacing=-1)
QwtDynGridLayout (int spacing=-1)
virtual ~QwtDynGridLayout ()
Destructor.
virtual void invalidate () override
Invalidate all internal caches.
void setMaxColumns (uint maxColumns)
uint maxColumns () const
Return the upper limit for the number of columns.
uint numRows () const
uint numColumns () const
virtual void addItem (QLayoutItem *) override
Add an item to the next free position.
virtual QLayoutItem * itemAt (int index) const override
virtual QLayoutItem * takeAt (int index) override
virtual int count () const override
void setExpandingDirections (Qt::Orientations)
virtual Qt::Orientations expandingDirections () const override
Returns whether this layout can make use of more space than sizeHint().
QList< QRect > layoutItems (const QRect &, uint numColumns) const
virtual int maxItemWidth () const
virtual void setGeometry (const QRect &) override
virtual bool hasHeightForWidth () const override
virtual int heightForWidth (int) const override
virtual QSize sizeHint () const override
virtual bool isEmpty () const override
uint itemCount () const
virtual uint columnsForWidth (int width) const
Calculate the number of columns for a given width.

  Protected Member Functions
void layoutGrid (uint numColumns, QVector< int > &rowHeight, QVector< int > &colWidth) const
void stretchGrid (const QRect &rect, uint numColumns, QVector< int > &rowHeight, QVector< int > &colWidth) const

Detailed Description

The QwtDynGridLayout class lays out widgets in a grid, adjusting the number of columns and rows to the current size. QwtDynGridLayout takes the space it gets, divides it up into rows and columns, and puts each of the widgets it manages into the correct cell(s). It lays out as many number of columns as possible (limited by maxColumns()).

Definition at line 27 of file qwt_dyngrid_layout.h.

Constructor & Destructor Documentation

  QwtDynGridLayout::QwtDynGridLayout (QWidget * parent, int margin = 0, int spacing = -1) [explicit]

Parameters
    parent Parent widget
    margin Margin
    spacing Spacing

Definition at line 58 of file qwt_dyngrid_layout.cpp.

  QwtDynGridLayout::QwtDynGridLayout (int spacing = -1) [explicit]

Parameters
    spacing Spacing

Definition at line 71 of file qwt_dyngrid_layout.cpp.

Member Function Documentation

  void QwtDynGridLayout::addItem (QLayoutItem * item) [override], [virtual]

Add an item to the next free position.

Parameters
    item Layout item

Definition at line 128 of file qwt_dyngrid_layout.cpp.

  uint QwtDynGridLayout::columnsForWidth (int width) const [virtual]

Calculate the number of columns for a given width. The calculation tries to use as many columns as possible ( limited by maxColumns() )

Parameters
    width Available width for all columns

Returns
    Number of columns for a given width

See also
    maxColumns(), setMaxColumns()

Definition at line 256 of file qwt_dyngrid_layout.cpp.

  int QwtDynGridLayout::count () const [override], [virtual]

Returns
    Number of items in the layout

Definition at line 182 of file qwt_dyngrid_layout.cpp.

  Qt::Orientations QwtDynGridLayout::expandingDirections () const [override], [virtual]

Returns whether this layout can make use of more space than sizeHint(). A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions.

Returns
    Orientations, where the layout expands

See also
    setExpandingDirections()

Definition at line 211 of file qwt_dyngrid_layout.cpp.

  bool QwtDynGridLayout::hasHeightForWidth () const [override], [virtual]

Returns
    true: QwtDynGridLayout implements heightForWidth().

See also
    heightForWidth()

Definition at line 446 of file qwt_dyngrid_layout.cpp.

  int QwtDynGridLayout::heightForWidth (int width) const [override], [virtual]

Returns
    The preferred height for this layout, given a width.

See also
    hasHeightForWidth()

Definition at line 455 of file qwt_dyngrid_layout.cpp.

  bool QwtDynGridLayout::isEmpty () const [override], [virtual]

Returns
    true if this layout is empty.

Definition at line 137 of file qwt_dyngrid_layout.cpp.

  QLayoutItem * QwtDynGridLayout::itemAt (int index) const [override], [virtual]
Find the item at a specific index

Parameters
    index Index

Returns
    Item at a specific index

See also
    takeAt()

Definition at line 157 of file qwt_dyngrid_layout.cpp.

  uint QwtDynGridLayout::itemCount () const

Returns
    number of layout items

Definition at line 145 of file qwt_dyngrid_layout.cpp.

  void QwtDynGridLayout::layoutGrid (uint numColumns, QVector< int > & rowHeight, QVector< int > & colWidth) const [protected]
Calculate the dimensions for the columns and rows for a grid of numColumns columns.

Parameters
    numColumns Number of columns.
    rowHeight Array where to fill in the calculated row heights.
    colWidth Array where to fill in the calculated column widths.

Definition at line 419 of file qwt_dyngrid_layout.cpp.

  QList< QRect > QwtDynGridLayout::layoutItems (const QRect & rect, uint numColumns) const
Calculate the geometries of the layout items for a layout with numColumns columns and a given rectangle.

Parameters
    rect Rect where to place the items
    numColumns Number of columns

Returns
    item geometries

Definition at line 344 of file qwt_dyngrid_layout.cpp.

  uint QwtDynGridLayout::maxColumns () const

Return the upper limit for the number of columns. 0 means unlimited, what is the default.

Returns
    Upper limit for the number of columns

See also
    setMaxColumns()

Definition at line 119 of file qwt_dyngrid_layout.cpp.

  int QwtDynGridLayout::maxItemWidth () const [virtual]

Returns
    the maximum width of all layout items

Definition at line 316 of file qwt_dyngrid_layout.cpp.

  uint QwtDynGridLayout::numColumns () const

Returns
    Number of columns of the current layout.

See also
    numRows()

Warning
    The number of columns might change whenever the geometry changes

Definition at line 596 of file qwt_dyngrid_layout.cpp.

  uint QwtDynGridLayout::numRows () const

Returns
    Number of rows of the current layout.

See also
    numColumns()

Warning
    The number of rows might change whenever the geometry changes

Definition at line 586 of file qwt_dyngrid_layout.cpp.

  void QwtDynGridLayout::setExpandingDirections (Qt::Orientations expanding)
Set whether this layout can make use of more space than sizeHint(). A value of Qt::Vertical or Qt::Horizontal means that it wants to grow in only one dimension, while Qt::Vertical | Qt::Horizontal means that it wants to grow in both dimensions. The default value is 0.

Parameters
    expanding Or'd orientations

See also
    expandingDirections()

Definition at line 196 of file qwt_dyngrid_layout.cpp.

  void QwtDynGridLayout::setGeometry (const QRect & rect) [override], [virtual]
Reorganizes columns and rows and resizes managed items within a rectangle.

Parameters
    rect Layout geometry

Definition at line 222 of file qwt_dyngrid_layout.cpp.

  void QwtDynGridLayout::setMaxColumns (uint maxColumns)
Limit the number of columns.

Parameters
    maxColumns upper limit, 0 means unlimited

See also
    maxColumns()

Definition at line 106 of file qwt_dyngrid_layout.cpp.

  QSize QwtDynGridLayout::sizeHint () const [override], [virtual]
Return the size hint. If maxColumns() > 0 it is the size for a grid with maxColumns() columns, otherwise it is the size for a grid with only one row.

Returns
    Size hint

See also
    maxColumns(), setMaxColumns()

Definition at line 550 of file qwt_dyngrid_layout.cpp.

  void QwtDynGridLayout::stretchGrid (const QRect & rect, uint numColumns, QVector< int > & rowHeight, QVector< int > & colWidth) const [protected]
Stretch columns in case of expanding() & QSizePolicy::Horizontal and rows in case of expanding() & QSizePolicy::Vertical to fill the entire rect. Rows and columns are stretched with the same factor.

Parameters
    rect Bounding rectangle
    numColumns Number of columns
    rowHeight Array to be filled with the calculated row heights
    colWidth Array to be filled with the calculated column widths

See also
    setExpanding(), expanding()

Definition at line 491 of file qwt_dyngrid_layout.cpp.

  QLayoutItem * QwtDynGridLayout::takeAt (int index) [override], [virtual]
Find the item at a specific index and remove it from the layout

Parameters
    index Index

Returns
    Layout item, removed from the layout

See also
    itemAt()

Definition at line 172 of file qwt_dyngrid_layout.cpp.

Author

Generated automatically by Doxygen for Qwt User's Guide from the source code.