[libraries/ktextaddons/2.1] textautogeneratetext/widgets: Use a QToolButton
Laurent Montel <[email protected]>
| Newsgroups | gmane.comp.kde.cvs |
|---|---|
| Message-ID | <[email protected]> |
Git commit 6de8522f5150e13cc37aaf20e52410c063eb1ca9 by Laurent Montel.
Committed on 17/07/2026 at 11:10.
Pushed by mlaurent into branch '2.1'.
Use a QToolButton
M +6 -3 textautogeneratetext/widgets/autotests/textautogeneratetextlineeditattachmentclickablewidgettest.cpp
M +10 -22 textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.cpp
M +0 -15 textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.h
https://invent.kde.org/libraries/ktextaddons/-/commit/6de8522f5150e13cc37aaf20e52410c063eb1ca9
diff --git a/textautogeneratetext/widgets/autotests/textautogeneratetextlineeditattachmentclickablewidgettest.cpp b/textautogeneratetext/widgets/autotests/textautogeneratetextlineeditattachmentclickablewidgettest.cpp
index 081c74521..b5eebf5e2 100644
--- a/textautogeneratetext/widgets/autotests/textautogeneratetextlineeditattachmentclickablewidgettest.cpp
+++ b/textautogeneratetext/widgets/autotests/textautogeneratetextlineeditattachmentclickablewidgettest.cpp
@@ -8,6 +8,7 @@
#include <QHBoxLayout>
#include <QLabel>
#include <QTest>
+#include <QToolButton>
using namespace Qt::Literals::StringLiterals;
QTEST_MAIN(TextAutoGenerateTextLineEditAttachmentClickableWidgetTest)
@@ -24,14 +25,16 @@ void TextAutoGenerateTextLineEditAttachmentClickableWidgetTest::shouldHaveDefaul
QVERIFY(mainLayout);
QCOMPARE(mainLayout->contentsMargins(), QMargins{});
- auto mClickableLabel = w.findChild<TextAutoGenerateText::TextAutoGenerateTextLineEditAttachmentClickableLabel *>(u"mClickableLabel"_s);
- QVERIFY(mClickableLabel);
-
auto mFileNameLabel = w.findChild<QLabel *>(u"mFileNameLabel"_s);
QVERIFY(mFileNameLabel);
auto mMimetypeLabel = w.findChild<QLabel *>(u"mMimetypeLabel"_s);
QVERIFY(mMimetypeLabel);
+
+ auto removeBtn = w.findChild<QToolButton *>(u"removeBtn"_s);
+ QVERIFY(removeBtn);
+ QVERIFY(removeBtn->autoRaise());
+ QVERIFY(!removeBtn->toolTip().isEmpty());
}
#include "moc_textautogeneratetextlineeditattachmentclickablewidgettest.cpp"
diff --git a/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.cpp b/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.cpp
index 8c1968050..0c2ae5030 100644
--- a/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.cpp
+++ b/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.cpp
@@ -11,6 +11,7 @@
#include <QFileInfo>
#include <QHBoxLayout>
#include <QMimeDatabase>
+#include <QToolButton>
using namespace TextAutoGenerateText;
using namespace Qt::Literals::StringLiterals;
@@ -47,7 +48,6 @@ TextAutoGenerateTextLineEditAttachmentClickableWidget::TextAutoGenerateTextLineE
TextAutoGenerateTextLineEditAttachmentClickableWidget::TextAutoGenerateTextLineEditAttachmentClickableWidget(QWidget *parent)
: QWidget{parent}
- , mClickableLabel(new TextAutoGenerateTextLineEditAttachmentClickableLabel(this))
, mFileNameLabel(new QLabel(this))
, mMimetypeLabel(new QLabel(this))
{
@@ -61,12 +61,15 @@ TextAutoGenerateTextLineEditAttachmentClickableWidget::TextAutoGenerateTextLineE
mFileNameLabel->setObjectName(u"mFileNameLabel"_s);
mainLayout->addWidget(mFileNameLabel);
- mClickableLabel->setObjectName(u"mClickableLabel"_s);
- mainLayout->addWidget(mClickableLabel);
- connect(mClickableLabel,
- &TextAutoGenerateTextLineEditAttachmentClickableLabel::clicked,
- this,
- &TextAutoGenerateTextLineEditAttachmentClickableWidget::slotRemove);
+ auto removeBtn = new QToolButton(this);
+ removeBtn->setObjectName(u"removeBtn"_s);
+ removeBtn->setAutoRaise(true);
+ removeBtn->setIcon(QIcon::fromTheme(u"edit-delete-remove"_s));
+ removeBtn->setFixedSize(18, 18);
+ removeBtn->setIconSize(QSize(12, 12));
+ removeBtn->setToolTip(i18nc("@info:tooltip", "Remove"));
+ mainLayout->addWidget(removeBtn);
+ connect(removeBtn, &QToolButton::clicked, this, &TextAutoGenerateTextLineEditAttachmentClickableWidget::slotRemove);
}
TextAutoGenerateTextLineEditAttachmentClickableWidget::~TextAutoGenerateTextLineEditAttachmentClickableWidget() = default;
@@ -81,19 +84,4 @@ QString TextAutoGenerateTextLineEditAttachmentClickableWidget::fileName() const
return mFileName;
}
-TextAutoGenerateTextLineEditAttachmentClickableLabel::TextAutoGenerateTextLineEditAttachmentClickableLabel(QWidget *parent)
- : QLabel(parent)
-{
- setToolTip(i18nc("@info:tooltip", "Remove"));
- setPixmap(QIcon::fromTheme(u"delete"_s).pixmap(24, 24));
-}
-
-TextAutoGenerateTextLineEditAttachmentClickableLabel::~TextAutoGenerateTextLineEditAttachmentClickableLabel() = default;
-
-void TextAutoGenerateTextLineEditAttachmentClickableLabel::mousePressEvent(QMouseEvent *event)
-{
- Q_EMIT clicked();
- QLabel::mousePressEvent(event);
-}
-
#include "moc_textautogeneratetextlineeditattachmentclickablewidget.cpp"
diff --git a/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.h b/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.h
index 193af4e0b..03aa6cbb1 100644
--- a/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.h
+++ b/textautogeneratetext/widgets/common/textautogeneratetextlineeditattachmentclickablewidget.h
@@ -11,20 +11,6 @@
namespace TextAutoGenerateText
{
-class TEXTAUTOGENERATETEXT_TESTS_EXPORT TextAutoGenerateTextLineEditAttachmentClickableLabel : public QLabel
-{
- Q_OBJECT
-public:
- explicit TextAutoGenerateTextLineEditAttachmentClickableLabel(QWidget *parent = nullptr);
- ~TextAutoGenerateTextLineEditAttachmentClickableLabel() override;
-
-Q_SIGNALS:
- void clicked();
-
-protected:
- void mousePressEvent(QMouseEvent *event) override;
-};
-
class TEXTAUTOGENERATETEXT_TESTS_EXPORT TextAutoGenerateTextLineEditAttachmentClickableWidget : public QWidget
{
Q_OBJECT
@@ -42,7 +28,6 @@ Q_SIGNALS:
private:
TEXTAUTOGENERATETEXT_NO_EXPORT void slotRemove();
QString mFileName;
- TextAutoGenerateTextLineEditAttachmentClickableLabel *const mClickableLabel;
QLabel *const mFileNameLabel;
QLabel *const mMimetypeLabel;
};