diff -r 6369bfd1b60d -r 08b5eae9f9ff homesync/contentmanager/homesyncgsplugin/inc/mssettingitemdevices.h --- a/homesync/contentmanager/homesyncgsplugin/inc/mssettingitemdevices.h Mon Nov 01 13:44:24 2010 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,308 +0,0 @@ -/* -* Copyright (c) 2008 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: Definition for MediaServant Source devices setting item -* -*/ - - -#ifndef C_MSSETTINGITEMSOURCEDEV_H -#define C_MSSETTINGITEMSOURCEDEV_H - -// INCLUDES -#include -#include "upnpavdeviceobserver.h" -#include //MAknBackgroundProcess -#include "mssettingitems.h" - -// FORWARD DECLARATIONS -class CMSMultiselectionPopup; -class MUPnPAVController; -class CMSEngine; - -/** - * CMSSettingItemDevices class. - * - * Class searches devices and shows them to user - * - * @since S60 5.1 - */ -NONSHARABLE_CLASS( CMSSettingItemDevices ): public CMSTextSettingItem, - public MAknBackgroundProcess, - public MProgressDialogCallback, - public MUPnPAVDeviceObserver - { - - public: // Constructor and destructor - - /** - * NewL - * 2-phase constructor. - * - * @since S60 v5.1 - * @param aIdentifier, setting item identifier - * @param aText, setting item text - * @param aMSEngine, application engine - * @param aStoredServers, stored servers - * @param aUploadCapabilitySupport, upload capability support - * @return CMSSettingItemDevices*, the new CMSSettingItemDevices object - */ - static CMSSettingItemDevices* NewL( - TInt aIdentifier, - TDes& aText, - CMSEngine& aMSEngine, - RPointerArray& aStoredServers, - TBool aUploadCapabilitySupport = EFalse ); - - /** - * NewLC - * 2-phase constructor. - * - * @since S60 v5.1 - * @param aIdentifier, setting item identifier - * @param aText, setting item text - * @param aMSEngine, application engine - * @param aStoredServers, stored servers - * @param aUploadCapabilitySupport, upload capability support - * @return CMSSettingItemDevices*, the new CMSSettingItemDevices object - */ - static CMSSettingItemDevices* NewLC( - TInt aIdentifier, - TDes& aText, - CMSEngine& aMSEngine, - RPointerArray& aStoredServers, - TBool aUploadCapabilitySupport = EFalse ); - - /** - * Destructor. - */ - virtual ~CMSSettingItemDevices(); - - - public:// from MAknBackgroundProcess - - /** - * Completes one cycle of the process. - */ - void StepL(); - - /** - * Return true when the process is done. - */ - TBool IsProcessDone() const; - - /** - * Handles error occurred in StepL. - */ - TInt CycleError( TInt aError ); - - protected: - - // From base class CAknTextSettingItem - - /** - * From CAknTextSettingItem - * See base class definition - */ - void EditItemL( TBool aCalledFromMenu ); - - // From base class MProgressDialogCallback - - /** - * From MProgressDialogCallback - * See base class definition - */ - void DialogDismissedL( TInt aButtonId ); - - // From base class MUPnPAVDeviceObserver - - /** - * From MUPnPAVDeviceObserver - * See base class definition - */ - void UPnPDeviceDiscovered( const CUpnpAVDevice& aDevice ); - - /** - * From MUPnPAVDeviceObserver - * See base class definition - */ - void UPnPDeviceDiscoveredL( const CUpnpAVDevice& aDevice ); - - /** - * From MUPnPAVDeviceObserver - * See base class definition - */ - void UPnPDeviceDisappeared( const CUpnpAVDevice& aDevice ); - - /** - * From MUPnPAVDeviceObserver - * See base class definition - */ - void WLANConnectionLost(); - - private: - - /** - * Shows error note - * @since S60 5.1 - * @param aTextResource, error text resource - */ - void ShowErrorNoteL( TInt aTextResource ); - - /** - * Sets servers activity - * @since S60 5.1 - */ - void SetServersActivity(); - - /** - * Reads source devices and set item text - * @since S60 5.1 - */ - void ReadServerListL(); - - /** - * Sets correct text for settings page - * @since S60 5.1 - */ - void SetSettingItemTextL(); - - /** - * Returns number of selected servers in active servers list. - * @since S60 5.1 - * @return number of selected servers - */ - TInt CountSelectedItems() const; - - /** - * Creates AV controller. - * @since S60 5.1 - * @return operation success. KErrNone if succesfull - */ - TInt CreateAvcontrollerL(); - - /** - * Cancels devices search operation. - * @since S60 5.1 - */ - void CancelDeviceSearch(); - - /** - * Fetches devices from AVController and calls - * DeviceDiscovered-callback for each of them. - * @since S60 5.1 - */ - void FetchAlreadyDiscoveredDevicesL(); - - /** - * Creates AVController, fetches devices from it and calls - * DeviceDiscovered-callback for each of them. Starts wait note if no - * devices are already discovered. - * - * @since S60 5.1 - * @return TInt system wide error code. KErrNone if successful. - */ - TInt CreateAvcAndFetchDevicesL(); - - /** - * Constructor. - */ - CMSSettingItemDevices( TInt aIdentifier, - TDes& aText, - CMSEngine& aMSEngine, - RPointerArray& aStoredServers, - TBool aUploadCapabilitySupport ); - - /** - * ConstructL - * Second phase constructor. - */ - void ConstructL(); - - private: - - /** - * The internal phases of wait note when creating AvC - */ - enum TCreateAvCState - { - EPhaseNotActive, - EPhaseProcessing, - EPhaseCompleted - }; - - /** - * Id list of selected servers - */ - CArrayFix* iSelectedServers; // owned - - /** - * Flag for indicating user cancel - */ - TBool iUserCancelledSearch; - - /** - * Device selection dialog - */ - CMSMultiselectionPopup* iDevSelectionDlg; // owned - - /** - * application engine - */ - CMSEngine& iMSEngine; - - /** - * Servers to be shown to user - */ - RPointerArray iServerList; // not owned - - /** - * searched servers list - */ - RPointerArray& iStoredServers; // not owned - - /** - * Indicates if upload capability is needed - */ - TBool iUploadCapabilitySupport; - - /** - * Server name string (external set) - */ - HBufC* iSettingText; // ownded - - /** - * Wait dialog shown on device search - */ - CAknWaitDialog* iWaitDialog; // owned - - /** - * Wait scheduler - */ - CActiveSchedulerWait iWait; - - /** - * AV controller for device search - */ - MUPnPAVController* iAvController; // owned - - /** - * Current state of creating AvC - */ - TCreateAvCState iCreateAvCState; - - }; - -#endif // C_MSSETTINGITEMSOURCEDEV_H - -// End of File