--- 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