00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __AKNRADIOBUTTONSETTINGPAGE_H__
00023 #define __AKNRADIOBUTTONSETTINGPAGE_H__
00024
00025
00026 #include <coecntrl.h>
00027 #include <eikdef.h>
00028
00029 #include <aknlistboxsettingpage.h>
00030
00031 class CAknRadioButtonSettingPageExtension;
00032
00037 class CAknRadioButtonSettingPage : public CAknListBoxSettingPage
00038 {
00039 public:
00040 IMPORT_C CAknRadioButtonSettingPage(
00041 TInt aResourceID,
00042 TInt& aCurrentSelectionIndex,
00043 const MDesCArray* aItemArray );
00073 IMPORT_C CAknRadioButtonSettingPage( const TDesC* aSettingTitleText,
00074 TInt aSettingNumber,
00075 TInt aControlType,
00076 TInt aEditorResourceId,
00077 TInt aSettingPageResourceId,
00078 TInt& aCurrentSelectionIndex,
00079 const MDesCArray* aItemArray );
00080
00085 IMPORT_C virtual void ConstructL();
00086
00092 IMPORT_C CAknSetStyleListBox* ListBoxControl() const;
00093
00099 IMPORT_C virtual void HandleListBoxEventL(CEikListBox* aListBox,
00100 MEikListBoxObserver::TListBoxEvent aEventType);
00101
00109 IMPORT_C void SetItemArrayAndSelectionL( const MDesCArray* aItemArray, TInt aPushed );
00110
00117 IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00118
00119 IMPORT_C void HandleResourceChange(TInt aType);
00120
00121 protected:
00125 IMPORT_C virtual ~CAknRadioButtonSettingPage();
00126
00130 IMPORT_C virtual void UpdateSettingL();
00131
00135 IMPORT_C void DynamicInitL();
00136
00142 IMPORT_C virtual void SelectCurrentItemL();
00143
00144 private:
00149 void SetRadioButtonSelectionL( TInt aPushed );
00150
00155 void GenerateInternalArrayAndGiveToListBoxL();
00156
00157 void InitialiseRadioButtonBitmapsL();
00158
00159
00160
00161
00162 protected:
00163
00171 IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00172
00173 private:
00177 IMPORT_C virtual void Reserved_2();
00178
00179 private:
00183 IMPORT_C void* ExtensionInterface( TUid aInterface );
00184
00188 private:
00189 IMPORT_C virtual void CAknSettingPage_Reserved_1();
00190 IMPORT_C virtual void CAknSettingPage_Reserved_2();
00191
00192 private:
00197 IMPORT_C virtual void CAknListBoxSettingPage_Reserved_1();
00198
00199
00200 private:
00201
00202 TInt iOldSelectionIndex;
00203
00204
00205 CAknRadioButtonSettingPageExtension* iExtension;
00206
00207
00208 TInt& iCurrentSelectionIndex;
00209 const MDesCArray* iItemArray;
00210
00211 };
00212
00213 #endif