diff -r 6385c4c93049 -r 8e6fa1719340 browserui/browser/BrowserAppSrc/BrowserDialogs.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/browserui/browser/BrowserAppSrc/BrowserDialogs.cpp Wed Sep 01 12:31:04 2010 +0100 @@ -0,0 +1,264 @@ +/* +* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of the License "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: +* Helper class that pops up several dialogs. +* +* +*/ + + +// INCLUDE FILES + +// System includes +#include +#include +#include +#include + +// User includes +#include "BrowserDialogs.h" + +// ================= MEMBER FUNCTIONS ========================================= +// ---------------------------------------------------------------------------- +// TBrowserDialogs::DialogPromptReqL +// ---------------------------------------------------------------------------- +// +TInt TBrowserDialogs::DialogPromptReqL( const TDesC& aMsg, + TDes* aResp, + TBool aIsUrlAddress, + TInt aMaxLength + ) + { + TPtrC msg( aMsg ); + CAknTextQueryDialog* dialog = new( ELeave )CAknTextQueryDialog( *aResp, msg ); + if( aMaxLength ) + { + dialog->SetMaxLength(aMaxLength); + } + TInt resource; + if ( aIsUrlAddress ) + { + resource = R_WB_SCRIPT_PROMPT_URL_ADDRESS; + } + else + { + resource = R_WB_SCRIPT_PROMPT_LINES; + } + dialog->SetPredictiveTextInputPermitted(ETrue); + return dialog->ExecuteLD( resource ); + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::DialogQueryReqL +// ---------------------------------------------------------------------------- +// +TInt TBrowserDialogs::DialogQueryReqL( const TDesC& aMsg, + const TDesC& aYesMessage, + const TDesC& aNoMessage ) + { + TPtrC msg(aMsg); + CAknQueryDialog* dialog = + new ( ELeave ) CAknQueryDialog( msg, CAknQueryDialog::ENoTone ); + + dialog->PrepareLC( R_WB_SCRIPT_QUERY_LINES ); + + if( aYesMessage.Length() ) + { + dialog->ButtonGroupContainer().SetCommandL(EAknSoftkeyYes, aYesMessage ); + } + + if( aNoMessage.Length() ) + { + dialog->ButtonGroupContainer().SetCommandL(EAknSoftkeyNo, aNoMessage ); + } + + return dialog->RunLD(); + } + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryDialogL +// ---------------------------------------------------------------------------- +// +TInt TBrowserDialogs::ConfirmQueryDialogL( const TInt aPromptResourceId, + TInt aResId, TInt aAnimation ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId ); + TInt ret = ConfirmQueryDialogL( *prompt, aResId, aAnimation ); + CleanupStack::PopAndDestroy(); // prompt + return ret; + } + + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryDialogL +// ---------------------------------------------------------------------------- +// +TInt TBrowserDialogs::ConfirmQueryDialogL( const TDesC& aPrompt, + TInt aResId, + TInt aAnimation ) + { + CAknQueryDialog* dialog = new (ELeave) CAknQueryDialog(); + + // TO DO: Store dialog pointer for CBrowserDialogsProvider::CancelAll() + + dialog->PrepareLC( R_BROWSER_CONFIRM_QUERY ); + // passing prompt text in constructor is depracated according to + // AknQueryDialog.h + dialog->SetPromptL( aPrompt ); + if( aResId ) + { + dialog->ButtonGroupContainer().SetCommandSetL( aResId ); + } + + if( aAnimation ) + { + CAknQueryControl* control = STATIC_CAST( CAknQueryControl*, dialog->Control(EGeneralQuery) ); + control->SetAnimationL( aAnimation ); + } + + return dialog->RunLD(); + } + + +// --------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryYesNoL +// --------------------------------------------------------- +// +TBool TBrowserDialogs::ConfirmQueryYesNoL( TDesC& aPrompt ) + { + return ConfirmQueryDialogL( aPrompt ); + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryYesNoL +// ---------------------------------------------------------------------------- +// +TBool TBrowserDialogs::ConfirmQueryYesNoL( const TInt aPromptResourceId ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId ); + TBool ret = ConfirmQueryYesNoL( *prompt ); + CleanupStack::PopAndDestroy(); // prompt + return ret; + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryYesNoL +// ---------------------------------------------------------------------------- +// +TBool TBrowserDialogs::ConfirmQueryYesNoL + ( const TInt aPromptResourceId, const TDesC& aString ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId, aString ); + TBool ret = ConfirmQueryYesNoL( *prompt ); + CleanupStack::PopAndDestroy(); // prompt + return ret; + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ConfirmQueryYesNoL +// ---------------------------------------------------------------------------- +// +TBool TBrowserDialogs::ConfirmQueryYesNoL + ( const TInt aPromptResourceId, const TInt aNum ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId, aNum ); + TBool ret = ConfirmQueryYesNoL( *prompt ); + CleanupStack::PopAndDestroy(); // prompt + return ret; + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::InfoNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::InfoNoteL( TInt aDialogResourceId, + const TDesC& aPrompt ) + { + CAknNoteDialog* dialog = new (ELeave) CAknNoteDialog + ( REINTERPRET_CAST( CEikDialog**, &dialog ) ); + dialog->PrepareLC( aDialogResourceId ) ; + dialog->SetCurrentLabelL( EGeneralNote, aPrompt ); + dialog->RunDlgLD( CAknNoteDialog::EShortTimeout , CAknNoteDialog::ENoTone ); + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::InfoNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::InfoNoteL +( TInt aDialogResourceId, const TInt aPromptResourceId ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId ); + InfoNoteL( aDialogResourceId, *prompt ); + CleanupStack::PopAndDestroy(); // prompt + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::InfoNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::InfoNoteL ( TInt aDialogResourceId, + const TInt aPromptResourceId, + const TDesC& aString ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId, aString ); + InfoNoteL( aDialogResourceId, *prompt ); + CleanupStack::PopAndDestroy(); // prompt + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::InfoNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::InfoNoteL +( TInt aDialogResourceId, const TInt aPromptResourceId, const TInt aNum ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId, aNum ); + InfoNoteL( aDialogResourceId, *prompt ); + CleanupStack::PopAndDestroy(); // prompt + } + + +// ---------------------------------------------------------------------------- + // TBrowserDialogs::ErrorNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::ErrorNoteL( const TInt aPromptResourceId ) + { + HBufC* prompt = StringLoader::LoadLC( aPromptResourceId ); + ErrorNoteL( *prompt ); + CleanupStack::PopAndDestroy(); // prompt + } + + +// ---------------------------------------------------------------------------- +// TBrowserDialogs::ErrorNoteL +// ---------------------------------------------------------------------------- +// +void TBrowserDialogs::ErrorNoteL( const TDesC& aPrompt ) + { + CAknErrorNote* note = new ( ELeave ) CAknErrorNote(); + note->ExecuteLD( aPrompt ); + } + +// End of File