Skip to content

Commit

Permalink
tableview;
Browse files Browse the repository at this point in the history
clang-tidy;
  • Loading branch information
RealChuan committed Jul 5, 2023
1 parent a6c0106 commit fe7a7ad
Show file tree
Hide file tree
Showing 177 changed files with 2,012 additions and 1,570 deletions.
60 changes: 60 additions & 0 deletions .clang-tidy
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
Checks: '-*,clang-analyzer-*,readability-*,performance-*,modernize-*,bugprone-*,cert-,cppcoreguidelines-,portability-*,llvm-*,google-*'
WarningsAsErrors: ''
HeaderFilterRegex: '.'
AnalyzeTemporaryDtors: false
FormatStyle: file
User: user
CheckOptions:
- key: readability-identifier-naming.AbstractClassCase
value: CamelCase
- key: readability-identifier-naming.ClassCase
value: CamelCase
- key: readability-identifier-naming.ClassConstantCase
value: UPPER_CASE
- key: readability-identifier-naming.ClassConstantPrefix
value: 'k'
- key: readability-identifier-naming.ClassMemberCase
value: lower_case
- key: readability-identifier-naming.ClassMemberPrefix
value: 'm_'
- key: readability-identifier-naming.ClassMethodCase
value: camelBack
- key: readability-identifier-naming.ConstexprVariableCase
value: UPPER_CASE
- key: readability-identifier-naming.ConstexprVariablePrefix
value: 'k'
- key: readability-identifier-naming.EnumCase
value: CamelCase
- key: readability-identifier-naming.EnumConstantCase
value: UPPER_CASE
- key: readability-identifier-naming.EnumConstantPrefix
value: ''
- key: readability-identifier-naming.FunctionCase
value: camelBack
- key: readability-identifier-naming.FunctionParameterCase
value: lower_case
- key: readability-identifier-naming.GlobalConstantCase
value: UPPER_CASE
- key: readability-identifier-naming.GlobalConstantPrefix
value: 'k'
- key: readability-identifier-naming.GlobalFunctionCase
value: camelBack
- key: readability-identifier-naming.GlobalVariableCase
value: lower_case
- key: readability-identifier-naming.GlobalVariablePrefix
value: 'g_'
- key: readability-identifier-naming.InlineNamespaceCase
value: lower_case
- key: readability-identifier-naming.LocalConstantCase
value: UPPER_CASE
- key: readability-identifier-naming.LocalConstantPrefix
value: 'k'
- key: readability-identifier-naming.LocalVariableCase
value: lower_case
- key: readability-identifier-naming.MacroDefinitionCase
value: UPPER_CASE
- key: readability-identifier-naming.NamespaceCase
value: lower_case
- key: bugprone-narrowing-conversions.IgnoreFloatingPointPrecisionLoss
value: 'false'
40 changes: 18 additions & 22 deletions Battery/batterywidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,17 +25,15 @@ BatteryWidget::BatteryWidget(QWidget *parent)
connect(this, &BatteryWidget::valueChanged, this, &BatteryWidget::onStartAnimation);
}

BatteryWidget::~BatteryWidget()
{
}
BatteryWidget::~BatteryWidget() = default;

void BatteryWidget::setBorderColor(const QColor &color)
{
d_ptr->borderColor = color;
update();
}

QColor BatteryWidget::borderColor() const
auto BatteryWidget::borderColor() const -> QColor
{
return d_ptr->borderColor;
}
Expand All @@ -46,7 +44,7 @@ void BatteryWidget::setPowerColor(const QColor &color)
update();
}

QColor BatteryWidget::powerColor() const
auto BatteryWidget::powerColor() const -> QColor
{
return d_ptr->powerColor;
}
Expand All @@ -57,19 +55,19 @@ void BatteryWidget::setAlarmColor(const QColor &color)
update();
}

QColor BatteryWidget::alarmColor() const
auto BatteryWidget::alarmColor() const -> QColor
{
return d_ptr->alarmColor;
}

