aknmfnesettingpage.h

Go to the documentation of this file.
00001 /*
00002 * ============================================================================
00003 *  Name     : AknMfneSettingPage.h
00004 *  Part of  : Avkon
00005 *
00006 *  Description:
00007 *     Header file for Setting page implementations for Date, Time, duration 
00008 *       and IP addresses 
00009 *  Version:
00010 *
00011 *  Copyright © 2002 Nokia Corporation.
00012 *  This material, including documentation and any related 
00013 *  computer programs, is protected by copyright controlled by 
00014 *  Nokia Corporation. All rights are reserved. Copying, 
00015 *  including reproducing, storing,  adapting or translating, any 
00016 *  or all of this material requires the prior written consent of 
00017 *  Nokia Corporation. This material also contains confidential 
00018 *  information which may not be disclosed to others without the 
00019 *  prior written consent of Nokia Corporation.
00020 * ============================================================================
00021 */
00022 
00023 #ifndef __AKNMFNESETTINGPAGE_H__
00024 #define __AKNMFNESETTINGPAGE_H__ 
00025 
00026 #include <eikdef.h>
00027 #include <eikbtgpc.h>
00028 #include <eikmfne.h>
00029 #include <aknipfed.h>
00030 #include <in_sock.h>
00031 #include <aknsettingpage.h>
00032 
00033  
00034 // FORWARD DECLARATIONS
00035 class CAknButton;
00036  
00043 class CAknMfneSettingPage : public CAknSettingPage
00044 {
00045 
00046 public: 
00051     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00055     IMPORT_C virtual ~CAknMfneSettingPage();
00056 
00057 protected:
00063     IMPORT_C CAknMfneSettingPage(TInt ResourceId );
00074     IMPORT_C CAknMfneSettingPage(   const TDesC* aSettingTitleText, 
00075                                 TInt aSettingNumber, 
00076                                 TInt aControlType,
00077                                 TInt aEditorResourceId, 
00078                                 TInt aSettingPageResourceId );
00079 
00085     IMPORT_C virtual void SizeChanged();
00086     
00090     IMPORT_C void Draw(const TRect& aRect) const;
00091 
00095     IMPORT_C CEikMfne* Mfne() const;
00096 
00104     IMPORT_C void CheckAndSetDataValidity();
00105 
00118     IMPORT_C virtual void HandleControlEventL(CCoeControl* aControl,
00119                                             TCoeEvent aEventType);
00120                                             
00127     IMPORT_C virtual void ConstructL();
00128     
00134     IMPORT_C TInt CountComponentControls() const;
00135 
00141     IMPORT_C CCoeControl* ComponentControl(TInt anIndex) const;
00142                                             
00143 protected:
00144 
00145     // Buttons for modifying the value of the active MFNE field with stylus.
00146     // The derived classes which require the buttons, must call this class'
00147     // ConstructL function in their second phase constructor. This class
00148     // takes care of the button positioning and functionality.
00149     CAknButton* iIncreaseValueButton;
00150     CAknButton* iDecreaseValueButton;
00151 
00152 private:
00156     IMPORT_C void* ExtensionInterface( TUid aInterface );
00157 
00158 private:
00159     // Layout information is stored here and not in the derived classes
00160     TAknLayoutRect iMfneLayoutRect;
00161     TAknLayoutRect iHorizontalShadow;
00162     TAknLayoutRect iVerticalShadow;
00163     TAknLayoutRect iOutlineFrame;
00164 
00165     TInt iSpare_1;
00166 
00167 };
00168 
00169 
00175 class CAknDateSettingPage : public CAknMfneSettingPage
00176 {
00177 public:
00178 
00186     IMPORT_C CAknDateSettingPage(
00187         TInt aResourceID, 
00188         TTime& aDateValue);
00189 
00240     IMPORT_C CAknDateSettingPage(   
00241                                 const TDesC* aSettingTitleText, 
00242                                 TInt aSettingNumber, 
00243                                 TInt aControlType,
00244                                 TInt aEditorResourceId, 
00245                                 TInt aSettingPageResourceId,    
00246                                 TTime& aDateValue );
00247 
00248 
00255     IMPORT_C virtual void ConstructL();
00256 
00262     IMPORT_C CEikDateEditor* DateEditor();
00263 
00267     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00268 
00269 protected:
00273     IMPORT_C virtual ~CAknDateSettingPage();
00274 
00280     IMPORT_C virtual void UpdateSettingL();
00281 
00289     IMPORT_C virtual void AcceptSettingL();
00290 
00296     IMPORT_C virtual void RestoreOriginalSettingL();
00297     
00298 //
00299 // CoeControl Framework and reserved methods
00300 //
00301 protected:
00302 
00310     IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00311 
00312 private:
00316     IMPORT_C virtual void Reserved_2();
00317 
00318 private:
00322     IMPORT_C void* ExtensionInterface( TUid aInterface );
00323 
00327 private: 
00328     IMPORT_C virtual void CAknSettingPage_Reserved_1();
00329     IMPORT_C virtual void CAknSettingPage_Reserved_2();
00330 
00331 private:
00332     TTime& iDateValue;
00333     TTime iBackupDateValue;
00334 };
00335 
00341 class CAknTimeSettingPage : public CAknMfneSettingPage
00342 {
00343 public:
00350     IMPORT_C CAknTimeSettingPage(
00351         TInt aResourceID, 
00352         TTime& aTimeValue);
00353 
00403     IMPORT_C CAknTimeSettingPage(   const TDesC* aSettingTitleText, 
00404                                 TInt aSettingNumber, 
00405                                 TInt aControlType,
00406                                 TInt aEditorResourceId, 
00407                                 TInt aSettingPageResourceId,    
00408                                 TTime& aTimeValue );
00409 
00415     IMPORT_C virtual void ConstructL();
00416 
00420     IMPORT_C CEikTimeEditor* TimeEditor();
00421 
00425     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00426 
00427 protected:
00428 
00432     IMPORT_C virtual ~CAknTimeSettingPage();
00433 
00439     IMPORT_C virtual void UpdateSettingL();
00440 
00448     IMPORT_C virtual void AcceptSettingL();
00454     IMPORT_C virtual void RestoreOriginalSettingL();
00455     
00456 //
00457 // CoeControl Framework and reserved methods
00458 //
00459 protected:
00460 
00468     IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00469 
00470 private:
00471 
00475     IMPORT_C virtual void Reserved_2();
00476 
00477 private:
00481     IMPORT_C void* ExtensionInterface( TUid aInterface );
00482 
00486 private: 
00487     IMPORT_C virtual void CAknSettingPage_Reserved_1();
00488     IMPORT_C virtual void CAknSettingPage_Reserved_2();
00489 
00490 
00491 private:
00492     TTime& iTimeValue;
00493     TTime iBackupTimeValue;
00494 
00495 };
00496 
00502 class CAknDurationSettingPage : public CAknMfneSettingPage
00503 {
00504 public:
00511     IMPORT_C CAknDurationSettingPage(
00512         TInt                    aResourceID, 
00513         TTimeIntervalSeconds&   aDurationValue);
00564     IMPORT_C CAknDurationSettingPage(   const TDesC* aSettingTitleText, 
00565                                 TInt aSettingNumber, 
00566                                 TInt aControlType,
00567                                 TInt aEditorResourceId, 
00568                                 TInt aSettingPageResourceId,    
00569                                 TTimeIntervalSeconds&   aDurationValue);
00570 
00576     IMPORT_C virtual void ConstructL();
00580     IMPORT_C CEikDurationEditor* DurationEditor();
00585     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00586 
00587 protected:
00591     IMPORT_C virtual ~CAknDurationSettingPage();
00592 
00598     IMPORT_C virtual void UpdateSettingL();
00599 
00607     IMPORT_C virtual void AcceptSettingL();
00608 
00614     IMPORT_C virtual void RestoreOriginalSettingL();
00615     
00616 //
00617 // CoeControl Framework and reserved methods
00618 //
00619 protected:
00620 
00628     IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00629 
00630 private:
00634     IMPORT_C virtual void Reserved_2();
00635 
00636 private:
00640     IMPORT_C void* ExtensionInterface( TUid aInterface );
00641 
00645 private: 
00646     IMPORT_C virtual void CAknSettingPage_Reserved_1();
00647     IMPORT_C virtual void CAknSettingPage_Reserved_2();
00648 
00649 private:
00650     TTimeIntervalSeconds& iDurationValue;
00651     TTimeIntervalSeconds iBackupDurationValue;
00652 };
00653 
00654 
00662 class CAknTimeOffsetSettingPage : public CAknMfneSettingPage
00663 {
00664 public:
00673     IMPORT_C CAknTimeOffsetSettingPage(
00674         TInt                    aResourceID, 
00675         TTimeIntervalSeconds&   aTimeOffsetValue);
00727     IMPORT_C CAknTimeOffsetSettingPage( const TDesC* aSettingTitleText, 
00728                                 TInt aSettingNumber, 
00729                                 TInt aControlType,
00730                                 TInt aEditorResourceId, 
00731                                 TInt aSettingPageResourceId,    
00732                                 TTimeIntervalSeconds&   aTimeOffsetValue);
00733 
00739     IMPORT_C virtual void ConstructL();
00743     IMPORT_C CEikTimeOffsetEditor* TimeOffsetEditor();
00747     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00748 
00749 protected:
00753     IMPORT_C virtual ~CAknTimeOffsetSettingPage();
00754 
00762     IMPORT_C virtual void UpdateSettingL();
00763 
00773     IMPORT_C virtual void AcceptSettingL();
00774 
00782     IMPORT_C virtual void RestoreOriginalSettingL();
00783     
00784 //
00785 // CoeControl Framework and reserved methods
00786 //
00787 protected:
00788 
00797     IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00798 
00799 private:
00805     IMPORT_C virtual void Reserved_2();
00806 
00807 private:
00811     IMPORT_C void* ExtensionInterface( TUid aInterface );
00812 
00816 private: 
00817     IMPORT_C virtual void CAknSettingPage_Reserved_1();
00818     IMPORT_C virtual void CAknSettingPage_Reserved_2();
00819 
00820 private:
00821     TTimeIntervalSeconds& iTimeOffsetValue;
00822     TTimeIntervalSeconds iBackupTimeOffsetValue;
00823 
00824 };
00830 class CAknIpFieldSettingPage : public CAknMfneSettingPage
00831 {
00832 public:
00839     IMPORT_C CAknIpFieldSettingPage(
00840         TInt                    aResourceID, 
00841         TInetAddr&          aIpAddress);
00891     IMPORT_C CAknIpFieldSettingPage(    const TDesC* aSettingTitleText, 
00892                                 TInt aSettingNumber, 
00893                                 TInt aControlType,
00894                                 TInt aEditorResourceId, 
00895                                 TInt aSettingPageResourceId,    
00896                                 TInetAddr&  aIpAddress);
00897 
00903     IMPORT_C virtual void ConstructL();
00907     IMPORT_C CAknIpFieldEditor* IpFieldEditor();
00908 
00912     IMPORT_C void HandlePointerEventL(const TPointerEvent& aPointerEvent);
00913 
00914 protected:
00918     IMPORT_C virtual ~CAknIpFieldSettingPage();
00919 
00925     IMPORT_C virtual void UpdateSettingL();
00926 
00934     IMPORT_C virtual void AcceptSettingL();
00935 
00941     IMPORT_C virtual void RestoreOriginalSettingL();
00942 
00943 //
00944 // CoeControl Framework and reserved methods
00945 //
00946 protected:
00947 
00955     IMPORT_C virtual void WriteInternalStateL(RWriteStream& aWriteStream) const;
00956 
00957 private:
00958     
00962     IMPORT_C virtual void Reserved_2();
00963 
00964 private:
00968     IMPORT_C void* ExtensionInterface( TUid aInterface );
00969 
00973 private: 
00974     IMPORT_C virtual void CAknSettingPage_Reserved_1();
00975     IMPORT_C virtual void CAknSettingPage_Reserved_2();
00976     
00977 private:
00978     TInetAddr& iIpAddress;
00979     TInetAddr iBackupIpAddress; // Not a reference
00980 
00981     };
00982 #endif

Copyright © Nokia Corporation 2001-2008
Back to top