--- a/appinstaller/AppMngr2/src/appmngr2log.cpp Thu Oct 14 14:11:30 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,192 +0,0 @@
-/*
-* Copyright (c) 2002-2008 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: Shows installation log in a popup list dialog
-*
-*/
-
-
-#include "appmngr2log.h" // CAppMngr2Log
-#include "appmngr2logpopuplist.h" // CAppMngr2LogPopupList
-#include "appmngr2logdatabase.h" // CAppMngr2LogDatabase
-#include "appmngr2logdatabaseentry.h" // CAppMngr2LogDatabaseEntry
-#include <appmngr2.rsg> // Resource IDs
-#include <aknlists.h> // CAknDoublePopupMenuStyleListBox
-#include <StringLoader.h> // Stingloader
-
-const TInt KMaxNumberOfShownLogItems = 50;
-const TInt KInstDateTimeTextLength = 64;
-const TInt KInstActionTextLength = 64;
-const TInt KInstLogLineTextLen = KInstDateTimeTextLength +
- KInstActionTextLength + SwiUI::KMaxLogNameLength;
-
-// Date and action separated by " - "
-_LIT( KSeparator, " - " );
-_LIT( KVersionPrefix, " (" );
-_LIT( KVersionSuffix, ")" );
-
-
-// ======== MEMBER FUNCTIONS ========
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::CAppMngr2Log()
-// ---------------------------------------------------------------------------
-//
-CAppMngr2Log::CAppMngr2Log( CEikonEnv& aEikEnv ) : iEikEnv( aEikEnv )
- {
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::NewLC()
-// ---------------------------------------------------------------------------
-//
-CAppMngr2Log* CAppMngr2Log::NewLC()
- {
- CAppMngr2Log* self = new (ELeave) CAppMngr2Log( *( CEikonEnv::Static() ) );
- CleanupStack::PushL( self );
- return self;
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::~CAppMngr2Log()
-// ---------------------------------------------------------------------------
-//
-CAppMngr2Log::~CAppMngr2Log()
- {
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::ShowInstallationLogL()
-// ---------------------------------------------------------------------------
-//
-void CAppMngr2Log::ShowInstallationLogL()
- {
- CEikFormattedCellListBox* listBox = new (ELeave) CAknDoublePopupMenuStyleListBox;
- CleanupStack::PushL( listBox );
-
- // AppMngr version of Avkon popup list with heading
- CAppMngr2LogPopupList* popupList = CAppMngr2LogPopupList::NewL(
- listBox, R_AVKON_SOFTKEYS_OK_EMPTY__OK, AknPopupLayouts::EMenuDoubleWindow );
- CleanupStack::PushL( popupList );
-
- // Set title text
- HBufC* title = StringLoader::LoadLC( R_INST_LOG_HEADER );
- popupList->SetTitleL( *title );
- CleanupStack::PopAndDestroy( title );
-
- // Set listbox properties and create item array
- listBox->ConstructL( popupList, EAknListBoxViewerFlags );
- listBox->CreateScrollBarFrameL( ETrue );
- listBox->ScrollBarFrame()->SetScrollBarVisibilityL( CEikScrollBarFrame::EOff,
- CEikScrollBarFrame::EAuto );
- MDesCArray* itemList = listBox->Model()->ItemTextArray();
- CDesCArray* itemArray = static_cast<CDesCArray*>( itemList );
- ConstructLogArrayL( itemArray );
-
- // Set empty text
- CListBoxView* view = listBox->View();
- HBufC* emptyText = StringLoader::LoadLC( R_QTN_SWINS_LOG_EMPTY );
- view->SetListEmptyTextL( *emptyText );
- CleanupStack::PopAndDestroy( emptyText );
-
- // Lauch popup list
- popupList->ExecuteLD();
-
- CleanupStack::Pop( popupList );
- CleanupStack::PopAndDestroy( listBox );
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::ConstructLogArrayL()
-// ---------------------------------------------------------------------------
-//
-void CAppMngr2Log::ConstructLogArrayL( CDesCArray* aItemArray )
- {
- CAppMngr2LogDatabase* log = CAppMngr2LogDatabase::NewL();
- CleanupStack::PushL( log );
-
- const RPointerArray<CAppMngr2LogDatabaseEntry>& logEntries = log->Entries();
-
- // Read KMaxNumberOfShownLogItems first log entries, ignore the rest
- TInt length = logEntries.Count();
- TInt diff = length - KMaxNumberOfShownLogItems;
-
- // Add entries from the latest log item (reverse order) into item array
- for( TInt index = length - 1; index >= diff && index >= 0; index-- )
- {
- if( logEntries[ index ] )
- {
- const CAppMngr2LogDatabaseEntry& entry = *( logEntries[ index ] );
-
- HBufC* buffer = HBufC::NewMaxLC( KInstLogLineTextLen );
- TPtr listboxLine = buffer->Des();
- listboxLine.Zero();
-
- // First row in double list item contains application name
- listboxLine.Append( entry.Name() );
- listboxLine.Append( KVersionPrefix );
- listboxLine.Append( entry.Version() );
- listboxLine.Append( KVersionSuffix );
- listboxLine.Append( KColumnListSeparator );
-
- // Second row contains date and action type (install/uninstall/partial)
- SetLogDateTimeColumnL( listboxLine, entry.Time() );
- listboxLine.Append( KSeparator );
- SetLogActionTextColumnL( listboxLine, entry.Action() );
-
- aItemArray->AppendL( listboxLine );
- CleanupStack::PopAndDestroy( buffer );
- }
- }
-
- CleanupStack::PopAndDestroy( log );
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::SetLogActionTextColumnL()
-// ---------------------------------------------------------------------------
-//
-void CAppMngr2Log::SetLogActionTextColumnL( TDes& aListboxLine,
- const SwiUI::TLogTaskAction& aAction )
- {
- TBuf<KInstActionTextLength> action;
- switch( aAction )
- {
- case SwiUI::ELogTaskActionInstall:
- iEikEnv.ReadResourceL( action, R_INST_INSTALL_EVENT );
- break;
- case SwiUI::ELogTaskActionUninstall:
- iEikEnv.ReadResourceL( action, R_INST_REMOVE_EVENT );
- break;
- // no action for R_INST_PARTIAL_INSTALL_EVENT, not supported
- default:
- break;
- }
- aListboxLine.Append( action );
- }
-
-// ---------------------------------------------------------------------------
-// CAppMngr2Log::SetLogDateTimeColumnL()
-// ---------------------------------------------------------------------------
-//
-void CAppMngr2Log::SetLogDateTimeColumnL( TDes& aListboxLine,
- const TTime& aDateTime )
- {
- TBuf<KInstDateTimeTextLength> tempBuf;
- TBuf<KInstDateTimeTextLength> dateFormat;
- iEikEnv.ReadResourceL( dateFormat, R_QTN_DATE_USUAL_WITH_ZERO );
- aDateTime.FormatL( tempBuf, dateFormat );
- AknTextUtils::DisplayTextLanguageSpecificNumberConversion( tempBuf );
- aListboxLine.Append( tempBuf );
- }
-