KDDockWidgets API Documentation 2.0
Loading...
Searching...
No Matches
qtquick/views/Group.h
Go to the documentation of this file.
1/*
2 This file is part of KDDockWidgets.
3
4 SPDX-FileCopyrightText: 2019 Klarälvdalens Datakonsult AB, a KDAB Group company <info@kdab.com>
5 Author: SĂ©rgio Martins <sergio.martins@kdab.com>
6
7 SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only
8
9 Contact KDAB at <info@kdab.com> for commercial licensing options.
10*/
11
12
13#ifndef KD_FRAME_QUICK_P_H
14#define KD_FRAME_QUICK_P_H
15#pragma once
16
17#include "View.h"
18#include "TitleBar.h"
19#include "kddockwidgets/core/views/GroupViewInterface.h"
20
21QT_BEGIN_NAMESPACE
22class QQuickItem;
23QT_END_NAMESPACE
24
25namespace KDDockWidgets {
26
27namespace Core {
28class Group;
29class DockWidget;
30}
31
32namespace QtQuick {
33
34class TabBar;
35class Stack;
36
37class DOCKS_EXPORT Group : public QtQuick::View, public Core::GroupViewInterface
38{
39 Q_OBJECT
40 Q_PROPERTY(QObject *tabBar READ tabBarObj CONSTANT)
41 Q_PROPERTY(KDDockWidgets::QtQuick::TitleBar *titleBar READ titleBar CONSTANT)
42 Q_PROPERTY(int userType READ userType CONSTANT)
43 Q_PROPERTY(KDDockWidgets::QtQuick::TitleBar *actualTitleBar READ actualTitleBar NOTIFY
44 actualTitleBarChanged)
45 Q_PROPERTY(int currentIndex READ currentIndex NOTIFY currentDockWidgetChanged)
46 Q_PROPERTY(bool isMDI READ isMDI NOTIFY isMDIChanged)
47
48public:
49 explicit Group(Core::Group *controller, QQuickItem *parent = nullptr);
50 ~Group() override;
51
53 QSize minSize() const override;
54
56 QQuickItem *visualItem() const override;
57
58 int currentIndex() const;
59
60 // QML interface:
61 KDDockWidgets::QtQuick::TitleBar *titleBar() const;
62 KDDockWidgets::QtQuick::TitleBar *actualTitleBar() const;
63 int userType() const;
64 QObject *tabBarObj() const;
65
66protected:
67 void removeDockWidget(Core::DockWidget *dw) override;
68 void insertDockWidget(Core::DockWidget *dw, int index) override;
69
70 Q_INVOKABLE void setStackLayout(QQuickItem *);
71
72 int nonContentsHeight() const override;
73
74Q_SIGNALS:
75 void isMDIChanged();
76 void currentDockWidgetChanged();
77 void actualTitleBarChanged();
78
79public Q_SLOTS:
80 void updateConstraints();
81
82private:
83 void init() override final;
84 Stack *stackView() const;
85 TabBar *tabBarView() const;
86
87 class Private;
88 Private *const d;
89
90 QQuickItem *m_stackLayout = nullptr;
91 QQuickItem *m_visualItem = nullptr;
92};
93
94}
95}
96
97#endif
The interface that Frame views should implement.
Class to abstract QAction, so code still works with QtQuick and Flutter.

© Klarälvdalens Datakonsult AB (KDAB)
"The Qt, C++ and OpenGL Experts"
https://www.kdab.com/
KDDockWidgets
Advanced Dock Widget Framework for Qt
https://www.kdab.com/development-resources/qt-tools/kddockwidgets/
Generated by doxygen 1.9.8