DtkGui
DTK Gui module
载入中...
搜索中...
未找到
dplatformtheme_p.h
1
// SPDX-FileCopyrightText: 2022 UnionTech Software Technology Co., Ltd.
2
//
3
// SPDX-License-Identifier: LGPL-3.0-or-later
4
5
#ifndef DPLATFORMTHEME_P_H
6
#define DPLATFORMTHEME_P_H
7
8
#include "
dplatformtheme.h
"
9
#include "dnativesettings_p.h"
10
11
DGUI_BEGIN_NAMESPACE
12
13
class
DPlatformThemePrivate
:
public
DNativeSettingsPrivate
14
{
15
public
:
16
D_DECLARE_PUBLIC(
DPlatformTheme
)
17
DPlatformThemePrivate
(
DPlatformTheme
*qq);
18
19
// 接收parent主题或非调色板DNativeSettings对象(theme对象)的属性变化通知
20
// 调色板相关的属性变化与此无关
21
void
_q_onThemePropertyChanged(
const
QByteArray &name,
const
QVariant &value);
22
void
onQtColorChanged(QPalette::ColorRole role,
const
QColor &color);
23
void
onDtkColorChanged(
DPalette::ColorType
type,
const
QColor &color);
24
void
notifyPaletteChanged();
25
26
// 父主题,可以从其继承除调色板之外的所有窗口设置
27
DPlatformTheme
*parent =
nullptr
;
28
// 用于控制是否fallback到父主题中获取属性
29
bool
fallbackProperty =
true
;
30
// 默认时,DPlatformTheme会从/deepin/palette域下获取调色板相关的属性值
31
// 此处的DNativeSettings用于获取除调色板之外的属性设置
32
DNativeSettings
*theme;
33
// 缓存的调色板数据
34
DPalette
*palette =
nullptr
;
35
// 减少调色板changed信号的通知频率
36
QTimer *notifyPaletteChangeTimer =
nullptr
;
37
};
38
39
DGUI_END_NAMESPACE
40
41
#endif
// DPLATFORMTHEME_P_H
Dtk::Gui::DNativeSettingsPrivate
Definition
dnativesettings_p.h:15
Dtk::Gui::DNativeSettings
一个用于本地设置的类.
Definition
dnativesettings.h:17
Dtk::Gui::DPalette
DPalette继承并且扩展了 QPalette 类, 提供了dtk特有的特性.
Definition
dpalette.h:17
Dtk::Gui::DPalette::ColorType
ColorType
Definition
dpalette.h:20
Dtk::Gui::DPlatformThemePrivate
Definition
dplatformtheme_p.h:14
Dtk::Gui::DPlatformTheme
一个提供窗口主题的类.
Definition
dplatformtheme.h:17
dplatformtheme.h
src
private
dplatformtheme_p.h
文档生成时间:2024-11-15-05:50 +00
Doxygen Version
1.9.8
制作者:deepin doc doc go SIG
文档使用CC-BY-4.0共享