]> cloud.milkyroute.net Git - dolphin.git/blob - src/kitemviews/kfileitemlistwidget.h
Fix paste on row while in details view mode
[dolphin.git] / src / kitemviews / kfileitemlistwidget.h
1 /*
2 * SPDX-FileCopyrightText: 2011 Peter Penz <peter.penz19@gmail.com>
3 *
4 * SPDX-License-Identifier: GPL-2.0-or-later
5 */
6
7 #ifndef KFILEITEMLISTWIDGET_H
8 #define KFILEITEMLISTWIDGET_H
9
10 #include "dolphin_export.h"
11 #include "kitemviews/kstandarditemlistwidget.h"
12
13 class KFileItemListView;
14
15
16 class DOLPHIN_EXPORT KFileItemListWidgetInformant : public KStandardItemListWidgetInformant
17 {
18 public:
19 KFileItemListWidgetInformant();
20 ~KFileItemListWidgetInformant() override;
21
22 protected:
23 QString itemText(int index, const KItemListView* view) const override;
24 bool itemIsLink(int index, const KItemListView* view) const override;
25 QString roleText(const QByteArray& role, const QHash<QByteArray, QVariant>& values) const override;
26 QFont customizedFontForLinks(const QFont& baseFont) const override;
27 };
28
29 class DOLPHIN_EXPORT KFileItemListWidget : public KStandardItemListWidget
30 {
31 Q_OBJECT
32
33 public:
34 KFileItemListWidget(KItemListWidgetInformant* informant, QGraphicsItem* parent);
35 ~KFileItemListWidget() override;
36
37 static KItemListWidgetInformant* createInformant();
38
39 protected:
40 virtual void hoverSequenceStarted() override;
41 virtual void hoverSequenceIndexChanged(int sequenceIndex) override;
42 virtual void hoverSequenceEnded() override;
43
44 bool isRoleRightAligned(const QByteArray& role) const override;
45 bool isHidden() const override;
46 QFont customizedFont(const QFont& baseFont) const override;
47
48 /**
49 * @return Selection length without MIME-type extension
50 */
51 int selectionLength(const QString& text) const override;
52
53 private:
54 KFileItemListView* listView();
55 };
56
57 #endif
58
59