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,148 +7,114 @@
#include "ElaTheme.h"
#include "private/ElaToggleSwitchPrivate.h"
ElaToggleSwitch::ElaToggleSwitch(QWidget* parent)
: QWidget{parent}, d_ptr(new ElaToggleSwitchPrivate())
{
ElaToggleSwitch::ElaToggleSwitch(QWidget *parent) : QWidget{parent}, d_ptr(new ElaToggleSwitchPrivate()) {
Q_D(ElaToggleSwitch);
d->q_ptr = this;
setObjectName("ElaToggleSwitch");
setMouseTracking(true);
setFixedSize(44, 22);
d->_circleCenterX = -1;
d->_isToggled = false;
d->_themeMode = eTheme->getThemeMode();
d->_isToggled = false;
d->_themeMode = eTheme->getThemeMode();
setProperty("circleCenterX", 0.01);
setProperty("circleRadius", 0.01);
connect(eTheme, &ElaTheme::themeModeChanged, this, [=](ElaThemeType::ThemeMode themeMode) {
d->_themeMode = themeMode;
});
connect(eTheme, &ElaTheme::themeModeChanged, this, [=](ElaThemeType::ThemeMode themeMode) { d->_themeMode = themeMode; });
}
ElaToggleSwitch::~ElaToggleSwitch()
{
}
ElaToggleSwitch::~ElaToggleSwitch() {}
void ElaToggleSwitch::setIsToggled(bool isToggled)
{
void ElaToggleSwitch::setIsToggled(bool isToggled) {
Q_D(ElaToggleSwitch);
if (d->_isToggled == isToggled)
{
if (d->_isToggled == isToggled) {
return;
}
if (d->_isToggled)
{
if (d->_isToggled) {
d->_startPosAnimation(width() - height() / 2 - d->_margin * 2, height() / 2, isToggled);
}
else
{
} else {
d->_startPosAnimation(height() / 2, width() - height() / 2 - d->_margin * 2, isToggled);
}
}
bool ElaToggleSwitch::getIsToggled() const
{
return d_ptr->_isToggled;
}
bool ElaToggleSwitch::getIsToggled() const { return d_ptr->_isToggled; }
bool ElaToggleSwitch::event(QEvent* event)
{
bool ElaToggleSwitch::event(QEvent *event) {
Q_D(ElaToggleSwitch);
switch (event->type())
{
case QEvent::Enter:
{
if (isEnabled())
{
switch (event->type()) {
case QEvent::Enter: {
if (isEnabled()) {
d->_startRadiusAnimation(height() * 0.3, height() * 0.35);
}
break;
}
case QEvent::Leave:
{
if (isEnabled())
{
case QEvent::Leave: {
if (isEnabled()) {
d->_startRadiusAnimation(height() * 0.35, height() * 0.3);
}
break;
}
case QEvent::MouseMove:
{
case QEvent::MouseMove: {
update();
break;
}
default:
{
default: {
break;
}
}
return QWidget::event(event);
}
void ElaToggleSwitch::mousePressEvent(QMouseEvent* event)
{
void ElaToggleSwitch::mousePressEvent(QMouseEvent *event) {
Q_D(ElaToggleSwitch);
d->_adjustCircleCenterX();
d->_isLeftButtonPress = true;
d->_lastMouseX = event->pos().x();
d->_lastMouseX = event->pos().x();
d->_startRadiusAnimation(d->_circleRadius, height() * 0.25);
QWidget::mousePressEvent(event);
}
void ElaToggleSwitch::mouseReleaseEvent(QMouseEvent* event)
{
void ElaToggleSwitch::mouseReleaseEvent(QMouseEvent *event) {
Q_D(ElaToggleSwitch);
d->_isLeftButtonPress = false;
QWidget::mouseReleaseEvent(event);
if (d->_isMousePressMove)
{
if (d->_isMousePressMove) {
d->_isMousePressMove = false;
if (d->_circleCenterX > width() / 2)
{
if (d->_circleCenterX > width() / 2) {
d->_startPosAnimation(d->_circleCenterX, width() - height() / 2 - d->_margin * 2, true);
}
else
{
} else {
d->_startPosAnimation(d->_circleCenterX, height() / 2, false);
}
}
else
{
if (d->_isToggled)
{
} else {
if (d->_isToggled) {
d->_startPosAnimation(d->_circleCenterX, height() / 2, false);
}
else
{
} else {
d->_startPosAnimation(d->_circleCenterX, width() - height() / 2 - d->_margin * 2, true);
}
}
d->_startRadiusAnimation(height() * 0.25, height() * 0.35);
}
void ElaToggleSwitch::mouseMoveEvent(QMouseEvent* event)
{
void ElaToggleSwitch::mouseMoveEvent(QMouseEvent *event) {
Q_D(ElaToggleSwitch);
if (d->_isLeftButtonPress)
{
if (d->_isLeftButtonPress) {
d->_isMousePressMove = true;
int moveX = event->pos().x() - d->_lastMouseX;
d->_lastMouseX = event->pos().x();
int moveX = event->pos().x() - d->_lastMouseX;
d->_lastMouseX = event->pos().x();
d->_circleCenterX += moveX;
d->_adjustCircleCenterX();
}
QWidget::mouseMoveEvent(event);
}
void ElaToggleSwitch::paintEvent(QPaintEvent* event)
{
void ElaToggleSwitch::paintEvent(QPaintEvent *event) {
Q_D(ElaToggleSwitch);
QPainter painter(this);
painter.save();
painter.setRenderHints(QPainter::Antialiasing | QPainter::TextAntialiasing);
// 背景绘制
painter.setPen(d->_isToggled ? QPen(ElaThemeColor(d->_themeMode, BasicBorder), 1.5) : QPen(ElaThemeColor(d->_themeMode, BasicBorderDeep), 1.5));
painter.setBrush(isEnabled() ? d->_isToggled ? ElaThemeColor(d->_themeMode, PrimaryNormal) : (underMouse() ? ElaThemeColor(d->_themeMode, BasicHover) : ElaThemeColor(d->_themeMode, BasicBase)) : ElaThemeColor(d->_themeMode, BasicDisable));
painter.setBrush(isEnabled() ? d->_isToggled ? ElaThemeColor(d->_themeMode, PrimaryNormal)
: (underMouse() ? ElaThemeColor(d->_themeMode, BasicHover) : ElaThemeColor(d->_themeMode, BasicBase))
: ElaThemeColor(d->_themeMode, BasicDisable));
QPainterPath path;
path.moveTo(width() - height() - d->_margin, height() - d->_margin);
path.arcTo(QRectF(QPointF(width() - height() - d->_margin, d->_margin), QSize(height() - d->_margin * 2, height() - d->_margin * 2)), -90, 180);
@@ -160,19 +126,16 @@ void ElaToggleSwitch::paintEvent(QPaintEvent* event)
// 圆心绘制
painter.setPen(Qt::NoPen);
painter.setBrush(isEnabled() ? d->_isToggled ? ElaThemeColor(d->_themeMode, BasicTextInvert) : ElaThemeColor(d->_themeMode, ToggleSwitchNoToggledCenter) : ElaThemeColor(d->_themeMode, BasicTextDisable));
if (d->_circleRadius == 0)
{
painter.setBrush(isEnabled()
? d->_isToggled ? ElaThemeColor(d->_themeMode, BasicTextInvert) : ElaThemeColor(d->_themeMode, ToggleSwitchNoToggledCenter)
: ElaThemeColor(d->_themeMode, BasicTextDisable));
if (d->_circleRadius == 0) {
d->_circleRadius = this->isEnabled() ? (underMouse() ? height() * 0.35 : height() * 0.3) : height() * 0.3;
}
if (d->_isLeftButtonPress)
{
if (d->_isLeftButtonPress) {
painter.drawEllipse(QPointF(d->_circleCenterX, height() / 2), d->_circleRadius, d->_circleRadius);
}
else
{
if (d->_circleCenterX == -1)
{
} else {
if (d->_circleCenterX == -1) {
d->_circleCenterX = d->_isToggled ? width() - height() / 2 - d->_margin * 2 : height() / 2;
}
painter.drawEllipse(QPointF(d->_circleCenterX, height() / 2), d->_circleRadius, d->_circleRadius);