From bff5100177a2e1fb4f685ce72f935484ab027203 Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Wed, 17 Jul 2013 10:38:56 +0200 Subject: Add clearButton-property to QLineEdit. Based on addAction-API. Change-Id: Ie6c3d2d728b23a85cdd80428c92ee8208ae0a65c Done-with: Kevin.Ottens@kdab.com Reviewed-by: Frederik Gladhorn --- src/widgets/widgets/qlineedit_p.cpp | 10 ++++++++++ 1 file changed, 10 insertions(+) (limited to 'src/widgets/widgets/qlineedit_p.cpp') diff --git a/src/widgets/widgets/qlineedit_p.cpp b/src/widgets/widgets/qlineedit_p.cpp index 028675f845..99d6d0b8d9 100644 --- a/src/widgets/widgets/qlineedit_p.cpp +++ b/src/widgets/widgets/qlineedit_p.cpp @@ -368,6 +368,14 @@ QSize QLineEditPrivate::iconSize() const return m_iconSize; } +QIcon QLineEditPrivate::clearButtonIcon() const +{ + Q_Q(const QLineEdit); + QStyleOptionFrameV2 styleOption; + q->initStyleOption(&styleOption); + return QIcon(q->style()->standardPixmap(QStyle::SP_LineEditClearButton, &styleOption, q)); +} + void QLineEditPrivate::positionSideWidgets() { Q_Q(QLineEdit); @@ -417,6 +425,8 @@ QWidget *QLineEditPrivate::addAction(QAction *newAction, QAction *before, QLineE QLineEditIconButton *toolButton = new QLineEditIconButton(q); toolButton->setIcon(newAction->icon()); toolButton->setOpacity(lastTextSize > 0 || !(flags & SideWidgetFadeInWithText) ? 1 : 0); + if (flags & SideWidgetClearButton) + QObject::connect(toolButton, SIGNAL(clicked()), q, SLOT(clear())); toolButton->setDefaultAction(newAction); w = toolButton; } -- cgit v1.2.3