diff -r 48060abbbeaf -r b3cee849fa46 creator/src/creator_appui.cpp --- a/creator/src/creator_appui.cpp Thu Aug 19 09:55:38 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,360 +0,0 @@ -/* -* Copyright (c) 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: -* -*/ - - - - -#include - -#include "creator.pan" -#include "creator_appui.h" -#include "creator_container.h" -#include "creator.hrh" - -#include -#include -#include -#include -#include -#include -#include -#include - -// delay before script running and application exiting in seconds -// when script is run from command line -const TInt KCommandLineDelay = 3; - -// ConstructL is called by the application framework -void CCreatorAppUi::ConstructL() - { - BaseConstructL(EAknEnableSkin); - - iAppView = CCreatorAppView::NewL(ClientRect()); - - AddToStackL(iAppView); - - iEnv=CEikonEnv::Static(); - - iEngine = CCreatorEngine::NewL(this); - - iMode = ETimerModeNone; - iTickCount = 0; - iTimer = CHeartbeat::NewL(0); - - // parse script name and random data file name from command line - iCommandLineScriptName = HBufC::NewL(User::CommandLineLength()); - iCommandLineRandomDataFileName = HBufC::NewL(User::CommandLineLength()); - HBufC* commandLine = HBufC::NewLC(User::CommandLineLength()); - TPtr16 ptr = commandLine->Des(); - User::CommandLine(ptr); - commandLine->Des().Trim(); - - TInt pos = commandLine->Des().Find(_L(" ")); - if (pos != KErrNotFound) - { - iCommandLineScriptName->Des().Copy(commandLine->Des().Left(pos)); - iCommandLineRandomDataFileName->Des().Copy(commandLine->Des().Mid(pos)); - iCommandLineRandomDataFileName->Des().Trim(); - } - else - { - iCommandLineScriptName->Des().Copy(commandLine->Des()); - iCommandLineRandomDataFileName->Des().Copy(KNullDesC); - } - - CleanupStack::PopAndDestroy(commandLine); - - if (iCommandLineScriptName->Des().Length() > 0) - { - iMode = ETimerModeStartScript; - iTimer->Start(ETwelveOClock, this); - } - } - - -CCreatorAppUi::CCreatorAppUi() - { - // add any construction that cannot leave here - } - - -CCreatorAppUi::~CCreatorAppUi() - { - - delete iCommandLineRandomDataFileName; - delete iCommandLineScriptName; - - if (iTimer) - { - iTimer->Cancel(); - delete iTimer; - iTimer = NULL; - } - - delete iEngine; - - if (iAppView) - { - RemoveFromStack(iAppView); - delete iAppView; - iAppView = NULL; - } - } - - -// handle any menu commands -void CCreatorAppUi::HandleCommandL(TInt aCommand) - { - switch(aCommand) - { - // main menus, not assigned to any commands - case ECmdCreateCalendarEntries: - case ECmdCreateBrowserEntries: - case ECmdCreateFileEntries: - case ECmdCreateLogEntries: - case ECmdCreateMessagingEntries: - case ECmdCreateMiscEntries: - case ECmdCreatePhoneBookEntries: - { - User::Panic (_L("Unused command"), 102); - } - break; - - // about - case ECmdAboutCreator: - { - CAknMessageQueryDialog* dialog = new (ELeave) CAknMessageQueryDialog; - dialog->ExecuteLD(R_CREATOR_ABOUT_DIALOG); - } - break; - - - // run script - case ECmdCreateFromFile: - { - iEngine->RunScriptL(); - } - break; - - // select random data file - case ECmdSelectRandomDataFile: - { - TFileName filename; - if (iEngine->GetRandomDataFilenameL(filename)) - { - iEngine->GetRandomDataFromFileL(filename); - } - } - break; - - - // commands: - case ECmdCreateCalendarEntryAppointments: - case ECmdCreateCalendarEntryEvents: - case ECmdCreateCalendarEntryAnniversaries: - case ECmdCreateCalendarEntryToDos: - case ECmdCreateCalendarEntryReminders: - - case ECmdCreateBrowserBookmarkEntries: - case ECmdCreateBrowserBookmarkFolderEntries: - case ECmdCreateBrowserSavedPageEntries: - case ECmdCreateBrowserSavedPageFolderEntries: - - case ECmdCreatePhoneBookEntryContacts: - case ECmdCreatePhoneBookEntryGroups: - - case ECmdCreateMiscEntryNotes: - case ECmdCreateMiscEntryLandmarks: - - case ECmdCreateLogEntryMissedCalls: - case ECmdCreateLogEntryReceivedCalls: - case ECmdCreateLogEntryDialledNumbers: - - case ECmdCreateMiscEntryAccessPoints: - case ECmdCreateMiscEntryIMPSServers: - - case ECmdCreateMessagingEntryMailboxes: - case ECmdCreateMessagingEntryMessages: - - case ECmdCreateFileEntryEmptyFolder: - case ECmdCreateFileEntry3GPP_70kB: - case ECmdCreateFileEntryAAC_100kB: - case ECmdCreateFileEntryAMR_20kB: - case ECmdCreateFileEntryBMP_25kB: - case ECmdCreateFileEntryDeck_1kB: - case ECmdCreateFileEntryDOC_20kB: - case ECmdCreateFileEntryGIF_2kB: - case ECmdCreateFileEntryHTML_20kB: - case ECmdCreateFileEntryJAD_1kB: - case ECmdCreateFileEntryJAR_10kB: - case ECmdCreateFileEntryJP2_65kB: - case ECmdCreateFileEntryJPEG_200kB: - case ECmdCreateFileEntryJPEG_25kB: - case ECmdCreateFileEntryJPEG_500kB: - case ECmdCreateFileEntryMIDI_10kB: - case ECmdCreateFileEntryMP3_250kB: - case ECmdCreateFileEntryMP4_200kB: - case ECmdCreateFileEntryMXMF_40kB: - case ECmdCreateFileEntryPNG_15kB: - case ECmdCreateFileEntryPPT_40kB: - case ECmdCreateFileEntryRAM_1kB: - case ECmdCreateFileEntryRM_95kB: - case ECmdCreateFileEntryRNG_1kB: - case ECmdCreateFileEntrySVG_15kB: - case ECmdCreateFileEntrySWF_15kB: - case ECmdCreateFileEntryTIF_25kB: - case ECmdCreateFileEntryTXT_10kB: - case ECmdCreateFileEntryTXT_70kB: - case ECmdCreateFileEntryVCF_1kB: - case ECmdCreateFileEntryVCS_1kB: - case ECmdCreateFileEntryWAV_20kB: - case ECmdCreateFileEntryXLS_15kB: - case ECmdCreateFileEntrySISX_10kB: - case ECmdCreateFileEntryWMA_50kB: - case ECmdCreateFileEntryWMV_200kB: - case ECmdDeleteAllEntries: - case ECmdDeleteAllCreatorEntries: - case ECmdDeleteContacts: - case ECmdDeleteCreatorContacts: - case ECmdDeleteContactGroups: - case ECmdDeleteCreatorContactGroups: - case ECmdDeleteCalendarEntries: - case ECmdDeleteCreatorCalendarEntries: - case ECmdDeleteBrowserBookmarks: - case ECmdDeleteCreatorBrowserBookmarks: - case ECmdDeleteBrowserBookmarkFolders: - case ECmdDeleteCreatorBrowserBookmarkFolders: - case ECmdDeleteBrowserSavedPages: - case ECmdDeleteCreatorBrowserSavedPages: - case ECmdDeleteBrowserSavedPageFolders: - case ECmdDeleteCreatorBrowserSavedPageFolders: - case ECmdDeleteCreatorFiles: - case ECmdDeleteLogs: - case ECmdDeleteCreatorLogs: - case ECmdDeleteMessages: - case ECmdDeleteCreatorMessages: - case ECmdDeleteMailboxes: - case ECmdDeleteCreatorMailboxes: - case ECmdDeleteIAPs: - case ECmdDeleteCreatorIAPs: - case ECmdDeleteIMPSs: - case ECmdDeleteCreatorIMPSs: - case ECmdDeleteNotes: - case ECmdDeleteLandmarks: - case ECmdDeleteCreatorLandmarks: - { - iEngine->ExecuteOptionsMenuCommandL(aCommand); - } - break; - - case ECmdDeleteEntries: - case ECmdCreatePhoneBookEntrySubscribedContacts: - case ECmdCreateMessagingEntryCBSTopics: - case ECmdCreateMessagingEntrySMSMessageCenters: - case ECmdCreateMessagingEntryTemplates: - case ECmdCreateMiscEntryAppMenuFolders: - case ECmdCreateMiscEntrySyncSettings: - case ECmdCreateMessagingEntryDocumentsFolders: - { - CAknInformationNote* note = new(ELeave) CAknInformationNote; - note->ExecuteLD(_L("Please contact S60 CO if you need this feature...")); - } - break; - - case EEikCmdExit: - case EAknSoftkeyExit: - { - Exit(); - } - break; - - default: - User::Panic (_L("Invalid command"), 101); - break; - } - } - - -void CCreatorAppUi::DynInitMenuPaneL( TInt /*aResourceId*/, CEikMenuPane* /*aMenuPane*/ ) - { - } - -void CCreatorAppUi::RunScriptDone() - { - if (iMode == ETimerModeStartScript) - { - iMode = ETimerModeExitAppUi; - iTimer->Start(ETwelveOClock, this); - } - } - -void CCreatorAppUi::Beat() - { - Tick(); - } - -void CCreatorAppUi::Synchronize() - { - Tick(); - } - -void CCreatorAppUi::Tick() - { - iTickCount++; - if (iTickCount > KCommandLineDelay) - { - iTimer->Cancel(); - iTickCount = 0; - if (iMode == ETimerModeStartScript) - { - iEngine->GetRandomDataFromFileL(*iCommandLineRandomDataFileName); - TInt status = iEngine->RunScriptL(*iCommandLineScriptName); - if (status != KErrNone) - { - TBuf<128> noteMsg; - if (status == KErrNotFound) - { - _LIT(KMessage1, "Error in opening script file."); - noteMsg.Copy(KMessage1); - } - else if (status == KErrCorrupt) - { - _LIT(KMessage2, "Error in parsing script file."); - noteMsg.Copy(KMessage2); - } - else if (status == KErrCompletion) - { - _LIT(KMessage3, "Script file does not contain any elements."); - noteMsg.Copy(KMessage3); - } - else - { - _LIT(KMessage4, "Unknown error in opening script file."); - noteMsg.Copy(KMessage4); - } - CAknConfirmationNote* note = new(ELeave) CAknConfirmationNote; - note->ExecuteLD(noteMsg); - RunScriptDone(); - } - } - else if (iMode == ETimerModeExitAppUi) - { - iMode = ETimerModeNone; - Exit(); - } - } - }