From 2e9ae79dcfc0e644643d7eb05bd5640d364c1fd9 Mon Sep 17 00:00:00 2001 From: wangshaojun Date: Fri, 28 Mar 2025 10:41:42 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20DTipLabel=E6=96=87=E6=9C=AC=E9=BB=98?= =?UTF-8?q?=E8=AE=A4=E5=AF=B9=E9=BD=90=E6=96=B9=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit DTipLabel的尺寸 Log: Influence: DAlertControl Change-Id: I251400365fc6fdc29ee1cb1f11efdc81eaf2d939 --- include/widgets/dalertcontrol.h | 2 ++ include/widgets/dlineedit.h | 2 ++ src/widgets/dalertcontrol.cpp | 31 +++++++++++++++++++++++---- src/widgets/dlineedit.cpp | 12 +++++++++++ src/widgets/dtiplabel.cpp | 1 - src/widgets/private/dalertcontrol_p.h | 1 + 6 files changed, 44 insertions(+), 5 deletions(-) diff --git a/include/widgets/dalertcontrol.h b/include/widgets/dalertcontrol.h index 5e3ec8e36..1443c3eae 100644 --- a/include/widgets/dalertcontrol.h +++ b/include/widgets/dalertcontrol.h @@ -30,6 +30,8 @@ class LIBDTKWIDGETSHARED_EXPORT DAlertControl : public QObject, public DTK_CORE_ void setAlertColor(QColor c); QColor alertColor() const; QColor defaultAlertColor() const; + void setAlertAlignment(Qt::Alignment alignment); + Qt::Alignment alertAlignment() const; void setMessageAlignment(Qt::Alignment alignment); Qt::Alignment messageAlignment() const; void showAlertMessage(const QString &text, int duration = 3000); diff --git a/include/widgets/dlineedit.h b/include/widgets/dlineedit.h index 2a91e0faa..56bf80069 100644 --- a/include/widgets/dlineedit.h +++ b/include/widgets/dlineedit.h @@ -34,6 +34,8 @@ class LIBDTKWIDGETSHARED_EXPORT DLineEdit : public QWidget, public DTK_CORE_NAME bool isAlert() const; void showAlertMessage(const QString &text, int duration = 3000); void showAlertMessage(const QString &text, QWidget *follower, int duration = 3000); + void setAlertAlignment(Qt::Alignment alignment); + Qt::Alignment alertAlignment() const; void setAlertMessageAlignment(Qt::Alignment alignment); Qt::Alignment alertMessageAlignment() const; void hideAlertMessage(); diff --git a/src/widgets/dalertcontrol.cpp b/src/widgets/dalertcontrol.cpp index 40eb413ee..f33a36365 100644 --- a/src/widgets/dalertcontrol.cpp +++ b/src/widgets/dalertcontrol.cpp @@ -158,11 +158,11 @@ QColor DAlertControl::alertColor() const /*! @~english - \brief DAlertControl::setMessageAlignmentSpecify the alignment method Now only support the left, right, center, default left + \brief DAlertControl::setAlertAlignment Specify the alignment method Now only support the left, right, center, default left \note When the parameters are other, the default left \a alignment 消息对齐方式 */ -void DAlertControl::setMessageAlignment(Qt::Alignment alignment) +void DAlertControl::setAlertAlignment(Qt::Alignment alignment) { D_D(DAlertControl); d->alignment = alignment; @@ -170,14 +170,36 @@ void DAlertControl::setMessageAlignment(Qt::Alignment alignment) /*! @~english - \brief DAlertControl::messageAlignment Return to the current alarm Tooltips alignment method + \brief DAlertControl::alertAlignment Return to the current alarm Tooltips alignment method */ -Qt::Alignment DAlertControl::messageAlignment() const +Qt::Alignment DAlertControl::alertAlignment() const { D_DC(DAlertControl); return d->alignment; } +/*! +@~english + \brief DAlertControl::setMessageAlignment Specify the alignment method Now only support the left, right, center, default center + \note When the parameters are other, the default center + \a alignment 文本内容对齐方式 + */ +void DAlertControl::setMessageAlignment(Qt::Alignment alignment) +{ + D_D(DAlertControl); + d->messageAlignment = alignment; +} + +/*! +@~english + \brief DAlertControl::messageAlignment Return to the current tooltip message alignment method + */ +Qt::Alignment DAlertControl::messageAlignment() const +{ + D_DC(DAlertControl); + return d->messageAlignment; +} + /*! @~english \brief DAlertControl::showAlertMessage Display warning message @@ -216,6 +238,7 @@ void DAlertControl::showAlertMessage(const QString &text, QWidget *follower, int d->tooltip->setAccessibleName("DAlertControlAlertToolTip"); d->tooltip->setForegroundRole(DPalette::TextWarning); d->tooltip->setWordWrap(true); + d->tooltip->setAlignment(d->messageAlignment); d->frame = new DFloatingWidget; d->frame->setAccessibleName("DAlertControlFloatingWidget"); diff --git a/src/widgets/dlineedit.cpp b/src/widgets/dlineedit.cpp index ebb377e07..9e908ef0c 100644 --- a/src/widgets/dlineedit.cpp +++ b/src/widgets/dlineedit.cpp @@ -129,6 +129,18 @@ void DLineEdit::showAlertMessage(const QString &text, QWidget *follower, int dur \note When the parameter is other, the default left alignment \a alignment Message alignment */ +void DLineEdit::setAlertAlignment(Qt::Alignment alignment) +{ + D_D(DLineEdit); + d->control->setAlertAlignment(alignment); +} + +Qt::Alignment DLineEdit::alertAlignment() const +{ + D_DC(DLineEdit); + return d->control->alertAlignment(); +} + void DLineEdit::setAlertMessageAlignment(Qt::Alignment alignment) { D_D(DLineEdit); diff --git a/src/widgets/dtiplabel.cpp b/src/widgets/dtiplabel.cpp index 272b51917..21ee0e690 100644 --- a/src/widgets/dtiplabel.cpp +++ b/src/widgets/dtiplabel.cpp @@ -82,7 +82,6 @@ DTipLabelPrivate::DTipLabelPrivate(DTipLabel *q) void DTipLabelPrivate::init() { Q_Q(DTipLabel); - q->setAlignment(Qt::AlignCenter); DFontSizeManager::instance()->bind(q, DFontSizeManager::T7); } diff --git a/src/widgets/private/dalertcontrol_p.h b/src/widgets/private/dalertcontrol_p.h index 9d9370120..04233dfe8 100644 --- a/src/widgets/private/dalertcontrol_p.h +++ b/src/widgets/private/dalertcontrol_p.h @@ -27,6 +27,7 @@ class DAlertControlPrivate : public DTK_CORE_NAMESPACE::DObjectPrivate QPointer target; QColor alertColor; Qt::Alignment alignment{Qt::AlignLeft}; + Qt::Alignment messageAlignment{Qt::AlignLeft}; QTimer timer; };