改进很多代码
This commit is contained in:
@@ -1,41 +0,0 @@
|
||||
#include "base64helper.h"
|
||||
#include "qbuffer.h"
|
||||
#include "qdebug.h"
|
||||
|
||||
QString Base64Helper::imageToBase64(const QImage &image)
|
||||
{
|
||||
return QString(imageToBase64x(image));
|
||||
}
|
||||
|
||||
QByteArray Base64Helper::imageToBase64x(const QImage &image)
|
||||
{
|
||||
//这个转换可能比较耗时建议在线程中执行
|
||||
QByteArray data;
|
||||
QBuffer buffer(&data);
|
||||
image.save(&buffer, "JPG");
|
||||
data = data.toBase64();
|
||||
return data;
|
||||
}
|
||||
|
||||
QImage Base64Helper::base64ToImage(const QString &data)
|
||||
{
|
||||
return base64ToImagex(data.toUtf8());
|
||||
}
|
||||
|
||||
QImage Base64Helper::base64ToImagex(const QByteArray &data)
|
||||
{
|
||||
//这个转换可能比较耗时建议在线程中执行
|
||||
QImage image;
|
||||
image.loadFromData(QByteArray::fromBase64(data));
|
||||
return image;
|
||||
}
|
||||
|
||||
QString Base64Helper::textToBase64(const QString &text)
|
||||
{
|
||||
return QString(text.toLocal8Bit().toBase64());
|
||||
}
|
||||
|
||||
QString Base64Helper::base64ToText(const QString &text)
|
||||
{
|
||||
return QString(QByteArray::fromBase64(text.toLocal8Bit()));
|
||||
}
|
||||
@@ -1,37 +0,0 @@
|
||||
#ifndef BASE64HELPER_H
|
||||
#define BASE64HELPER_H
|
||||
|
||||
/**
|
||||
* base64编码转换类 作者:feiyangqingyun(QQ:517216493) 2016-12-16
|
||||
* 1. 图片转base64字符串。
|
||||
* 2. base64字符串转图片。
|
||||
* 3. 字符转base64字符串。
|
||||
* 4. base64字符串转字符。
|
||||
* 5. 后期增加数据压缩。
|
||||
* 6. Qt6对base64编码转换进行了重写效率提升至少200%。
|
||||
*/
|
||||
|
||||
#include <QImage>
|
||||
|
||||
#ifdef quc
|
||||
class Q_DECL_EXPORT Base64Helper
|
||||
#else
|
||||
class Base64Helper
|
||||
#endif
|
||||
|
||||
{
|
||||
public:
|
||||
//图片转base64字符串
|
||||
static QString imageToBase64(const QImage &image);
|
||||
static QByteArray imageToBase64x(const QImage &image);
|
||||
|
||||
//base64字符串转图片
|
||||
static QImage base64ToImage(const QString &data);
|
||||
static QImage base64ToImagex(const QByteArray &data);
|
||||
|
||||
//字符串与base64互转
|
||||
static QString textToBase64(const QString &text);
|
||||
static QString base64ToText(const QString &text);
|
||||
};
|
||||
|
||||
#endif // BASE64HELPER_H
|
||||
@@ -21,7 +21,6 @@ CONFIG += resources_big
|
||||
include ($$PWD/h3.pri)
|
||||
|
||||
HEADERS += \
|
||||
$$PWD/base64helper.h \
|
||||
$$PWD/iconhelper.h \
|
||||
$$PWD/quiconfig.h \
|
||||
$$PWD/quidateselect.h \
|
||||
@@ -34,7 +33,6 @@ HEADERS += \
|
||||
$$PWD/quiwidget.h
|
||||
|
||||
SOURCES += \
|
||||
$$PWD/base64helper.cpp \
|
||||
$$PWD/iconhelper.cpp \
|
||||
$$PWD/quiconfig.cpp \
|
||||
$$PWD/quidateselect.cpp \
|
||||
|
||||
@@ -59,5 +59,6 @@
|
||||
#include "quitipbox.h"
|
||||
#include "quidateselect.h"
|
||||
#include "quiinputbox.h"
|
||||
#include "quiwidget.h"
|
||||
|
||||
#endif // QUIHEAD_H
|
||||
|
||||
@@ -1372,3 +1372,87 @@ bool QUIHelper::checkRowCount(int rowCount, int maxCount, int warnCount)
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
QPixmap QUIHelper::getPixmap(QWidget *widget, const QPixmap &pixmap, bool scale)
|
||||
{
|
||||
if (pixmap.isNull()) {
|
||||
return pixmap;
|
||||
}
|
||||
|
||||
//scale=false 超过尺寸才需要等比例缩放
|
||||
QPixmap pix = pixmap;
|
||||
if (scale) {
|
||||
pix = pix.scaled(widget->size() - QSize(2, 2), Qt::KeepAspectRatio, Qt::SmoothTransformation);
|
||||
} else if (pix.width() > widget->width() || pix.height() > widget->height()) {
|
||||
pix = pix.scaled(widget->size() - QSize(2, 2), Qt::KeepAspectRatio, Qt::SmoothTransformation);
|
||||
}
|
||||
|
||||
return pix;
|
||||
}
|
||||
|
||||
void QUIHelper::setPixmap(QLabel *label, const QString &file, bool scale)
|
||||
{
|
||||
//文件不存在则不用处理
|
||||
if (!QFile(file).exists()) {
|
||||
label->clear();
|
||||
return;
|
||||
}
|
||||
|
||||
QPixmap pixmap(file);
|
||||
pixmap = getPixmap(label, pixmap);
|
||||
label->setPixmap(pixmap);
|
||||
}
|
||||
|
||||
void QUIHelper::setLogo(QLabel *label, const QString &file,
|
||||
int width, int height, int offset,
|
||||
const QString &oldColor, const QString &newColor)
|
||||
{
|
||||
//如果是icon开头则表示图形字体否则取logo图片
|
||||
if (file.startsWith("icon")) {
|
||||
//设置图形字体作为logo
|
||||
height = 55, width = 80;
|
||||
QString text = file.split("_").last();
|
||||
int icon = text.toInt(NULL, 16);
|
||||
IconHelper::setIcon(label, icon, height);
|
||||
} else {
|
||||
//区分资源文件和本地文件
|
||||
QString fileName = file;
|
||||
if (!file.startsWith(":/")) {
|
||||
height = 50;
|
||||
fileName = QString("%1/logo/%2.png").arg(QUIHelper::appPath()).arg(file);
|
||||
}
|
||||
|
||||
//svg图片自动换颜色
|
||||
if (file.endsWith(".svg")) {
|
||||
//打开文件对指定颜色进行替换
|
||||
QFile f(file);
|
||||
if (f.open(QFile::ReadOnly)) {
|
||||
QString text = f.readAll();
|
||||
text.replace(oldColor, newColor);
|
||||
f.close();
|
||||
|
||||
//打开新的文件输出
|
||||
fileName = QString("%1/logo/temp.svg").arg(QUIHelper::appPath());
|
||||
QFile f2(fileName);
|
||||
if (f2.open(QFile::WriteOnly)) {
|
||||
f2.write(text.toUtf8());
|
||||
f2.close();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//自动计算宽度比例
|
||||
QPixmap pixmap(fileName);
|
||||
width = pixmap.width() / (pixmap.height() / height);
|
||||
pixmap = pixmap.scaled(width, height, Qt::KeepAspectRatio, Qt::SmoothTransformation);
|
||||
label->setPixmap(pixmap);
|
||||
}
|
||||
|
||||
//设置logo标签最小宽度
|
||||
if (width - height < offset) {
|
||||
width += offset;
|
||||
}
|
||||
|
||||
label->setFixedWidth(width);
|
||||
label->setAlignment(Qt::AlignCenter);
|
||||
}
|
||||
|
||||
@@ -223,6 +223,14 @@ public:
|
||||
static void openFile(const QString &fileName, const QString &msg);
|
||||
//导出和打印数据提示框
|
||||
static bool checkRowCount(int rowCount, int maxCount, int warnCount);
|
||||
|
||||
//获取等比例缩放过的图片
|
||||
static QPixmap getPixmap(QWidget *widget, const QPixmap &pixmap, bool scale = false);
|
||||
static void setPixmap(QLabel *label, const QString &file, bool scale = false);
|
||||
//设置logo图片支持 资源文件+本地图片+图形字体+svg自动变色 等多种形式
|
||||
static void setLogo(QLabel *label, const QString &file,
|
||||
int width, int height, int offset = 20,
|
||||
const QString &oldColor = QString(), const QString &newColor = QString());
|
||||
};
|
||||
|
||||
#endif // QUIHELPER_H
|
||||
|
||||
@@ -25,11 +25,25 @@ void QUIStyle::getStyle(QStringList &styleNames, QStringList &styleFiles)
|
||||
styleFiles = files;
|
||||
}
|
||||
|
||||
void QUIStyle::setStyle(const QString &qss, const QString &paletteColor)
|
||||
void QUIStyle::setStyle(const QString &qss)
|
||||
{
|
||||
QStringList list;
|
||||
list << qss;
|
||||
|
||||
//5.12开始tabbar左右反过来的
|
||||
#if (QT_VERSION >= QT_VERSION_CHECK(5,12,0))
|
||||
//左右两侧的边框偏移一个像素
|
||||
list << "QTabWidget::pane:left{left:-1px;right:0px;}";
|
||||
list << "QTabWidget::pane:right{right:-1px;left:0px;}";
|
||||
//选中和悬停的时候边缘加深2个像素
|
||||
list << "QTabBar::tab:left:selected,QTabBar::tab:left:hover{border-width:0px 0px 0px 2px;}";
|
||||
list << "QTabBar::tab:right:selected,QTabBar::tab:right:hover{border-width:0px 2px 0px 0px;}";
|
||||
#endif
|
||||
|
||||
QUIHelper::isCustomUI = true;
|
||||
QString paletteColor = qss.mid(20, 7);
|
||||
qApp->setPalette(QPalette(paletteColor));
|
||||
qApp->setStyleSheet(qss);
|
||||
qApp->setStyleSheet(list.join(""));
|
||||
}
|
||||
|
||||
void QUIStyle::setStyle(const QUIStyle::Style &style)
|
||||
@@ -48,18 +62,18 @@ void QUIStyle::setStyle(const QUIStyle::Style &style)
|
||||
QString paletteColor = qss.mid(20, 7);
|
||||
getQssColor(qss, QUIConfig::TextColor, QUIConfig::PanelColor, QUIConfig::BorderColor, QUIConfig::NormalColorStart,
|
||||
QUIConfig::NormalColorEnd, QUIConfig::DarkColorStart, QUIConfig::DarkColorEnd, QUIConfig::HighColor);
|
||||
setStyle(qss, paletteColor);
|
||||
setStyle(qss);
|
||||
file.close();
|
||||
}
|
||||
}
|
||||
|
||||
void QUIStyle::setStyle(const QString &qssFile)
|
||||
void QUIStyle::setStyleFile(const QString &qssFile)
|
||||
{
|
||||
QString paletteColor, textColor;
|
||||
setStyle(qssFile, paletteColor, textColor);
|
||||
setStyleFile(qssFile, paletteColor, textColor);
|
||||
}
|
||||
|
||||
void QUIStyle::setStyle(const QString &qssFile, QString &paletteColor, QString &textColor)
|
||||
void QUIStyle::setStyleFile(const QString &qssFile, QString &paletteColor, QString &textColor)
|
||||
{
|
||||
QFile file(qssFile);
|
||||
if (file.open(QFile::ReadOnly)) {
|
||||
@@ -68,78 +82,49 @@ void QUIStyle::setStyle(const QString &qssFile, QString &paletteColor, QString &
|
||||
textColor = qss.mid(49, 7);
|
||||
getQssColor(qss, QUIConfig::TextColor, QUIConfig::PanelColor, QUIConfig::BorderColor, QUIConfig::NormalColorStart,
|
||||
QUIConfig::NormalColorEnd, QUIConfig::DarkColorStart, QUIConfig::DarkColorEnd, QUIConfig::HighColor);
|
||||
setStyle(qss, paletteColor);
|
||||
setStyle(qss);
|
||||
file.close();
|
||||
}
|
||||
}
|
||||
|
||||
void QUIStyle::setStyle(const QString &qssFile, QString &textColor, QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
QString &darkColorStart, QString &darkColorEnd, QString &highColor)
|
||||
void QUIStyle::setStyleFile(const QString &qssFile, QString &textColor, QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
QString &darkColorStart, QString &darkColorEnd, QString &highColor)
|
||||
{
|
||||
QFile file(qssFile);
|
||||
if (file.open(QFile::ReadOnly)) {
|
||||
QString qss = QLatin1String(file.readAll());
|
||||
getQssColor(qss, textColor, panelColor, borderColor, normalColorStart, normalColorEnd, darkColorStart, darkColorEnd, highColor);
|
||||
setStyle(qss, panelColor);
|
||||
setStyle(qss);
|
||||
file.close();
|
||||
}
|
||||
}
|
||||
|
||||
void QUIStyle::getQssColor(const QString &qss, QString &textColor, QString &panelColor, QString &borderColor,
|
||||
void QUIStyle::getQssColor(const QString &qss, const QString &flag, QString &color)
|
||||
{
|
||||
int index = qss.indexOf(flag);
|
||||
if (index >= 0) {
|
||||
color = qss.mid(index + flag.length(), 7);
|
||||
}
|
||||
//qDebug() << TIMEMS << flag << color;
|
||||
}
|
||||
|
||||
void QUIStyle::getQssColor(const QString &qss, QString &textColor,
|
||||
QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
QString &darkColorStart, QString &darkColorEnd, QString &highColor)
|
||||
{
|
||||
getQssColor(qss, "TextColor:", textColor);
|
||||
getQssColor(qss, "PanelColor:", panelColor);
|
||||
getQssColor(qss, "BorderColor:", borderColor);
|
||||
getQssColor(qss, "NormalColorStart:", normalColorStart);
|
||||
getQssColor(qss, "NormalColorEnd:", normalColorEnd);
|
||||
getQssColor(qss, "DarkColorStart:", darkColorStart);
|
||||
getQssColor(qss, "DarkColorEnd:", darkColorEnd);
|
||||
getQssColor(qss, "HighColor:", highColor);
|
||||
|
||||
QUIHelper::isCustomUI = true;
|
||||
|
||||
QString str = qss;
|
||||
QString flagTextColor = "TextColor:";
|
||||
int indexTextColor = str.indexOf(flagTextColor);
|
||||
if (indexTextColor >= 0) {
|
||||
textColor = str.mid(indexTextColor + flagTextColor.length(), 7);
|
||||
}
|
||||
|
||||
QString flagPanelColor = "PanelColor:";
|
||||
int indexPanelColor = str.indexOf(flagPanelColor);
|
||||
if (indexPanelColor >= 0) {
|
||||
panelColor = str.mid(indexPanelColor + flagPanelColor.length(), 7);
|
||||
}
|
||||
|
||||
QString flagBorderColor = "BorderColor:";
|
||||
int indexBorderColor = str.indexOf(flagBorderColor);
|
||||
if (indexBorderColor >= 0) {
|
||||
borderColor = str.mid(indexBorderColor + flagBorderColor.length(), 7);
|
||||
}
|
||||
|
||||
QString flagNormalColorStart = "NormalColorStart:";
|
||||
int indexNormalColorStart = str.indexOf(flagNormalColorStart);
|
||||
if (indexNormalColorStart >= 0) {
|
||||
normalColorStart = str.mid(indexNormalColorStart + flagNormalColorStart.length(), 7);
|
||||
}
|
||||
|
||||
QString flagNormalColorEnd = "NormalColorEnd:";
|
||||
int indexNormalColorEnd = str.indexOf(flagNormalColorEnd);
|
||||
if (indexNormalColorEnd >= 0) {
|
||||
normalColorEnd = str.mid(indexNormalColorEnd + flagNormalColorEnd.length(), 7);
|
||||
}
|
||||
|
||||
QString flagDarkColorStart = "DarkColorStart:";
|
||||
int indexDarkColorStart = str.indexOf(flagDarkColorStart);
|
||||
if (indexDarkColorStart >= 0) {
|
||||
darkColorStart = str.mid(indexDarkColorStart + flagDarkColorStart.length(), 7);
|
||||
}
|
||||
|
||||
QString flagDarkColorEnd = "DarkColorEnd:";
|
||||
int indexDarkColorEnd = str.indexOf(flagDarkColorEnd);
|
||||
if (indexDarkColorEnd >= 0) {
|
||||
darkColorEnd = str.mid(indexDarkColorEnd + flagDarkColorEnd.length(), 7);
|
||||
}
|
||||
|
||||
QString flagHighColor = "HighColor:";
|
||||
int indexHighColor = str.indexOf(flagHighColor);
|
||||
if (indexHighColor >= 0) {
|
||||
highColor = str.mid(indexHighColor + flagHighColor.length(), 7);
|
||||
}
|
||||
QUIConfig::TextColor = textColor;
|
||||
}
|
||||
|
||||
void QUIStyle::setLabStyle(QLabel *lab, quint8 type, const QString &bgColor, const QString &textColor)
|
||||
|
||||
@@ -30,17 +30,18 @@ public:
|
||||
//获取皮肤样式中文名称和对应的样式表文件
|
||||
static void getStyle(QStringList &styleNames, QStringList &styleFiles);
|
||||
//设置全局样式
|
||||
static void setStyle(const QString &qss, const QString &paletteColor);
|
||||
static void setStyle(const QString &qss);
|
||||
static void setStyle(const QUIStyle::Style &style);
|
||||
static void setStyle(const QString &qssFile);
|
||||
static void setStyle(const QString &qssFile, QString &paletteColor, QString &textColor);
|
||||
static void setStyle(const QString &qssFile, QString &textColor,
|
||||
QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
QString &darkColorStart, QString &darkColorEnd,
|
||||
QString &highColor);
|
||||
static void setStyleFile(const QString &qssFile);
|
||||
static void setStyleFile(const QString &qssFile, QString &paletteColor, QString &textColor);
|
||||
static void setStyleFile(const QString &qssFile, QString &textColor,
|
||||
QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
QString &darkColorStart, QString &darkColorEnd,
|
||||
QString &highColor);
|
||||
|
||||
//根据QSS样式获取对应颜色值
|
||||
static void getQssColor(const QString &qss, const QString &flag, QString &color);
|
||||
static void getQssColor(const QString &qss, QString &textColor,
|
||||
QString &panelColor, QString &borderColor,
|
||||
QString &normalColorStart, QString &normalColorEnd,
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
QUIWidget::QUIWidget(QWidget *parent) : QDialog(parent)
|
||||
{
|
||||
this->initControl();
|
||||
this->initForm();
|
||||
this->initForm();
|
||||
}
|
||||
|
||||
QUIWidget::~QUIWidget()
|
||||
@@ -234,7 +234,7 @@ void QUIWidget::initForm()
|
||||
setIcon(QUIWidget::BtnMenu_Close, QUIConfig::IconClose);
|
||||
|
||||
this->widgetTitle->setProperty("form", "title");
|
||||
QUIHelper::setFramelessForm(this);
|
||||
QUIHelper::setFramelessForm(this, false, false, false);
|
||||
|
||||
//设置标题及对齐方式
|
||||
title = "QUI Demo";
|
||||
@@ -249,24 +249,41 @@ void QUIWidget::initForm()
|
||||
this->installEventFilter(this);
|
||||
this->widgetTitle->installEventFilter(this);
|
||||
|
||||
//默认切换换肤立即换肤
|
||||
changedStyle = true;
|
||||
|
||||
//添加换肤菜单
|
||||
QStringList styleNames, styleFiles;
|
||||
QUIStyle::getStyle(styleNames, styleFiles);
|
||||
|
||||
//添加到动作分组中形成互斥效果
|
||||
actionGroup = new QActionGroup(this);
|
||||
int count = styleNames.count();
|
||||
for (int i = 0; i < count; i++) {
|
||||
QAction *action = new QAction(this);
|
||||
//设置可选中前面有个勾勾
|
||||
action->setCheckable(true);
|
||||
action->setText(styleNames.at(i));
|
||||
action->setData(styleFiles.at(i));
|
||||
connect(action, SIGNAL(triggered(bool)), this, SLOT(changeStyle()));
|
||||
this->btnMenu->addAction(action);
|
||||
actionGroup->addAction(action);
|
||||
}
|
||||
|
||||
//默认选择一种样式
|
||||
setQssChecked(":/qss/lightblue.css");
|
||||
}
|
||||
|
||||
void QUIWidget::changeStyle()
|
||||
{
|
||||
QAction *action = (QAction *)sender();
|
||||
QString qssFile = action->data().toString();
|
||||
QUIStyle::setStyle(qssFile);
|
||||
|
||||
//有些应用可能只需要发送个换肤的信号给他就行
|
||||
if (changedStyle) {
|
||||
QUIStyle::setStyleFile(qssFile);
|
||||
}
|
||||
|
||||
emit changeStyle(qssFile);
|
||||
}
|
||||
|
||||
@@ -399,6 +416,22 @@ void QUIWidget::setMainWidget(QWidget *mainWidget)
|
||||
}
|
||||
}
|
||||
|
||||
void QUIWidget::setQssChecked(const QString &qssFile)
|
||||
{
|
||||
QList<QAction *> actions = actionGroup->actions();
|
||||
foreach (QAction *action, actions) {
|
||||
if (action->data().toString() == qssFile) {
|
||||
action->setChecked(true);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void QUIWidget::setChangedStyle(bool changedStyle)
|
||||
{
|
||||
this->changedStyle = changedStyle;
|
||||
}
|
||||
|
||||
void QUIWidget::on_btnMenu_Min_clicked()
|
||||
{
|
||||
if (minHide) {
|
||||
|
||||
@@ -42,11 +42,14 @@ private:
|
||||
QVBoxLayout *verticalLayout3;
|
||||
|
||||
private:
|
||||
QString title; //标题
|
||||
Qt::Alignment alignment;//标题文本对齐
|
||||
bool minHide; //最小化隐藏
|
||||
bool exitAll; //退出整个程序
|
||||
QWidget *mainWidget; //主窗体对象
|
||||
QString title; //标题
|
||||
Qt::Alignment alignment; //标题文本对齐
|
||||
bool minHide; //最小化隐藏
|
||||
bool exitAll; //退出整个程序
|
||||
QWidget *mainWidget; //主窗体对象
|
||||
|
||||
bool changedStyle; //切换换肤是否立即换肤
|
||||
QActionGroup *actionGroup; //换肤菜单动作组
|
||||
|
||||
public:
|
||||
QLabel *getLabIco() const;
|
||||
@@ -55,7 +58,7 @@ public:
|
||||
QToolButton *getBtnMenu() const;
|
||||
QPushButton *getBtnMenuMin() const;
|
||||
QPushButton *getBtnMenuMax() const;
|
||||
QPushButton *getBtnMenuClose() const;
|
||||
QPushButton *getBtnMenuClose() const;
|
||||
|
||||
QString getTitle() const;
|
||||
Qt::Alignment getAlignment() const;
|
||||
@@ -66,9 +69,9 @@ public:
|
||||
QSize minimumSizeHint() const;
|
||||
|
||||
private slots:
|
||||
void initControl(); //初始化控件
|
||||
void initForm(); //初始化窗体
|
||||
void changeStyle(); //更换样式
|
||||
void initControl(); //初始化控件
|
||||
void initForm(); //初始化窗体
|
||||
void changeStyle(); //更换样式
|
||||
|
||||
private slots:
|
||||
void on_btnMenu_Min_clicked();
|
||||
@@ -104,6 +107,11 @@ public Q_SLOTS:
|
||||
//设置主窗体
|
||||
void setMainWidget(QWidget *mainWidget);
|
||||
|
||||
//设置默认选中的换肤菜单
|
||||
void setQssChecked(const QString &qssFile);
|
||||
//设置切换换肤是否立即换肤
|
||||
void setChangedStyle(bool changedStyle);
|
||||
|
||||
Q_SIGNALS:
|
||||
void changeStyle(const QString &qssFile);
|
||||
void closing();
|
||||
|
||||
BIN
core_qui/resource/image/pe-icon-set-weather.ttf
Normal file
BIN
core_qui/resource/image/pe-icon-set-weather.ttf
Normal file
Binary file not shown.
@@ -2,5 +2,6 @@
|
||||
<qresource prefix="/">
|
||||
<file>image/fontawesome-webfont.ttf</file>
|
||||
<file>image/iconfont.ttf</file>
|
||||
<file>image/pe-icon-set-weather.ttf</file>
|
||||
</qresource>
|
||||
</RCC>
|
||||
|
||||
Reference in New Issue
Block a user