DtkGui
DTK Gui module
载入中...
搜索中...
未找到
dicontheme.h
浏览该文件的文档.
1// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2//
3// SPDX-License-Identifier: LGPL-3.0-or-later
4
5#ifndef DICONTHEME_H
6#define DICONTHEME_H
7
8#include <dtkgui_global.h>
9
10#include <QScopedPointer>
11#include <QIcon>
12
13DGUI_BEGIN_NAMESPACE
14
15namespace DIconTheme
16{
17 enum Option {
20 IgnoreDciIcons = 1 << 2,
21 IgnoreIconCache = 1 << 3
22 };
23 Q_DECLARE_FLAGS(Options, Option)
24
25 class CachedData;
26 class Cached {
27 CachedData *data = nullptr;
28 public:
29 Cached();
30 ~Cached();
31
32 int maxCost() const;
33 void setMaxCost(int cost);
34 void clear();
35
36 QIcon findQIcon(const QString &iconName, Options options = Options(), const QIcon &fallback = QIcon());
37 QString findDciIconFile(const QString &iconName, const QString &themeName, const QString &fallback = {});
38 };
39
40 Cached *cached();
41 QIcon findQIcon(const QString &iconName, Options options = Options());
42 QIcon findQIcon(const QString &iconName, const QIcon &fallback, Options options = Options());
43 QIconEngine *createIconEngine(const QString &iconName, Options options = DontFallbackToQIconFromTheme);
44
45 QString findDciIconFile(const QString &iconName, const QString &themeName);
46
47 QStringList dciThemeSearchPaths();
48 void setDciThemeSearchPaths(const QStringList &path);
49
50 bool isBuiltinIcon(const QIcon &icon);
51 bool isXdgIcon(const QIcon &icon);
52}
53
54DGUI_END_NAMESPACE
55
56#endif // DICONTHEME_H
Definition dicontheme.cpp:143
Definition dicontheme.h:26
QStringList dciThemeSearchPaths()
Definition dicontheme.cpp:294
bool isBuiltinIcon(const QIcon &icon)
Definition dicontheme.cpp:115
QString findDciIconFile(const QString &iconName, const QString &themeName)
Definition dicontheme.cpp:240
Option
查找图标时的选项
Definition dicontheme.h:17
@ IgnoreBuiltinIcons
是否忽略通过内置图标引擎方式查找图标资源,当设置此 flag 时查找图标会跳过内置图标引擎的方式查找图标资源,否则优先尝试内置图标引擎查找资源。
Definition dicontheme.h:19
@ DontFallbackToQIconFromTheme
是否**不使用** QIcon::fromTheme 的方式去查找图标,当设置此 flag 时查找图标失败时直接返回空图标对象,否则回退到通过 QIcon::fromTheme 查找图标
Definition dicontheme.h:18
QIconEngine * createIconEngine(const QString &iconName, Options options=DontFallbackToQIconFromTheme)
Definition dicontheme.cpp:91
QIcon findQIcon(const QString &iconName, Options options=Options())
Definition dicontheme.cpp:96
bool isXdgIcon(const QIcon &icon)
Definition dicontheme.cpp:126
Cached * cached()
Definition dicontheme.cpp:232
void setDciThemeSearchPaths(const QStringList &path)
Definition dicontheme.cpp:299