lbajardsilogic@164
|
1 /****************************************************************************
|
lbajardsilogic@164
|
2 **
|
lbajardsilogic@164
|
3 ** Copyright (C) 2004-2007 Trolltech ASA. All rights reserved.
|
lbajardsilogic@164
|
4 **
|
lbajardsilogic@164
|
5 ** This file is part of the example classes of the Qt Toolkit.
|
lbajardsilogic@164
|
6 **
|
lbajardsilogic@164
|
7 ** This file may be used under the terms of the GNU General Public
|
lbajardsilogic@164
|
8 ** License version 2.0 as published by the Free Software Foundation
|
lbajardsilogic@164
|
9 ** and appearing in the file LICENSE.GPL included in the packaging of
|
lbajardsilogic@164
|
10 ** this file. Please review the following information to ensure GNU
|
lbajardsilogic@164
|
11 ** General Public Licensing requirements will be met:
|
lbajardsilogic@164
|
12 ** http://www.trolltech.com/products/qt/opensource.html
|
lbajardsilogic@164
|
13 **
|
lbajardsilogic@164
|
14 ** If you are unsure which license is appropriate for your use, please
|
lbajardsilogic@164
|
15 ** review the following information:
|
lbajardsilogic@164
|
16 ** http://www.trolltech.com/products/qt/licensing.html or contact the
|
lbajardsilogic@164
|
17 ** sales department at sales@trolltech.com.
|
lbajardsilogic@164
|
18 **
|
lbajardsilogic@164
|
19 ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
|
lbajardsilogic@164
|
20 ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
lbajardsilogic@164
|
21 **
|
lbajardsilogic@164
|
22 ****************************************************************************/
|
lbajardsilogic@164
|
23
|
lbajardsilogic@164
|
24 #ifndef FLOWLAYOUT_H
|
lbajardsilogic@164
|
25 #define FLOWLAYOUT_H
|
lbajardsilogic@164
|
26
|
lbajardsilogic@164
|
27 #include <QLayout>
|
lbajardsilogic@164
|
28 #include <QRect>
|
lbajardsilogic@164
|
29 #include <QWidgetItem>
|
lbajardsilogic@164
|
30
|
lbajardsilogic@164
|
31 class FlowLayout : public QLayout
|
lbajardsilogic@164
|
32 {
|
lbajardsilogic@165
|
33 Q_OBJECT
|
lbajardsilogic@164
|
34 public:
|
lbajardsilogic@164
|
35 FlowLayout(QWidget *parent, int margin = 0, int spacing = -1);
|
lbajardsilogic@164
|
36 FlowLayout(int spacing = -1);
|
lbajardsilogic@164
|
37 ~FlowLayout();
|
lbajardsilogic@164
|
38
|
lbajardsilogic@164
|
39 void addItem(QLayoutItem *item);
|
lbajardsilogic@164
|
40 Qt::Orientations expandingDirections() const;
|
lbajardsilogic@164
|
41 bool hasHeightForWidth() const;
|
lbajardsilogic@164
|
42 int heightForWidth(int) const;
|
lbajardsilogic@164
|
43 int count() const;
|
lbajardsilogic@164
|
44 QLayoutItem *itemAt(int index) const;
|
lbajardsilogic@164
|
45 QSize minimumSize() const;
|
lbajardsilogic@164
|
46 void setGeometry(const QRect &rect);
|
lbajardsilogic@164
|
47 QSize sizeHint() const;
|
lbajardsilogic@166
|
48 QLayoutItem *takeAt(int index);
|
lbajardsilogic@164
|
49
|
lbajardsilogic@164
|
50 private:
|
lbajardsilogic@164
|
51 int doLayout(const QRect &rect, bool testOnly) const;
|
lbajardsilogic@164
|
52
|
lbajardsilogic@164
|
53 QList<QLayoutItem *> m_itemList;
|
lbajardsilogic@164
|
54 };
|
lbajardsilogic@164
|
55
|
lbajardsilogic@164
|
56 #endif
|