From 7ae94915f72857ed4825ef6b78e4753896be28f9 Mon Sep 17 00:00:00 2001 From: Peter Penz Date: Sat, 3 Apr 2010 08:48:35 +0000 Subject: Cleanup of statusbar widgets: - Provide proper size hints instead of hiding extensions on small widths - Provide context menu, which allows to enable/disable the zoom level extension and the space info extension. Also copying the status bar text is possible (useful e. g. for error messages). BUG: 188980 svn path=/trunk/KDE/kdebase/apps/; revision=1110498 --- src/statusbar/statusbarmessagelabel.cpp | 35 +++++++++++++++++++++++++++++---- 1 file changed, 31 insertions(+), 4 deletions(-) (limited to 'src/statusbar/statusbarmessagelabel.cpp') diff --git a/src/statusbar/statusbarmessagelabel.cpp b/src/statusbar/statusbarmessagelabel.cpp index bb7c59d6a..5ebe38bf4 100644 --- a/src/statusbar/statusbarmessagelabel.cpp +++ b/src/statusbar/statusbarmessagelabel.cpp @@ -28,8 +28,8 @@ #include #include #include -#include #include +#include #include StatusBarMessageLabel::StatusBarMessageLabel(QWidget* parent) : @@ -47,7 +47,10 @@ StatusBarMessageLabel::StatusBarMessageLabel(QWidget* parent) : connect(m_timer, SIGNAL(timeout()), this, SLOT(timerDone())); - m_closeButton = new QPushButton(i18nc("@action:button", "Close"), this); + m_closeButton = new QToolButton(this); + m_closeButton->setAutoRaise(true); + m_closeButton->setIcon(KIcon("dialog-close")); + m_closeButton->setToolTip(i18nc("@info", "Close")); m_closeButton->hide(); connect(m_closeButton, SIGNAL(clicked()), this, SLOT(closeErrorMessage())); @@ -114,6 +117,26 @@ void StatusBarMessageLabel::setMessage(const QString& text, update(); } +DolphinStatusBar::Type StatusBarMessageLabel::type() const +{ + return m_type; +} + +QString StatusBarMessageLabel::text() const +{ + return m_text; +} + +void StatusBarMessageLabel::setDefaultText(const QString& text) +{ + m_defaultText = text; +} + +QString StatusBarMessageLabel::defaultText() const +{ + return m_defaultText; +} + void StatusBarMessageLabel::setMinimumTextHeight(int min) { if (min != m_minTextHeight) { @@ -125,6 +148,11 @@ void StatusBarMessageLabel::setMinimumTextHeight(int min) } } +int StatusBarMessageLabel::minimumTextHeight() const +{ + return m_minTextHeight; +} + int StatusBarMessageLabel::widthGap() const { QFontMetrics fontMetrics(font()); @@ -274,8 +302,7 @@ int StatusBarMessageLabel::availableTextWidth() const void StatusBarMessageLabel::updateCloseButtonPosition() { const int x = width() - m_closeButton->width() - BorderGap; - const int y = (height() - m_closeButton->height()) / 2; - m_closeButton->move(x, y); + m_closeButton->move(x, 0); } void StatusBarMessageLabel::closeErrorMessage() -- cgit v1.3