QSize BatteryWidget::sizeHint() const
auto BatteryWidget::sizeHint() const -> QSize
{
return QSize(150, 80);
return {150, 80};
}

QSize BatteryWidget::minimumSizeHint() const
auto BatteryWidget::minimumSizeHint() const -> QSize
{
return QSize(80, 45);
return {80, 45};
}

void BatteryWidget::paintEvent(QPaintEvent *event)
Expand Down Expand Up @@ -99,8 +97,9 @@ void BatteryWidget::paintEvent(QPaintEvent *event)

void BatteryWidget::onStartAnimation(const int value)
{
if (value == d_ptr->value)
if (value == d_ptr->value) {
return;
}

int start = d_ptr->value;
int end = value;
Expand All @@ -110,22 +109,20 @@ void BatteryWidget::onStartAnimation(const int value)
d_ptr->animation->start();
}

int BatteryWidget::value() const
auto BatteryWidget::value() const -> int
{
return d_ptr->value;
}

void BatteryWidget::setValue(const int value)
void BatteryWidget::setValue(int value)
{
if (value == d_ptr->value)
Q_ASSERT(value >= 0 && value <= 100);

if (value == d_ptr->value) {
return;
}

if(value < 0)
d_ptr->value = 0;
else if(value > 100)
d_ptr->value = 100;
else
d_ptr->value = value;
d_ptr->value = value;

update();
}
Expand All @@ -144,8 +141,7 @@ void BatteryWidget::drawPower(QPainter *painter, const QRectF &batteryRect, cons
double margin = qMin(width(), height()) / 50.0;
margin = qMax(margin, linew);
qreal unit = (batteryRect.width() - (margin * 2)) / 100;
QPointF topLeft(batteryRect.topLeft().x() + margin,
batteryRect.topLeft().y() + margin);
QPointF topLeft(batteryRect.topLeft().x() + margin, batteryRect.topLeft().y() + margin);
QPointF bottomRight(d_ptr->value * unit + margin + 5, batteryRect.bottomRight().y() - margin);
QRectF rect(topLeft, bottomRight);
double bgRadius = rect.height() / 30;
Expand Down
30 changes: 15 additions & 15 deletions Battery/batterywidget.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,35 +12,35 @@ class BatteryWidget : public QWidget
Q_PROPERTY(QColor alarmColor READ alarmColor WRITE setAlarmColor)
public:
explicit BatteryWidget(QWidget *parent = nullptr);
~BatteryWidget();
~BatteryWidget() override;

QSize sizeHint() const override;
QSize minimumSizeHint() const override;
[[nodiscard]] [[nodiscard]] auto sizeHint() const -> QSize override;
[[nodiscard]] [[nodiscard]] auto minimumSizeHint() const -> QSize override;

void setBorderColor(const QColor& color);
QColor borderColor() const;
void setBorderColor(const QColor &color);
[[nodiscard]] [[nodiscard]] auto borderColor() const -> QColor;

void setPowerColor(const QColor& color);
QColor powerColor() const;
void setPowerColor(const QColor &color);
[[nodiscard]] [[nodiscard]] auto powerColor() const -> QColor;

void setAlarmColor(const QColor& color);
QColor alarmColor() const;
void setAlarmColor(const QColor &color);
[[nodiscard]] [[nodiscard]] auto alarmColor() const -> QColor;

void setValue(const int value);
int value() const;
void setValue(int value);
[[nodiscard]] [[nodiscard]] auto value() const -> int;

signals:
void valueChanged(const int value);
void valueChanged(int value);

private slots:
void onStartAnimation(const int value);
void onStartAnimation(int value);

protected:
void paintEvent(QPaintEvent *event) override;

private:
void drawBorder(QPainter *painter, const QRectF &batteryRect, const double linew);
void drawPower(QPainter *painter, const QRectF &batteryRect, const double linew);
void drawBorder(QPainter *painter, const QRectF &batteryRect, double linew);
void drawPower(QPainter *painter, const QRectF &batteryRect, double linew);
void drawValue(QPainter *painter, const QRectF &batteryRect);
void drawHeader(QPainter *painter, const QRectF &batteryRect);

Expand Down
2 changes: 1 addition & 1 deletion Battery/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

#include <QApplication>

int main(int argc, char *argv[])
auto main(int argc, char *argv[]) -> int
{
QApplication a(argc, argv);
MainWindow w;
Expand Down
5 changes: 1 addition & 4 deletions Battery/mainwindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,4 @@ MainWindow::MainWindow(QWidget *parent)
resize(300, 160);
}

MainWindow::~MainWindow()
{
}

MainWindow::~MainWindow() {}
2 changes: 1 addition & 1 deletion Battery/mainwindow.h
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,6 @@ class MainWindow : public QMainWindow
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = nullptr);
~MainWindow();
~MainWindow() override;
};
#endif // MAINWINDOW_H
45 changes: 25 additions & 20 deletions BubbleWindow/bubblewidget.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@

