X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fuisupport%2Fclearablelineedit.cpp;h=11d6239aa651bb2baddd336d988674056b79ca52;hp=0ba26d5c380f12d5dbaa1cab64d6b6689664e9ad;hb=4a5065255e652dd0c301bac0db41b7afb777ef49;hpb=2684aa5295d12e4f7c66b3011fc8b1819f3d1cbb diff --git a/src/uisupport/clearablelineedit.cpp b/src/uisupport/clearablelineedit.cpp index 0ba26d5c..11d6239a 100644 --- a/src/uisupport/clearablelineedit.cpp +++ b/src/uisupport/clearablelineedit.cpp @@ -1,5 +1,5 @@ /*************************************************************************** - * Copyright (C) 2005/06 by the Quassel Project * + * Copyright (C) 2005-2013 by the Quassel Project * * devel@quassel-irc.org * * * * This program is free software; you can redistribute it and/or modify * @@ -15,7 +15,7 @@ * You should have received a copy of the GNU General Public License * * along with this program; if not, write to the * * Free Software Foundation, Inc., * - * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. * ***************************************************************************/ #include "clearablelineedit.h" @@ -23,34 +23,40 @@ #include #include +#include "iconloader.h" + ClearableLineEdit::ClearableLineEdit(QWidget *parent) - : QLineEdit(parent) + : QLineEdit(parent) { - clearButton = new QToolButton(this); - clearButton->setIcon(QIcon(":/22x22/actions/oxygen/22x22/actions/edit-clear-locationbar-rtl.png")); + clearButton = new QToolButton(this); + clearButton->setIcon(SmallIcon("edit-clear-locationbar-rtl")); #ifndef Q_WS_QWS - clearButton->setCursor(Qt::ArrowCursor); + clearButton->setCursor(Qt::ArrowCursor); #endif - clearButton->setStyleSheet("QToolButton { border: none; padding: 0px; }"); - clearButton->hide(); - - connect(clearButton, SIGNAL(clicked()), this, SLOT(clear())); - connect(this, SIGNAL(textChanged(const QString&)), this, SLOT(updateClearButton(const QString&))); - - int frameWidth = style()->pixelMetric(QStyle::PM_DefaultFrameWidth); - setStyleSheet(QString("QLineEdit { padding-right: %1px; } ").arg(clearButton->sizeHint().width() + frameWidth + 1)); - QSize msz = minimumSizeHint(); - setMinimumSize(qMax(msz.width(), clearButton->sizeHint().height() + frameWidth * 2 + 2), - qMax(msz.height(), clearButton->sizeHint().height() + frameWidth * 2 + 2)); + clearButton->setStyleSheet("QToolButton { border: none; padding: 0px; }"); + clearButton->hide(); + + connect(clearButton, SIGNAL(clicked()), this, SLOT(clear())); + connect(this, SIGNAL(textChanged(const QString &)), this, SLOT(updateClearButton(const QString &))); + + int frameWidth = style()->pixelMetric(QStyle::PM_DefaultFrameWidth); + setStyleSheet(QString("QLineEdit { padding-right: %1px; } ").arg(clearButton->sizeHint().width() + frameWidth + 1)); + QSize msz = minimumSizeHint(); + setMinimumSize(qMax(msz.width(), clearButton->sizeHint().height() + frameWidth * 2 + 2), + qMax(msz.height(), clearButton->sizeHint().height() + frameWidth * 2 + 2)); } -void ClearableLineEdit::resizeEvent(QResizeEvent *) { - QSize size = clearButton->sizeHint(); - int frameWidth = style()->pixelMetric(QStyle::PM_DefaultFrameWidth); - clearButton->move(rect().right() - frameWidth - size.width(), - (rect().bottom() + 1 - size.height())/2); + +void ClearableLineEdit::resizeEvent(QResizeEvent *) +{ + QSize size = clearButton->sizeHint(); + int frameWidth = style()->pixelMetric(QStyle::PM_DefaultFrameWidth); + clearButton->move(rect().right() - frameWidth - size.width(), + (rect().bottom() + 1 - size.height())/2); } -void ClearableLineEdit::updateClearButton(const QString& text) { - clearButton->setVisible(!text.isEmpty()); + +void ClearableLineEdit::updateClearButton(const QString &text) +{ + clearButton->setVisible(!text.isEmpty()); }