QwtDynGridLayout (3) - Linux Manuals

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 space=-1)

QwtDynGridLayout (int space=-1)

virtual ~QwtDynGridLayout ()
Destructor.
virtual void invalidate ()
Invalidate all internal caches.
void setMaxColumns (uint maxCols)

uint maxColumns () const
Return the upper limit for the number of columns.
uint numRows () const

uint numColumns () const

virtual void addItem (QLayoutItem *)
Add an item to the next free position.
virtual QLayoutItem * itemAt (int index) const

virtual QLayoutItem * takeAt (int index)

virtual int count () const

void setExpandingDirections (Qt::Orientations)

virtual Qt::Orientations expandingDirections () const
Returns whether this layout can make use of more space than sizeHint().
QList< QRect > layoutItems (const QRect &, uint numCols) const

virtual int maxItemWidth () const

virtual void setGeometry (const QRect &rect)

virtual bool hasHeightForWidth () const

virtual int heightForWidth (int) const

virtual QSize sizeHint () const

virtual bool isEmpty () const

uint itemCount () const

virtual uint columnsForWidth (int width) const
Calculate the number of columns for a given width.

Protected Member Functions


void layoutGrid (uint numCols, QVector< int > &rowHeight, QVector< int > &colWidth) const

void stretchGrid (const QRect &rect, uint numCols, 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()).

Constructor & Destructor Documentation

QwtDynGridLayout::QwtDynGridLayout (QWidget *parent, intmargin = 0, intspacing = -1) [explicit]

Parameters:

parent Parent widget
margin Margin
spacing Spacing

QwtDynGridLayout::QwtDynGridLayout (intspacing = -1) [explicit]

Parameters:

spacing Spacing

Member Function Documentation

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

Add an item to the next free position.

Parameters:

item Layout item

uint QwtDynGridLayout::columnsForWidth (intwidth) 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()

int QwtDynGridLayout::count () const [virtual]

Returns:

Number of items in the layout

Qt::Orientations QwtDynGridLayout::expandingDirections () const [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()

bool QwtDynGridLayout::hasHeightForWidth () const [virtual]

Returns:

true: QwtDynGridLayout implements heightForWidth().

See Also:

heightForWidth()

int QwtDynGridLayout::heightForWidth (intwidth) const [virtual]

Returns:

The preferred height for this layout, given a width.

See Also:

hasHeightForWidth()

bool QwtDynGridLayout::isEmpty () const [virtual]

Returns:

true if this layout is empty.

QLayoutItem * QwtDynGridLayout::itemAt (intindex) const [virtual]

Find the item at a specific index

Parameters:

index Index

Returns:

Item at a specific index

See Also:

takeAt()

uint QwtDynGridLayout::itemCount () const

Returns:

number of layout items

void QwtDynGridLayout::layoutGrid (uintnumColumns, 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.

QList< QRect > QwtDynGridLayout::layoutItems (const QRect &rect, uintnumColumns) 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

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()

int QwtDynGridLayout::maxItemWidth () const [virtual]

Returns:

the maximum width of all layout items

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

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

void QwtDynGridLayout::setExpandingDirections (Qt::Orientationsexpanding)

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()

void QwtDynGridLayout::setGeometry (const QRect &rect) [virtual]

Reorganizes columns and rows and resizes managed items within a rectangle.

Parameters:

rect Layout geometry

void QwtDynGridLayout::setMaxColumns (uintmaxColumns)

Limit the number of columns.

Parameters:

maxColumns upper limit, 0 means unlimited

See Also:

maxColumns()

QSize QwtDynGridLayout::sizeHint () const [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()

void QwtDynGridLayout::stretchGrid (const QRect &rect, uintnumColumns, 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()

QLayoutItem * QwtDynGridLayout::takeAt (intindex) [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()

Author

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