#include <QtWidgets>

struct Triangle{
struct Triangle
{
int width = 10;
int height = 10;
BubbleWidget::Direction direct = BubbleWidget::Direction::Top;
Expand All @@ -12,17 +13,20 @@ class BubbleWidget::BubbleWidgetPrivate
{
public:
BubbleWidgetPrivate(QWidget *parent)
: owner(parent){
shadowEffect = new QGraphicsDropShadowEffect(owner);
: q_ptr(parent)
{
shadowEffect = new QGraphicsDropShadowEffect(q_ptr);
shadowEffect->setOffset(0, 0);
shadowEffect->setColor(Qt::gray);
shadowEffect->setBlurRadius(shadowWidth);
centralWidget = new QWidget(owner);
centralWidget = new QWidget(q_ptr);

pen.setWidth(2);
}
QWidget *owner;
QGraphicsDropShadowEffect* shadowEffect;

QWidget *q_ptr;

QGraphicsDropShadowEffect *shadowEffect;
QWidget *centralWidget;
Triangle triangle;

Expand All @@ -45,10 +49,7 @@ BubbleWidget::BubbleWidget(QWidget *parent)
resize(200, 100);
}

BubbleWidget::~BubbleWidget()
{

}
BubbleWidget::~BubbleWidget() {}

void BubbleWidget::setPen(const QPen &pen)
{
Expand Down Expand Up @@ -142,25 +143,28 @@ void BubbleWidget::paintEvent(QPaintEvent *)
QPainterPath drawPath;
QPolygon trianglePolygon;
QRect rect;
switch (d_ptr->triangle.direct)
{
switch (d_ptr->triangle.direct) {
case Top:
trianglePolygon << QPoint(width() / 2, d_ptr->shadowWidth);
trianglePolygon << QPoint(width() / 2 + d_ptr->triangle.width / 2,
d_ptr->triangle.height + d_ptr->shadowWidth);
trianglePolygon << QPoint(width() / 2 - d_ptr->triangle.width / 2,
d_ptr->triangle.height + d_ptr->shadowWidth);
rect = QRect(d_ptr->shadowWidth, d_ptr->triangle.height + d_ptr->shadowWidth,
rect = QRect(d_ptr->shadowWidth,
d_ptr->triangle.height + d_ptr->shadowWidth,
width() - d_ptr->shadowWidth * 2,
height() - d_ptr->shadowWidth * 2 - d_ptr->triangle.height);
drawPath.addRoundedRect(rect, d_ptr->borderRadius, d_ptr->borderRadius);
break;
case Left:
trianglePolygon << QPoint(d_ptr->shadowWidth, d_ptr->triangle.height + d_ptr->shadowWidth + d_ptr->shadowWidth);
trianglePolygon << QPoint(d_ptr->shadowWidth + d_ptr->triangle.width, d_ptr->shadowWidth + d_ptr->shadowWidth);
trianglePolygon << QPoint(d_ptr->shadowWidth,
d_ptr->triangle.height + d_ptr->shadowWidth + d_ptr->shadowWidth);
trianglePolygon << QPoint(d_ptr->shadowWidth + d_ptr->triangle.width,
d_ptr->shadowWidth + d_ptr->shadowWidth);
trianglePolygon << QPoint(d_ptr->shadowWidth + d_ptr->triangle.width,
d_ptr->triangle.height + d_ptr->shadowWidth + d_ptr->shadowWidth);
rect = QRect(d_ptr->shadowWidth + d_ptr->triangle.width, d_ptr->shadowWidth,
rect = QRect(d_ptr->shadowWidth + d_ptr->triangle.width,
d_ptr->shadowWidth,
width() - d_ptr->shadowWidth * 2 - d_ptr->triangle.width,
height() - d_ptr->shadowWidth * 2);
drawPath.addRoundedRect(rect, d_ptr->borderRadius, d_ptr->borderRadius);
Expand All @@ -172,7 +176,8 @@ void BubbleWidget::paintEvent(QPaintEvent *)
d_ptr->triangle.height + d_ptr->shadowWidth + d_ptr->shadowWidth);
trianglePolygon << QPoint(width() - d_ptr->shadowWidth,
d_ptr->triangle.height + d_ptr->shadowWidth + d_ptr->shadowWidth);
rect = QRect(d_ptr->shadowWidth, d_ptr->shadowWidth,
rect = QRect(d_ptr->shadowWidth,
d_ptr->shadowWidth,
width() - d_ptr->shadowWidth * 2 - d_ptr->triangle.width,
height() - d_ptr->shadowWidth * 2);
drawPath.addRoundedRect(rect, d_ptr->borderRadius, d_ptr->borderRadius);
Expand All @@ -184,7 +189,9 @@ void BubbleWidget::paintEvent(QPaintEvent *)
height() - d_ptr->shadowWidth - d_ptr->triangle.height);
trianglePolygon << QPoint(width() / 2 - d_ptr->triangle.width / 2,
height() - d_ptr->shadowWidth - d_ptr->triangle.height);
rect = QRect(d_ptr->shadowWidth, d_ptr->shadowWidth, width() - d_ptr->shadowWidth * 2,
rect = QRect(d_ptr->shadowWidth,
d_ptr->shadowWidth,
width() - d_ptr->shadowWidth * 2,
height() - d_ptr->shadowWidth * 2 - d_ptr->triangle.height);
drawPath.addRoundedRect(rect, d_ptr->borderRadius, d_ptr->borderRadius);
break;
Expand All @@ -193,8 +200,6 @@ void BubbleWidget::paintEvent(QPaintEvent *)
drawPath = drawPath.simplified();
painter.drawPath(drawPath);



painter.setFont(QFont("Microsoft YaHei", 11, 500));
rect = rect.adjusted(5, 5, -5, -5);
painter.drawText(rect, Qt::AlignCenter, d_ptr->text);
Expand Down
14 changes: 7 additions & 7 deletions BubbleWindow/bubblewidget.h
Original file line number Diff line number Diff line change
Expand Up @@ -7,31 +7,31 @@ class BubbleWidget : public QWidget
{
Q_OBJECT
public:
enum Direction{ Left, Right, Top, Bottom };
enum Direction { Left, Right, Top, Bottom };

explicit BubbleWidget(QWidget *parent = nullptr);
~BubbleWidget() override;

void setPen(const QPen &pen);
QPen pen() const;
[[nodiscard]] auto pen() const -> QPen;

void setBrush(const QBrush &brush);
QBrush brush() const;
[[nodiscard]] auto brush() const -> QBrush;

void setShadowWidth(qint64 width);
qint64 shadowWidth();
auto shadowWidth() -> qint64;

void setBorderRadius(qint64 radius);
qint64 borderRadius();
auto borderRadius() -> qint64;

void setText(const QString &text);
QString text() const;
[[nodiscard]] auto text() const -> QString;

// 设置小三角宽和高;
void setTriangleInfo(int width, int height);

void setDerection(Direction);
Direction direction();
auto direction() -> Direction;

void exec();

Expand Down
Loading

0 comments on commit fe7a7ad

Please sign in to comment.