diff -r 4b22a598b890 -r c9bf25a20c9f creator/engine/src/creator_scriptentry.cpp --- a/creator/engine/src/creator_scriptentry.cpp Thu May 27 12:52:19 2010 +0300 +++ b/creator/engine/src/creator_scriptentry.cpp Fri Jun 11 13:39:09 2010 +0300 @@ -84,14 +84,23 @@ { User::LeaveIfNull(iSearchArray); - if( aUserData == EGetingScript && aPositiveAction && iSearchArray->Count() ) + if( aUserData == EGetingScript ) { - iObserver->FileChosenL( ETrue, iSearchArray->MdcaPoint(iSelectedItem) ); + if(aPositiveAction) + { + iObserver->ScriptChosenL( ETrue, iSearchArray->MdcaPoint(iSelectedItem) ); + } + else + { + iObserver->ScriptChosenL( EFalse ); + } } else if( aUserData == EGetingRandomDataFile && aPositiveAction && iSearchArray->Count() ) { - TFileName fileName; - if (iSelectedItem == (iSearchArray->Count() - 1)) + if(aPositiveAction) + { + TFileName fileName; + if (iSelectedItem == (iSearchArray->Count() - 1)) { // "default" (resource file) selected fileName.Copy(KNullDesC); @@ -101,15 +110,13 @@ // xml file selected fileName.Copy(iSearchArray->MdcaPoint(iSelectedItem)); } - iObserver->FileChosenL( ETrue, fileName ); + iObserver->RandomDataFileChosenL( ETrue, fileName ); + } + else + { + iObserver->RandomDataFileChosenL( EFalse ); + } } - else - { - iObserver->FileChosenL( EFalse ); - } - delete iSearchArray; - iSearchArray = NULL; - iObserver = NULL; } // --------------------------------------------------------------------------- @@ -127,6 +134,7 @@ // init the search array delete iSearchArray; + iSearchArray = NULL; iSearchArray = new(ELeave) CDesCArrayFlat(20); // wait dialog @@ -381,11 +389,15 @@ #endif */ -TBool CCommandParser::GetRandomDataFilenameL(TDes& aFilename) +TBool CCommandParser::GetRandomDataFilenameL(MCommandParserObserver *aObserver) { LOGSTRING("Creator: CCommandParser::GetRandomDataFilenameL"); TBool ret = EFalse; + User::LeaveIfNull( aObserver ); + iObserver = aObserver; + iSelectedItem = 0; + // init the search array if (iSearchArray) { @@ -466,7 +478,7 @@ // add "default" (resource file) to list fileNameArray->AppendL(_L("Default")); - ret = iEngine->GetEngineWrapper()->PopupListDialog(_L("Select random data file"), fileNameArray, &iSelectedItem, this); + ret = iEngine->GetEngineWrapper()->PopupListDialog(_L("Select random data file"), fileNameArray, &iSelectedItem, this, EGetingRandomDataFile); CleanupStack::PopAndDestroy(fileNameArray); } else // no random data files found from the search paths