diff -r ae942d28ec0e -r 2455ef1f5bbc javauis/lcdui_akn/lcdui/inc/CMIDChoiceGroupElement.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/javauis/lcdui_akn/lcdui/inc/CMIDChoiceGroupElement.h Wed Sep 01 12:33:18 2010 +0100 @@ -0,0 +1,122 @@ +/* +* Copyright (c) 2003-2006 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: CMIDChoiceGroupElement encapsulates a ChoiceGroup +* listbox entry (text, image, selection state and all) +* +*/ + + +#ifndef CMIDCHOICEGROUPELEMENT_H +#define CMIDCHOICEGROUPELEMENT_H + +// INCLUDES +#include // e32def, e32std +// using CGulIcon API in several places related to choice group +// and for iIcon memeber +#include + +// CONSTANTS + +// MACROS + +// Element flags +#define CGEF_SELECTED 0x01 +#define CGEF_OWNSICON 0x02 + + +// DATA TYPES + +// EXTERNAL DATA STRUCTURES + +// FUNCTION PROTOTYPES + +// FORWARD DECLARATIONS + +// CLASS DEFINITIONS +NONSHARABLE_CLASS(CMIDChoiceGroupElement) : public CBase +{ +public: + static CMIDChoiceGroupElement* NewL(); + + // Destructor + virtual ~CMIDChoiceGroupElement(); + + // Set element text + void SetTextL(const TDesC& aText); + + // Get element text + const TPtrC Text() const + { + return iText ? iText->Des() : TPtrC(KNullDesC); + } + + // Get listbox line ("\t\tText"), where i is an index to + // the selection icon and j to the element image (given as param) + const TPtrC LboxText(TInt aImageIndex); + + // Set icon. If owned, an icon is deleted by the element + void SetIcon(CGulIcon* aIcon, TBool aElementOwnsIcon = ETrue); + + // Set icon from bitmaps. If owned, an icon is deleted by the element + void SetIconL( + CFbsBitmap& aBitmap, + CFbsBitmap* aMask = NULL, + TBool aElementOwnsIcon = ETrue); + + // Get icon + CGulIcon* Icon() const + { + return iIcon; + } + + // Set element to be selected (preserve original flags) + void SetSelected(TBool aSelected = ETrue) + { + aSelected ? (iFlags |= CGEF_SELECTED) : (iFlags &= ~CGEF_SELECTED); + } + + // Element selection state query method + TBool IsSelected() const + { + return (iFlags & CGEF_SELECTED); + } + + // Get flags + TInt Flags() const + { + return iFlags; + } + +protected: + +private: + CMIDChoiceGroupElement(); +private: + + // Type flags + TInt iFlags; + + // Element text + HBufC* iText; + + // Listbox line + HBufC* iLboxText; + + // Icon + CGulIcon* iIcon; + +}; + +#endif // CMIDCHOICEGROUPELEMENT_H +