Krita Source Code Documentation
Loading...
Searching...
No Matches
KoToolBoxDocker_p.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2005 Boudewijn Rempt <boud@valdyas.org>
3 * SPDX-FileCopyrightText: 2005-2008 Thomas Zander <zander@kde.org>
4 * SPDX-FileCopyrightText: 2009 Peter Simonsson <peter.simonsson@gmail.com>
5 * SPDX-FileCopyrightText: 2010 Cyrille Berger <cberger@cberger.net>
6 * SPDX-FileCopyrightText: 2022 Alvin Wong <alvin@alvinhc.com>
7 *
8 * SPDX-License-Identifier: LGPL-2.0-or-later
9 */
10#ifndef _KO_TOOLBOX_DOCKER_H_
11#define _KO_TOOLBOX_DOCKER_H_
12
14
15#include <QDockWidget>
16
17class KoCanvasBase;
18class KoToolBox;
20
21class QMenu;
22
23class KoToolBoxDocker : public QDockWidget, public KisMainwindowObserver
24{
25 Q_OBJECT
26public:
27 explicit KoToolBoxDocker(KoToolBox *toolBox);
28
30 void setCanvas(KoCanvasBase *canvas) override;
31 void unsetCanvas() override;
32 QString observerName() override { return "KoToolBoxDocker"; }
34 void setViewManager(KisViewManager *viewManager) override;
35
36protected:
37 void resizeEvent(QResizeEvent *event) override;
38 void contextMenuEvent(QContextMenuEvent *event) override;
39
40protected Q_SLOTS:
41 void updateToolBoxOrientation(Qt::DockWidgetArea);
42 void updateFloating(bool);
43
44private:
46 Horizontal = Qt::Horizontal,
47 Vertical = Qt::Vertical,
48 Auto = -1,
49 };
50
51 void setToolBoxOrientation(Qt::Orientation);
52 void updateLayoutDir();
53 void changeLayoutDir(Qt::LayoutDirection);
55 void changeCompact(bool);
56
57private:
60 QMenu *m_contextMenu {nullptr};
61 Qt::DockWidgetArea m_dockArea {Qt::NoDockWidgetArea};
62 Qt::LayoutDirection m_layoutDir {Qt::LayoutDirectionAuto};
64};
65
66#endif // _KO_TOOLBOX_DOCKER_H_
The KisMainwindowObserver class is an interface for dock widgets that want to keep track of the main ...
Qt::DockWidgetArea m_dockArea
void setViewManager(KisViewManager *viewManager) override
reimplemented from KisMainwindowObserver
KoToolBoxScrollArea * m_scrollArea
Qt::LayoutDirection m_layoutDir
void unsetCanvas() override
void contextMenuEvent(QContextMenuEvent *event) override
Orientation m_orientation
QString observerName() override
void setCanvas(KoCanvasBase *canvas) override
reimplemented from KoCanvasObserverBase
void updateFloating(bool)
void changeOrientation(Orientation)
void updateToolBoxOrientation(Qt::DockWidgetArea)
KoToolBox * m_toolBox
KoToolBoxDocker(KoToolBox *toolBox)
void setToolBoxOrientation(Qt::Orientation)
void changeLayoutDir(Qt::LayoutDirection)
void resizeEvent(QResizeEvent *event) override