1/*
2 SPDX-FileCopyrightText: 2007 Peter Penz <peter.penz@gmx.at>
3
4 SPDX-License-Identifier: LGPL-2.0-only
5*/
6
7#ifndef KDIROPERATORDETAILVIEW_P_H
8#define KDIROPERATORDETAILVIEW_P_H
9
10#include <KDirOperator>
11#include <QTreeView>
12
13#include <kfile.h>
14
15class QAbstractItemModel;
16
17/*!
18 * Default detail view for KDirOperator using
19 * custom resizing options and columns.
20 * \internal
21 */
22class KDirOperatorDetailView : public QTreeView
23{
24 Q_OBJECT
25
26public:
27 explicit KDirOperatorDetailView(KDirOperator *dirOperator, QWidget *parent = nullptr);
28 ~KDirOperatorDetailView() override;
29
30 /*!
31 * Displays either Detail, Tree or DetailTree modes.
32 */
33 virtual bool setViewMode(KFile::FileView viewMode);
34
35protected:
36 void initViewItemOption(QStyleOptionViewItem *option) const override;
37
38 bool event(QEvent *event) override;
39 void dragEnterEvent(QDragEnterEvent *event) override;
40 void mousePressEvent(QMouseEvent *event) override;
41 void mouseMoveEvent(QMouseEvent *event) override;
42 void mouseReleaseEvent(QMouseEvent *event) override;
43 void currentChanged(const QModelIndex &current, const QModelIndex &previous) override;
44
45private:
46 bool m_hideDetailColumns;
47 bool m_isEmblemClicked;
48 KDirOperator *m_dirOperator;
49};
50
51#endif
52

source code of kio/src/filewidgets/kdiroperatordetailview_p.h