00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #if !defined(__AKNQUERYVALUETIME_H__)
00026 #define __AKNQUERYVALUETIME_H__
00027
00028 #include <bamdesca.h>
00029 #include <eikdialg.h>
00030 #include "AknQueryValue.h"
00031
00032 class CAknQueryValueTimeArray;
00033
00040 NONSHARABLE_CLASS(CAknQueryValueTime) : public CAknQueryValue
00041 {
00042 public:
00046 IMPORT_C static CAknQueryValueTime* NewL();
00047
00051 IMPORT_C static CAknQueryValueTime* NewLC();
00052
00053 IMPORT_C virtual ~CAknQueryValueTime();
00054
00060 IMPORT_C void SetArrayL(const CAknQueryValueTimeArray* aArray);
00061
00068 IMPORT_C void SetQueryCaption(TInt aResourceId);
00069
00076 IMPORT_C TTime Value() const;
00077
00078 public:
00079 IMPORT_C virtual const MDesCArray* MdcArray() const;
00080 IMPORT_C virtual HBufC* CurrentValueTextLC();
00081 IMPORT_C virtual TInt CurrentValueIndex() const;
00082 IMPORT_C virtual void SetCurrentValueIndex(const TInt aIndex);
00083 IMPORT_C virtual TBool CreateEditorL();
00084
00085 protected:
00086 CAknQueryValueTime();
00087
00092 void ConstructL();
00093
00099 void CalculateCurrentIndex();
00100
00101 virtual void AppendValueIfNewL();
00102
00103 private:
00104 IMPORT_C void Reserved_MAknQueryValue();
00105
00106 private:
00107
00108 TInt iQueryCaptionId;
00109 TTime iTime;
00110 TInt iCurrentIndex;
00111
00112 const CAknQueryValueTimeArray* iArray;
00113 };
00114
00115
00120 NONSHARABLE_CLASS(CAknQueryValueTimeArray) : public CBase, public MDesCArray
00121 {
00122 public:
00127 typedef CArrayFix<TTime> TimeArray;
00128
00129 enum {KSafeSizeOfDescriptorForTTimeFormat = 128};
00130
00131 public:
00132
00140 IMPORT_C static CAknQueryValueTimeArray* NewL(TInt aResourceId);
00141
00146 IMPORT_C static CAknQueryValueTimeArray* NewLC(TInt aResourceId);
00147
00148 IMPORT_C ~CAknQueryValueTimeArray();
00149
00157 IMPORT_C void SetArray(TimeArray& aArray);
00158
00166 IMPORT_C TimeArray* Array() const;
00167
00173 IMPORT_C const HBufC* FormatString() const;
00174
00182 #ifdef __WINS__
00183 IMPORT_C const TInt FormattedStringSize() const;
00184 #else
00185 IMPORT_C TInt FormattedStringSize() const;
00186 #endif // __WINS__
00187
00188 public:
00189
00194 IMPORT_C virtual TInt MdcaCount() const;
00195
00204 IMPORT_C virtual TPtrC MdcaPoint(TInt aIndex) const;
00205
00206 protected:
00207 CAknQueryValueTimeArray();
00208
00214 void ConstructL(TInt aResourceId);
00215
00216 private:
00217
00218 HBufC* iLastGeneratedTextValue;
00219 HBufC* iFormatString;
00220
00221 TimeArray* iArray;
00222 TInt iFormattedStringSize;
00223 };
00224
00225 #endif // __AKNQUERYVALUETIME_H__
00226