diff options
Diffstat (limited to 'src/plugins/Ui/qsui/dockwidgetlist.h')
| -rw-r--r-- | src/plugins/Ui/qsui/dockwidgetlist.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/plugins/Ui/qsui/dockwidgetlist.h b/src/plugins/Ui/qsui/dockwidgetlist.h new file mode 100644 index 000000000..a03e29ff2 --- /dev/null +++ b/src/plugins/Ui/qsui/dockwidgetlist.h @@ -0,0 +1,32 @@ +#ifndef DOCKWIDGETLIST_H +#define DOCKWIDGETLIST_H + +#include <QMainWindow> +#include <QList> + +class QDockWidget; +class QAction; +class QMenu; + +class DockWidgetList : public QObject +{ + Q_OBJECT +public: + explicit DockWidgetList(QMainWindow *parent); + + void registerMenu(QMenu *menu, QAction *before); + +private slots: + void onViewActionToggled(bool visible); + void onWidgetAdded(const QString &id); + void onWidgetRemoved(const QString &id); + void onWidgetUpdated(const QString &id); + +private: + QMainWindow *m_mw; + QList<QDockWidget *> m_dockWidgetList; + QAction *m_beforeAction = nullptr; + QMenu *m_menu; +}; + +#endif // DOCKWIDGETLIST_H |
