7#ifndef KISOPTIONCOLLECTIONWIDGET_H
8#define KISOPTIONCOLLECTIONWIDGET_H
11#include <QScopedPointer>
13#include <kritawidgetutils_export.h>
30 int widgetIndexFromId(
const QString &
id)
const;
34 bool containsWidget(
const QString &
id)
const;
39 QWidget* widget(
int index)
const;
46 return qobject_cast<T>(widget(index));
52 QWidget* widget(
const QString &
id)
const;
59 return qobject_cast<T>(widget(
id));
70 QWidget* findWidget(
const QString &path)
const;
78 return qobject_cast<T>(findWidget(path));
85 void insertWidget(
int index,
const QString &
id, QWidget *widget);
90 void appendWidget(
const QString &
id, QWidget *widget);
96 void removeWidget(
int index);
101 void removeWidget(
const QString &
id);
107 QWidget* takeWidget(
int index);
112 QWidget* takeWidget(
const QString &
id);
119 void setWidgetVisible(
int index,
bool visible);
125 void setWidgetVisible(
const QString &
id,
bool visible);
132 void setWidgetsMargin(
int margin);
136 void setSeparatorsVisible(
bool visible);
144 void setOrientation(Qt::Orientation orientation,
bool recursive =
false);
153 int numberOfVisibleWidgets()
const;
157 QScopedPointer<Private>
m_d;
172 QSize minimumSizeHint()
const override;
176 QWidget* primaryWidget()
const;
180 template <
typename T>
183 return qobject_cast<T>(primaryWidget());
188 void setPrimaryWidget(QWidget *widget);
192 void removePrimaryWidget();
197 QWidget* takePrimaryWidget();
202 void setPrimaryWidgetVisible(
bool visible);
207 int widgetIndexFromId(
const QString &
id)
const;
211 bool containsWidget(
const QString &
id)
const;
216 QWidget* widget(
int index)
const;
220 template <
typename T>
223 return qobject_cast<T>(widget(index));
229 QWidget* widget(
const QString &
id)
const;
233 template <
typename T>
236 return qobject_cast<T>(widget(
id));
247 QWidget* findWidget(
const QString &path)
const;
252 template <
typename T>
255 return qobject_cast<T>(findWidget(path));
262 void insertWidget(
int index,
const QString &
id, QWidget *widget);
267 void appendWidget(
const QString &
id, QWidget *widget);
273 void removeWidget(
int index);
278 void removeWidget(
const QString &
id);
284 QWidget* takeWidget(
int index);
289 QWidget* takeWidget(
const QString &
id);
294 void setWidgetVisible(
int index,
bool visible);
298 void setWidgetVisible(
const QString &
id,
bool visible);
305 void setWidgetsMargin(
int margin);
309 void setSeparatorsVisible(
bool visible);
317 void setOrientation(Qt::Orientation orientation,
bool recursive =
false);
326 int numberOfVisibleWidgets()
const;
329 void resizeEvent(QResizeEvent*)
override;
333 QScopedPointer<Private>
m_d;