⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 xserverdesktop.h

📁 Informix Table extraction queries have been optimized
💻 H
字号:
/* Copyright (C) 2002-2005 RealVNC Ltd.  All Rights Reserved. *  * This is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. *  * This software is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. *  * You should have received a copy of the GNU General Public License * along with this software; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, * USA. *///// XserverDesktop.h//#ifndef __XSERVERDESKTOP_H__#define __XSERVERDESKTOP_H__#include <rfb/SDesktop.h>#include <rfb/HTTPServer.h>#include <rfb/PixelBuffer.h>#include <rfb/Configuration.h>#include <rfb/VNCServerST.h>#include <rdr/SubstitutingInStream.h>extern "C" {#define class c_class;#include <scrnintstr.h>#include <os.h>#undef class}namespace rfb {  class VNCServerST;}namespace network { class TcpListener; class Socket; }class XserverDesktop : public rfb::SDesktop, public rfb::FullFramePixelBuffer,                       public rfb::ColourMap, public rdr::Substitutor,                       public rfb::VNCServerST::QueryConnectionHandler {public:  XserverDesktop(ScreenPtr pScreen, network::TcpListener* listener,                 network::TcpListener* httpListener_,                 const char* name, void* fbptr);  virtual ~XserverDesktop();  // methods called from X server code  void serverReset(ScreenPtr pScreen);  void setColormap(ColormapPtr cmap);  void setColourMapEntries(ColormapPtr pColormap, int ndef, xColorItem* pdef);  void bell();  void serverCutText(const char* str, int len);  void setCursor(CursorPtr cursor);  void add_changed(RegionPtr reg);  void add_copied(RegionPtr dst, int dx, int dy);  void positionCursor();  void ignoreHooks(bool b) { ignoreHooks_ = b; }  void blockHandler(fd_set* fds);  void wakeupHandler(fd_set* fds, int nfds);  void addClient(network::Socket* sock, bool reverse);  void disconnectClients();  // QueryConnect methods called from X server code  // getQueryTimeout()  //   Returns the timeout associated with a particular  //   connection, identified by an opaque Id passed to the  //   X code earlier.  Also optionally gets the address and  //   name associated with that connection.  //   Returns zero if the Id is not recognised.  int getQueryTimeout(void* opaqueId,                      const char** address=0,                      const char** username=0);  // approveConnection()  //   Used by X server code to supply the result of a query.  void approveConnection(void* opaqueId, bool accept,                         const char* rejectMsg=0);  // rfb::SDesktop callbacks  virtual void pointerEvent(const rfb::Point& pos, int buttonMask);  virtual void keyEvent(rdr::U32 key, bool down);  virtual void clientCutText(const char* str, int len);  virtual rfb::Point getFbSize() { return rfb::Point(width(), height()); }  // rfb::PixelBuffer callbacks  virtual void grabRegion(const rfb::Region& r);  // rfb::ColourMap callbacks  virtual void lookup(int index, int* r, int* g, int* b);  // rdr::Substitutor callback  virtual char* substitute(const char* varName);  // rfb::VNCServerST::QueryConnectionHandler callback  virtual rfb::VNCServerST::queryResult queryConnection(network::Socket* sock,                                                        const char* userName,                                                        char** reason);private:  void setColourMapEntries(int firstColour, int nColours);  static CARD32 deferredUpdateTimerCallback(OsTimerPtr timer, CARD32 now,                                            pointer arg);  void deferUpdate();  ScreenPtr pScreen;  OsTimerPtr deferredUpdateTimer, dummyTimer;  rfb::VNCServerST* server;  rfb::HTTPServer* httpServer;  network::TcpListener* listener;  network::TcpListener* httpListener;  ColormapPtr cmap;  bool deferredUpdateTimerSet;  bool grabbing;  bool ignoreHooks_;  bool directFbptr;  int oldButtonMask;  rfb::Point cursorPos, oldCursorPos;  void* queryConnectId;  rfb::CharArray queryConnectAddress;  rfb::CharArray queryConnectUsername;};#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -