idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugindata.h
branchRCL_3
changeset 102 ba63c83f4716
parent 93 b01126ce0bec
child 103 966d119a7e67
--- a/idlehomescreen/examples/carouselwidgetexample/publisher/inc/carouselplugindata.h	Wed Sep 15 12:00:00 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,274 +0,0 @@
-/*
-* Copyright (c) 2009 - 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:  Plug-in data class
-*
-*/
-
-
-#ifndef CMCSPLUGINDATA_H
-#define CMCSPLUGINDATA_H
-
-// INCLUDE FILES
-#include <e32base.h>
-#include <badesca.h>
-#include <mhomescreensettingsobserver.h>
-#include <hspluginsettings.h>
-#include <propertymap.h>
-#include <mcsmenu.h>
-
-class TMenuItem;
-class CCarouselPluginEngine;
-
-/**
- *  @ingroup group_mcsplugin
- *
- *  Stores the MCS Menu Items and keeps track whether
- *  item needs to be published or not.
- *
- *  @since S60 v9.1
- */
-NONSHARABLE_CLASS( CCarouselData ) : public CBase
-    {
-public:
-    CCarouselData();
-    
-    ~CCarouselData();
-    
-    /**
-     * SetMenuItem
-     * 
-     * @param aMenuItem
-     */
-    void SetMenuItem( TMenuItem& aMenuItem );
-
-    /**
-     * MenuItem
-     * 
-     * @return TMenuItem
-     */
-    TMenuItem& MenuItem();
-    
-    /**
-     * Name of the item.
-     */
-    TDesC& Name();
-    
-    /**
-     * Set name of the item,
-     */
-    void SetNameL( const TDesC& aName );
-
-    /**
-     * Value of the item. Used for bookmark url.
-     */
-    TDesC& Value();
-    
-    /*
-     * Set value of the item.
-     */   
-    void SetValueL( const TDesC& aValue );
-    
-    /**
-     * SetDirty
-     * 
-     * @param aDirty
-     * @return TBool
-     */
-    void SetDirty( TBool aDirty );
-
-    /**
-     * IsDirty
-     * 
-     * @return TBool
-     */
-    TBool IsDirty() const;
-
-private:
-    /**
-     * iMenuItem
-     */
-    TMenuItem iMenuItem;
-    
-    /**
-     * Item name, own
-     */
-    HBufC* iName;
-    
-    /**
-     * Item value, own
-     */
-    HBufC* iValue;
-
-    /**
-     * iDirty
-     */
-    TBool iDirty;
-    };
-
-/**
- *  @ingroup group_mcsplugin
- *
- *  Plug-in data class
- *
- *  @since
- */
-NONSHARABLE_CLASS( CCarouselPluginData ) : public CBase,
-    public HSPluginSettingsIf::MHomeScreenSettingsObserver
-    {
-
-public:
-
-    /**
-    * Part of the two phased constuction
-    *
-    * @param aEngine
-    * @param aInstanceUid
-    * @return Pointer to the created CMCSPluginData object
-    */
-    static CCarouselPluginData* NewL( CCarouselPluginEngine& aEngine,
-        const TDesC8& aInstanceUid );
-
-    /**
-    * Constructor
-    *
-    * @param aEngine
-    * @param aInstanceUid
-    * @return none
-    */
-    CCarouselPluginData( CCarouselPluginEngine& aEngine, const TDesC8& aInstanceUid );
-
-    /**
-    * Destructor
-    *
-    * @param none
-    * @return none
-    */
-    ~CCarouselPluginData();
-
-    /**
-     * DataItem
-     * 
-     * @param aIndex
-     * @return TMCSData&
-     */
-    CCarouselData& DataItemL( TInt aIndex );
-
-    /**
-     * Saves 'Undefined' menu item into settings when mailbox is deleted
-     * 
-     * @param aIndex
-     * @param aMenuItem
-     */
-    void SaveUndefinedItemL( const TInt& aIndex );
-
-    /**
-     * DataCount
-     * 
-     * @return TInt
-     */
-    TInt DataCount(){ return iData.Count();};
-
-    /**
-     * Gets the instance specific settings from HSPS and creates data items
-     */
-    void UpdateDataL();
-
-    /**
-     * Removes data item from data list and saves new setting into HSPS
-     */
-    void RemoveDataL( TInt aId );
-    
-    // From MHomeScreenSettingsObserver
-    /**
-     * SettingsChangedL
-     * 
-     * @param aEvent
-     * @param aPluginName
-     * @param aPluginUid
-     * @param aPluginId
-     */
-    void SettingsChangedL( const TDesC8& aEvent,  const TDesC8& aPluginName,
-                           const TDesC8& aPluginUid, const TDesC8& aPluginId );
-
-private:
-
-    /**
-    * Part of the two phased construction
-    *
-    * @param void
-    * @return void
-    */
-    void ConstructL();
-
-    /**
-     * GetMenuDataL
-     * @param aProperties
-     * @return TMenuItem
-     */
-    CCarouselData* GetMenuDataL(
-        RPointerArray<HSPluginSettingsIf::CPropertyMap>& aProperties );
-    
-    /**
-     * Get bookmark data item
-     * @param aUid, used for bookmark uid
-     * @param aView, used for bookmark url
-     * @param aParam, used for bookmark name
-     * @param aData, is filled with appropriate values
-     */
-    void GetBkmDataL( const TDesC8& aUid, const TDesC8& aView, const TDesC8& aParam, CCarouselData& aData );
-
-    /**
-     * Get folder data item
-     * @param aParam, is used for folder id (in MCS)
-     * @param aData, is filled with appropriate values
-     */    
-    void GetFolderData( const TDesC8& aParam, CCarouselData& aData );
-
-    /**
-     * Get mailbox data item
-     * @param aUid, uid of the mailbox in messaging application
-     * @param aParam, name of the mailbox
-     * @param aData, is filled with appropriate values
-     */
-    void GetMailboxDataL( const TDesC8& aUid, const TDesC8& aParam,  CCarouselData& aData );
-    
-    /**
-     * Get MCS data item
-     * @param aProperties, Properties are used to filter correct item from MCS.
-     * @param aData, is filled with appropriate values
-     */
-    void GetMCSDataL(
-        RPointerArray<HSPluginSettingsIf::CPropertyMap>& aProperties,  CCarouselData& aData );
-
-private: // data
-
-    // Menu items, which are defined in settings
-    // Own
-    RPointerArray<CCarouselData> iData;
-
-    // Plugin settings. NOT OWNED!
-    HSPluginSettingsIf::CHomescreenSettings* iPluginSettings;
-
-    // Reference to MCS plug-in engine
-    CCarouselPluginEngine& iEngine;
-
-    // Reference to instance uid of HSPS widget
-    const TDesC8& iInstanceUid;
-
-    // MCS resource handle, owned 
-    RMenu iMenu;
-
-    };
-
-#endif // CMCSPLUGINDATA_H