--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/filebrowser/inc/FBFileOps.h Tue Feb 02 00:17:27 2010 +0200
@@ -0,0 +1,134 @@
+/*
+* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+*
+*/
+
+
+#ifndef FILEBROWSER_FILEOPS_H
+#define FILEBROWSER_FILEOPS_H
+
+// INCLUDES
+#include <e32base.h>
+#include <f32file.h>
+#include <connect/sbeclient.h>
+
+// FORWARD DECLARATIONS
+class TFileEntry;
+class CFBFileOpClient;
+class CFileMan;
+class CFileBrowserModel;
+class CSBEClient;
+
+
+class CFileBrowserFileOps : public CBase,
+ public MFileManObserver
+ {
+private:
+ enum TRecursiveOperation
+ {
+ EFileOpInvalid = -1,
+ EFileOpCopy,
+ EFileOpMove,
+ EFileOpRename,
+ EFileOpAttribs,
+ EFileOpDelete,
+ EFileOpMkDirAll,
+ EFileOpCreateEmptyFile,
+ EFileOpEraseMBR,
+ EFileOpPartitionDrive
+ };
+public:
+ static CFileBrowserFileOps* NewL(CFileBrowserModel* aModel);
+ ~CFileBrowserFileOps();
+
+public: // From MFileManObserver
+
+ TControl NotifyFileManStarted();
+ TControl NotifyFileManOperation();
+ TControl NotifyFileManEnded();
+
+private:
+ CFileBrowserFileOps(CFileBrowserModel* aModel);
+ void ConstructL();
+
+public:
+ TInt ActivateSecureBackUpViaFileOp();
+ TInt DeActivateSecureBackUpViaFileOp();
+ TInt ActivateSecureBackUp(conn::TBURPartType aPartType=conn::EBURBackupFull, conn::TBackupIncType aBackupIncType=conn::EBackupBase);
+ TInt DeActivateSecureBackUp();
+ TInt Copy(const TFileEntry& aSourceEntry, const TDesC& aTargetFullName, TUint aSwitch=CFileMan::EOverWrite, TBool aDeleteSource=EFalse);
+ TInt Rename(const TFileEntry& aSourceEntry, const TDesC& aNew, TUint aSwitch=CFileMan::EOverWrite);
+ TInt Attribs(const TFileEntry& aSourceEntry, TUint aSetMask, TUint aClearMask, const TTime& aTime, TUint aSwitch=0);
+ TInt Delete(const TFileEntry& aSourceEntry, TUint aSwitch=0);
+ TInt MkDirAll(const TDesC& aPath, TInt aSetAtts=0, TBool aQuickOperation=EFalse);
+ TInt CreateEmptyFile(const TDesC& aName);
+ TInt DriveSnapShot(TChar aSourceDriveLetter, TChar aTargetDriveLetter);
+ TInt EraseMBR(TUint aDriveNumber);
+ TInt PartitionDrive(TUint aDriveNumber, TUint aNumberOfPartitions);
+ void CancelOp();
+
+private:
+ TInt DoFindEntries(const TDesC& aFileName, const TDesC& aPath);
+ TInt DoFindEntriesRecursiveL(const TDesC& aFileName, const TDesC& aPath);
+
+ TInt FileOpCopy(const TDesC& aSourceFullName, const TDesC& aTargetFullName, TUint aSwitch);
+ TInt DoFileOpCopy(const TDesC& aSourceFullName, const TDesC& aTargetFullName, TUint aSwitch);
+
+ TInt FileOpRename(const TDesC& aName, const TDesC& aNew, TUint aSwitch);
+ TInt DoFileOpRename(const TDesC& aName, const TDesC& aNew, TUint aSwitch);
+
+ TInt FileOpAttribs(const TDesC& aName, TUint aSetMask, TUint aClearMask, const TTime& aTime, TUint aSwitch);
+ TInt DoFileOpAttribs(const TDesC& aName, TUint aSetMask, TUint aClearMask, const TTime& aTime, TUint aSwitch);
+
+ TInt FileOpDeleteFile(const TDesC& aName, TUint aSwitch);
+ TInt DoFileOpDeleteFile(const TDesC& aName, TUint aSwitch);
+
+ TInt FileOpRmDir(const TDesC& aDirName, TUint aSwitch);
+ TInt DoFileOpRmDir(const TDesC& aDirName, TUint aSwitch);
+
+ TInt FileOpMkDirAll(const TDesC& aPath, TInt aSetAtts=0);
+ TInt DoFileOpMkDirAll(const TDesC& aPath);
+
+ TInt FileOpCreateEmptyFile(const TDesC& aName);
+ TInt DoFileOpCreateEmptyFile(const TDesC& aName);
+
+public:
+ inline TBool SecureBackUpActive() { return iSecureBackUpActive; }
+ inline TBool FileCommandActivatedSecureBackup() { return iFileCommandActivatedSecureBackup; }
+
+private:
+ TInt iRecursiveState;
+ CFileBrowserModel* iModel;
+ CFBFileOpClient* iFileOpClient;
+ CFileMan* iFileMan;
+ RFs iFs;
+ TInt iOperationError;
+ conn::CSBEClient* iSBEClient;
+ TBool iSecureBackUpActive;
+ TBool iFileCommandActivatedSecureBackup;
+
+ TFileName iBuf1;
+ TFileName iBuf2;
+ TUint iUint1;
+ TUint iUint2;
+ TUint iUint3;
+ TTime iTime1;
+ MFileManObserver::TControl iFileManObserverResult;
+ };
+
+#endif
+
+// End of File
+