1 /*
2     SPDX-FileCopyrightText: 2020 Michail Vourlakos <mvourlakos@gmail.com>
3     SPDX-License-Identifier: GPL-2.0-or-later
4 */
5 
6 #ifndef VIEWSETTINGSFACTORY_H
7 #define VIEWSETTINGSFACTORY_H
8 
9 //Qt
10 #include <QObject>
11 #include <QPointer>
12 
13 namespace Plasma {
14 class Containment;
15 }
16 
17 
18 namespace Latte {
19 class View;
20 
21 namespace ViewPart {
22 class PrimaryConfigView;
23 class WidgetExplorerView;
24 }
25 
26 }
27 
28 namespace Latte {
29 
30 class ViewSettingsFactory : public QObject
31 {
32     Q_OBJECT
33 
34 public:
35     ViewSettingsFactory(QObject *parent);
36     ~ViewSettingsFactory() override;
37 
38     bool hasOrphanSettings() const;
39     bool hasVisibleSettings() const;
40 
41     ViewPart::PrimaryConfigView *primaryConfigView();
42 
43     Plasma::Containment *lastContainment();
44     ViewPart::PrimaryConfigView *primaryConfigView(Latte::View *view);
45     ViewPart::WidgetExplorerView *widgetExplorerView(Latte::View *view);
46 
47 private:
48     QPointer<ViewPart::PrimaryConfigView> m_primaryConfigView;
49     QPointer<Plasma::Containment> m_lastContainment;
50 
51 };
52 
53 }
54 
55 #endif
56