--- /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 <e32base.h> // e32def, e32std
+// using CGulIcon API in several places related to choice group
+// and for iIcon memeber
+#include <gulicon.h>
+
+// 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 ("<i>\t<j>\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
+