Krita Source Code Documentation
Loading...
Searching...
No Matches
kis_collapsible_button_group.h
Go to the documentation of this file.
1#ifndef KISCOLLAPSIBLEBUTTONGROUP_H
2#define KISCOLLAPSIBLEBUTTONGROUP_H
3
4#include <QObject>
5#include <QWidget>
6#include <QScopedPointer>
7
8#include "kritaui_export.h"
9
10class QToolButton;
11
12class KRITAUI_EXPORT KisCollapsibleButtonGroup : public QWidget
13{
14 Q_OBJECT
15public:
16 KisCollapsibleButtonGroup(QWidget *parent = nullptr);
18
19 void setAutoRaise(bool autoRaise);
20 bool autoRaise() const;
21 void setIconSize(const QSize& size);
22 QSize iconSize() const;
23
24 /* setAutoCollapse:
25 * Set whether we want to try to automatically collapse based on the size
26 * of the current widget. This can be disabled for manual collapsing.
27 */
28 void setAutoCollapse(bool autoCollapse);
29 void setCollapsed(bool collapse);
30 bool collapsed() const;
31
32 virtual QSize sizeHint() const override;
33 virtual QSize minimumSizeHint() const override;
34
35 QToolButton* addAction(QAction* action);
36
37protected:
38 virtual void resizeEvent(class QResizeEvent *event) override;
39
40private:
41 struct Private;
42 QScopedPointer<Private> m_d;
43};
44
45#endif // KISCOLLAPSIBLEBUTTONGROUP_H
int iconSize(qreal width, qreal height)