--- a/gsprofilesrv_plat/settings_listbox_api/inc/GSListBox.h Fri May 14 16:07:47 2010 +0300
+++ /dev/null Thu Jan 01 00:00:00 1970 +0000
@@ -1,257 +0,0 @@
-/*
-* Copyright (c) 2003-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:
-* class description for CGSListBox & CGSListBoxItemTextArray.
-*
-*/
-
-
-
-#ifndef GS_LIST_BOX_H
-#define GS_LIST_BOX_H
-
-#include <e32base.h>
-#include <e32std.h>
-#include <barsread.h>
-#include <coemain.h>
-
-class CAknRadioButtonSettingPage;
-class CEikListBox;
-
-
-/*================================================
-* CGSListboxEntry: class to map feature->item index when selected
-* from a listbox. This is required when there are features which are
-* dynamically shown/hidden.
-================================================*/
-class CGSListboxEntry : public CBase
- {
- public:
- IMPORT_C static CGSListboxEntry* NewLC( TResourceReader& aReader );
- IMPORT_C static CGSListboxEntry* NewLC( TInt aFeatureId );
- IMPORT_C static CGSListboxEntry* NewLC(
- TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId );
- IMPORT_C ~CGSListboxEntry();
-
- public: // Accessors
- IMPORT_C TInt FeatureId() const;
- IMPORT_C const TDesC& Caption() const;
- IMPORT_C TInt Type() const;
-
- public: // Manipulators
- IMPORT_C void SetDynamicTextL( const TDesC& aText );
- IMPORT_C void SetDynamicTextDoublePaneL( const TDesC& aText );
-
- private:
- CGSListboxEntry();
- void ConstructL( TResourceReader& aReader );
- void ConstructL( TUint32 aResId, CCoeEnv& aEnv, TInt aFeatureId );
-
- private:
- inline TInt StaticTextLength() const { return iStaticTextLength; }
-
- private:
-
- /**
- * The length of the static text which does not change
- */
- TInt iStaticTextLength;
-
- /**
- * The static text and dynamic text combined. We can always
- * change the dynamic part due to the fact that we know
- * the length (prefix) of the static part.
- */
- HBufC* iCaption;
-
- /**
- * One of either EGSListBoxItemTypeIsAlwaysVisible or
- * EGSListBoxItemTypeIsDynamic
- */
- TInt iType;
-
- /**
- * The id of this feature
- */
- TInt iFeatureId;
-
- /**
- * Maximum Length of the Dynamic text which doesnot change..
- * This has been added after inclusion Double Pane List Box
- */
- TInt iDynamicTextSize;
- };
-
-
-
-/*================================================
-================================================*/
-class CGSItemTextArray : public CBase, public MDesCArray
- {
- public:
- enum TVisibility
- {
- EInvisible = 0,
- EVisible = 1
- };
-
- public:
- IMPORT_C static CGSItemTextArray* NewL(
- TUint32 aResId,
- CCoeEnv& aEnv );
- ~CGSItemTextArray();
-
- protected:
- CGSItemTextArray();
- void ConstructL( TUint32 aResId, CCoeEnv& aEnv );
- void ConstructL( TUint32 aResId, CCoeEnv& aEnv, TInt aCount );
-
- public: // From MDesCArray
- IMPORT_C TInt MdcaCount() const;
- IMPORT_C TPtrC MdcaPoint( TInt aIndex ) const;
-
- public: // API
-
- /**
- * Used to add dynamic text to the end of an existing model item
- */
- IMPORT_C void SetDynamicTextL( TInt aFeatureId,
- const TDesC& aAdditionalText );
-
- /**
- * Used to add dynamic text to the end of an existing model item
- * When Double Pane List box is used CAknDoubleStyleListBox
- */
- IMPORT_C void SetDynamicTextDoublePaneL( TInt aFeatureId,
- const TDesC& aAdditionalText );
-
- /**
- * Specify that this item should be visible / invisible in the
- * iCurrentlyDisplayedEntries array
- */
- IMPORT_C void SetItemVisibilityL( TInt aFeatureId,
- TVisibility aVisibility );
-
- /**
- * Access the id of the currently selected feature
- */
- IMPORT_C virtual TInt CurrentFeature() const;
-
- /**
- * Set the currently selected feature id
- */
- IMPORT_C TInt IndexForFeatureIdL(TInt aFeatureId) const;
-
- /**
- * Returns the feature id corresponding to an index
- */
- IMPORT_C TInt FeatureIdByIndex(TInt aIndex) const;
-
- /**
- *
- */
- IMPORT_C const CGSListboxEntry* FeatureByIdL( TInt aFeatureId ) const;
-
- /**
- *
- */
- IMPORT_C static HBufC* GetItemCaptionFromFeatureIdLC(TUint32 aResourceId, TInt aFeatureId, CCoeEnv& aCone);
-
-
- private:
- static TBool CompareEntries( const CGSListboxEntry& aLeft,
- const CGSListboxEntry& aRight );
-
-
- protected:
-
- /**
- * All the entries which may potentially be contained within the listbox
- * model. This array is owned and destroyed by this class.
- */
- RPointerArray< CGSListboxEntry > iAllEntries;
-
- /**
- * The entries which are currently displayed within the listbox. These
- * pointers are actually owned in the iAllEntries array and therefore
- * this array must not be 'ResetAndDestroyed()' (but rather just Reset())
- * from within this class' destructor.
- */
- RPointerArray< CGSListboxEntry > iCurrentlyDisplayedEntries;
- };
-
-
-/*================================================
-================================================*/
-class CGSRadioButtonSettingPageItemTextArray : public CGSItemTextArray
- {
- public:
- IMPORT_C static CGSRadioButtonSettingPageItemTextArray* NewL(
- TUint32 aResId,
- CCoeEnv& aEnv,
- CAknRadioButtonSettingPage* aSettingPage = NULL
- );
-
- private:
- CGSRadioButtonSettingPageItemTextArray( CAknRadioButtonSettingPage* aSettingPage );
-
- public: // FROM CGSItemTextArray
- IMPORT_C TInt CurrentFeature() const;
-
- public: // New API
- IMPORT_C void SetRadioButtonSettingPage( CAknRadioButtonSettingPage& aPage );
-
- private:
-
- /**
- * Underlying setting page
- */
- CAknRadioButtonSettingPage* iSettingPage;
- };
-
-
-
-/*================================================
-* CGSListBoxItemTextArray: This class acts as a wrapper class for
-* CGSListboxEntry. Instance of this class is created from the
-* calling function.
-================================================*/
-class CGSListBoxItemTextArray : public CGSItemTextArray
- {
- public:
- IMPORT_C static CGSListBoxItemTextArray* NewL(
- TUint32 aResId,
- CEikListBox& aListBox,
- CCoeEnv& aEnv );
- IMPORT_C static CGSListBoxItemTextArray* NewL(
- TUint32 aResId,
- CEikListBox& aListBox,
- CCoeEnv& aEnv,
- TInt aCount );
-
- private:
- CGSListBoxItemTextArray( CEikListBox& aListBox );
-
- public: // FROM CGSItemTextArray
- IMPORT_C TInt CurrentFeature() const;
-
- private:
-
- /**
- * Underlying listbox
- */
- CEikListBox& iListBox;
- };
-
-#endif //GS_LIST_BOX_H