CBaseClientProxy.h

00001 /*
00002  * synergy -- mouse and keyboard sharing utility
00003  * Copyright (C) 2002 Chris Schoeneman
00004  * 
00005  * This package is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU General Public License
00007  * found in the file COPYING that should have accompanied this file.
00008  * 
00009  * This package is distributed in the hope that it will be useful,
00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00012  * GNU General Public License for more details.
00013  */
00014 
00015 #ifndef CBASECLIENTPROXY_H
00016 #define CBASECLIENTPROXY_H
00017 
00018 #include "IClient.h"
00019 #include "CString.h"
00020 
00022 class CBaseClientProxy : public IClient {
00023 public:
00027     CBaseClientProxy(const CString& name);
00028     ~CBaseClientProxy();
00029 
00031 
00032 
00034 
00037     void                setJumpCursorPos(SInt32 x, SInt32 y);
00038 
00040 
00041 
00042 
00044 
00047     void                getJumpCursorPos(SInt32& x, SInt32& y) const;
00048 
00050 
00051     // IScreen
00052     virtual void*       getEventTarget() const = 0;
00053     virtual bool        getClipboard(ClipboardID id, IClipboard*) const = 0;
00054     virtual void        getShape(SInt32& x, SInt32& y,
00055                             SInt32& width, SInt32& height) const = 0;
00056     virtual void        getCursorPos(SInt32& x, SInt32& y) const = 0;
00057 
00058     // IClient overrides
00059     virtual void        enter(SInt32 xAbs, SInt32 yAbs,
00060                             UInt32 seqNum, KeyModifierMask mask,
00061                             bool forScreensaver) = 0;
00062     virtual bool        leave() = 0;
00063     virtual void        setClipboard(ClipboardID, const IClipboard*) = 0;
00064     virtual void        grabClipboard(ClipboardID) = 0;
00065     virtual void        setClipboardDirty(ClipboardID, bool) = 0;
00066     virtual void        keyDown(KeyID, KeyModifierMask, KeyButton) = 0;
00067     virtual void        keyRepeat(KeyID, KeyModifierMask,
00068                             SInt32 count, KeyButton) = 0;
00069     virtual void        keyUp(KeyID, KeyModifierMask, KeyButton) = 0;
00070     virtual void        mouseDown(ButtonID) = 0;
00071     virtual void        mouseUp(ButtonID) = 0;
00072     virtual void        mouseMove(SInt32 xAbs, SInt32 yAbs) = 0;
00073     virtual void        mouseRelativeMove(SInt32 xRel, SInt32 yRel) = 0;
00074     virtual void        mouseWheel(SInt32 xDelta, SInt32 yDelta) = 0;
00075     virtual void        screensaver(bool activate) = 0;
00076     virtual void        resetOptions() = 0;
00077     virtual void        setOptions(const COptionsList& options) = 0;
00078     virtual CString     getName() const;
00079 
00080 private:
00081     CString             m_name;
00082     SInt32              m_x, m_y;
00083 };
00084 
00085 #endif

Generated on Fri Nov 6 00:18:44 2009 for synergy-plus by  doxygen 1.4.7