filebrowser/engine/FBFileUtils.cpp
changeset 31 e7a04a6385be
parent 29 1c71b77fbc93
child 48 da3ec8478e66
equal deleted inserted replaced
30:d8e625c87f33 31:e7a04a6385be
    22 #include "FB.hrh"
    22 #include "FB.hrh"
    23 #include <filebrowser.rsg>
    23 #include <filebrowser.rsg>
    24 
    24 
    25 #include <textresolver.h> 
    25 #include <textresolver.h> 
    26 #include <eikprogi.h>
    26 #include <eikprogi.h>
    27 #include <f32file.h>
       
    28 #include <e32svr.h>
    27 #include <e32svr.h>
    29 #include <eikfutil.h>
    28 #include <eikfutil.h>
    30 #include <apparc.h>
    29 #include <apparc.h>
    31 #include <apaid.h>
    30 #include <apaid.h>
    32 #include <apaidpartner.h>
    31 #include <apaidpartner.h>
    33 #include <eikenv.h>
    32 #include <eikenv.h>
    34 #include <bautils.h>
    33 #include <bautils.h>
    35 #include <gulicon.h>
    34 #include <gulicon.h>
    36 #include <aknconsts.h>
       
    37 #include <babackup.h> 
    35 #include <babackup.h> 
    38 #include <aknmemorycardui.mbg>
    36 //#include <aknmemorycardui.mbg>
    39 #include <sendui.h>
    37 #include <sendui.h>
    40 #include <CMessageData.h>
    38 #include <CMessageData.h>
    41 #include <ezgzip.h>
    39 #include <ezgzip.h>
    42 #include <e32hal.h>
    40 #include <e32hal.h>
    43 #include <pathinfo.h>
    41 #include <pathinfo.h>
   119     iAppIconList = new(ELeave) CAppIconList(16);
   117     iAppIconList = new(ELeave) CAppIconList(16);
   120     iClipBoardList = new(ELeave) CFileEntryList(64);
   118     iClipBoardList = new(ELeave) CFileEntryList(64);
   121     iCurrentSelectionList = new(ELeave) CFileEntryList(64);
   119     iCurrentSelectionList = new(ELeave) CFileEntryList(64);
   122 
   120 
   123     iDocHandler = CDocumentHandler::NewL();
   121     iDocHandler = CDocumentHandler::NewL();
   124     iDocHandler->SetExitObserver(this);
   122 //    iDocHandler->SetExitObserver(this);
   125     
   123     
   126     // set defaults to the search settings
   124     // set defaults to the search settings
   127     iSearchAttributes.iSearchDir = KNullDesC;
   125     iSearchAttributes.iSearchDir = KNullDesC;
   128     iSearchAttributes.iWildCards = _L("*.jpg");
   126     iSearchAttributes.iWildCards = _L("*.jpg");
   129     iSearchAttributes.iTextInFile = KNullDesC;
   127     iSearchAttributes.iTextInFile = KNullDesC;
   633     {
   631     {
   634 	// TODO
   632 	// TODO
   635 
   633 
   636 //    if (iEngine->FileListContainer())
   634 //    if (iEngine->FileListContainer())
   637 //        {
   635 //        {
   638         // update navi pane text        
       
   639 //        if (iListingMode == ENormalEntries)
       
   640 //            iEngine->FileListContainer()->SetNaviPaneTextL(iCurrentPath);
       
   641 //        else if (iListingMode == ESearchResults)
       
   642 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Search results"));
       
   643 //        else if (iListingMode == EOpenFiles)
       
   644 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Open files"));
       
   645 //        else if (iListingMode == EMsgAttachmentsInbox)
       
   646 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Attachments in Inbox"));
       
   647 //        else if (iListingMode == EMsgAttachmentsDrafts)
       
   648 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Attachments in Drafts"));
       
   649 //        else if (iListingMode == EMsgAttachmentsSentItems)
       
   650 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Attachments in Sent Items"));
       
   651 //        else if (iListingMode == EMsgAttachmentsOutbox)
       
   652 //            iEngine->FileListContainer()->SetNaviPaneTextL(_L("Attachments in Outbox"));
       
   653 //
       
   654 //        // create a list box if it doesn't already exist
   636 //        // create a list box if it doesn't already exist
   655 //        if (!iEngine->FileListContainer()->ListBox())
   637 //        if (!iEngine->FileListContainer()->ListBox())
   656 //            iEngine->FileListContainer()->CreateListBoxL(iEngine->Settings().iFileViewMode);
   638 //            iEngine->FileListContainer()->CreateListBoxL(iEngine->Settings().iFileViewMode);
   657 //
   639 //
   658 //        // clear selections if any
   640 //        // clear selections if any
   681 
   663 
   682         }
   664         }
   683     
   665     
   684 // --------------------------------------------------------------------------------------------
   666 // --------------------------------------------------------------------------------------------
   685 
   667 
   686 /*CAknIconArray* CFileBrowserFileUtils::GenerateIconArrayL(TBool aGenerateNewBasicIconArray)
   668 //CAknIconArray* CFileBrowserFileUtils::GenerateIconArrayL(TBool aGenerateNewBasicIconArray)
   687     {
   669 //    {
   688 	// TODO
   670 //	// TODO
   689 	
   671 //
   690     CAknIconArray* iconArray = NULL;
   672 //    CAknIconArray* iconArray = NULL;
   691 
   673 //
   692     if (aGenerateNewBasicIconArray)
   674 //    if (aGenerateNewBasicIconArray)
   693         {
   675 //        {
   694         iconArray = new(ELeave) CAknIconArray(16);    
   676 //        iconArray = new(ELeave) CAknIconArray(16);
   695         }
   677 //        }
   696     else
   678 //    else
   697         {
   679 //        {
   698         if (iEngine->FileListContainer())
   680 //        if (iEngine->FileListContainer())
   699             iconArray = iEngine->FileListContainer()->ListBoxIconArrayL();
   681 //            iconArray = iEngine->FileListContainer()->ListBoxIconArrayL();
   700         
   682 //
   701         if (!iconArray)    
   683 //        if (!iconArray)
   702             iconArray = new(ELeave) CAknIconArray(16);
   684 //            iconArray = new(ELeave) CAknIconArray(16);
   703         }
   685 //        }
   704 
   686 //
   705         
   687 //
   706     CleanupStack::PushL(iconArray);
   688 //    CleanupStack::PushL(iconArray);
   707     
   689 //
   708     // generate basic items if not already existing
   690 //    // generate basic items if not already existing
   709     if (iconArray->Count() < EFixedIconListLength)
   691 //    if (iconArray->Count() < EFixedIconListLength)
   710         {
   692 //        {
   711         // reset arrays
   693 //        // reset arrays
   712         iconArray->Reset();
   694 //        iconArray->Reset();
   713         iAppIconList->Reset();
   695 //        iAppIconList->Reset();
   714         
   696 //
   715         // get default control color
   697 //        // get default control color
   716         TRgb defaultColor;
   698 //        TRgb defaultColor;
   717         defaultColor = iEngine->EikonEnv()->Color(EColorControlText);
   699 //        defaultColor = iEngine->EikonEnv()->Color(EColorControlText);
   718         
   700 //
   719         // create a color icon of the marking indicator
   701 //        // create a color icon of the marking indicator
   720         CFbsBitmap* markBitmap = NULL;
   702 //        CFbsBitmap* markBitmap = NULL;
   721         CFbsBitmap* markBitmapMask = NULL;
   703 //        CFbsBitmap* markBitmapMask = NULL;
   722 
   704 //
   723         AknsUtils::CreateColorIconL(AknsUtils::SkinInstance(),
   705 //        AknsUtils::CreateColorIconL(AknsUtils::SkinInstance(),
   724                 KAknsIIDQgnIndiMarkedAdd,
   706 //                KAknsIIDQgnIndiMarkedAdd,
   725                 KAknsIIDQsnIconColors,
   707 //                KAknsIIDQsnIconColors,
   726                 EAknsCIQsnIconColorsCG13,
   708 //                EAknsCIQsnIconColorsCG13,
   727                 markBitmap,
   709 //                markBitmap,
   728                 markBitmapMask,
   710 //                markBitmapMask,
   729                 AknIconUtils::AvkonIconFileName(),
   711 //                AknIconUtils::AvkonIconFileName(),
   730                 EMbmAvkonQgn_indi_marked_add,
   712 //                EMbmAvkonQgn_indi_marked_add,
   731                 EMbmAvkonQgn_indi_marked_add_mask,
   713 //                EMbmAvkonQgn_indi_marked_add_mask,
   732                 defaultColor
   714 //                defaultColor
   733                 );
   715 //                );
   734          
   716 //
   735         // 0 marking indicator
   717 //        // 0 marking indicator
   736         CGulIcon* markIcon = CGulIcon::NewL(markBitmap, markBitmapMask);
   718 //        CGulIcon* markIcon = CGulIcon::NewL(markBitmap, markBitmapMask);
   737         iconArray->AppendL(markIcon);                       
   719 //        iconArray->AppendL(markIcon);
   738 
   720 //
   739         // 1 empty
   721 //        // 1 empty
   740         AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   722 //        AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   741                                   EMbmAvkonQgn_prop_empty, EMbmAvkonQgn_prop_empty_mask, KAknsIIDQgnPropEmpty);
   723 //                                  EMbmAvkonQgn_prop_empty, EMbmAvkonQgn_prop_empty_mask, KAknsIIDQgnPropEmpty);
   742         // 2 phone memory
   724 //        // 2 phone memory
   743         AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   725 //        AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   744                                   EMbmAvkonQgn_prop_phone_memc, EMbmAvkonQgn_prop_phone_memc_mask, KAknsIIDQgnPropPhoneMemc);
   726 //                                  EMbmAvkonQgn_prop_phone_memc, EMbmAvkonQgn_prop_phone_memc_mask, KAknsIIDQgnPropPhoneMemc);
   745         // 3 memory card
   727 //        // 3 memory card
   746         AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile,
   728 //        AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile,
   747                                   EMbmAknmemorycarduiQgn_prop_mmc_memc, EMbmAknmemorycarduiQgn_prop_mmc_memc_mask, KAknsIIDQgnPropMmcMemc);
   729 //                                  EMbmAknmemorycarduiQgn_prop_mmc_memc, EMbmAknmemorycarduiQgn_prop_mmc_memc_mask, KAknsIIDQgnPropMmcMemc);
   748         // 4 memory card disabled
   730 //        // 4 memory card disabled
   749         AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile,
   731 //        AppendGulIconToIconArrayL(iconArray, KMemoryCardUiBitmapFile,
   750                                   EMbmAknmemorycarduiQgn_prop_mmc_non, EMbmAknmemorycarduiQgn_prop_mmc_non_mask, KAknsIIDQgnPropMmcNon);
   732 //                                  EMbmAknmemorycarduiQgn_prop_mmc_non, EMbmAknmemorycarduiQgn_prop_mmc_non_mask, KAknsIIDQgnPropMmcNon);
   751         // 5 folder
   733 //        // 5 folder
   752         AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   734 //        AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   753                                   EMbmAvkonQgn_prop_folder_small, EMbmAvkonQgn_prop_folder_small_mask, KAknsIIDQgnPropFolderSmall);
   735 //                                  EMbmAvkonQgn_prop_folder_small, EMbmAvkonQgn_prop_folder_small_mask, KAknsIIDQgnPropFolderSmall);
   754         // 6 folder with subfolders
   736 //        // 6 folder with subfolders
   755         AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   737 //        AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   756                                   EMbmAvkonQgn_prop_folder_sub_small, EMbmAvkonQgn_prop_folder_sub_small_mask, KAknsIIDQgnPropFolderSubSmall);
   738 //                                  EMbmAvkonQgn_prop_folder_sub_small, EMbmAvkonQgn_prop_folder_sub_small_mask, KAknsIIDQgnPropFolderSubSmall);
   757         // 7 current folder
   739 //        // 7 current folder
   758         AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   740 //        AppendGulIconToIconArrayL(iconArray, AknIconUtils::AvkonIconFileName(),
   759                                   EMbmAvkonQgn_prop_folder_current, EMbmAvkonQgn_prop_folder_current_mask, KAknsIIDQgnPropFolderCurrent);
   741 //                                  EMbmAvkonQgn_prop_folder_current, EMbmAvkonQgn_prop_folder_current_mask, KAknsIIDQgnPropFolderCurrent);
   760         }
   742 //        }
   761 
   743 //
   762     // append custom icons if not in drive list view and setting is enabled
   744 //    // append custom icons if not in drive list view and setting is enabled
   763     if (!aGenerateNewBasicIconArray && !IsDriveListViewActive() && iEngine->Settings().iShowAssociatedIcons)
   745 //    if (!aGenerateNewBasicIconArray && !IsDriveListViewActive() && iEngine->Settings().iShowAssociatedIcons)
   764         {
   746 //        {
   765         // init id counter
   747 //        // init id counter
   766         TInt idCounter(EFixedIconListLength + iAppIconList->Count());
   748 //        TInt idCounter(EFixedIconListLength + iAppIconList->Count());
   767         
   749 //
   768         // loop all items in the file list
   750 //        // loop all items in the file list
   769         for (TInt i=0; i<iFileEntryList->Count(); i++)
   751 //        for (TInt i=0; i<iFileEntryList->Count(); i++)
   770             {
   752 //            {
   771             TFileEntry& fileEntry = iFileEntryList->At(i);
   753 //            TFileEntry& fileEntry = iFileEntryList->At(i);
   772 
   754 //
   773             // just check for normal files            
   755 //            // just check for normal files
   774             if (!fileEntry.iEntry.IsDir())     
   756 //            if (!fileEntry.iEntry.IsDir())
   775                 {
   757 //                {
   776                 TUid appUid = GetAppUid(fileEntry);
   758 //                TUid appUid = GetAppUid(fileEntry);
   777                 TInt iconId = AppIconIdForUid(appUid);
   759 //                TInt iconId = AppIconIdForUid(appUid);
   778                 
   760 //
   779                 if (appUid != KNullUid && iconId == KErrNotFound)
   761 //                if (appUid != KNullUid && iconId == KErrNotFound)
   780                     {
   762 //                    {
   781                     // icon not found from the icon array, generate it
   763 //                    // icon not found from the icon array, generate it
   782                     CFbsBitmap* bitmap = NULL;
   764 //                    CFbsBitmap* bitmap = NULL;
   783                     CFbsBitmap* mask = NULL;
   765 //                    CFbsBitmap* mask = NULL;
   784                     CGulIcon* appIcon = NULL;
   766 //                    CGulIcon* appIcon = NULL;
   785         
   767 //
   786                     TRAPD(err, 
   768 //                    TRAPD(err,
   787                         AknsUtils::CreateAppIconLC(AknsUtils::SkinInstance(), appUid, EAknsAppIconTypeList, bitmap, mask);
   769 //                        AknsUtils::CreateAppIconLC(AknsUtils::SkinInstance(), appUid, EAknsAppIconTypeList, bitmap, mask);
   788                         appIcon = CGulIcon::NewL(bitmap, mask);
   770 //                        appIcon = CGulIcon::NewL(bitmap, mask);
   789                         CleanupStack::Pop(2); //bitmap, mask
   771 //                        CleanupStack::Pop(2); //bitmap, mask
   790                         );
   772 //                        );
   791                          
   773 //
   792                     if (err == KErrNone)
   774 //                    if (err == KErrNone)
   793                         {
   775 //                        {
   794                         TAppIcon appIconEntry;
   776 //                        TAppIcon appIconEntry;
   795                         appIconEntry.iId = idCounter;
   777 //                        appIconEntry.iId = idCounter;
   796                         appIconEntry.iUid = appUid;
   778 //                        appIconEntry.iUid = appUid;
   797                         
   779 //
   798                         appIcon->SetBitmapsOwnedExternally(EFalse);
   780 //                        appIcon->SetBitmapsOwnedExternally(EFalse);
   799                         iconArray->AppendL(appIcon);
   781 //                        iconArray->AppendL(appIcon);
   800                         iAppIconList->AppendL(appIconEntry);
   782 //                        iAppIconList->AppendL(appIconEntry);
   801 
   783 //
   802                         fileEntry.iIconId = idCounter;
   784 //                        fileEntry.iIconId = idCounter;
   803                                                 
   785 //
   804                         idCounter++;      
   786 //                        idCounter++;
   805                         }
   787 //                        }
   806                     else
   788 //                    else
   807                         {
   789 //                        {
   808                         delete bitmap;
   790 //                        delete bitmap;
   809                         delete mask;
   791 //                        delete mask;
   810 		
   792 //
   811                         TAppIcon appIconEntry;
   793 //                        TAppIcon appIconEntry;
   812                         appIconEntry.iId = EFixedIconEmpty;
   794 //                        appIconEntry.iId = EFixedIconEmpty;
   813                         appIconEntry.iUid = appUid;
   795 //                        appIconEntry.iUid = appUid;
   814                         
   796 //
   815                         iAppIconList->AppendL(appIconEntry);
   797 //                        iAppIconList->AppendL(appIconEntry);
   816                         }
   798 //                        }
   817                     }
   799 //                    }
   818 
   800 //
   819                 else if (appUid != KNullUid && iconId >= 0)
   801 //                else if (appUid != KNullUid && iconId >= 0)
   820                     {
   802 //                    {
   821                     // we already have already generated an icon for this uid, use it
   803 //                    // we already have already generated an icon for this uid, use it
   822                     fileEntry.iIconId = iconId;
   804 //                    fileEntry.iIconId = iconId;
   823                     }
   805 //                    }
   824                 }
   806 //                }
   825             }
   807 //            }
   826         }
   808 //        }
   827 
   809 //
   828     CleanupStack::Pop(); //iconArray
   810 //    CleanupStack::Pop(); //iconArray
   829 	return iconArray;
   811 //	return iconArray;
   830     
   812 //
   831 	}
   813 //	}
   832 */
   814 //
   833 // --------------------------------------------------------------------------------------------
   815 // --------------------------------------------------------------------------------------------
   834 
   816 
   835 //void CFileBrowserFileUtils::AppendGulIconToIconArrayL(CAknIconArray* aIconArray, const TDesC& aIconFile, TInt aIconId, TInt aMaskId, const TAknsItemID aAknsItemId)
   817 //void CFileBrowserFileUtils::AppendGulIconToIconArrayL(CAknIconArray* aIconArray, const TDesC& aIconFile, TInt aIconId, TInt aMaskId, const TAknsItemID aAknsItemId)
   836 //    {
   818 //    {
   837 //    CGulIcon* icon = AknsUtils::CreateGulIconL(
   819 //    CGulIcon* icon = AknsUtils::CreateGulIconL(
  1989 //    if (dlgResult)
  1971 //    if (dlgResult)
  1990 //        {
  1972 //        {
  1991 //        iEngine->EikonEnv()->BusyMsgL(_L("** Searching **"), TGulAlignment(EHCenterVTop));
  1973 //        iEngine->EikonEnv()->BusyMsgL(_L("** Searching **"), TGulAlignment(EHCenterVTop));
  1992 
  1974 
  1993 
  1975 
  1994         iEngine->FileBrowserUI()->ShowWaitDialog(_L("** Searching  **"));
  1976         iEngine->FileBrowserUI()->ShowWaitDialog(_L("Searching"));
  1995         iFileEntryList->Reset();
  1977         iFileEntryList->Reset();
  1996 
  1978 
  1997         // if search dir is empty, find from all drives
  1979         // if search dir is empty, find from all drives
  1998         if (iSearchAttributes.iSearchDir == KNullDesC)
  1980         if (iSearchAttributes.iSearchDir == KNullDesC)
  1999             {
  1981             {
  2769         //}   
  2751         //}   
  2770     }
  2752     }
  2771 	
  2753 	
  2772 // --------------------------------------------------------------------------------------------
  2754 // --------------------------------------------------------------------------------------------
  2773 
  2755 
  2774 void CFileBrowserFileUtils::HandleServerAppExit(TInt aReason)
  2756 //void CFileBrowserFileUtils::HandleServerAppExit(TInt aReason)
  2775 	{
  2757 //	{
  2776 //	if (iOpenFileService)
  2758 //	if (iOpenFileService)
  2777 //		{
  2759 //		{
  2778 //		delete iOpenFileService;
  2760 //		delete iOpenFileService;
  2779 //		iOpenFileService = NULL;
  2761 //		iOpenFileService = NULL;
  2780 //		}
  2762 //		}
  2781 	MAknServerAppExitObserver::HandleServerAppExit(aReason);
  2763 //	MAknServerAppExitObserver::HandleServerAppExit(aReason);
  2782 	}
  2764 //	}
  2783 
  2765 
  2784 // --------------------------------------------------------------------------------------------
  2766 // --------------------------------------------------------------------------------------------
  2785 
  2767 
  2786 void CFileBrowserFileUtils::OpenWithDocHandlerL(TFileName aFileName, TBool aEmbed)
  2768 void CFileBrowserFileUtils::OpenWithDocHandlerL(TFileName aFileName, TBool aEmbed)
  2787     {
  2769     {
  3153             }        
  3135             }        
  3154 
  3136 
  3155         // update view
  3137         // update view
  3156         RefreshViewL(); 
  3138         RefreshViewL(); 
  3157     
  3139     
  3158         if (err == KErrNone)    
  3140         if (err == KErrNone)
  3159             {
  3141             {
  3160             iEngine->FileBrowserUI()->ShowConfirmationNote(_L("State changed"));
  3142             iEngine->FileBrowserUI()->ShowConfirmationNote(_L("State changed"));
  3161             }
  3143             }
  3162         else    
  3144         else    
  3163             {
  3145             {
  3296     if (file.Replace(iFs, allFilesPath, EFileWrite) == KErrNone)
  3278     if (file.Replace(iFs, allFilesPath, EFileWrite) == KErrNone)
  3297         {
  3279         {
  3298         CleanupClosePushL(file);
  3280         CleanupClosePushL(file);
  3299         iFindFileEntryList->Reset();
  3281         iFindFileEntryList->Reset();
  3300         
  3282         
  3301         iEngine->FileBrowserUI()->ShowWaitDialog(_L("** Generating **"));
  3283         iEngine->FileBrowserUI()->ShowWaitDialog(_L("Generating"));
  3302         
  3284         
  3303         for (TInt i=0; i<iDriveEntryList->Count(); i++)
  3285         for (TInt i=0; i<iDriveEntryList->Count(); i++)
  3304             {
  3286             {
  3305             TDriveEntry driveEntry = iDriveEntryList->At(i);
  3287             TDriveEntry driveEntry = iDriveEntryList->At(i);
  3306 
  3288 
  3321             {
  3303             {
  3322             TFileEntry fileEntry = iFindFileEntryList->At(i);
  3304             TFileEntry fileEntry = iFindFileEntryList->At(i);
  3323             
  3305             
  3324             writeBuf.Copy(fileEntry.iPath);
  3306             writeBuf.Copy(fileEntry.iPath);
  3325             writeBuf.Append(fileEntry.iEntry.iName);
  3307             writeBuf.Append(fileEntry.iEntry.iName);
  3326             writeBuf.Append(_L(" - "));
  3308             writeBuf.Append(_L(","));
  3327             writeBuf.AppendNum(fileEntry.iEntry.iSize);
  3309             writeBuf.AppendNum(fileEntry.iEntry.iSize);
  3328             writeBuf.Append(_L(" B"));
  3310             writeBuf.Append(_L(" B"));
       
  3311 
       
  3312 //            // date
       
  3313 //            TTime entryModified = fileEntry.iEntry.iModified;
       
  3314 //            // convert from universal time
       
  3315 //            if ( iTz.ConvertToLocalTime( entryModified ) == KErrNone )
       
  3316 //                {
       
  3317 //                entryModified = fileEntry.iEntry.iModified; // use universal time
       
  3318 //                }
       
  3319 //
       
  3320 //            _LIT(KDateFormat,               "%D%M%Y%/0%1%/1%2%/2%3%/3");
       
  3321 //            TBuf<32> dateBuf;
       
  3322 //            entryModified.FormatL(dateBuf, KDateFormat);
       
  3323 //            writeBuf.Append(dateBuf);
       
  3324 //
       
  3325 //            writeBuf.Append(_L(" "));
       
  3326 //            // time
       
  3327 //            _LIT(KTimeFormat, "%-B%:0%J%:1%T%:2%S%:3%+B");
       
  3328 //            TBuf<32> timeBuf;
       
  3329 //            entryModified.FormatL(timeBuf, KTimeFormat);
       
  3330 //            writeBuf.Append(timeBuf);
       
  3331 //
  3329             writeBuf.Append(KFileNewLine);
  3332             writeBuf.Append(KFileNewLine);
  3330             file.Write(writeBuf);
  3333             file.Write(writeBuf);
  3331             }
  3334             }
  3332         
  3335         
  3333         iEngine->FileBrowserUI()->CancelWaitDialog();
  3336         iEngine->FileBrowserUI()->CancelWaitDialog();
  3337         
  3340         
  3338         _LIT(KMessage, "File list written to %S");
  3341         _LIT(KMessage, "File list written to %S");
  3339         TFileName noteMsg;
  3342         TFileName noteMsg;
  3340         noteMsg.Format(KMessage, &allFilesPath);
  3343         noteMsg.Format(KMessage, &allFilesPath);
  3341 
  3344 
  3342         iEngine->FileBrowserUI()->ShowConfirmationNote(noteMsg, ETrue); // NoTimeout
  3345         iEngine->FileBrowserUI()->ShowConfirmationNote(noteMsg, EFalse); // NoTimeout
  3343         }
  3346         }
  3344     else
  3347     else
  3345         {
  3348         {
  3346         _LIT(KMessage, "Failed writing to %S");
  3349         _LIT(KMessage, "Failed writing to %S");
  3347         TFileName noteMsg;
  3350         TFileName noteMsg;