barrier/synergy/CClient.h

62 lines
1.0 KiB
C
Raw Normal View History

2001-10-06 14:13:28 +00:00
#ifndef CCLIENT_H
#define CCLIENT_H
#include "CString.h"
#include "BasicTypes.h"
class CNetworkAddress;
class IInputStream;
class IOutputStream;
class ISecondaryScreen;
2001-10-06 14:13:28 +00:00
class CClient {
public:
CClient(const CString& clientName);
~CClient();
// manipulators
void run(const CNetworkAddress& serverAddress);
// accessors
private:
void runSession(void*);
2001-10-06 14:13:28 +00:00
// message handlers
void onEnter();
void onLeave();
void onGrabClipboard();
void onScreenSaver();
void onQueryInfo();
void onQueryClipboard();
void onSetClipboard();
void onKeyDown();
void onKeyRepeat();
void onKeyUp();
void onMouseDown();
void onMouseUp();
void onMouseMove();
void onMouseWheel();
private:
class CScreenCleaner {
public:
CScreenCleaner(CClient*, ISecondaryScreen*);
~CScreenCleaner();
private:
ISecondaryScreen* m_screen;
};
2001-10-06 14:13:28 +00:00
private:
CString m_name;
IInputStream* m_input;
2001-10-06 14:13:28 +00:00
IOutputStream* m_output;
ISecondaryScreen* m_screen;
const CNetworkAddress* m_serverAddress;
2001-10-06 14:13:28 +00:00
};
#endif