#include "remoteview.h"
#include "vncclientthread.h"
-class KConfigGroup{};
+class KConfigGroup {};
#include <QClipboard>
-#include <QTextEdit>
extern "C" {
#include <rfb/rfbclient.h>
explicit VncView(QWidget *parent = 0, const KUrl &url = KUrl(), RemoteView::Quality quality = RemoteView::Medium, int listen_port = 0);
~VncView();
- QSize framebufferSize();
+ QSize framebufferSize() const;
QSize sizeHint() const;
QSize minimumSizeHint() const;
- void startQuitting();
- bool isQuitting();
+ bool isQuitting() const;
+ qreal zoomFactor() const { return m_horizontalFactor;} //assumes fixed aspect ratio
void reloadSettings();
bool start();
bool supportsScaling() const;
bool supportsLocalCursor() const;
-
+
void setQuality(int q);
void setViewOnly(bool viewOnly);
void showDotCursor(DotCursorState state);
-
+ void useFastTransformations(bool enabled);
+ QPoint cursorPosition() const { return QPoint(cursor_x, cursor_y); }
+ void setDisplayOff(bool off) { display_off = off; }
+
public slots:
- void enableScaling(bool scale); //TODO: i may want to remove this
void setZoomLevel(int level = -1); //'level' doesn't correspond to actual magnification, though mapping is done here
void sendKey(Qt::Key key);
void sendKeySequence(QKeySequence keys);
- void forceFullRepaint();
+ void startQuitting();
protected:
void paintEvent(QPaintEvent *event);
QMap<unsigned int, bool> m_mods;
int m_x, m_y, m_w, m_h;
int cursor_x, cursor_y;
- int listen_port;
- bool m_repaint;
bool m_quitFlag;
bool m_firstPasswordTry;
bool m_dontSendClipboard;
qreal m_verticalFactor;
QImage m_frame;
bool m_forceLocalCursor;
- bool force_full_repaint;
- RemoteView::Quality quality;
int left_zoom, right_zoom;
bool disable_tapping;
+ RemoteView::Quality quality;
+ int listen_port;
+ Qt::TransformationMode transformation_mode;
+ bool display_off;
void keyEventHandler(QKeyEvent *e);
void unpressModifiers();
void wheelEventHandler(QWheelEvent *event);
-
+
private slots:
void mouseEventHandler(QMouseEvent *event = 0);