QCAD
Open Source 2D CAD
Loading...
Searching...
No Matches
RFlowLayout.h
Go to the documentation of this file.
1#ifndef RFLOWLAYOUT_H
2#define RFLOWLAYOUT_H
3
4#include "gui_global.h"
5
6#include <QLayout>
7#include <QMetaType>
8#include <QStyle>
9
10#ifndef RDEFAULT_MIN1
11#define RDEFAULT_MIN1 -1
12#endif
13
21class QCADGUI_EXPORT RFlowLayout : public QLayout {
22 Q_OBJECT
23
24public:
25 RFlowLayout(QWidget* parent, int margin = RDEFAULT_MIN1, int hSpacing = RDEFAULT_MIN1, int vSpacing = RDEFAULT_MIN1);
26 RFlowLayout(int margin = RDEFAULT_MIN1, int hSpacing = RDEFAULT_MIN1, int vSpacing = RDEFAULT_MIN1);
28
29 void setIconSize(const QSize& s);
30 void setListViewMode(bool on);
31
32 void addItem(QLayoutItem* item);
33 int horizontalSpacing() const;
34 int verticalSpacing() const;
35 Qt::Orientations expandingDirections() const;
36 bool hasHeightForWidth() const;
37 int heightForWidth(int) const;
38 int count() const;
39 QLayoutItem* itemAt(int index) const;
40 QSize minimumSize() const;
41 void setGeometry(const QRect& rect);
42 QSize sizeHint() const;
43 QLayoutItem* takeAt(int index);
44
45 void insertAction(int index, QAction* action);
46 int indexOf(QAction* action) const;
47
48 void invalidate() {
49 QLayout::invalidate();
50 }
51
55 int indexOf(QWidget* widget) const {
56 return QLayout::indexOf(widget);
57 }
58
59private:
60 int doLayout(const QRect& rect, bool testOnly) const;
61 int smartSpacing(QStyle::PixelMetric pm) const;
62
63 QList<QLayoutItem*> itemList;
64 int hSpace;
65 int vSpace;
66 QSize iconSize;
68};
69
71
72#endif
#define RDEFAULT_MIN1
Copyright (c) 2011-2018 by Andrew Mustun.
Definition RExplodable.h:30
Q_DECLARE_METATYPE(RMath *)
Flow layout.
Definition RFlowLayout.h:21
void invalidate()
Definition RFlowLayout.h:48
bool listViewMode
Definition RFlowLayout.h:67
int hSpace
Definition RFlowLayout.h:64
int vSpace
Definition RFlowLayout.h:65
QList< QLayoutItem * > itemList
Definition RFlowLayout.h:63
QSize iconSize
Definition RFlowLayout.h:66
int indexOf(QWidget *widget) const
Definition RFlowLayout.h:55
#define QCADGUI_EXPORT
Definition gui_global.h:10
char s
Definition opennurbs_string.cpp:32