filemanager/src/inc/fmutils_win.cpp
changeset 16 ada7962b4308
parent 14 1957042d8c7e
child 18 edd66bde63a4
child 25 b7bfdea70ca2
child 37 15bc28c9dd51
--- a/filemanager/src/inc/fmutils_win.cpp	Fri Apr 16 14:53:38 2010 +0300
+++ b/filemanager/src/inc/fmutils_win.cpp	Mon May 03 12:24:39 2010 +0300
@@ -35,6 +35,14 @@
     return path.left( 3 );
 }
 
+QString FmUtils::getDriveLetterFromPath( const QString &path )
+{
+	if( path.length() <3 ) {
+        return QString();
+    }
+    return path.left( 1 );
+}
+
 FmDriverInfo FmUtils::queryDriverInfo( const QString &driverName )
 {
     quint64 size = 0;
@@ -60,7 +68,12 @@
                           0,
                           0 );
 
-    return FmDriverInfo( size, freeSize, driverName, QString::fromWCharArray( &volumeName[0] ) );
+    quint32 state( 0 );
+    quint32 drvStatus = GetDriveType( (LPCWSTR)driver.constData() );
+    if ( drvStatus == DRIVE_REMOVABLE  ) {
+        state |= FmDriverInfo::EDriveRemovable;
+    }
+    return FmDriverInfo( size, freeSize, driverName, QString::fromWCharArray( &volumeName[0] ), state );
 }
 
 QString FmUtils::formatStorageSize( quint64 size )
@@ -75,7 +88,7 @@
 	    return QString::number( size / ( 1024.0 * 1024.0 * 1024.0 ), 'f', 1 ) + " GB";	    
 	}
 }
-
+/*
 quint32 FmUtils::getDriverState( const QString &driverName )
 {
     quint32 state( 0 );
@@ -96,7 +109,7 @@
     return state;
 
 }
-
+*/
 int FmUtils::removeDrivePwd( const QString &driverName,  const QString &Pwd )
 {
     Q_UNUSED( driverName );
@@ -111,6 +124,13 @@
     return 0;
 }
 
+int FmUtils::checkDrivePwd( const QString &driverName, const QString &pwd)
+{
+    Q_UNUSED( driverName );
+    Q_UNUSED( pwd );
+    return 0;
+}
+
 int FmUtils::setDrivePwd( const QString &driverName, const QString &oldPwd, const QString &newPwd)
 {
     Q_UNUSED( driverName );
@@ -127,19 +147,20 @@
 int FmUtils::renameDrive( const QString &driverName, const QString &newVolumeName)
 {
     Q_UNUSED( driverName );
-    Q_UNUSED( newVolumeName );
+    foreach( QChar ch, newVolumeName )
+    {
+        // If not alphadigit or space, return error
+        if( !ch.isLetterOrNumber() && !ch.isSpace() )
+        {
+            return FmErrBadName;
+        }   
+    }
     return 0;
 }
 
-int FmUtils::ejectDrive( const QString &driverName )
+void FmUtils::ejectDrive( const QString &driverName )
 {
     Q_UNUSED( driverName );
-    return 0;
-}
-int FmUtils::formatDrive( const QString &driverName )
-{
-    Q_UNUSED( driverName );
-    return 0;
 }
 
 QString FmUtils::getFileType( const QString &filePath  )
@@ -161,6 +182,16 @@
     return false;
 }
 
+bool FmUtils::isDrive( const QString &path )
+{
+   bool ret( false );
+   if( path.length() <= 3 && path.length() >=2 ) {
+       ret = true;
+   }
+   
+   return ret;   
+}
+
 void FmUtils::createDefaultFolders( const QString &driverName )
 {
     Q_UNUSED( driverName );
@@ -304,7 +335,7 @@
     QString volumeName = driverInfo.volumeName();
 
     if( volumeName.isEmpty() && isFillWithDefaultVolume ){
-        quint32 driveState = FmUtils::getDriverState( tempDriveName );
+        FmDriverInfo::DriveState driveState = FmUtils::queryDriverInfo( tempDriveName ).FmDriverInfo::driveState();
         if( !( driveState & FmDriverInfo::EDriveNotPresent ) ){
             if( driveState & FmDriverInfo::EDriveRemovable ) {
                 if( driveState & FmDriverInfo::EDriveMassStorage ) {
@@ -333,9 +364,9 @@
     }
 }
 
-void FmUtils::sendFiles( QList<QVariant> filePathList )
+void FmUtils::sendFiles( QStringList &filePathList )
 {
-    Q_UNUSED( filePathList );
+
 }
 
 QString FmUtils::getBurConfigPath( QString appPath )
@@ -347,3 +378,25 @@
     path = path + QString( BURCONFIGFILE );
     return path;
 }
+
+bool FmUtils::isPathEqual( const QString &pathFst, const QString &pathLast )
+{
+    QString fst( fillPathWithSplash( pathFst ) );
+    QString last( fillPathWithSplash( pathLast ) );
+    if( fst.compare( last, Qt::CaseInsensitive ) == 0 ) {
+        return true;
+    }
+    return false;
+}
+
+bool FmUtils::isDefaultFolder( const QString &folderPath  )
+{
+    Q_UNUSED( folderPath );
+    return false;
+}
+
+QString FmUtils::formatPath( const QString &path  )
+{
+    Q_UNUSED( path );
+    return false;
+}