#include <QTime>
#include <QWidget>
-class KUrl;
+class QUrl;
class StatusBarSpaceInfo;
class QLabel;
class QProgressBar;
class QToolButton;
class QSlider;
class QTimer;
+class KSqueezedTextLabel;
/**
* @brief Represents the statusbar of a Dolphin view.
Q_OBJECT
public:
- DolphinStatusBar(QWidget* parent);
- virtual ~DolphinStatusBar();
+ explicit DolphinStatusBar(QWidget* parent);
+ ~DolphinStatusBar() override;
QString text() const;
/**
* Replaces the text set by setText() by the text that
- * has been set by setDefaultText(). It is assured that the previous
- * text will be shown for at least 1 second. DolphinStatusBar::text()
+ * has been set by setDefaultText(). DolphinStatusBar::text()
* will return an empty string after the reset has been done.
*/
void resetToDefaultText();
void setDefaultText(const QString& text);
QString defaultText() const;
- KUrl url() const;
+ QUrl url() const;
int zoomLevel() const;
/**
*/
void readSettings();
+ /**
+ * Refreshes the disk space information.
+ */
+ void updateSpaceInfo();
+
public slots:
void setText(const QString& text);
- void setUrl(const KUrl& url);
+ void setUrl(const QUrl& url);
void setZoomLevel(int zoomLevel);
signals:
void zoomLevelChanged(int zoomLevel);
protected:
- virtual void contextMenuEvent(QContextMenuEvent* event);
- virtual bool eventFilter(QObject* obj, QEvent* event);
+ void contextMenuEvent(QContextMenuEvent* event) override;
private slots:
void showZoomSliderToolTip(int zoomLevel);
*/
void updateLabelText();
- /**
- * Is invoked by m_resetToDefaultTextTimer and clears
- * m_text so that the default text will be shown. This
- * prevents that information-messages will be cleared
- * too fast.
- */
- void slotResetToDefaultText();
-
/**
* Updates the text of the zoom slider tooltip to show
* the currently used size.
private:
QString m_text;
QString m_defaultText;
- QLabel* m_label;
+ KSqueezedTextLabel* m_label;
StatusBarSpaceInfo* m_spaceInfo;
QSlider* m_zoomSlider;
int m_progress;
QTimer* m_showProgressBarTimer;
- QTimer* m_resetToDefaultTextTimer;
+ QTimer* m_delayUpdateTimer;
QTime m_textTimestamp;
};