#define STATUSBARSPACEINFO_H
#include <kurl.h>
-#include <QtGui/QColor>
-#include <QPaintEvent>
-#include <QWidget>
+#include <QColor>
+#include <QKeyEvent>
+#include <QProgressBar>
+#include <QString>
class KDiskFreeSp;
-class QTimer;
/**
* @short Shows the available space for the volume represented
* by the given URL as part of the status bar.
*/
-class StatusBarSpaceInfo : public QWidget
+class StatusBarSpaceInfo : public QProgressBar
{
Q_OBJECT
virtual ~StatusBarSpaceInfo();
void setUrl(const KUrl& url);
- const KUrl& url() const
- {
- return m_url;
- }
+ const KUrl& url() const;
-protected:
- /** @see QWidget::paintEvent() */
- virtual void paintEvent(QPaintEvent* event);
+ /** @see QProgressBar::text() */
+ virtual QString text() const;
private slots:
- /**
- * The strange signature of this method is due to a compiler
- * bug (?). More details are given inside the class KDiskFreeSp (see
- * KDE Libs documentation).
- */
- void slotFoundMountPoint(const unsigned long& kBSize,
- const unsigned long& kBUsed,
- const unsigned long& kBAvailable,
- const QString& mountPoint);
- void showResult();
+ void slotFoundMountPoint(const QString& mountPoint,
+ quint64 kBSize,
+ quint64 kBUsed,
+ quint64 kBAvailable);
- /** Refreshs the space information for the current set URL. */
+ /** Refreshes the space information for the current set URL. */
void refresh();
-private:
- /**
- * Returns a color for the progress bar by respecting
- * the given background color \a bgColor. It is assured
- * that enough contrast is given to have a visual indication.
- */
- QColor progressColor(const QColor& bgColor) const;
+ void showGettingSizeInfo();
private:
- KUrl m_url;
bool m_gettingSize;
- unsigned long m_kBSize;
- unsigned long m_kBAvailable;
+ KUrl m_url;
+ QString m_text;
};
+inline const KUrl& StatusBarSpaceInfo::url() const
+{
+ return m_url;
+}
+
#endif