tcpudp.h
上传用户:sempras
上传日期:2007-03-04
资源大小:821k
文件大小:3k
源码类别:

Symbian

开发平台:

C/C++

  1. //
  2. //    tcpudp.h
  3. //
  4. //    Copyright (C) 2001, Forum Nokia - The Developer Community
  5. //
  6. ////////////////////////////////////////////////////////////////
  7. #ifndef __TCPUDP_H
  8. #define __TCPUDP_H
  9. #include <eikappui.h>
  10. #include <eikapp.h>
  11. #include <eikdoc.h>
  12. #include <eikenv.h>
  13. #include <eiktbar.h>
  14. #include <eikconso.h>
  15. #include <eikdialg.h>
  16. #include <eikedwin.h>
  17. #include <eikmenup.h>
  18. #include <eikon.hrh>
  19. #include <tcpudp.rsg>
  20. #include "tcpudp.hrh"
  21. #include "engine.h"
  22. const TUid KUidTcpUdpApp={ 0x0100093E };
  23. const TUid KUidTcpUdpVersionUid = { 0x0100093F } ;
  24. class CConsoleControl : public CCoeControl
  25. {
  26. public:
  27. CConsoleControl() {}
  28. ~CConsoleControl();
  29. void ConstructL(TPoint aLeftTop,const TSize& aSize,TInt aFlags);
  30.     void ActivateL();
  31. void DrawCursor();
  32. void Write(const TDesC &aDes);
  33. CEikConsoleControl *ConsoleControl();
  34. TBool UpdateScrollBars();
  35. void ClearScreen();
  36. void Redraw(const TRect &aRect);
  37. void Lf();
  38. protected:
  39.     void FocusChanged(TDrawNow aDrawNow);
  40. private:
  41. CEikConsoleScreen* iConsole;
  42. TInt iHistory;
  43. };
  44. //
  45. // class CTcpUdpView
  46. //
  47. class CTcpUdpView : public CCoeControl, public MCoeControlBrushContext
  48. {
  49. public:
  50. ~CTcpUdpView();
  51.     void ConstructL(const TRect& aRect);
  52. void Start();
  53. void Stop();
  54. void Write(const TDesC &aMsg);
  55. inline CRunEngine *Engine()
  56. { return iEngine;};
  57. inline CConsoleControl *Console()
  58. { return iConsole;};
  59. void ClearScreen();
  60.     void UpdateBusyMsg();
  61. void DynInitMenuPaneL(TInt aMenuId,CEikMenuPane* aMenuPane);
  62. private: // from CCoeControl
  63. void Draw(const TRect& /*aRect*/) const;
  64. //Component Controls
  65. void CreateBigConsoleL(TInt aFlags);
  66. private:
  67. CConsoleControl *iConsole;
  68. CRunEngine *iEngine;
  69. };
  70. //
  71. // CTcpUdpAppUi
  72. //
  73. class CTcpUdpAppUi : public CEikAppUi
  74. {
  75. public:
  76.     void ConstructL();
  77. ~CTcpUdpAppUi();
  78. private: // from CEikAppUi
  79. void HandleCommandL(TInt aCommand);
  80. TBool LaunchOptionsDialogL(CRunEngine* aEngine);
  81. void LaunchAboutDialogL();
  82. void DynInitMenuPaneL(TInt aMenuId,CEikMenuPane* aMenuPane);
  83. void RestorePreferencesL(TPreferences &aPreferences);
  84. void StorePreferencesL(const TPreferences &aPreferences);
  85. private:
  86.     CTcpUdpView* iAppView;
  87. };
  88. //
  89. // CTcpUdpDocument
  90. //
  91. class CTcpUdpDocument : public CEikDocument
  92. {
  93. public:
  94. // construct/destruct
  95. CTcpUdpDocument(CEikApplication& aApp);
  96. private: // from CEikDocument
  97. CEikAppUi* CreateAppUiL();
  98. };
  99. //
  100. // CTcpUdpApplication
  101. //
  102. class CTcpUdpApplication : public CEikApplication
  103. {
  104. private: // from CApaApplication
  105. CApaDocument* CreateDocumentL();
  106. TUid AppDllUid() const;
  107. };
  108. /// DIALOG CLASSES
  109. class COptionsDialog : public CEikDialog
  110. {
  111. public:
  112. COptionsDialog(CRunEngine* aEngine);
  113. private:
  114. TBool OkToExitL(TInt);
  115. void PreLayoutDynInitL();
  116. private:
  117. CRunEngine* iEngine;
  118. };
  119. #endif