deskflow/synergy/IServer.h
crs f48a5fe387 checkpoint. still refactoring. merged common code from primary
screens into CPrimaryScreen and merged common code from secondary
screens into CSecondaryScreen.  changed is-a relationship to a
has-a between the primary and secondary screen classes and the
generic platform dependent screen class to avoid multiple
inheritance of implementation.  also standardized the interface
for those generic screen classes.  adding a platform now involves
implementing simpler interfaces:  IScreen for the generic screen,
IScreenEventHandler and some methods of CPrimaryScreen for the
primary screen, and IScreenEventHandler and some methods of
CSecondaryScreen for the secondary screen.  did X11 platform
but not win32 platform.
2002-07-13 22:00:38 +00:00

34 lines
1 KiB
C++

#ifndef ISERVER_H
#define ISERVER_H
#include "IInterface.h"
#include "ClipboardTypes.h"
#include "CString.h"
class CClientInfo;
// the server interface. this provides all the methods necessary for
// clients to communicate with the server. note that the methods
// in this interface are similar to the methods in IScreenReceiver but
// include extra parameters. this interface is suitable for server-side
// client proxies. client-side objects should use the IScreenReceiver
// interface since the extra parameters are meaningless on the client-side.
class IServer : public IInterface {
public:
// manipulators
// notify of client info change
virtual void onInfoChanged(const CString& clientName,
const CClientInfo&) = 0;
// notify of clipboard grab. returns true if the grab was honored,
// false otherwise.
virtual bool onGrabClipboard(const CString& clientName,
ClipboardID, UInt32 seqNum) = 0;
// notify of new clipboard data
virtual void onClipboardChanged(ClipboardID,
UInt32 seqNum, const CString& data) = 0;
};
#endif