chore: 格式化ElaWidgetTools代码

This commit is contained in:
sleepwithoutbz
2025-09-20 01:39:00 +08:00
parent d2fded145d
commit 4ab391f8a1
394 changed files with 10913 additions and 15860 deletions

View File

@@ -7,41 +7,28 @@
#include <QtMath>
#include "ElaTheme.h"
ElaWindowStyle::ElaWindowStyle(QStyle* style)
{
ElaWindowStyle::ElaWindowStyle(QStyle *style) {
_themeMode = eTheme->getThemeMode();
connect(eTheme, &ElaTheme::themeModeChanged, this, [=](ElaThemeType::ThemeMode themeMode) { _themeMode = themeMode; });
}
ElaWindowStyle::~ElaWindowStyle()
{
}
ElaWindowStyle::~ElaWindowStyle() {}
void ElaWindowStyle::drawPrimitive(PrimitiveElement element, const QStyleOption* option, QPainter* painter, const QWidget* widget) const
{
switch (element)
{
case QStyle::PE_FrameTabBarBase:
{
void ElaWindowStyle::drawPrimitive(PrimitiveElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const {
switch (element) {
case QStyle::PE_FrameTabBarBase: {
return;
}
case QStyle::PE_PanelButtonTool:
{
if (option->state.testFlag(QStyle::State_Enabled))
{
case QStyle::PE_PanelButtonTool: {
if (option->state.testFlag(QStyle::State_Enabled)) {
painter->save();
painter->setRenderHint(QPainter::Antialiasing);
painter->setPen(Qt::NoPen);
if (option->state.testFlag(QStyle::State_Sunken))
{
if (option->state.testFlag(QStyle::State_Sunken)) {
painter->setBrush(ElaThemeColor(_themeMode, BasicHoverAlpha));
}
else if (option->state.testFlag(QStyle::State_MouseOver))
{
} else if (option->state.testFlag(QStyle::State_MouseOver)) {
painter->setBrush(ElaThemeColor(_themeMode, BasicPressAlpha));
}
else
{
} else {
painter->setBrush(Qt::transparent);
}
painter->drawRect(option->rect);
@@ -49,15 +36,15 @@ void ElaWindowStyle::drawPrimitive(PrimitiveElement element, const QStyleOption*
}
return;
}
case QStyle::PE_IndicatorArrowLeft:
{
case QStyle::PE_IndicatorArrowLeft: {
painter->save();
painter->setRenderHint(QPainter::Antialiasing);
painter->setPen(Qt::NoPen);
painter->setBrush(option->state.testFlag(QStyle::State_Enabled) ? ElaThemeColor(_themeMode, BasicText) : ElaThemeColor(_themeMode, BasicTextDisable));
painter->setBrush(option->state.testFlag(QStyle::State_Enabled) ? ElaThemeColor(_themeMode, BasicText)
: ElaThemeColor(_themeMode, BasicTextDisable));
// 左三角
int sideLength = 10;
QRect indicatorRect = option->rect;
int sideLength = 10;
QRect indicatorRect = option->rect;
QPainterPath path;
path.moveTo(indicatorRect.center().x() - qCos(30 * M_PI / 180.0) * sideLength / 2, indicatorRect.center().y());
path.lineTo(indicatorRect.center().x() + qCos(30 * M_PI / 180.0) * sideLength / 2, indicatorRect.center().y() - sideLength / 2);
@@ -67,15 +54,15 @@ void ElaWindowStyle::drawPrimitive(PrimitiveElement element, const QStyleOption*
painter->restore();
return;
}
case QStyle::PE_IndicatorArrowRight:
{
case QStyle::PE_IndicatorArrowRight: {
painter->save();
painter->setRenderHint(QPainter::Antialiasing);
painter->setPen(Qt::NoPen);
painter->setBrush(option->state.testFlag(QStyle::State_Enabled) ? ElaThemeColor(_themeMode, BasicText) : ElaThemeColor(_themeMode, BasicTextDisable));
painter->setBrush(option->state.testFlag(QStyle::State_Enabled) ? ElaThemeColor(_themeMode, BasicText)
: ElaThemeColor(_themeMode, BasicTextDisable));
// 右三角
int sideLength = 10;
QRect indicatorRect = option->rect;
int sideLength = 10;
QRect indicatorRect = option->rect;
QPainterPath path;
path.moveTo(indicatorRect.center().x() - qCos(30 * M_PI / 180.0) * sideLength / 2, indicatorRect.center().y() - sideLength / 2);
path.lineTo(indicatorRect.center().x() + qCos(30 * M_PI / 180.0) * sideLength / 2, indicatorRect.center().y());
@@ -85,42 +72,33 @@ void ElaWindowStyle::drawPrimitive(PrimitiveElement element, const QStyleOption*
painter->restore();
return;
}
case QStyle::PE_IndicatorTabTear:
{
case QStyle::PE_IndicatorTabTear: {
return;
}
case QStyle::PE_IndicatorDockWidgetResizeHandle:
{
case QStyle::PE_IndicatorDockWidgetResizeHandle: {
painter->save();
painter->setRenderHint(QPainter::Antialiasing);
painter->setPen(QPen(ElaThemeColor(_themeMode, BasicBaseLine), 2));
QRectF handleRect = option->rect;
if (option->state.testFlag(QStyle::State_Horizontal))
{
if (option->state.testFlag(QStyle::State_Horizontal)) {
painter->drawLine(handleRect.x(), handleRect.center().y(), handleRect.right(), handleRect.center().y());
}
else
{
} else {
painter->drawLine(handleRect.center().x(), handleRect.y(), handleRect.center().x(), handleRect.bottom());
}
painter->restore();
return;
}
default:
{
default: {
break;
}
}
QProxyStyle::drawPrimitive(element, option, painter, widget);
}
void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption* option, QPainter* painter, const QWidget* widget) const
{
void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption *option, QPainter *painter, const QWidget *widget) const {
// qDebug() << element << option->rect;
switch (element)
{
case QStyle::CE_RubberBand:
{
switch (element) {
case QStyle::CE_RubberBand: {
// 预览颜色
QRect rubberBandRect = option->rect;
painter->save();
@@ -131,47 +109,32 @@ void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption* opt
painter->restore();
return;
}
case QStyle::CE_TabBarTabShape:
{
case QStyle::CE_TabBarTabShape: {
// 背景绘制
if (const QStyleOptionTab* topt = qstyleoption_cast<const QStyleOptionTab*>(option))
{
if (const QStyleOptionTab *topt = qstyleoption_cast<const QStyleOptionTab *>(option)) {
QRect tabRect = topt->rect;
painter->save();
painter->setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing);
painter->setPen(Qt::NoPen);
if (topt->state & QStyle::State_Selected)
{
if (topt->state & QStyle::State_Sunken)
{
if (topt->state & QStyle::State_Selected) {
if (topt->state & QStyle::State_Sunken) {
// 选中时点击
painter->setBrush(ElaThemeColor(_themeMode, BasicHoverAlpha));
}
else
{
if (topt->state & QStyle::State_MouseOver)
{
} else {
if (topt->state & QStyle::State_MouseOver) {
// 选中时覆盖
painter->setBrush(ElaThemeColor(_themeMode, BasicSelectedHoverAlpha));
}
else
{
} else {
// 选中
painter->setBrush(ElaThemeColor(_themeMode, BasicSelectedAlpha));
}
}
}
else
{
if (topt->state & QStyle::State_Sunken)
{
} else {
if (topt->state & QStyle::State_Sunken) {
// 点击时颜色
painter->setBrush(ElaThemeColor(_themeMode, BasicSelectedHoverAlpha));
}
else
{
if (topt->state & QStyle::State_MouseOver)
{
} else {
if (topt->state & QStyle::State_MouseOver) {
// 覆盖时颜色
painter->setBrush(ElaThemeColor(_themeMode, BasicHoverAlpha));
}
@@ -179,8 +142,7 @@ void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption* opt
}
painter->drawRect(tabRect);
// 间隔符绘制
if (topt->position != QStyleOptionTab::End)
{
if (topt->position != QStyleOptionTab::End) {
painter->setPen(Qt::NoPen);
painter->setBrush(ElaThemeColor(_themeMode, PrimaryNormal));
painter->drawRoundedRect(QRectF(tabRect.right() - 3, tabRect.y() + 7, 3, tabRect.height() - 14), 2, 2);
@@ -189,11 +151,9 @@ void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption* opt
}
return;
}
case QStyle::CE_TabBarTabLabel:
{
case QStyle::CE_TabBarTabLabel: {
// 文字绘制
if (const QStyleOptionTab* topt = qstyleoption_cast<const QStyleOptionTab*>(option))
{
if (const QStyleOptionTab *topt = qstyleoption_cast<const QStyleOptionTab *>(option)) {
painter->save();
painter->setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing);
painter->setPen(ElaThemeColor(_themeMode, BasicText));
@@ -202,8 +162,7 @@ void ElaWindowStyle::drawControl(ControlElement element, const QStyleOption* opt
}
return;
}
default:
{
default: {
break;
}
}