| author | Simon Howkins <simonh@symbian.org> | 
| Tue, 16 Nov 2010 11:00:04 +0000 | |
| branch | RCL_3 | 
| changeset 55 | 58ed58285a84 | 
| parent 0 | 6a9f87576119 | 
| permissions | -rw-r--r-- | 
| 0 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 1 | /* | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 2 | * Copyright (c) 2002-2006 Nokia Corporation and/or its subsidiary(-ies). | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 3 | * All rights reserved. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 4 | * This component and the accompanying materials are made available | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 5 | * under the terms of "Eclipse Public License v1.0"" | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 6 | * which accompanies this distribution, and is available | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 7 | * at the URL "http://www.eclipse.org/legal/epl-v10.html". | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 8 | * | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 9 | * Initial Contributors: | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 10 | * Nokia Corporation - initial contribution. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 11 | * | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 12 | * Contributors: | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 13 | * | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 14 | * Description: Goes through the list of given files | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 15 | * | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 16 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 17 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 18 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 19 | #ifndef CFILEMANAGERINDEXITERATOR_H | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 20 | #define CFILEMANAGERINDEXITERATOR_H | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 21 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 22 | // INCLUDES | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 23 | #include <e32base.h> | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 24 | #include "Mfilemanageritemiterator.h" | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 25 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 26 | // FORWARD DECLARATIONS | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 27 | class CFileManagerEngine; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 28 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 29 | /** | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 30 | * Goes through the given file list. Implements the | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 31 | * MFileManagerItemIterator. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 32 | * | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 33 | * @lib FileManagerEngine.lib | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 34 | * @since 2.0 | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 35 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 36 | NONSHARABLE_CLASS(CFileManagerIndexIterator) : | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 37 | public CBase, | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 38 | public MFileManagerItemIterator | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 39 |     {
 | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 40 | public: | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 41 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 42 | /** | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 43 | * Two-phased constructor. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 44 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 45 | static CFileManagerIndexIterator* NewL( | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 46 | CFileManagerEngine& aEngine, | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 47 | CArrayFixFlat< TInt >& aIndexList, | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 48 | const TDesC& aDstDir ); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 49 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 50 | /** | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 51 | * Destructor. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 52 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 53 | ~CFileManagerIndexIterator(); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 54 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 55 | public: // From MFileManagerItemIterator | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 56 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 57 | void CurrentL( | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 58 | HBufC** aSrc, HBufC** aDst, TFileManagerTypeOfItem& aItemType); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 59 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 60 | TBool NextL(); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 61 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 62 | private: | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 63 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 64 | /** | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 65 | * C++ default constructor. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 66 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 67 | CFileManagerIndexIterator( | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 68 | CFileManagerEngine& aEngine, | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 69 | CArrayFixFlat< TInt >& aIndexList, | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 70 | const TDesC& aDstDir ); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 71 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 72 | /** | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 73 | * By default Symbian 2nd phase constructor is private. | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 74 | */ | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 75 | void ConstructL(); | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 76 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 77 | private: | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 78 | // Index to currently processed item in given array | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 79 | TInt iCurrentIndex; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 80 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 81 | // To get the full path information | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 82 | CFileManagerEngine& iEngine; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 83 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 84 | // User chosen list of files | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 85 | CArrayFixFlat< TInt >& iIndexList; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 86 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 87 | // Destination directory | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 88 | const TDesC& iDstDir; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 89 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 90 | // Own: Source of the currently processed item with full path | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 91 | HBufC* iSrc; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 92 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 93 | // Own: Destination of the currently processes item with full path | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 94 | HBufC* iDst; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 95 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 96 | }; | 
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 97 | |
| 
6a9f87576119
Revision: 201001
 Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com> parents: diff
changeset | 98 | #endif // CFILEMANAGERINDEXITERATOR_H |