diff -r 65a3ef1d5bd0 -r f742655b05bf commsconfig/cscapplicationui/inc/cscservicecontainer.h --- a/commsconfig/cscapplicationui/inc/cscservicecontainer.h Thu Aug 19 09:45:22 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,478 +0,0 @@ -/* -* Copyright (c) 2007-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: CSC Application service view´s container -* -*/ - - -#ifndef C_CSCSERVICECONTAINER_H -#define C_CSCSERVICECONTAINER_H - -#include - -class MCSCServiceContainerObserver; -class CCSCEngCCHHandler; -class CCSCEngServiceHandler; -class CCSCEngBrandingHandler; -class CCSCEngServicePluginHandler; -class CCSCEngUiExtensionPluginHandler; - - -const TUint KBrandIdMaxLength = 512; - -/** - * TListBoxItem class - * - * For identifying list box item types - * - * @lib - * @since S60 v3.2 - */ -NONSHARABLE_CLASS( TListBoxItem ) - { - public: - - /** Enumeration for listbox item type */ - enum TItemType - { - EGeneralService = 0, - EServicePlugin, - EUiExtension - }; - - /** - * Constructor. - * - * @since S60 3.2 - */ - TListBoxItem() - : iItemType( EGeneralService ), - iPluginUid( KNullUid ), - iServiceId( KErrNone ) - {} - - public: // data - - /** - * Listbox item type - */ - TItemType iItemType; - - /** - * Plug-in UID for Listbox item type EServicePlugin and EUiExtension - */ - TUid iPluginUid; - - /* - * Service id ( used only with EGeneralService and EServicePlugin) - */ - TUint iServiceId; - }; - - - -/** - * CCSCServiceContainer class - * CSC Applications Service view container class. - * - * @lib - * @since S60 v3.2 - */ -NONSHARABLE_CLASS( CCSCServiceContainer ) : public CCoeControl, - public MEikMenuObserver - { - public: - - /** - * Two-phased constructor. - * - * @param aView pointer to calling view - * @param aRect rect - * @param aServicePluginHandler reference to servicepluginhandler - * @param aUiExtensionPluginHandler reference to uiextensionhandler - * @param aServiceHandler reference to service handler - * @param aBrandingHandler reference to branding handler - * @param aCCHHandler reference to cch handler - */ - static CCSCServiceContainer* NewL( - const TRect& aRect, - MCSCServiceContainerObserver& aContainerObserver, - CCSCEngServicePluginHandler& aServicePluginHandler, - CCSCEngUiExtensionPluginHandler& aUiExtensionPluginHandler, - CCSCEngServiceHandler& aServiceHandler, - CCSCEngBrandingHandler& aBrandingHandler, - CCSCEngCCHHandler& aCCHHandler ); - - - /** - * Destructor. - */ - virtual ~CCSCServiceContainer(); - - - /** - * Update service view - * - * @since S60 v3.2 - */ - void UpdateServiceViewL(); - - - /** - * Update listbox - * - * @since S60 v3.2 - */ - void UpdateListboxL(); - - - /** - * Return current listbox item index - * - * @since S60 v3.2 - * @return current item index - */ - TInt CurrentItemIndex() const; - - - /** - * Return current listbox item - * - * @since S60 v3.2 - * @return current listbox item - */ - TListBoxItem ListBoxItem(); - - - /** - * Return reference to listbox - * - * @since S60 v5.2 - * @return reference to listbox - */ - CAknDouble2LargeStyleListBox& ListBox(); - - - /** - * Return pen down point - * - * @since S60 v5.2 - * @return pen down point - */ - TPoint PenDownPoint(); - - - /** - * Return service count - * - * @since S60 v3.2 - * @return service count - */ - TInt ServiceCount(); - - - /** - * Set current item index - * - * @since S60 v3.2 - * @param current item index - */ - void SetCurrentIndex( TInt aIndex ); - - - /** - * Delete service - * - * @since S60 v3.2 - */ - void DeleteServiceL(); - - - /** - * Handle service plugin removation. - * - * @since S60 v5.0 - * @param aUid plugin uid. - */ - void HandleServicePluginRemovationL( const TUid& aUid ); - - - /** - * Updates container data because of layout change - * - * @since S60 v3.2 - * @param aType for layout change type - */ - void HandleResourceChange( TInt aType ); - - - /** - * Sets listbox observer. - * - * @since S60 v3.2 - * @param aObserver listbox observer - */ - void SetListBoxObserver( MEikListBoxObserver* aObserver ); - - - /** - * Hides dialog wait note - * - * @since S60 v3.2 - * @param aIndex index of plugin - */ - void HideDialogWaitNote(); - - - /** - * Launches cleanup plugin to remove settings. - * - * @since S60 v3.2 - * @param aServiceId for service to be removed. - */ - void LaunchCleanupPluginL( TUint aServiceId ) const; - - - /** - * Resolve service id from service plugin uid - * - * @since S60 v3.2 - * @param aUid service plugin uid - * @param aServiceId service id stored here - */ - void ResolveServiceIdL( const TUid& aUid, TUint& aServiceId ); - - - // from base class CCoeControl - - /** - * From CCoeControl - * Offer key events for controls. - * - * @since S60 v3.0 - * @param aKeyEvent for pressed key - * @param aType for type of press - * @return ETrue if consumed - */ - TKeyResponse OfferKeyEventL( const TKeyEvent& aKeyEvent, - TEventCode aType ); - - /** - * From CCoeControl - * Returns component controls. - * - * @since S60 v3.0 - * @param aIndex for index - * @return control of the component - */ - CCoeControl* ComponentControl( TInt aIndex ) const; - - - /** - * From CCoeControl - * Handle pointer event. - * - * @since S60 v3.0 - * @param aPointerEvent pointer event - */ - void HandlePointerEventL( const TPointerEvent& aPointerEvent ); - - - // from base class MCSCEngCCHObserver - - /** - * From MCSCEngCCHObserver. - */ - void ServiceStatusChanged( - TUint aServiceId, - TCCHSubserviceType aType, - const TCchServiceStatus& aServiceStatus ); - - - protected: - - // from base class CCoeControl - - /** - * From CCoeControl - * Handles controls size changes - * - * @since S60 v3.0 - */ - void SizeChanged(); - - - /** - * From CoeControl - * Handles focus changes - * - * @since S60 v3.0 - * @param aDrawNow for drawing event - */ - virtual void FocusChanged( TDrawNow aDrawNow ); - - - /** - * From CoeControl - * Counts components controls - * - * @since S60 v3.0 - * @return returns number of controls - */ - TInt CountComponentControls() const; - - - /** - * From CCoeControl - * For getting help context - * - * @since S60 v3.0 - * @param aContext - */ - void GetHelpContext( TCoeHelpContext& aContext ) const; - - - /** - * From MEikMenuObserver - */ - void SetEmphasis( CCoeControl* /*aMenuControl*/, TBool /*aEmphasis*/ ){}; - - - /** - * From MEikMenuObserver - */ - void ProcessCommandL( TInt /*aCommandId*/ ){}; - - private: - - CCSCServiceContainer( - MCSCServiceContainerObserver& aContainerObserver, - CCSCEngServicePluginHandler& aServicePluginHandler, - CCSCEngUiExtensionPluginHandler& aUiExtensionPluginHandler, - CCSCEngServiceHandler& aServiceHandler, - CCSCEngBrandingHandler& aBrandingHandler, - CCSCEngCCHHandler& aCCHHandler ); - - - void ConstructL( const TRect& aRect ); - - - /** - * Sets icons for listbox items. - * - * @since S60 v3.2 - * @param aListBoxItem lisbox item - * @param aIconArray icon array - * @param aIconSize icon size in pixels - */ - void SetIconL( const TListBoxItem& aListBoxItem, - CArrayPtr* aIconArray, TInt aIconSize ); - - - /** - * Cleanup RImplInfoPtrArray - * @since S60 3.2 - * @param aArray Which to be destroyed - */ - static void ResetAndDestroy( TAny* aArray ); - - - private: // data - - /** - * Reference to MCSCServiceContainerObserver - */ - MCSCServiceContainerObserver& iContainerObserver; - - /** - * Reference to CCSCServicePluginHandler - */ - CCSCEngServicePluginHandler& iServicePluginHandler; - - /* - * Reference to CCSCUiExtensionPluginHandler - */ - CCSCEngUiExtensionPluginHandler& iUiExtensionPluginHandler; - - /* - * Reference to CCSCEngServiceHandler - */ - CCSCEngServiceHandler& iServiceHandler; - - /** - * Reference to CCSCEngBrandingHandler - */ - CCSCEngBrandingHandler& iBrandingHandler; - - /** - * Reference to CCSCEngCCHHandler - */ - CCSCEngCCHHandler& iCCHHandler; - - /* - * Pointer to listbox - * Own. - */ - CAknDouble2LargeStyleListBox* iListBox; - - /* - * Pointer to listbox item array - * Own. - */ - CDesCArrayFlat* iArray; - - /* - * Pointer to listbox item array - * Own. - */ - CDesCArray* iListBoxItems; - - /** - * A Global wait note for removing service. - */ - CCSCDialog* iDialog; - - /** - * Menubar. - * Own. - */ - CEikMenuBar* iEikMenuBar; - - /* - * Array for identifying different type listbox items - */ - RArray iListBoxItemArray; - - /** - * Ui extension plug-in count - */ - TUint iUiExtensionCount; - - /** - * Pen down point - */ - TPoint iPenDownPoint; - - /** - * Holds current listbox item height - */ - TInt iListBoxItemHeight; - -#ifdef _DEBUG - friend class UT_CSC; -#endif - -}; - -#endif // C_CSCSERVICECONTAINER_H