author | llornkcor <llornkcor> | 2002-05-04 14:13:06 (UTC) |
---|---|---|
committer | llornkcor <llornkcor> | 2002-05-04 14:13:06 (UTC) |
commit | 4fe6b62e42697c68cd54ac3954ffc536e6f2c0f7 (patch) (side-by-side diff) | |
tree | 861d1cda54cb859ad88c160f12a933ae97c701d1 | |
parent | 27f8629d4e6e16e9a33410ffe650f4a6d0bb17be (diff) | |
download | opie-4fe6b62e42697c68cd54ac3954ffc536e6f2c0f7.zip opie-4fe6b62e42697c68cd54ac3954ffc536e6f2c0f7.tar.gz opie-4fe6b62e42697c68cd54ac3954ffc536e6f2c0f7.tar.bz2 |
hacked some changes for openzaurus, root fs should work, /mnt/ram shows something, but I dont know if its correct. At least it shows more than it did
-rw-r--r-- | noncore/settings/sysinfo/storage.cpp | 46 |
1 files changed, 32 insertions, 14 deletions
diff --git a/noncore/settings/sysinfo/storage.cpp b/noncore/settings/sysinfo/storage.cpp index 4e81170..0a07a3b 100644 --- a/noncore/settings/sysinfo/storage.cpp +++ b/noncore/settings/sysinfo/storage.cpp @@ -17,7 +17,7 @@ ** not clear to you. ** **********************************************************************/ - +// additions copyright 2002 by L.J. Potter #include <qlabel.h> #include <qlayout.h> #include <qtimer.h> @@ -57,8 +57,7 @@ static bool isCF(const QString& m) char devname[80]; while ( fgets( line, 1024, f ) ) { // 0 ide ide-cs 0 hda 3 0 - if ( sscanf(line,"%*d %s %*s %*s %s", devtype, devname )==2 ) - { + if ( sscanf(line,"%*d %s %*s %*s %s", devtype, devname )==2 ) { if ( QString(devtype) == "ide" && m.find(devname)>0 ) { fclose(f); return TRUE; @@ -77,18 +76,24 @@ 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(8)=="/dev/mtd" || fs.left(9) == "/dev/mmcd" + || fs.left(9) == "/dev/root" || fs.left(5) == "/ramfs") { 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; } @@ -103,6 +108,9 @@ void StorageInfo::updateMounts() bool frst=TRUE; 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( this ); @@ -113,26 +121,29 @@ void StorageInfo::updateMounts() } frst=FALSE; QString humanname=*it; if ( isCF(humanname) ) - humanname = tr("CF Card"); + humanname = tr("CF Card: "+*fsmount+" "+*fsTit+" "); else if ( humanname == "/dev/hda1" ) - humanname = tr("Hard Disk"); + humanname = tr("Hard Disk "+*fsmount+" "+*fsTit+" "); else if ( humanname.left(9) == "/dev/mmcd" ) - humanname = tr("SD Card"); + humanname = tr("SD Card "+*fsmount+" "+*fsTit+" "); else if ( humanname.left(7) == "/dev/hd" ) - humanname = tr("Hard Disk") + " " + humanname.mid(7); + humanname = tr("Hard Disk") + " " + humanname.mid(7)+" "+*fsmount+" "+*fsTit+" "; else if ( humanname.left(7) == "/dev/sd" ) - humanname = tr("SCSI Hard Disk") + " " + humanname.mid(7); + humanname = tr("SCSI Hard Disk") + " " + humanname.mid(7)+" "+*fsmount+" "+*fsTit+" "; else if ( humanname == "/dev/mtdblock1" || humanname == "/dev/mtdblock/1" ) - humanname = tr("Internal Storage"); + humanname = tr("Internal Storage "+*fsmount+" "+*fsTit+"\n"); else if ( humanname.left(14) == "/dev/mtdblock/" ) - humanname = tr("Internal Storage") + " " + humanname.mid(14); + humanname = tr("Internal Storage") + " " + humanname.mid(14)+" "+*fsmount+" "+*fsTit+" "; else if ( humanname.left(13) == "/dev/mtdblock" ) - humanname = tr("Internal Storage") + " " + humanname.mid(13); + humanname = tr("Internal Storage") + " " + humanname.mid(13)+" "+*fsmount+" "+*fsTit+" "; + else if ( humanname.left(9) == "/dev/root" ) + humanname = tr("Internal Storage "+*fsmount+" "+*fsTit+" "); // etc. MountInfo* mi = new MountInfo( *fsit, humanname, this ); vb->addWidget(mi); disks.insert(*fsit,mi); mi->show(); + fsmount++;fsTit++; } vb->addStretch(); } else { @@ -147,6 +158,7 @@ void StorageInfo::updateMounts() MountInfo::MountInfo( const QString &path, const QString &ttl, QWidget *parent, const char *name ) : QWidget( parent, name ), title(ttl) { + qDebug("new path is "+path); fs = new FileSystem( path ); QVBoxLayout *vb = new QVBoxLayout( this, 3 ); @@ -184,7 +196,7 @@ void MountInfo::updateData() long total = fs->totalBlocks() * mult / div; long avail = fs->availBlocks() * mult / div; long used = total - avail; - totalSize->setText( title + tr(" total: %1 kB").arg( total ) ); + totalSize->setText( title + tr("Total: %1 kB").arg( total ) ); data->clear(); data->addItem( tr("Used (%1 kB)").arg(used), used ); data->addItem( tr("Available (%1 kB)").arg(avail), avail ); @@ -207,9 +219,15 @@ void FileSystem::update() #if defined(_OS_LINUX_) || defined(Q_OS_LINUX) struct statfs fs; if ( !statfs( fspath.latin1(), &fs ) ) { + if( fspath.left(8) == "/mnt/ram") { //ugly hack openzaurus + blkSize = fs.f_bsize; + totalBlks = fs.f_blocks; + availBlks = fs.f_ffree; + } else { blkSize = fs.f_bsize; totalBlks = fs.f_blocks; availBlks = fs.f_bavail; + } } else { blkSize = 0; totalBlks = 0; |