Client interface. More...
#include <IClient.h>
Inherits IScreen.
Inherited by CBaseClientProxy, and CClient.
Public Member Functions | |
virtual void * | getEventTarget () const =0 |
Get event target. | |
virtual bool | getClipboard (ClipboardID id, IClipboard *) const =0 |
Get clipboard. | |
virtual void | getShape (SInt32 &x, SInt32 &y, SInt32 &width, SInt32 &height) const =0 |
Get screen shape. | |
virtual void | getCursorPos (SInt32 &x, SInt32 &y) const =0 |
Get cursor position. | |
manipulators | |
virtual void | enter (SInt32 xAbs, SInt32 yAbs, UInt32 seqNum, KeyModifierMask mask, bool forScreensaver)=0 |
Enter screen. | |
virtual bool | leave ()=0 |
Leave screen. | |
virtual void | setClipboard (ClipboardID, const IClipboard *)=0 |
Set clipboard. | |
virtual void | grabClipboard (ClipboardID)=0 |
Grab clipboard. | |
virtual void | setClipboardDirty (ClipboardID, bool dirty)=0 |
Mark clipboard dirty. | |
virtual void | keyDown (KeyID id, KeyModifierMask, KeyButton)=0 |
Notify of key press. | |
virtual void | keyRepeat (KeyID id, KeyModifierMask, SInt32 count, KeyButton)=0 |
Notify of key repeat. | |
virtual void | keyUp (KeyID id, KeyModifierMask, KeyButton)=0 |
Notify of key release. | |
virtual void | mouseDown (ButtonID id)=0 |
Notify of mouse press. | |
virtual void | mouseUp (ButtonID id)=0 |
Notify of mouse release. | |
virtual void | mouseMove (SInt32 xAbs, SInt32 yAbs)=0 |
Notify of mouse motion. | |
virtual void | mouseRelativeMove (SInt32 xRel, SInt32 yRel)=0 |
Notify of mouse motion. | |
virtual void | mouseWheel (SInt32 xDelta, SInt32 yDelta)=0 |
Notify of mouse wheel motion. | |
virtual void | screensaver (bool activate)=0 |
Notify of screen saver change. | |
virtual void | resetOptions ()=0 |
Notify of options changes. | |
virtual void | setOptions (const COptionsList &options)=0 |
Notify of options changes. | |
accessors | |
virtual CString | getName () const =0 |
Get client name. |
Client interface.
This interface defines the methods necessary for the server to communicate with a client.
Definition at line 30 of file IClient.h.
virtual void IClient::enter | ( | SInt32 | xAbs, | |
SInt32 | yAbs, | |||
UInt32 | seqNum, | |||
KeyModifierMask | mask, | |||
bool | forScreensaver | |||
) | [pure virtual] |
Enter screen.
Enter the screen. The cursor should be warped to xAbs
,yAbs. mask
is the expected toggle button state and the client should update its state to match. forScreensaver
is true iff the screen is being entered because the screen saver is starting. Subsequent clipboard events should report seqNum
.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual bool IClient::getClipboard | ( | ClipboardID | id, | |
IClipboard * | ||||
) | const [pure virtual] |
Get clipboard.
Save the contents of the clipboard indicated by id
and return true iff successful.
Implements IScreen.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::getCursorPos | ( | SInt32 & | x, | |
SInt32 & | y | |||
) | const [pure virtual] |
Get cursor position.
Return the current position of the cursor in x
and y
.
Implements IScreen.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void* IClient::getEventTarget | ( | ) | const [pure virtual] |
Get event target.
Returns the target used for events created by this object.
Implements IScreen.
Implemented in CClient, CBaseClientProxy, CClientProxy, and CPrimaryClient.
virtual CString IClient::getName | ( | ) | const [pure virtual] |
virtual void IClient::getShape | ( | SInt32 & | x, | |
SInt32 & | y, | |||
SInt32 & | width, | |||
SInt32 & | height | |||
) | const [pure virtual] |
Get screen shape.
Return the position of the upper-left corner of the screen in x
and y
and the size of the screen in width
and height
.
Implements IScreen.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::grabClipboard | ( | ClipboardID | ) | [pure virtual] |
Grab clipboard.
Grab (i.e. take ownership of) the client's clipboard. Since this is called when another client takes ownership of the clipboard it implies that the client's clipboard is out of date.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::keyDown | ( | KeyID | id, | |
KeyModifierMask | , | |||
KeyButton | ||||
) | [pure virtual] |
Notify of key press.
Synthesize key events to generate a press of key id
. If possible match the given modifier mask. The KeyButton identifies the physical key on the server that generated this key down. The client must ensure that a key up or key repeat that uses the same KeyButton will synthesize an up or repeat for the same client key synthesized by keyDown().
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, CClientProxy1_1, and CPrimaryClient.
virtual void IClient::keyRepeat | ( | KeyID | id, | |
KeyModifierMask | , | |||
SInt32 | count, | |||
KeyButton | ||||
) | [pure virtual] |
Notify of key repeat.
Synthesize key events to generate a press and release of key id
count
times. If possible match the given modifier mask.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, CClientProxy1_1, and CPrimaryClient.
virtual void IClient::keyUp | ( | KeyID | id, | |
KeyModifierMask | , | |||
KeyButton | ||||
) | [pure virtual] |
Notify of key release.
Synthesize key events to generate a release of key id
. If possible match the given modifier mask.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, CClientProxy1_1, and CPrimaryClient.
virtual bool IClient::leave | ( | ) | [pure virtual] |
Leave screen.
Leave the screen. Return false iff the user may not leave the client's screen (because, for example, a button is down).
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::mouseDown | ( | ButtonID | id | ) | [pure virtual] |
Notify of mouse press.
Synthesize mouse events to generate a press of mouse button id
.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::mouseMove | ( | SInt32 | xAbs, | |
SInt32 | yAbs | |||
) | [pure virtual] |
Notify of mouse motion.
Synthesize mouse events to generate mouse motion to the absolute screen position xAbs
,yAbs.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::mouseRelativeMove | ( | SInt32 | xRel, | |
SInt32 | yRel | |||
) | [pure virtual] |
Notify of mouse motion.
Synthesize mouse events to generate mouse motion by the relative amount xRel
,yRel.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, CClientProxy1_2, and CPrimaryClient.
virtual void IClient::mouseUp | ( | ButtonID | id | ) | [pure virtual] |
Notify of mouse release.
Synthesize mouse events to generate a release of mouse button id
.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::mouseWheel | ( | SInt32 | xDelta, | |
SInt32 | yDelta | |||
) | [pure virtual] |
Notify of mouse wheel motion.
Synthesize mouse events to generate mouse wheel motion of xDelta
and yDelta
. Deltas are positive for motion away from the user or to the right and negative for motion towards the user or to the left. Each wheel click should generate a delta of +/-120.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, CClientProxy1_3, and CPrimaryClient.
virtual void IClient::resetOptions | ( | ) | [pure virtual] |
Notify of options changes.
Reset all options to their default values.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::setClipboard | ( | ClipboardID | , | |
const IClipboard * | ||||
) | [pure virtual] |
Set clipboard.
Update the client's clipboard. This implies that the client's clipboard is now up to date. If the client's clipboard was already known to be up to date then this may do nothing. data
has marshalled clipboard data.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::setClipboardDirty | ( | ClipboardID | , | |
bool | dirty | |||
) | [pure virtual] |
Mark clipboard dirty.
Mark the client's clipboard as dirty (out of date) or clean (up to date).
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.
virtual void IClient::setOptions | ( | const COptionsList & | options | ) | [pure virtual] |
Notify of options changes.
Set options to given values. Ignore unknown options and don't modify our options that aren't given in options
.
Implemented in CClient, CBaseClientProxy, CClientProxy, CClientProxy1_0, and CPrimaryClient.