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
00026
00027
00028
00029
00030
00031 #include <basched.h>
00032 #include <eikenv.h>
00033 #include <coecntrl.h>
00034 #include <eikappui.h>
00035 #include <e32keys.h>
00036 #include <eikconso.h>
00037 #include <eikapp.h>
00038 #include <eikdoc.h>
00039 #include <eikon.rsg>
00040 #include <eikinfo.h>
00041
00042 #include <eikon.hrh>
00043 #include <eikecho.rsg>
00044 #include "ECHOENG.H"
00045
00046 #ifndef _EIKECHO_H_
00047 #define _EIKECHO_H_
00048
00049
00050
00051 const TUid KUidEikEchoApp = {0xE800006A};
00052
00053
00054
00055 const TUint32 KInetAddr = INET_ADDR(10,159,34,198);
00056 _LIT(KInetHostName,"phoenix.doc.ic.ac.uk");
00057
00058
00059 _LIT(KIntFormat,"%d");
00060
00061
00062
00063
00064
00065
00066 class CConsoleControl : public CCoeControl, public MUINotify
00067 {
00068 public:
00069 static CConsoleControl* NewL(CEchoEngine* aEchoEngine);
00070 ~CConsoleControl();
00071 void ConstructL(CEchoEngine* aEchoEngine);
00072
00073
00074 TKeyResponse OfferKeyEventL(const TKeyEvent& aKeyEvent,TEventCode aType);
00075 void ActivateL();
00076
00077
00078 void PrintNotify(const TDesC& aDes);
00079 void PrintNotify(TInt aInt);
00080 void ErrorNotifyL(const TDesC& aErrMessage, TInt aErrCode);
00081 protected:
00082 CConsoleControl() {}
00083 private:
00084 CEikConsoleScreen* iConsole;
00085 CEchoEngine* iEchoEngine;
00086 };
00087
00088
00089
00090
00091
00092 class CEchoAppUi : public CEikAppUi
00093 {
00094 public:
00095 CEchoAppUi(CEchoEngine* aEchoEngine);
00096 void ConstructL();
00097 void CreateConsoleL();
00098 ~CEchoAppUi();
00099 private:
00100
00101 void HandleCommandL(TInt aCommand);
00102 private:
00103 CConsoleControl* iConsoleControl;
00104 CEchoEngine* iEchoEngine;
00105 };
00106
00107
00108
00109
00110
00111 class CEchoDocument : public CEikDocument
00112 {
00113 public:
00114 CEchoDocument(CEikApplication& aApp);
00115 static CEchoDocument* NewL(CEikApplication& aApp);
00116 ~CEchoDocument();
00117 void ConstructL();
00118 private:
00119
00120 CEikAppUi* CreateAppUiL();
00121 private:
00122 CEchoEngine* iEchoEngine;
00123 };
00124
00125
00126
00127
00128
00129 class CEchoApplication : public CEikApplication
00130 {
00131 private:
00132 CApaDocument* CreateDocumentL();
00133 TUid AppDllUid() const;
00134 };
00135 #endif
00136
00137
00138