mirror of
https://invent.kde.org/system/dolphin
synced 2024-09-12 12:54:29 +00:00
The space info widget now inherits KCapacityBar. Two things to check:
- Align vertically the text correctly - Minimum width of the widget (not forcing it to 200) CCMAIL: peter.penz@gmx.at svn path=/trunk/KDE/kdebase/apps/; revision=834445
This commit is contained in:
parent
08989d295c
commit
dc4827579d
|
@ -29,15 +29,12 @@
|
|||
#include <QKeyEvent>
|
||||
|
||||
StatusBarSpaceInfo::StatusBarSpaceInfo(QWidget* parent) :
|
||||
QProgressBar(parent),
|
||||
KCapacityBar(KCapacityBar::DrawTextInline, parent),
|
||||
m_gettingSize(false),
|
||||
m_foundMountPoint(false),
|
||||
m_text()
|
||||
m_foundMountPoint(false)
|
||||
{
|
||||
setMinimum(0);
|
||||
setMaximum(0);
|
||||
|
||||
setMaximumWidth(200);
|
||||
setMinimumWidth(200); // something to fix on kcapacitybar (ereslibre)
|
||||
|
||||
// Update the space information each 10 seconds. Polling is useful
|
||||
// here, as files can be deleted/added outside the scope of Dolphin.
|
||||
|
@ -56,11 +53,6 @@ void StatusBarSpaceInfo::setUrl(const KUrl& url)
|
|||
refresh();
|
||||
}
|
||||
|
||||
QString StatusBarSpaceInfo::text() const
|
||||
{
|
||||
return m_text;
|
||||
}
|
||||
|
||||
void StatusBarSpaceInfo::slotFoundMountPoint(const QString& mountPoint,
|
||||
quint64 kBSize,
|
||||
quint64 kBUsed,
|
||||
|
@ -70,13 +62,11 @@ void StatusBarSpaceInfo::slotFoundMountPoint(const QString& mountPoint,
|
|||
|
||||
m_gettingSize = false;
|
||||
m_foundMountPoint = true;
|
||||
const bool valuesChanged = (kBUsed != static_cast<quint64>(value())) ||
|
||||
(kBSize != static_cast<quint64>(maximum()));
|
||||
const bool valuesChanged = (kBUsed != static_cast<quint64>(value()));
|
||||
if (valuesChanged) {
|
||||
m_text = i18nc("@info:status Free disk space", "%1 free", KIO::convertSize(kBAvailable * 1024));
|
||||
setText(i18nc("@info:status Free disk space", "%1 free", KIO::convertSize(kBAvailable * 1024)));
|
||||
setUpdatesEnabled(false);
|
||||
setMaximum(kBSize);
|
||||
setValue(kBUsed);
|
||||
setValue((kBUsed * 100) / kBSize);
|
||||
setUpdatesEnabled(true);
|
||||
update();
|
||||
}
|
||||
|
@ -89,7 +79,7 @@ void StatusBarSpaceInfo::slotDiskFreeSpaceDone()
|
|||
}
|
||||
|
||||
m_gettingSize = false;
|
||||
m_text = i18nc("@info:status", "Unknown size");
|
||||
setText(i18nc("@info:status", "Unknown size"));
|
||||
setValue(0);
|
||||
update();
|
||||
}
|
||||
|
@ -98,7 +88,7 @@ void StatusBarSpaceInfo::refresh()
|
|||
{
|
||||
// KDiskFreeSpace is for local paths only
|
||||
if (!m_url.isLocalFile()) {
|
||||
m_text = i18nc("@info:status", "Unknown size");
|
||||
setText(i18nc("@info:status", "Unknown size"));
|
||||
setValue(0);
|
||||
update();
|
||||
return;
|
||||
|
@ -134,8 +124,7 @@ void StatusBarSpaceInfo::refresh()
|
|||
void StatusBarSpaceInfo::showGettingSizeInfo()
|
||||
{
|
||||
if (m_gettingSize) {
|
||||
m_text = i18nc("@info:status", "Getting size...");
|
||||
setMaximum(0);
|
||||
setText(i18nc("@info:status", "Getting size..."));
|
||||
update();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -24,16 +24,17 @@
|
|||
|
||||
#include <QColor>
|
||||
#include <QKeyEvent>
|
||||
#include <QProgressBar>
|
||||
#include <QString>
|
||||
|
||||
#include <kcapacitybar.h>
|
||||
|
||||
class KDiskFreeSp;
|
||||
|
||||
/**
|
||||
* @short Shows the available space for the volume represented
|
||||
* by the given URL as part of the status bar.
|
||||
*/
|
||||
class StatusBarSpaceInfo : public QProgressBar
|
||||
class StatusBarSpaceInfo : public KCapacityBar
|
||||
{
|
||||
Q_OBJECT
|
||||
|
||||
|
@ -44,9 +45,6 @@ public:
|
|||
void setUrl(const KUrl& url);
|
||||
const KUrl& url() const;
|
||||
|
||||
/** @see QProgressBar::text() */
|
||||
virtual QString text() const;
|
||||
|
||||
private slots:
|
||||
void slotFoundMountPoint(const QString& mountPoint,
|
||||
quint64 kBSize,
|
||||
|
@ -64,7 +62,6 @@ private:
|
|||
bool m_gettingSize;
|
||||
bool m_foundMountPoint;
|
||||
KUrl m_url;
|
||||
QString m_text;
|
||||
};
|
||||
|
||||
inline const KUrl& StatusBarSpaceInfo::url() const
|
||||
|
|
Loading…
Reference in a new issue