summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/sysinfo/storage.cpp44
1 files changed, 23 insertions, 21 deletions
diff --git a/noncore/settings/sysinfo/storage.cpp b/noncore/settings/sysinfo/storage.cpp
index 5d6cd1b..eb157ef 100644
--- a/noncore/settings/sysinfo/storage.cpp
+++ b/noncore/settings/sysinfo/storage.cpp
@@ -27,34 +27,34 @@
#include "graph.h"
#include "storage.h"
#include <stdio.h>
#if defined(_OS_LINUX_) || defined(Q_OS_LINUX)
#include <sys/vfs.h>
#include <mntent.h>
#endif
StorageInfo::StorageInfo( QWidget *parent, const char *name )
: QWidget( parent, name )
{
- QVBoxLayout *tmpvb = new QVBoxLayout( this );
- QScrollView *sv = new QScrollView( this );
- tmpvb->addWidget( sv, 0, 0 );
- sv->setResizePolicy( QScrollView::AutoOneFit );
- sv->setFrameStyle( QFrame::NoFrame );
- container = new QWidget( sv->viewport() );
- sv->addChild( container );
+ QVBoxLayout *tmpvb = new QVBoxLayout( this );
+ QScrollView *sv = new QScrollView( this );
+ tmpvb->addWidget( sv, 0, 0 );
+ sv->setResizePolicy( QScrollView::AutoOneFit );
+ sv->setFrameStyle( QFrame::NoFrame );
+ container = new QWidget( sv->viewport() );
+ sv->addChild( container );
vb = 0x0;
- disks.setAutoDelete(TRUE);
+ disks.setAutoDelete(TRUE);
lines.setAutoDelete(TRUE);
updateMounts();
startTimer( 5000 );
}
void StorageInfo::timerEvent(QTimerEvent*)
{
updateMounts();
}
static bool isCF(const QString& m)
{
@@ -86,77 +86,79 @@ void StorageInfo::updateMounts()
FILE *mntfp = setmntent( "/etc/mtab", "r" );
QStringList curdisks;
QStringList curfs;
QStringList mountList;
QStringList fsT;
bool rebuild = FALSE;
int n=0;
if ( mntfp ) {
while ( (me = getmntent( mntfp )) != 0 ) {
QString fs = me->mnt_fsname;
if ( fs.left(7)=="/dev/hd" || fs.left(7)=="/dev/sd"
|| fs.left(8)=="/dev/mtd" || fs.left(9) == "/dev/mmcd"
- || fs.left(9) == "/dev/root" || fs.left(5) == "/ramfs" || fs.left(5) == "tmpfs" ) {
+ || fs.left(9) == "/dev/root" || fs.left(5) == "/ramfs"
+ || fs.left(5) == "tmpfs" ) {
n++;
curdisks.append(fs);
QString d = me->mnt_dir;
curfs.append(d);
QString mount = me->mnt_dir;
mountList.append(mount);
QString t = me->mnt_type;
fsT.append(t);
if ( !disks.find(d) )
rebuild = TRUE;
}
}
endmntent( mntfp );
}
if ( rebuild || n != (int)disks.count() ) {
disks.clear();
lines.clear();
delete vb;
vb = new QVBoxLayout( container/*, n > 3 ? 1 : 5*/ );
bool frst=TRUE;
- QStringList::ConstIterator it=curdisks.begin();
- QStringList::ConstIterator fsit=curfs.begin();
- QStringList::ConstIterator fsmount=mountList.begin();
- QStringList::ConstIterator fsTit=fsT.begin();
+ QStringList::ConstIterator it = curdisks.begin();
+ QStringList::ConstIterator fsit = curfs.begin();
+ QStringList::ConstIterator fsmount = mountList.begin();
+ QStringList::ConstIterator fsTit = fsT.begin();
for (; it!=curdisks.end(); ++it, ++fsit) {
if ( !frst ) {
QFrame *f = new QFrame( container );
vb->addWidget(f);
f->setFrameStyle( QFrame::HLine | QFrame::Sunken );
lines.append(f);
f->show();
} frst=FALSE;
QString humanname=*it;
if ( isCF(humanname) )
humanname = tr( "CF Card: " );
else if ( humanname == "/dev/hda1" )
humanname = tr( "Hard Disk " );
+
else if ( humanname.left(9) == "/dev/mmcd" )
humanname = tr( "SD Card " );
+
else if ( humanname.left(7) == "/dev/hd" )
humanname = tr( "Hard Disk /dev/hd " );
+
else if ( humanname.left(7) == "/dev/sd" )
humanname = tr( "SCSI Hard Disk /dev/sd " );
- else if ( humanname == "/dev/mtdblock1" || humanname == "/dev/mtdblock/1" )
- humanname = tr( "Int. Storage " );
- else if ( humanname.left(14) == "/dev/mtdblock/" )
- humanname = tr( "Int. Storage /dev/mtdblock/ " );
- else if ( humanname.left(13) == "/dev/mtdblock" )
- humanname = tr( "Int. Storage /dev/mtdblock " );
- else if ( humanname.left(9) == "/dev/root" )
- humanname = tr( "Int. Storage " );
+
+ else if ( humanname == "/dev/mtdblock1"
+ || humanname.left(13) == "/dev/mtdblock"
+ || humanname.left(9) == "/dev/root")
+ humanname = tr( "Int. Storage " );
+
else if ( humanname.left(5) == "tmpfs" )
humanname = tr( "RAM disk" );
// etc.
humanname.append( *fsmount );
humanname.append( " " );
humanname.append( *fsTit );
humanname.append( " " );
MountInfo* mi = new MountInfo( *fsit, humanname, container );
vb->addWidget(mi);
disks.insert(*fsit,mi);
mi->show();