00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef __LOGCONTAINER_H__
00010 #define __LOGCONTAINER_H__
00011
00012
00013 #include <coecntrl.h>
00014
00015
00016 class CEikEdwin;
00017 class TDes16OverflowHandler;
00018
00019
00028 class CLogContainer : public CCoeControl
00029 {
00030 public:
00031
00035 static CLogContainer* NewL( const TRect& aRect);
00036
00040 static CLogContainer* NewLC( const TRect& aRect);
00041
00043 ~CLogContainer();
00044
00045 private:
00046
00051 void SizeChanged();
00052
00054 void Draw( const TRect& aRect ) const;
00055
00061 void HandleResourceChange(TInt aType);
00062
00066 virtual TInt CountComponentControls() const;
00067
00069 virtual CCoeControl* ComponentControl(TInt aIndex) const;
00070
00072 virtual IMPORT_C TKeyResponse OfferKeyEventL(const TKeyEvent &aKeyEvent, TEventCode aType);
00073
00074 private:
00075
00079 void ConstructL( const TRect& aRect);
00080
00081 public:
00082
00087 void LogSectionTitleL(const TDesC& aSectionTitle);
00088
00094 void LogEntryL(TRefByValue<const TDesC> aFormatString, ... );
00095
00096 private:
00097
00101 void AppendTextL(const TDesC& aLogText);
00102
00104 void ClearLogL();
00105
00106 private:
00107
00111 CEikEdwin* iLog;
00112
00113 };
00114
00121 class TDes16OverflowHandler : public TDes16Overflow
00122 {
00123 public:
00124 TDes16OverflowHandler(){}
00125
00126
00127 virtual void Overflow(TDes16& ){}
00128 };
00129
00130
00131 #endif // __LOGCONTAINER_H__
00132
00133