代码拉取完成,页面将自动刷新
#include "qtmaterialwidget.h"
#include "lib/qtmaterialstyle.h"
#include "qtmaterialwidget_p.h"
#include <QPainter>
/*!
* \class QtMaterialWidgetPrivate
* \internal
*/
/*!
* \internal
*/
QtMaterialWidgetPrivate::QtMaterialWidgetPrivate(QtMaterialWidget *q)
: q_ptr(q)
{
}
/*!
* \internal
*/
void QtMaterialWidgetPrivate::init()
{
useThemeColors = true;
}
/*!
* \internal
*/
QtMaterialWidgetPrivate::~QtMaterialWidgetPrivate()
{
}
/*!
* \class QtMaterialWidget
*/
QtMaterialWidget::QtMaterialWidget(QWidget *parent)
: QWidget(parent),
d_ptr(new QtMaterialWidgetPrivate(this))
{
d_func()->init();
}
QtMaterialWidget::~QtMaterialWidget()
{
}
bool QtMaterialWidget::useThemeColors() const
{
Q_D(const QtMaterialWidget);
return d->useThemeColors;
}
void QtMaterialWidget::setUseThemeColors(bool value)
{
Q_D(QtMaterialWidget);
if (d->useThemeColors == value)
{
return;
}
d->useThemeColors = value;
update();
}
QColor QtMaterialWidget::backgroundColor() const
{
Q_D(const QtMaterialWidget);
if (d->useThemeColors || !d->backgroundColor.isValid())
{
return QtMaterialStyle::instance().themeColor(Material::ColorThemeCanvas);
}
return d->backgroundColor;
}
void QtMaterialWidget::setBackgroundColor(const QColor &color)
{
Q_D(QtMaterialWidget);
d->backgroundColor = color;
if (d->useThemeColors)
{
d->useThemeColors = false;
}
update();
}
void QtMaterialWidget::paintEvent(QPaintEvent *event)
{
Q_UNUSED(event);
QPainter painter(this);
painter.fillRect(rect(), backgroundColor());
}
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。