00001 // -*- c++ -*- 00002 00003 #ifndef KRFBCANVAS_H 00004 #define KRFBCANVAS_H 00005 00006 #include <qscrollview.h> 00007 #include <qurl.h> 00008 00009 class KRFBConnection; 00010 class KRFBServer; 00011 00016 class KRFBCanvas : public QScrollView 00017 { 00018 Q_OBJECT 00019 public: 00020 KRFBCanvas( QWidget *parent, const char *name=0 ); 00021 ~KRFBCanvas(); 00022 00023 void setConnection( KRFBConnection * ); 00024 KRFBConnection *connection() { return connection_; }; 00025 00026 public slots: 00027 00028 void openConnection (KRFBServer); 00029 void openURL( const QUrl & ); 00030 void closeConnection(); 00031 00032 void refresh(); 00033 void bell(); 00034 void sendCtlAltDel(void); 00035 void markRightClick(void); 00036 void markDoubleClick(void); 00037 00038 protected: 00039 virtual void keyPressEvent( QKeyEvent * ); 00040 virtual void keyReleaseEvent( QKeyEvent * ); 00041 virtual void contentsMousePressEvent( QMouseEvent * ); 00042 virtual void contentsMouseReleaseEvent( QMouseEvent * ); 00043 virtual void contentsMouseMoveEvent( QMouseEvent * ); 00044 00045 virtual void viewportPaintEvent( QPaintEvent *e ); 00046 00047 protected slots: 00048 void loggedIn(); 00049 void viewportUpdate( int x, int y, int w, int h ); 00050 void clipboardChanged(); 00051 00052 private: 00053 int nextRightClick; 00054 int nextDoubleClick; 00055 KRFBConnection *connection_; 00056 QString password; 00057 bool loggedIn_; 00058 }; 00059 00060 #endif // KRFBCANVAS_H
1.4.2