/** 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: Calendar checkbox setting item**/#ifndef CALENBOOLEANSETTINGITEM_H_#define CALENBOOLEANSETTINGITEM_H_//System include#include <e32def.h>#include <aknsettingitemlist.h>// FORWARD DECLARATIONSclass CSelectionItemList;class CCalenCustomisationManager;class TCalenPluginAvailability;// CLASS DECLARATION/** * CCalenCheckboxSettingItem - a checkbox setting item for calendar. * In this case, used to enable and disable plugins. */class CCalenBooleanSettingItem : public CAknBinaryPopupSettingItem { public: static CCalenBooleanSettingItem* NewLC(TInt aId, TInt aOridinal, CCalenCustomisationManager& aCustMan); ~CCalenBooleanSettingItem(); private: CCalenBooleanSettingItem(TInt aId, CCalenCustomisationManager& aCustMan); void ConstructL(TInt aOrdinal); protected:// From base classes /** * Edits the item. */ void EditItemL( TBool aCalledFromMenu ); // From CAknBinaryPopupSettingItem virtual void StoreL(); virtual void LoadL(); private: /** * Matches a uid to an array item's uid. Used in Find(). */ static TBool PluginUidFinder( const TUid* aUid, const CImplementationInformation& aArrayItem ); private: CCalenCustomisationManager& iCustMan; //Not owns TBool iInternalValue; //Set internally to CAknBinaryPopupSettingItem };#endif /*CALENBOOLEANSETTINGITEM_H_*/