00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023 #ifndef __CAknGMSStyleGrid_h
00024 #define __CAknGMSStyleGrid_h
00025
00026 #include <AknGrid.h>
00027 #include <aknpopup.h>
00028 #include <aknlists.h>
00029
00030 class CGulIcon;
00031
00032
00033
00034
00035
00039 class CAknGMSStyleGridView : public CAknGridView
00040 {
00041 public:
00042 IMPORT_C CAknGMSStyleGridView();
00043 public:
00047 IMPORT_C void Draw(const TRect* aClipRect = NULL) const;
00048 public:
00053 IMPORT_C void SetupLayout(const TRect& aRect, TBool aIsPopup = EFalse, TInt aNum = -1);
00054 private:
00055 IMPORT_C virtual TAny* Reserved_1();
00056
00057 private:
00061 TInt MaxNumOfHorLines() const;
00062
00066 TInt MaxNumOfVerLines() const;
00067
00068 private:
00069 TAknLayoutRect iHorLine[5];
00070 TAknLayoutRect iVerLine[3];
00071 const TRect* iRect;
00072 };
00073
00074
00075
00076
00077
00084 class CAknGMSStyleGrid : public CAknSelectionGridTypedef
00085 {
00086 public:
00092 IMPORT_C static CAknGMSStyleGrid* NewL(const CCoeControl* aParent, TBool aIsPopup = EFalse);
00097 IMPORT_C CAknGMSStyleGrid();
00101 IMPORT_C CAknGMSStyleGrid(TBool aIsPopup);
00108 IMPORT_C void ConstructL(const CCoeControl* aParent, TInt aRows=4, TInt aCols=2);
00109
00113 IMPORT_C ~CAknGMSStyleGrid();
00114
00118 IMPORT_C void SetupLayout();
00119
00124 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00125
00126 public:
00130 IMPORT_C void SizeChanged();
00131
00135 IMPORT_C TSize MinimumSize();
00136
00142 IMPORT_C TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
00143
00148 static TSize KCELL_SIZE();
00149
00154 IMPORT_C void Draw(const TRect& aRect) const;
00155
00160 IMPORT_C CListBoxView* MakeViewClassInstanceL();
00161
00162 protected:
00166 TBool iIsPopup;
00167
00168 private:
00172 IMPORT_C void* ExtensionInterface( TUid aInterface );
00173
00174 private:
00178 static void _LOG(const TDesC& aText);
00179
00180 private:
00181
00182 };
00183
00187 class CAknGMSPopupGrid : public CAknPopupList
00188 {
00189 public:
00196 IMPORT_C static CAknGMSPopupGrid* NewL(CEikListBox* aListBox, TInt aCbaResource, AknPopupLayouts::TAknPopupLayouts aType=AknPopupLayouts::EMenuWindow);
00197 public:
00202 IMPORT_C void SetupWindowLayout(AknPopupLayouts::TAknPopupLayouts);
00206 IMPORT_C static void CalcPopupGridLargeGraphicWindow(TAknPopupWindowLayoutDef &aDef, TRect aClientRect, TInt aNumberOfLinesInListBox);
00210 IMPORT_C static void SetupPopupGridLargeGraphicWindow(TAknPopupWindowLayoutDef &aDef,
00211 TInt aNumberOfLinesInListBox,
00212 TBool aHeading);
00216 IMPORT_C static void PopupGridLargeGraphicGraphics(TAknPopupWindowLayoutDef &aDef);
00217
00222 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00223
00224 private:
00228 IMPORT_C void* ExtensionInterface( TUid aInterface );
00229 };
00230
00231
00232 #endif