browserui/browser/FavouritesSrc/BrowserFavouritesIncrementalDelete.cpp
changeset 51 48e827313edd
parent 37 481242ead638
child 53 f427d27b98d8
--- a/browserui/browser/FavouritesSrc/BrowserFavouritesIncrementalDelete.cpp	Tue Feb 02 00:12:41 2010 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,153 +0,0 @@
-/*
-* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of the License "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: 
-*      Implementation of CWmlBrowserFavouritesIncrementalDelete.
-*      
-*
-*/
-
-
-// INCLUDE FILES
-
-#include <AknWaitDialog.h>
-#include <favouritesdb.h>
-#include <BrowserNG.rsg>
-#include "BrowserFavouritesIncrementalDelete.h"
-#include "BrowserFavouritesModel.h"
-
-// CONSTANTS
-
-/// Granularity of the folder-contents array.
-LOCAL_D const TInt KGranularity = 4;
-
-// ================= MEMBER FUNCTIONS =======================
-
-// ---------------------------------------------------------
-// CBrowserFavouritesIncrementalDelete::NewL
-// ---------------------------------------------------------
-//
-CBrowserFavouritesIncrementalDelete*
-CBrowserFavouritesIncrementalDelete::NewL
-        (
-        CBrowserFavouritesModel& aModel,
-        CArrayFix<TInt>& aUids,
-        CArrayFix<TInt>& aNotDeletedUids,
-        TInt aPriority /*=CActive::EPriorityStandard*/
-        )
-    {
-    CBrowserFavouritesIncrementalDelete* incDel =
-        new (ELeave) CBrowserFavouritesIncrementalDelete
-        ( aModel, aUids, aNotDeletedUids, aPriority );
-    CleanupStack::PushL( incDel );
-    incDel->ConstructL();
-    CleanupStack::Pop();    // incDel
-    return incDel;
-    }
-
-// ---------------------------------------------------------
-// CBrowserFavouritesIncrementalDelete::~CBrowserFavouritesIncrementalDelete
-// ---------------------------------------------------------
-//
-CBrowserFavouritesIncrementalDelete::~CBrowserFavouritesIncrementalDelete()
-    {
-    delete iFolderContents;
-    }
-
-// ---------------------------------------------------------
-// CBrowserFavouritesIncrementalDelete::CBrowserFavouritesIncrementalDelete
-// ---------------------------------------------------------
-//
-CBrowserFavouritesIncrementalDelete::CBrowserFavouritesIncrementalDelete
-    (
-    CBrowserFavouritesModel& aModel,
-    CArrayFix<TInt>& aUids,
-    CArrayFix<TInt>& aNotDeletedUids,
-    TInt aPriority
-    )
-: CBrowserFavouritesIncrementalOp( aModel, aPriority ), iUids( &aUids ),
-  iNotDeletedUids( &aNotDeletedUids ), iFolderPending( EFalse ), iIndex( 0 )
-    {
-    }
-
-// CBrowserFavouritesIncrementalDelete::ConstructL
-// ---------------------------------------------------------
-//
-void CBrowserFavouritesIncrementalDelete::ConstructL()
-    {
-    CBrowserFavouritesIncrementalOp::ConstructL();
-    iFolderContents = new (ELeave) CArrayFixFlat<TInt>( KGranularity );
-    }
-
-// ---------------------------------------------------------
-// CBrowserFavouritesIncrementalDelete::StepL
-// ---------------------------------------------------------
-//
-TInt CBrowserFavouritesIncrementalDelete::StepL()
-    {
-    if ( iFolderContents->Count() )
-        {
-        // Deleting one item from folder.
-        (void)iModel->Database().Delete( iFolderContents->At( 0 ) );
-        iFolderContents->Delete( 0 );
-        }
-    else if ( iIndex < iUids->Count() )
-        {
-        // Still have item in the main list to delete.
-        TInt uid = iUids->At( iIndex );
-        // Check if it is a non-empty folder: get contents.
-        //
-        // The variable iFolderPending is a performance optimization: avoid
-        // querying contents of a folder twice. (If iFolderPending == ETrue,
-        // and we reach this point, that means that the last item in a folder
-        // was deleted in the last StepL. The contents of this folder were
-        // already queried).
-        if ( !iFolderPending )
-            {
-            // The contents of this folder were not queried yet: do it now.
-            iModel->Database().GetUids( *iFolderContents, uid );
-            }
-        if ( iFolderContents->Count() )
-            {
-            // Folder is not empty, do nothing now. iIndex is not incremented
-            // (deletion of this folder becomes pending) and next StepL will
-            // begin deleting the contents.
-            iFolderPending = ETrue;
-            }
-        else
-            {
-            // Deleting an empty (pending) folder or an ordinary item.
-            iFolderPending = EFalse;
-            if ( iModel->Database().Delete( uid ) != KErrNone )
-                {
-                // Error deleting.
-                iNotDeletedUids->AppendL( uid );
-                }
-            iIndex++;
-            }
-        }
-    return iUids->Count() - iIndex;
-    }
-
-// ---------------------------------------------------------
-// CBrowserFavouritesIncrementalDelete::CreateWaitNoteLC
-// ---------------------------------------------------------
-//
-void CBrowserFavouritesIncrementalDelete::CreateWaitNoteLC()
-    {
-    iWaitNote = new (ELeave) CAknWaitDialog
-        ( REINTERPRET_CAST( CEikDialog**, &iWaitNote ) );
-    iWaitNote->PrepareLC( R_WMLBROWSER_FAVOURITES_NOTE_DELETING );
-    }
-
-// End of File