diff options
author | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-07-27 11:57:46 +0200 |
---|---|---|
committer | Friedemann Kleint <Friedemann.Kleint@qt.io> | 2016-08-04 14:31:15 +0000 |
commit | 40bb2d29b92c28c662a94b77a8170567aba087ab (patch) | |
tree | 8bf2ae8ceed43013b04b9d59682b2d80f142d0b7 /src/gui/kernel/qplatformtheme.cpp | |
parent | 2079081dcf6968690d0c8c50c46531c31989ffd4 (diff) | |
download | qtbase-40bb2d29b92c28c662a94b77a8170567aba087ab.tar.gz |
Add QPlatformTheme::fileIcon()
Add a way to return an icon instead of a pixmap of a specific size for a
file for usage by QFileIconProvider, etc.
Fall back to fileIconPixmap() if fileIcon() returns a null icon.
This allows for supporting XDG theme icons and Qt Quick applications
accessing file icons.
Change-Id: I9ffbd6602e1a6a490c0046d950636447c5127474
Reviewed-by: Olivier Goffart (Woboq GmbH) <ogoffart@woboq.com>
Diffstat (limited to 'src/gui/kernel/qplatformtheme.cpp')
-rw-r--r-- | src/gui/kernel/qplatformtheme.cpp | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/src/gui/kernel/qplatformtheme.cpp b/src/gui/kernel/qplatformtheme.cpp index 32ad057452..a00c572e07 100644 --- a/src/gui/kernel/qplatformtheme.cpp +++ b/src/gui/kernel/qplatformtheme.cpp @@ -44,6 +44,7 @@ #include <QtCore/QVariant> #include <QtCore/QStringList> #include <QtCore/qfileinfo.h> +#include <qicon.h> #include <qpalette.h> #include <qtextformat.h> #include <private/qiconloader_p.h> @@ -405,6 +406,24 @@ QPixmap QPlatformTheme::standardPixmap(StandardPixmap sp, const QSizeF &size) co return QPixmap(); } +/*! + \brief Return an icon for \a fileInfo, observing \a iconOptions. + + This function is queried by QFileIconProvider and similar classes to obtain + an icon for a file. If it does not return a non-null icon, fileIconPixmap() + is queried for a specific size. + + \since 5.8 +*/ + +QIcon QPlatformTheme::fileIcon(const QFileInfo &fileInfo, QPlatformTheme::IconOptions iconOptions) const +{ + Q_UNUSED(fileInfo); + Q_UNUSED(iconOptions); + // TODO Should return QCommonStyle pixmaps? + return QIcon(); +} + QPixmap QPlatformTheme::fileIconPixmap(const QFileInfo &fileInfo, const QSizeF &size, QPlatformTheme::IconOptions iconOptions) const { |