1// Copyright (C) 2016 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4#ifndef QFILEICONPROVIDER_P_H
5#define QFILEICONPROVIDER_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtWidgets/private/qtwidgetsglobal_p.h>
19#include "qfileiconprovider.h"
20
21#include <private/qabstractfileiconprovider_p.h>
22#include <QtCore/qstring.h>
23#include <QtGui/qicon.h>
24#include <QtWidgets/qstyle.h>
25
26QT_BEGIN_NAMESPACE
27
28class QFileInfo;
29
30class QFileIconProviderPrivate : public QAbstractFileIconProviderPrivate
31{
32 Q_DECLARE_PUBLIC(QFileIconProvider)
33
34public:
35 QFileIconProviderPrivate(QFileIconProvider *q);
36 QIcon getIcon(QStyle::StandardPixmap name) const;
37 QIcon getIcon(const QFileInfo &fi) const;
38
39 const QString homePath;
40
41private:
42 mutable QIcon file;
43 mutable QIcon fileLink;
44 mutable QIcon directory;
45 mutable QIcon directoryLink;
46 mutable QIcon harddisk;
47 mutable QIcon floppy;
48 mutable QIcon cdrom;
49 mutable QIcon ram;
50 mutable QIcon network;
51 mutable QIcon computer;
52 mutable QIcon desktop;
53 mutable QIcon trashcan;
54 mutable QIcon generic;
55 mutable QIcon home;
56};
57
58QT_END_NAMESPACE
59
60#endif // QFILEICONPROVIDER_P_H
61

source code of qtbase/src/widgets/itemviews/qfileiconprovider_p.h