Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

76 lines
1.8 KiB

  1. /*++
  2. Copyright (c) 2000 Microsoft Corporation
  3. Module Name:
  4. RemoteDesktopClientSession
  5. Abstract:
  6. RemoteDesktopClientSession manages the client side GUI for the application
  7. hostiving the Salem ActiveX control.
  8. Author:
  9. Marc Reyhner 7/11/2000
  10. --*/
  11. #ifndef __REMOTEDESKTOPCLIENTSESSION_H__
  12. #define __REMOTEDESKTOPCLIENTSESSION_H__
  13. #include "stdafx.h"
  14. #include "rdchost.h"
  15. #include <atlwin.h>
  16. #include "ApprovalDialog.h"
  17. #include "StaticOkDialog.h" // Added by ClassView
  18. // A forward declaration of the event sink.
  19. class CRemoteDesktopClientEventSink;
  20. ////////////////////////////////////////////////
  21. //
  22. // CRemoteDesktopClientSession
  23. //
  24. // This manages all of the client side GUI.
  25. //
  26. class CRemoteDesktopClientSession
  27. {
  28. private:
  29. VOID DoMessageLoop();
  30. static LRESULT CALLBACK _WindowProc(HWND hWnd, UINT uMsg,
  31. WPARAM wParam, LPARAM lParam);
  32. // All the message handler functions.
  33. VOID OnAbout();
  34. LRESULT OnCommand(WPARAM wParam, LPARAM lParam);
  35. LRESULT OnCreate(HWND hWnd);
  36. VOID OnDestroy();
  37. VOID OnSetFocus();
  38. VOID OnSize(WORD width, WORD height);
  39. HINSTANCE m_hInstance;
  40. HWND m_hWnd;
  41. HWND m_hRdcHostWnd;
  42. ISAFRemoteDesktopClient *m_RemDeskClient;
  43. CRemoteDesktopClientEventSink * m_Sink;
  44. CApprovalDialog m_ApprovalDlg;
  45. CStaticOkDialog m_AboutDlg;
  46. public:
  47. CRemoteDesktopClientSession(HINSTANCE hInstance);
  48. virtual ~CRemoteDesktopClientSession();
  49. VOID DoClientSession(BSTR parms);
  50. // These two methods are meant to be used by either the event
  51. // sink or the dialogs not the user of the class.
  52. VOID ShowRemdeskControl();
  53. VOID ConnectRemoteDesktop();
  54. // Let the event sink have access to the member variables
  55. friend class CRemoteDesktopClientEventSink;
  56. };
  57. #endif