]> cloud.milkyroute.net Git - dolphin.git/blobdiff - src/statusbar/dolphinstatusbar.cpp
Merge remote-tracking branch 'origin/master' into frameworks
[dolphin.git] / src / statusbar / dolphinstatusbar.cpp
index 169395e633b4d8b968de1b14ae49b62d6830f7b6..5feeaa361cbc003766563d894b858bd280ea3b1b 100644 (file)
@@ -22,9 +22,9 @@
 #include "dolphin_generalsettings.h"
 
 #include <KIconLoader>
-#include <KIcon>
+#include <QIcon>
 #include <KLocale>
-#include <KMenu>
+#include <QMenu>
 #include <KVBox>
 
 #include "statusbarspaceinfo.h"
@@ -72,21 +72,21 @@ DolphinStatusBar::DolphinStatusBar(QWidget* parent) :
     m_zoomSlider->setPageStep(1);
     m_zoomSlider->setRange(ZoomLevelInfo::minimumLevel(), ZoomLevelInfo::maximumLevel());
 
-    connect(m_zoomSlider, SIGNAL(valueChanged(int)), this, SIGNAL(zoomLevelChanged(int)));
-    connect(m_zoomSlider, SIGNAL(valueChanged(int)), this, SLOT(updateZoomSliderToolTip(int)));
-    connect(m_zoomSlider, SIGNAL(sliderMoved(int)), this, SLOT(showZoomSliderToolTip(int)));
+    connect(m_zoomSlider, &QSlider::valueChanged, this, &DolphinStatusBar::zoomLevelChanged);
+    connect(m_zoomSlider, &QSlider::valueChanged, this, &DolphinStatusBar::updateZoomSliderToolTip);
+    connect(m_zoomSlider, &QSlider::sliderMoved, this, &DolphinStatusBar::showZoomSliderToolTip);
 
     // Initialize space information
     m_spaceInfo = new StatusBarSpaceInfo(this);
 
     // Initialize progress information
     m_stopButton = new QToolButton(this);
-    m_stopButton->setIcon(KIcon("process-stop"));
+    m_stopButton->setIcon(QIcon::fromTheme("process-stop"));
     m_stopButton->setAccessibleName(i18n("Stop"));
     m_stopButton->setAutoRaise(true);
     m_stopButton->setToolTip(i18nc("@tooltip", "Stop loading"));
     m_stopButton->hide();
-    connect(m_stopButton, SIGNAL(clicked()), this, SIGNAL(stopPressed()));
+    connect(m_stopButton, &QToolButton::clicked, this, &DolphinStatusBar::stopPressed);
 
     m_progressTextLabel = new QLabel(this);
     m_progressTextLabel->hide();
@@ -97,30 +97,31 @@ DolphinStatusBar::DolphinStatusBar(QWidget* parent) :
     m_showProgressBarTimer = new QTimer(this);
     m_showProgressBarTimer->setInterval(500);
     m_showProgressBarTimer->setSingleShot(true);
-    connect(m_showProgressBarTimer, SIGNAL(timeout()), this, SLOT(updateProgressInfo()));
+    connect(m_showProgressBarTimer, &QTimer::timeout, this, &DolphinStatusBar::updateProgressInfo);
 
     m_resetToDefaultTextTimer = new QTimer(this);
     m_resetToDefaultTextTimer->setInterval(ResetToDefaultTimeout);
     m_resetToDefaultTextTimer->setSingleShot(true);
-    connect(m_resetToDefaultTextTimer, SIGNAL(timeout()), this, SLOT(slotResetToDefaultText()));
+    connect(m_resetToDefaultTextTimer, &QTimer::timeout, this, &DolphinStatusBar::slotResetToDefaultText);
 
     // Initialize top layout and size policies
     const int fontHeight = QFontMetrics(m_label->font()).height();
     const int zoomSliderHeight = m_zoomSlider->minimumSizeHint().height();
     const int contentHeight = qMax(fontHeight, zoomSliderHeight);
 
+    QFontMetrics fontMetrics(m_label->font());
+
     m_label->setFixedHeight(contentHeight);
     m_label->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
 
-    m_zoomSlider->setFixedHeight(contentHeight);
-    m_zoomSlider->setMaximumWidth(150);
+    m_zoomSlider->setMaximumWidth(fontMetrics.averageCharWidth() * 25);
 
     m_spaceInfo->setFixedHeight(contentHeight);
-    m_spaceInfo->setMaximumWidth(150);
+    m_spaceInfo->setMaximumWidth(fontMetrics.averageCharWidth() * 25);
     m_spaceInfo->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Fixed);
 
     m_progressBar->setFixedHeight(contentHeight);
-    m_progressBar->setMaximumWidth(150);
+    m_progressBar->setMaximumWidth(fontMetrics.averageCharWidth() * 25);
 
     QHBoxLayout* topLayout = new QHBoxLayout(this);
     topLayout->setMargin(0);
@@ -258,7 +259,7 @@ void DolphinStatusBar::contextMenuEvent(QContextMenuEvent* event)
 {
     Q_UNUSED(event);
 
-    KMenu menu(this);
+    QMenu menu(this);
 
     QAction* showZoomSliderAction = menu.addAction(i18nc("@action:inmenu", "Show Zoom Slider"));
     showZoomSliderAction->setCheckable(true);
@@ -356,4 +357,3 @@ void DolphinStatusBar::setExtensionsVisible(bool visible)
     m_zoomSlider->setVisible(showZoomSlider);
 }
 
-#include "dolphinstatusbar.moc"