diff -r f54ad444594d -r 61bc0f252b2b camerauis/cameraapp/generic/src/Camdefaultnamesettingpage.cpp --- a/camerauis/cameraapp/generic/src/Camdefaultnamesettingpage.cpp Thu Aug 19 09:36:57 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,155 +0,0 @@ -/* -* Copyright (c) 2007 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: Setting item page for default name (text/date).* -*/ - - - -// INCLUDE FILES -#include "Camdefaultnamesettingpage.h" -#include "CamUtility.h" -#include "CamAppUi.h" - -#include -#include - -#include -#include - -// CONSTANTS - -// ============================ MEMBER FUNCTIONS =============================== - -// --------------------------------------------------------------------------- -// CCamDefaultNameSettingPage::CCamDefaultNameSettingPage -// C++ constructor -// --------------------------------------------------------------------------- -// -CCamDefaultNameSettingPage::CCamDefaultNameSettingPage( - TDes& aNameBase, - TCamCameraMode aMode, - const TDesC* aSettingTitleText, - TInt aSettingNumber, - TInt aControlType, - TInt aEditorResourceId, - TInt aSettingPageResourceId, - MAknQueryValue& aQueryValue ) - : CAknPopupSettingPage( aSettingTitleText, aSettingNumber, - aControlType, aEditorResourceId, - aSettingPageResourceId, - aQueryValue ), - iNameBase( aNameBase ), - iMode( aMode ) - { - } - - -// --------------------------------------------------------------------------- -// CCamDefaultNameSettingPage::~CCamDefaultNameSettingPage -// Destructor. -// --------------------------------------------------------------------------- -// -CCamDefaultNameSettingPage::~CCamDefaultNameSettingPage() - { - } - - -// --------------------------------------------------------------------------- -// CCamDefaultNameSettingPage::OkToExitL -// Check if the name base value is ok, so the user can -// exit the setting page. -// --------------------------------------------------------------------------- -// -TBool CCamDefaultNameSettingPage::OkToExitL( TBool aAccept ) - { - if ( aAccept ) - { - iTempNameBase = iNameBase; - - if ( QueryValue()->CurrentValueIndex() == ECamNameBaseText ) - { - // Ensure application is in editing orientation - CCamAppUi* appUi = static_cast( CEikonEnv::Static()->AppUi() ); - TInt editingOrientation = CAknAppUiBase::EAppUiOrientationUnspecified; - TInt error = CamUtility::GetPsiInt( ECamPsiEditingOrientation, editingOrientation ); - if ( !error ) - { - appUi->SwitchOrientationIfRequiredL( editingOrientation ); - } - // Show the editor dialog - TBool editorRet = EFalse; - // Trap this to make sure the orientation is reverted back to normal - TRAPD( leaveErr, editorRet = ShowEditorDialogL() ) - appUi->SwitchOrientationIfRequiredL( CAknAppUiBase::EAppUiOrientationUnspecified ); - User::LeaveIfError( leaveErr ); - return editorRet; - } - } - return ETrue; - } - -// --------------------------------------------------------------------------- -// CCamDefaultNameSettingPage::ShowEditorDialogL -// Display the text editor dialog -// --------------------------------------------------------------------------- -// -TBool CCamDefaultNameSettingPage::ShowEditorDialogL() - { - TBool done = EFalse; - while ( !done ) - { - // Show data query - HBufC* prompt = NULL; - if ( ECamControllerVideo == iMode ) - { - prompt = StringLoader::LoadLC( R_CAM_QUERY_DEFAULT_VIDEO_NAME ); - } - else - { - prompt = StringLoader::LoadLC( R_CAM_QUERY_DEFAULT_IMAGE_NAME ); - } - - CAknTextQueryDialog* nameQuery = - CAknTextQueryDialog::NewL( iTempNameBase ); - - nameQuery->SetMaxLength( KMaxNameBaseLength ); - nameQuery->PrepareLC( R_CAM_RENAME_QUERY ); - nameQuery->SetPromptL( *prompt ); - - TBool res = ( nameQuery->RunLD() == EAknSoftkeyOk ); - - CleanupStack::PopAndDestroy(); // prompt - - if ( !res ) - { - // User cancelled the query, return to setting page - return EFalse; - } - - // Check base name validity - res = CamUtility::CheckFileNameValidityL( iTempNameBase ); - - if ( res ) - { - // New name base was valid, exit setting page - iNameBase = iTempNameBase; - return res; - } - - // Show data query again - } - // should never get here - return EFalse; - } -// end of file