--- a/remotestoragefw/gsplugin/src/rsfwgsremotedrivesettingscontainer.cpp Mon Jan 18 21:00:57 2010 +0200
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,757 +0,0 @@
-/*
-* Copyright (c) 2005 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: Rsfw GS plugin Settins list container
-*
-*/
-
-
-// INCLUDE FILES
-#include <akntitle.h>
-#include <barsread.h>
-#include <StringLoader.h>
-#include <AknQueryDialog.h>
-#include <aknnotewrappers.h>
-#include <rsfwgspluginrsc.rsg>
-#include <uri16.h>
-
-#include "rsfwgslocalviewids.h"
-#include "rsfwgsplugin.h"
-#include "rsfwgsremotedrivesettingscontainer.h"
-#include "rsfwgspluginsettinglist.h"
-#include "rsfwgssettingsdata.h"
-#include "rsfwmountman.h"
-#include "rsfwmountentry.h"
-#include "rsfwmountutils.h"
-#include "rsfwcommon.h"
-#include "mdebug.h"
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::CRsfwGsPluginDriveSettingsContainer()
-// ---------------------------------------------------------------------------
-//
-CRsfwGsPluginDriveSettingsContainer::CRsfwGsPluginDriveSettingsContainer(CAknView* aView) : iView(aView)
- {
-
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::ConstructL(const TRect& aRect)
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::ConstructL( const TRect& aRect,
- CRsfwMountMan* aMountMan)
- {
- #ifdef _DEBUG
- RDebug::Print( _L( "[CRsfwGsPluginDriveSettingsContainer] ConstructL()" ) );
- #endif
-
- iMountMan = aMountMan;
-
- CEikStatusPane* sp = static_cast<CAknAppUi*>
- ( iEikonEnv->EikAppUi() )->StatusPane();
- CAknTitlePane* title = static_cast<CAknTitlePane*>
- ( sp->ControlL( TUid::Uid( EEikStatusPaneUidTitle ) ) );
-
- // Set the proper title of this list
- TResourceReader rReader;
- iCoeEnv->CreateResourceReaderLC( rReader, R_GS_RSFW_REMOTE_DRIVE_SETTINGS_VIEW_TITLE );
- title->SetFromResourceL( rReader );
- CleanupStack::PopAndDestroy(); //rReader
-
- CreateWindowL(); // Makes the control a window-owning control
-
- // construct the data object the settings list will use
- iData = CRsfwGsSettingsData::NewL();
- // construct control and set parent
- iSettingList = CRsfwGsPluginSettingsList::NewL(*iData);
- iSettingList->SetContainerWindowL(*this);
-
- // CreateResourceReaderLC will allocate a buffer to be used by
- // the TResourceReader. This buffer is pushed onto the cleanup
- // stack - not the TResourceReader itself
- iEikonEnv->CreateResourceReaderLC(rReader, R_SETTINGS);
- iSettingList->ConstructFromResourceL(rReader);
-
- // Clean up the buffer allocated above, NOT the reader itself.
- // Cannot use expected item overload of PopAndDestroy() as buffer
- // is inaccessible.
- CleanupStack::PopAndDestroy();
- iSettingList->ActivateL();
-
- iCoeEnv->AddForegroundObserverL( *this );
-
- SetRect( aRect );
- ActivateL();
-
-
- #ifdef _DEBUG
- RDebug::Print( _L( "[CRsfwGsPluginDriveSettingsContainer] Construct done" ) );
- #endif
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::~CRsfwGsPluginDriveSettingsContainer()
-// ---------------------------------------------------------------------------
-//
-CRsfwGsPluginDriveSettingsContainer::~CRsfwGsPluginDriveSettingsContainer()
- {
- iCoeEnv->RemoveForegroundObserver( *this );
- if (iData)
- delete iData;
- if(iSettingList) // if setting list has been created
- {
- delete iSettingList;
- iSettingList = NULL;
- }
-
- // Ecom session is used to make sure that user gives address
- // that corresponds to some installed access plugin
- // (currently via mountils::isaddressvalid)
- // this closes the session (if not in use anymore)
- REComSession::FinalClose();
- }
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::SizeChanged()
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::SizeChanged()
- {
- iSettingList->SetRect(Rect());
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::CountComponentControls() const
-// ---------------------------------------------------------------------------
-//
-TInt CRsfwGsPluginDriveSettingsContainer::CountComponentControls() const
- {
- return 1;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::ComponentControl( TInt aIndex ) const
-// ---------------------------------------------------------------------------
-//
-CCoeControl* CRsfwGsPluginDriveSettingsContainer::ComponentControl( TInt aIndex ) const
- {
- switch ( aIndex )
- {
- case 0:
- return iSettingList;
- default:
- return NULL;
- }
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::EditCurrentItemL()
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::EditCurrentItemL()
- {
- iSettingList->EditCurrentItemL();
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::OfferKeyEventL()
-// ---------------------------------------------------------------------------
-//
-TKeyResponse CRsfwGsPluginDriveSettingsContainer::OfferKeyEventL(
- const TKeyEvent& aKeyEvent,
- TEventCode aType )
- {
- if (iSettingList)
- return iSettingList->OfferKeyEventL(aKeyEvent, aType);
- else
- return EKeyWasNotConsumed;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::Draw(const TRect& aRect) const
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::Draw(const TRect& aRect) const
- {
- CWindowGc& gc = SystemGc();
- gc.Clear(aRect);
- }
-
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::HandleListBoxEventL()
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::HandleListBoxEventL(CEikListBox* /*aListBox*/, TListBoxEvent aListBoxEvent)
- {
- // if the Select Key has been pressed
- if ((aListBoxEvent == MEikListBoxObserver::EEventEnterKeyPressed) ||
- (aListBoxEvent == MEikListBoxObserver::EEventItemSingleClicked))
- {
- iSettingList->EditCurrentItemL();
- }
- }
-
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveForEditingL(TDesC& aRemoteDriveName)
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveForEditingL(const TDesC& aRemoteDriveName)
- {
- DEBUGSTRING(("CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveForEditingL enter"));
- const CRsfwMountEntry* mountEntry = NULL;
-
- // read the source setting
- DEBUGSTRING(("read the source setting"));
- mountEntry = iMountMan->MountEntryL(aRemoteDriveName);
- User::LeaveIfNull((TAny *)mountEntry);
-
- // compulsory fields
- DEBUGSTRING(("compulsory fields"));
- iData->Reset();
- iData->iSettingName = *(mountEntry->Item(EMountEntryItemName));
- iData->iURL =*(mountEntry->Item(EMountEntryItemUri));
- const HBufC* drive = (mountEntry->Item(EMountEntryItemDrive));
- if (drive && drive->Length())
- {
- iData->iDriveLetter =(*drive)[0];
- }
- // optional fields
- DEBUGSTRING(("optional fields"));
- if (mountEntry->Item(EMountEntryItemUserName))
- {
- DEBUGSTRING(("setting user id"));
- iData->iUserID = *(mountEntry->Item(EMountEntryItemUserName));
- }
-
- if (mountEntry->Item(EMountEntryItemPassword))
- {
- DEBUGSTRING(("setting passwd"));
- iData->iPassword = *(mountEntry->Item(EMountEntryItemPassword));
- }
-
- if (mountEntry->Item(EMountEntryItemIap))
- {
- DEBUGSTRING16(("setting access pointDes to %S", (mountEntry->Item(EMountEntryItemIap))));
- iData->iAccessPointDes = *(mountEntry->Item(EMountEntryItemIap));
- // if the access point name returned from CenRep was '?', set it to "None" in UI
- if (iData->iAccessPointDes == KIapAskUser)
- {
- iData->iAccessPointName = KNullDesC;
- }
- else
- {
- // try to resolve access point id into name
- TLex lex(iData->iAccessPointDes);
- TInt ap, err;
- err = lex.Val(ap);
- if (!err)
- {
- iSettingList->GetAccessPointNameL(ap, iData->iAccessPointName);
- DEBUGSTRING(("setting access point"));
- iData->iAccessPoint = ap;
- }
- else
- {
- DEBUGSTRING(("setting access point name"));
- iData->iAccessPointName = KNullDesC;
- }
- }
- }
-
- DEBUGSTRING(("iData constructed"));
- iSettingList->LoadSettingsL();
- SetTitlePaneTextL(iData->iSettingName);
- iSettingList->ResetItemIndex();
- DEBUGSTRING(("CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveForEditingL exit"));
- }
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveNewDefaultL(TDesC& aRemoteDriveName);
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::PrepareRemoteDriveNewDefaultL(TDesC& aRemoteDriveName)
- {
- iData->Reset();
- iData->iSettingName = aRemoteDriveName;
- iSettingList->LoadSettingsL();
- iSettingList->ResetItemIndex();
- iSettingList->DrawDeferred();
- SetTitlePaneTextL(iData->iSettingName);
- }
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::SetTitlePaneTextL( const TDesC& aTitleText ) const
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::SetTitlePaneTextL( const TDesC& aTitleText ) const
- {
- CAknTitlePane* title = static_cast< CAknTitlePane* >
- ( iEikonEnv->AppUiFactory()->StatusPane()->ControlL(
- TUid::Uid( EEikStatusPaneUidTitle ) ) );
- if ( !title )
- {
- User::Leave( KErrNotSupported );
- }
- title->SetTextL( aTitleText );
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::AreCompulsoryItemsFilled()
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::AreCompulsoryItemsFilled()
- {
- TUriParser uriParser;
- uriParser.Parse(iData->iURL);
- HBufC* host = HBufC::NewL(KMaxURLLength);
- TPtr hostPtr = host->Des();
- hostPtr = uriParser.Extract(EUriHost);
-
- if ( ((iData->iSettingName)!=KNullDesC) && (hostPtr!=KNullDesC))
- {
- delete host;
- return ETrue;
- }
- delete host;
- return EFalse;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::DisplayDeleteOrDontSaveDialog()
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::DisplayDeleteOrDontSaveDialogL()
- {
-
- HBufC* myDisplayMessage = NULL;
- myDisplayMessage = StringLoader::LoadLC(R_STR_REMOTE_DRIVE_CONF_COMPULSORY);
- CAknQueryDialog* query = CAknQueryDialog::NewL
- (CAknQueryDialog::EConfirmationTone);
- TBool answer = query->ExecuteLD( R_CONFIRMATION_QUERY, *myDisplayMessage );
- CleanupStack::PopAndDestroy(myDisplayMessage);
- return answer;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::DeleteremoteDriveIfExistL()
-// ---------------------------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::DeleteRemoteDriveIfExistL()
- {
- iMountMan->DeleteMountEntryL(iData->iDriveLetter);
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::IsExitProcessingOKL()
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::IsExitProcessingOKL()
- {
- if (AreCompulsoryItemsFilled())
- {
- if (!(RsfwMountUtils::IsFriendlyNameValid(iData->iSettingName)))
- {
- HBufC* myDisplayMessage = NULL;
- myDisplayMessage = StringLoader::LoadLC(R_STR_RSFW_ERROR_ILLEGAL_CHARACTERS);
- CAknErrorNote* errorNote = new CAknErrorNote(EFalse);
- errorNote->ExecuteLD(*myDisplayMessage);
- CleanupStack::PopAndDestroy(myDisplayMessage);
- iSettingList->ListBox()->SetCurrentItemIndex(ESettingItemDriveName-1);
- return EFalse;
- }
-
- // Uri must contain some scheme, like http:// or upnp://
- if (!IsDriveAddressValidL(iData->iURL))
- {
- HBufC* myDisplayMessage = NULL;
- myDisplayMessage = StringLoader::LoadLC(R_STR_RSFW_ERROR_ILLEGAL_ADDRESS);
- CAknNoteDialog* noteDlg = new ( ELeave ) CAknNoteDialog( );
- noteDlg->SetTextL( *myDisplayMessage );
- noteDlg->ExecuteLD( R_RSFW_INFORMATION_NOTE );
- CleanupStack::PopAndDestroy(myDisplayMessage);
- iSettingList->ListBox()->SetCurrentItemIndex(ESettingItemURL-1);
- return EFalse;
- }
-
- // settings seem to be ok
- return SaveOrCreateAndSaveRemoteDriveL(ETrue);
- }
- else
- {
- if (DisplayDeleteOrDontSaveDialogL())
- {
- DeleteRemoteDriveIfExistL();
- }
- else
- {
- // set focus on the address field as that is the first (and only)
- // unfilled compulsary setting field
- iSettingList->ListBox()->SetCurrentItemIndex(ESettingItemURL-1);
- return EFalse;
- }
- }
-
- return ETrue;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::SaveSettingsL
-// Attempts to save settings
-// ---------------------------------------------------------------------------
-void CRsfwGsPluginDriveSettingsContainer::SaveSettingsL()
- {
- if (AreCompulsoryItemsFilled())
- {
- if (!(RsfwMountUtils::IsFriendlyNameValid(iData->iSettingName)))
- {
- return;
- }
- // Uri must contain some scheme, like http:// or upnp://
- if (!IsDriveAddressValidL(iData->iURL))
- {
- return;
- }
- // settings seem to be ok
- SaveOrCreateAndSaveRemoteDriveL(EFalse);
- }
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::SaveOrCreateAndSaveremoteDriveL()
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::SaveOrCreateAndSaveRemoteDriveL(TBool aShowDialog)
- {
- // try to get mountentry with this drive letter
- const CRsfwMountEntry* existingMountEntry = iMountMan->MountEntryL(iData->iDriveLetter);
-
- // to keep names unique check if the setting with this name is already exist
- // ask user to change name
- TBool isConflict;
- if (existingMountEntry)
- {
- isConflict = IsRemoteDriveNameConflictL(iData->iSettingName, *(existingMountEntry->Item(EMountEntryItemDrive)));
- }
- else
- {
- TBuf<5> bogusDrive;
- bogusDrive.Append(_L("C:\\"));
- isConflict = IsRemoteDriveNameConflictL(iData->iSettingName, bogusDrive);
- }
-
- if (isConflict)
- {
- if (aShowDialog)
- {
- HBufC* myFormatMessage = NULL;
- if ( iData->iSettingName.Length() )
- {
- myFormatMessage = StringLoader::LoadLC( R_STR_REMOTE_DRIVE_NAME_ALREADY_EXIST, iData->iSettingName);
- }
- else
- {
- myFormatMessage = StringLoader::LoadLC( R_STR_REMOTE_DRIVE_NAME_ALREADY_EXIST );
- }
-
- CAknErrorNote* note = new CAknErrorNote(EFalse);
- note->SetTimeout( CAknNoteDialog::ELongTimeout );
- note->ExecuteLD( *myFormatMessage );
- CleanupStack::PopAndDestroy(myFormatMessage);
- // set focus to drive
- iSettingList->ListBox()->SetCurrentItemIndex(ESettingItemDriveName-1);
- }
- return EFalse;
- }
- else if (!existingMountEntry || DataChanged(existingMountEntry))
- {
-
- CRsfwMountEntry* newMountEntry = CRsfwMountEntry::NewLC();
- if (existingMountEntry)
- {
- // the same drive letter must be set as it is the key
- newMountEntry->SetItemL(EMountEntryItemDrive, *(existingMountEntry->Item(EMountEntryItemDrive)));
- }
-
- newMountEntry->SetItemL(EMountEntryItemName, iData->iSettingName);
- newMountEntry->SetItemL(EMountEntryItemUri, iData->iURL);
- if ((iData->iUserID)!=KNullDesC)
- {
- newMountEntry->SetItemL(EMountEntryItemUserName, iData->iUserID);
- }
-
- if ((iData->iPassword)!=KNullDesC)
- {
- newMountEntry->SetItemL(EMountEntryItemPassword, iData->iPassword);
- }
- if ((iData->iAccessPointDes)!=KNullDesC)
- {
- newMountEntry->SetItemL(EMountEntryItemIap, iData->iAccessPointDes);
- }
- else
- {
- newMountEntry->SetItemL(EMountEntryItemIap, KIapAskUser);
- }
-
- newMountEntry->SetItemL(EMountEntryItemInactivityTimeout, iData->iInActivityTimeout);
-
- // depending on whether this is new mount created or existing mount edited
- // choose proper method from MountMan API
- // pop here from the stack since ownership is passed to the mountman
- CleanupStack::Pop(newMountEntry);
-
- if (!existingMountEntry)
- {
- iMountMan->AddMountEntryL(newMountEntry);
- }
- else
- {
- iMountMan->EditMountEntryL(newMountEntry);
- }
- }
- return ETrue;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::DataChanged
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::DataChanged(const CRsfwMountEntry* aCurrentData)
-{
- if (!aCurrentData)
- {
- return ETrue;
- }
-
- // compulsary settings
- if (iData->iSettingName != *(aCurrentData->Item(EMountEntryItemName)))
- {
- return ETrue;
- }
- if (iData->iURL != *(aCurrentData->Item(EMountEntryItemUri)))
- {
- return ETrue;
- }
-
- // optional settings
- if (!aCurrentData->Item(EMountEntryItemUserName))
- {
- if (iData->iUserID != KNullDesC)
- {
- return ETrue;
- }
- }
- else
- {
- if (iData->iUserID != *(aCurrentData->Item(EMountEntryItemUserName)))
- {
- return ETrue;
- }
- }
-
- if (!aCurrentData->Item(EMountEntryItemPassword))
- {
- if (iData->iPassword != KNullDesC)
- {
- return ETrue;
- }
- }
- else
- {
- if (iData->iPassword != *(aCurrentData->Item(EMountEntryItemPassword)))
- {
- return ETrue;
- }
- }
-
- if (!aCurrentData->Item(EMountEntryItemIap))
- {
- if (iData->iAccessPointDes != KNullDesC)
- {
- return ETrue;
- }
- }
- else
- {
- if (iData->iAccessPointDes != *(aCurrentData->Item(EMountEntryItemIap)))
- {
- return ETrue;
- }
- }
-
-
- return EFalse;
-}
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::IsRemoteDriveNameExistL(TDesC& aremoteDriveName)
-//
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::IsRemoteDriveNameConflictL(
- TDesC& aRemoteDriveName,
- const TDesC& aDriveLetter)
- {
- TBool ret(EFalse);
- CDesCArray* remoteDriveList = NULL;
-
- TRAPD(err, remoteDriveList = LoadRemoteDriveNamesL());
- if(err!=KErrNone)
- {
- return EFalse;
- }
- CleanupStack::PushL(remoteDriveList);
-
- TInt remoteDriveListCount = remoteDriveList->Count();
- for (TInt i = 0; i< remoteDriveListCount; i++)
- {
- if (!((remoteDriveList->MdcaPoint(i)).CompareF(aRemoteDriveName))) // if equal
- {
- // check whether the drive letter is the same or not
- const CRsfwMountEntry* existingDrive =
- iMountMan->MountEntryL(aRemoteDriveName);
- if ((existingDrive->Item(EMountEntryItemDrive))->Compare(aDriveLetter) == 0 )
- {
- ret = EFalse;
- }
- else
- {
- ret = ETrue;
- }
- break;
- }
- }
- CleanupStack::PopAndDestroy(remoteDriveList);
- return ret;
-
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::IsDriveAddressValidL
-// ---------------------------------------------------------------------------
-//
-TBool CRsfwGsPluginDriveSettingsContainer::IsDriveAddressValidL(const TDesC& aDriveAddress)
- {
- HBufC8* urlBuffer = HBufC8::NewL(KMaxURLLength);
- TPtr8 bufPtr = urlBuffer->Des();
- bufPtr.Append(aDriveAddress);
- TBool isAddressValid = RsfwMountUtils::IsDriveAddressValid(*urlBuffer);
- delete urlBuffer;
- return isAddressValid;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::LoadRemoteDriveNamesL
-// ---------------------------------------------------------------------------
-//
-CDesCArray* CRsfwGsPluginDriveSettingsContainer::LoadRemoteDriveNamesL()
- {
- CDesCArray* myArray = new (ELeave) CDesC16ArraySeg(4);
- iMountMan->GetMountNamesL(myArray);
- return myArray;
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::HandleResourceChange()
-// ---------------------------------------------------------------------------
-void CRsfwGsPluginDriveSettingsContainer::HandleResourceChange( TInt aType )
- {
- if ( aType == KAknsMessageSkinChange ||
- aType == KEikDynamicLayoutVariantSwitch )
- {
- if (aType != KAknsMessageSkinChange)
- {
- TRect mainPaneRect;
- AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane,
- mainPaneRect);
- SetRect( mainPaneRect );
- }
-
- DrawDeferred();
- CRsfwGsPlugin* tempView = static_cast<CRsfwGsPlugin*> (iView);
- tempView->HandleResourceChangeManual(aType);
- }
- CCoeControl::HandleResourceChange( aType );
- }
-
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::HandleResourceChangeManual()
-// ---------------------------------------------------------------------------
-void CRsfwGsPluginDriveSettingsContainer::HandleResourceChangeManual(TInt aType)
- {
- if (aType != KAknsMessageSkinChange)
- {
- TRect mainPaneRect;
- AknLayoutUtils::LayoutMetricsRect( AknLayoutUtils::EMainPane,
- mainPaneRect);
- SetRect( mainPaneRect );
- }
-
- DrawDeferred();
- iSettingList->HandleResourceChange(aType);
- }
-
-// ---------------------------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::FocusChanged
-// Set focus on the selected listbox. For animated skins feature.
-// ---------------------------------------------------------------------------
-void CRsfwGsPluginDriveSettingsContainer::FocusChanged(TDrawNow /*aDrawNow*/)
- {
- if(iSettingList)
- {
- iSettingList->SetFocus( IsFocused() );
- }
- }
-
-// ---------------------------------------------------------
-// CRsfwGsPluginDriveSettingsContainer::GetHelpContext
-// This function is called when Help application is launched
-// ---------------------------------------------------------
-//
-void CRsfwGsPluginDriveSettingsContainer::GetHelpContext( TCoeHelpContext& aContext ) const
- {
- aContext.iMajor = KGSRsfwPluginUID;
- // aContext.iContext = KRSFW_HLP_EDIT_SET;
- }
-
-
- TDes& CRsfwGsPluginDriveSettingsContainer::GetCurrentRemoteDriveName()
- {
- return iData->iSettingName;
- }
-
-
-// from MCoeForegroundObserver
-
-void CRsfwGsPluginDriveSettingsContainer::HandleGainingForeground()
- {
-
- }
-
-
-void CRsfwGsPluginDriveSettingsContainer::HandleLosingForeground()
- {
-
- }
-
-
-// End of File