]> cloud.milkyroute.net Git - dolphin.git/blob - src/dolphinpart_ext.h
SVN_SILENT made messages (.desktop file) - always resolve ours
[dolphin.git] / src / dolphinpart_ext.h
1 /* This file is part of the KDE project
2 * SPDX-FileCopyrightText: 2012 Dawit Alemayehu <adawit@kde.org>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6
7 #ifndef DOLPHINPART_EXT_H
8 #define DOLPHINPART_EXT_H
9
10 #include <KParts/FileInfoExtension>
11 #include <KParts/ListingFilterExtension>
12 #include <KParts/ListingNotificationExtension>
13 #include <KParts/NavigationExtension>
14
15 #include <QUrl>
16
17 class DolphinPart;
18
19 class DolphinPartBrowserExtension : public KParts::NavigationExtension
20 {
21 Q_OBJECT
22 public:
23 explicit DolphinPartBrowserExtension(DolphinPart *part);
24 void restoreState(QDataStream &stream) override;
25 void saveState(QDataStream &stream) override;
26
27 public Q_SLOTS:
28 void cut();
29 void copy();
30 void paste();
31 void pasteTo(const QUrl &);
32 void reparseConfiguration();
33
34 private:
35 DolphinPart *m_part;
36 };
37
38 class DolphinPartFileInfoExtension : public KParts::FileInfoExtension
39 {
40 Q_OBJECT
41
42 public:
43 explicit DolphinPartFileInfoExtension(DolphinPart *part);
44
45 QueryModes supportedQueryModes() const override;
46 bool hasSelection() const override;
47
48 KFileItemList queryFor(QueryMode mode) const override;
49
50 private:
51 DolphinPart *m_part;
52 };
53
54 class DolphinPartListingFilterExtension : public KParts::ListingFilterExtension
55 {
56 Q_OBJECT
57
58 public:
59 explicit DolphinPartListingFilterExtension(DolphinPart *part);
60 FilterModes supportedFilterModes() const override;
61 bool supportsMultipleFilters(FilterMode mode) const override;
62 QVariant filter(FilterMode mode) const override;
63 void setFilter(FilterMode mode, const QVariant &filter) override;
64
65 private:
66 DolphinPart *m_part;
67 };
68
69 class DolphinPartListingNotificationExtension : public KParts::ListingNotificationExtension
70 {
71 Q_OBJECT
72
73 public:
74 explicit DolphinPartListingNotificationExtension(DolphinPart *part);
75 NotificationEventTypes supportedNotificationEventTypes() const override;
76
77 public Q_SLOTS:
78 void slotNewItems(const KFileItemList &);
79 void slotItemsDeleted(const KFileItemList &);
80 };
81
82 #endif