diff -r b3cee849fa46 -r fad26422216a creator/engine/src/creator_browserelement.cpp --- a/creator/engine/src/creator_browserelement.cpp Tue Aug 31 15:15:20 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,216 +0,0 @@ -/* -* Copyright (c) 2010 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 "creator_browserelement.h" -#include "creator_traces.h" -#include "creator_browser.h" - -using namespace creatorbrowser; - -/* - * - */ -CCreatorBrowserElement* CCreatorBrowserElement::NewL(CCreatorEngine* aEngine, const TDesC& aName, const TDesC& aContext ) - { - CCreatorBrowserElement* self = new (ELeave) CCreatorBrowserElement(aEngine); - CleanupStack::PushL(self); - self->ConstructL(aName, aContext); - CleanupStack::Pop(self); - return self; - } -/* - * - */ -CCreatorBrowserElement::CCreatorBrowserElement(CCreatorEngine* aEngine) -: -CCreatorScriptElement(aEngine) - { - iIsCommandElement = ETrue; - } - - -/* - * - */ -void CCreatorBrowserElement::ExecuteCommandL() - { - const CCreatorScriptAttribute* amountAttr = FindAttributeByName(KAmount); - TInt entryAmount = 1; - TBool addAll = EFalse; - if( amountAttr ) - { - entryAmount = ConvertStrToIntL(amountAttr->Value()); - } - // Get 'fields' element - CCreatorScriptElement* fieldsElement = FindSubElement(KFields); - if( fieldsElement ) - { - // Get sub-elements - const RPointerArray& fields = fieldsElement->SubElements(); - // Create browser entries, the amount of entries is defined by entryAmount: - for( TInt cI = 0; cI < entryAmount; ++cI ) - { - CBrowserParameters* param = 0; - - if( fields.Count() > 0 ) - param = new (ELeave) CBrowserParameters; - else - { - // No fields defined --> Add all fields with random values: - addAll = ETrue; - break; - } - - CleanupStack::PushL(param); - - for( TInt i = 0; i < fields.Count(); ++i ) - { - CCreatorScriptElement* field = fields[i]; - TPtrC elemName = field->Name(); - TPtrC elemContent = field->Content(); - const CCreatorScriptAttribute* randomAttr = fields[i]->FindAttributeByName(KRandomLength); - if( elemName == KName ) - { - if( randomAttr || elemContent.Length() == 0) - { - elemContent.Set(iEngine->RandomString(CCreatorEngine::ECompany)); - } - if( iName->Des() == KBookmark ) - { - SetContentToTextParamL(param->iBookmarkName, elemContent); - } - else if( iName->Des() == KBookmarkFolder ) - { - SetContentToTextParamL(param->iBookmarkFolderName, elemContent); - } - else if( iName->Des() == KSavedPage ) - { - SetContentToTextParamL(param->iSavedDeckLinkName, elemContent); - } - else if( iName->Des() == KSavedPageFolder ) - { - SetContentToTextParamL(param->iSavedDeckFolderName, elemContent); - } - } - - else if( elemName == KPath ) - { - if( randomAttr || elemContent.Length() == 0) - { - SetContentToTextParamL(param->iSavedDeckLocalAddress, iEngine->TestDataPathL(CCreatorEngine::ESavedDeck_1kB)); - } - else - { - SetContentToTextParamL(param->iSavedDeckLocalAddress, elemContent); - } - } - else if( elemName == KUsername ) - { - if( randomAttr || elemContent.Length() == 0) - { - // Set username and password to same string - if( param->iBookmarkPassword && param->iBookmarkPassword->Length() > 0 ) - { - SetContentToTextParamL(param->iBookmarkUsername, param->iBookmarkPassword->Des()); - } - else - { - SetContentToTextParamL(param->iBookmarkUsername, iEngine->RandomString(CCreatorEngine::EFirstName)); - } - } - else - { - SetContentToTextParamL(param->iBookmarkUsername, elemContent); - } - } - else if( elemName == KPassword ) - { - if( randomAttr || elemContent.Length() == 0) - { - // Set username and password to same string - if( param->iBookmarkUsername && param->iBookmarkUsername->Length() > 0 ) - { - SetContentToTextParamL(param->iBookmarkPassword, param->iBookmarkUsername->Des()); - } - else - { - SetContentToTextParamL(param->iBookmarkPassword, iEngine->RandomString(CCreatorEngine::EFirstName)); - } - } - else - { - SetContentToTextParamL(param->iBookmarkPassword, elemContent); - } - } - else if( elemName == KUrl ) - { - if( randomAttr || elemContent.Length() == 0) - { - TDesC* tmpUrl = iEngine->CreateHTTPUrlLC(); - if( tmpUrl ) - { - SetContentToTextParamL(param->iBookmarkAddress, *tmpUrl ); - } - CleanupStack::PopAndDestroy(); // tmpUrl - } - else - { - SetContentToTextParamL(param->iBookmarkAddress, elemContent); - } - } - } - iEngine->AppendToCommandArrayL(GetBrowserCommandL(), param); - CleanupStack::Pop(); // param - } - } - else - { - addAll = ETrue; - } - - if( addAll ) - { - iEngine->AppendToCommandArrayL(GetBrowserCommandL(), 0, entryAmount); - } - } - -TInt CCreatorBrowserElement::GetBrowserCommandL() const - { - if( iName->Des() == KBookmark ) - { - return ECmdCreateBrowserBookmarkEntries; - } - else if( iName->Des() == KBookmarkFolder ) - { - return ECmdCreateBrowserBookmarkFolderEntries; - } - else if( iName->Des() == KSavedPage ) - { - return ECmdCreateBrowserSavedPageEntries; - } - else if( iName->Des() == KSavedPageFolder ) - { - return ECmdCreateBrowserSavedPageFolderEntries; - } - - LOGSTRING("CCreatorFileElement::GetBrowserCommandL: Unknown browser entry"); - User::Leave(KErrGeneral); - return 0; // Not reached, but disables compiler warning... - }