diff options
Diffstat (limited to 'win/rfb_win32/SDisplay.h')
-rw-r--r-- | win/rfb_win32/SDisplay.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/win/rfb_win32/SDisplay.h b/win/rfb_win32/SDisplay.h index c1d5c1e2..76ddf50b 100644 --- a/win/rfb_win32/SDisplay.h +++ b/win/rfb_win32/SDisplay.h @@ -52,6 +52,13 @@ namespace rfb { virtual const char* methodName() const = 0; }; + class QueryConnectionHandler { + public: + virtual ~QueryConnectionHandler() {} + virtual void queryConnection(network::Socket* sock, + const char* userName) = 0; + }; + class SDisplay : public SDesktop, WMMonitor::Notifier, Clipboard::Notifier, @@ -65,6 +72,8 @@ namespace rfb { virtual void start(VNCServer* vs); virtual void stop(); + virtual void queryConnection(network::Socket* sock, + const char* userName); virtual void pointerEvent(const Point& pos, int buttonmask); virtual void keyEvent(rdr::U32 keysym, rdr::U32 keycode, bool down); virtual void clientCutText(const char* str, int len); @@ -86,6 +95,12 @@ namespace rfb { void setStatusLocation(bool* status) {statusLocation = status;} + // -=- Set handler for incoming connections + + void setQueryConnectionHandler(QueryConnectionHandler* qch) { + queryConnectionHandler = qch; + } + static IntParameter updateMethod; static BoolParameter disableLocalInputs; static StringParameter disconnectAction; @@ -150,6 +165,9 @@ namespace rfb { // -=- Where to write the active/inactive indicator to bool* statusLocation; + // -=- Whom to query incoming connections + QueryConnectionHandler* queryConnectionHandler; + unsigned ledState; }; |