author | treke <treke> | 2002-11-17 18:30:27 (UTC) |
---|---|---|
committer | treke <treke> | 2002-11-17 18:30:27 (UTC) |
commit | bdecd392488dee486d302f683b91acf89708d4a6 (patch) (side-by-side diff) | |
tree | 987ed4ddd7c5d0df0ef03f7a949f74837edc9ec7 | |
parent | 44ffc30c0317e47f91ee20b3dc0b719a74d7991c (diff) | |
download | opie-bdecd392488dee486d302f683b91acf89708d4a6.zip opie-bdecd392488dee486d302f683b91acf89708d4a6.tar.gz opie-bdecd392488dee486d302f683b91acf89708d4a6.tar.bz2 |
Resized a couple dialogs to fit better. Now can synthesize right click
events from the corner menu. Still having problems with double click though
-rw-r--r-- | noncore/comm/keypebble/krfbcanvas.cpp | 40 | ||||
-rw-r--r-- | noncore/comm/keypebble/krfbcanvas.h | 4 | ||||
-rw-r--r-- | noncore/comm/keypebble/kvnc.cpp | 16 | ||||
-rw-r--r-- | noncore/comm/keypebble/kvnc.h | 2 | ||||
-rw-r--r-- | noncore/comm/keypebble/kvncbookmarkdlgbase.ui | 7 | ||||
-rw-r--r-- | noncore/comm/keypebble/kvncconndlgbase.ui | 314 |
6 files changed, 243 insertions, 140 deletions
diff --git a/noncore/comm/keypebble/krfbcanvas.cpp b/noncore/comm/keypebble/krfbcanvas.cpp index 918ce8b..049bbd4 100644 --- a/noncore/comm/keypebble/krfbcanvas.cpp +++ b/noncore/comm/keypebble/krfbcanvas.cpp @@ -11,4 +11,5 @@ #include <qaction.h> #include <qpixmap.h> +#include <qpoint.h> #include <qapplication.h> #include <qmainwindow.h> @@ -28,4 +29,7 @@ KRFBCanvas::KRFBCanvas( QWidget *parent, const char *name ) viewport()->setFocusPolicy( QWidget::StrongFocus ); viewport()->setFocus(); + + nextRightClick=0; + nextDoubleClick=0; } @@ -125,14 +129,35 @@ void KRFBCanvas::viewportUpdate( int x, int y, int w, int h ) void KRFBCanvas::contentsMousePressEvent( QMouseEvent *e ) { - if ( loggedIn_ ) + + if (nextDoubleClick) { + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),LeftButton,LeftButton)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),LeftButton,0)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),LeftButton,0)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),NoButton,NoButton)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),NoButton,0)); + } if (nextRightClick) { + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),RightButton,RightButton)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),RightButton,0)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonPress, e->pos(),NoButton,NoButton)); + connection_->buffer()->mouseEvent( &QMouseEvent(QEvent::MouseButtonRelease, e->pos(),NoButton,0)); + } else if ( loggedIn_ ) connection_->buffer()->mouseEvent( e ); + + qDebug("Press"); + qDebug(QString::number(e->type()==QEvent::MouseButtonPress)); } void KRFBCanvas::contentsMouseReleaseEvent( QMouseEvent *e ) { - if ( loggedIn_ ) + if ( loggedIn_ && !nextRightClick && !nextDoubleClick) { connection_->buffer()->mouseEvent( e ); } + nextRightClick=0; + nextDoubleClick=0; + qDebug("Release"); + qDebug(QString::number(e->button())); +} + void KRFBCanvas::contentsMouseMoveEvent( QMouseEvent *e ) { @@ -168,5 +193,4 @@ void KRFBCanvas::sendCtlAltDel( void) { - qDebug("Here"); if ( loggedIn_ ) { connection_->buffer()->keyPressEvent( &QKeyEvent(QEvent::KeyPress,Qt::Key_Control, 0,0)); @@ -178,2 +202,12 @@ void KRFBCanvas::sendCtlAltDel( void) } } + +void KRFBCanvas::markDoubleClick( void) +{ + nextRightClick=1; +} + +void KRFBCanvas::markRightClick( void) +{ + nextRightClick=1; +} diff --git a/noncore/comm/keypebble/krfbcanvas.h b/noncore/comm/keypebble/krfbcanvas.h index cd3047c..5c7b949 100644 --- a/noncore/comm/keypebble/krfbcanvas.h +++ b/noncore/comm/keypebble/krfbcanvas.h @@ -33,4 +33,6 @@ public slots: void bell(); void sendCtlAltDel(void); + void markRightClick(void); + void markDoubleClick(void); protected: @@ -49,4 +51,6 @@ protected slots: private: + int nextRightClick; + int nextDoubleClick; KRFBConnection *connection_; QString password; diff --git a/noncore/comm/keypebble/kvnc.cpp b/noncore/comm/keypebble/kvnc.cpp index ef57366..abdb1e0 100644 --- a/noncore/comm/keypebble/kvnc.cpp +++ b/noncore/comm/keypebble/kvnc.cpp @@ -184,4 +184,16 @@ void KVNC::setupActions() disconnectAction->addTo( cornerMenu ); disconnectAction->setEnabled( false ); + + doubleClickAction = new QAction( tr("Next Click is Double Click"), QString::null, 0, 0 ); + connect( doubleClickAction, SIGNAL(activated()), + canvas, SLOT( markDoubleClick() ) ); + doubleClickAction->addTo( cornerMenu ); + doubleClickAction->setEnabled( false ); + + rightClickAction = new QAction( tr("Next Click is Right Click"), QString::null, 0, 0 ); + connect( rightClickAction, SIGNAL(activated()), + canvas, SLOT( markRightClick() ) ); + rightClickAction->addTo( cornerMenu ); + rightClickAction->setEnabled( false ); } @@ -239,4 +251,6 @@ void KVNC::connected() disconnectAction->setEnabled( true ); fullScreenAction->setEnabled( true ); + doubleClickAction->setEnabled( false ); + rightClickAction->setEnabled( true ); stack->raiseWidget(canvas); bar->hide(); @@ -259,4 +273,6 @@ void KVNC::disconnected() disconnectAction->setEnabled( false ); fullScreenAction->setEnabled( false ); + doubleClickAction->setEnabled( false ); + rightClickAction->setEnabled( false ); stack->raiseWidget(bookmarkSelector); bar->show(); diff --git a/noncore/comm/keypebble/kvnc.h b/noncore/comm/keypebble/kvnc.h index 82a24fc..51c7151 100644 --- a/noncore/comm/keypebble/kvnc.h +++ b/noncore/comm/keypebble/kvnc.h @@ -58,4 +58,6 @@ private: QAction *ctlAltDelAction;; QAction *connectAction; + QAction *rightClickAction; + QAction *doubleClickAction; QToolBar * bar; diff --git a/noncore/comm/keypebble/kvncbookmarkdlgbase.ui b/noncore/comm/keypebble/kvncbookmarkdlgbase.ui index 69d8a14..4ca4f26 100644 --- a/noncore/comm/keypebble/kvncbookmarkdlgbase.ui +++ b/noncore/comm/keypebble/kvncbookmarkdlgbase.ui @@ -12,5 +12,5 @@ <x>0</x> <y>0</y> - <width>580</width> + <width>576</width> <height>480</height> </rect> @@ -20,8 +20,11 @@ <string>Bookmarks</string> </property> + <property> + <name>layoutMargin</name> + </property> <vbox> <property stdset="1"> <name>margin</name> - <number>11</number> + <number>0</number> </property> <property stdset="1"> diff --git a/noncore/comm/keypebble/kvncconndlgbase.ui b/noncore/comm/keypebble/kvncconndlgbase.ui index de3f785..003aad2 100644 --- a/noncore/comm/keypebble/kvncconndlgbase.ui +++ b/noncore/comm/keypebble/kvncconndlgbase.ui @@ -12,6 +12,6 @@ <x>0</x> <y>0</y> - <width>256</width> - <height>242</height> + <width>253</width> + <height>408</height> </rect> </property> @@ -23,5 +23,14 @@ <name>layoutMargin</name> </property> - <widget> + <grid> + <property stdset="1"> + <name>margin</name> + <number>11</number> + </property> + <property stdset="1"> + <name>spacing</name> + <number>6</number> + </property> + <widget row="0" column="0" > <class>QTabWidget</class> <property stdset="1"> @@ -29,13 +38,4 @@ <cstring>TabWidget3</cstring> </property> - <property stdset="1"> - <name>geometry</name> - <rect> - <x>0</x> - <y>0</y> - <width>266</width> - <height>233</height> - </rect> - </property> <widget> <class>QWidget</class> @@ -57,5 +57,5 @@ <number>6</number> </property> - <widget row="2" column="1" rowspan="1" colspan="2" > + <widget row="2" column="1" > <class>QLineEdit</class> <property stdset="1"> @@ -83,4 +83,11 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>Show Password</string> @@ -102,5 +109,5 @@ </property> </widget> - <widget row="4" column="1" rowspan="1" colspan="2" > + <widget row="4" column="1" > <class>QLineEdit</class> <property stdset="1"> @@ -124,5 +131,5 @@ </property> </widget> - <widget row="0" column="1" rowspan="1" colspan="2" > + <widget row="0" column="1" > <class>QLineEdit</class> <property stdset="1"> @@ -157,5 +164,5 @@ </property> </widget> - <widget row="1" column="1" rowspan="1" colspan="2" > + <widget row="1" column="1" > <class>QSpinBox</class> <property stdset="1"> @@ -164,4 +171,11 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>maxValue</name> <number>500</number> @@ -180,8 +194,8 @@ </property> </widget> - <spacer row="5" column="2" > + <spacer row="5" column="0" > <property> <name>name</name> - <cstring>Spacer2</cstring> + <cstring>Spacer4</cstring> </property> <property stdset="1"> @@ -213,5 +227,5 @@ <string>Options</string> </attribute> - <vbox> + <grid> <property stdset="1"> <name>margin</name> @@ -222,63 +236,48 @@ <number>6</number> </property> - <widget> - <class>QLabel</class> + <widget row="4" column="0" rowspan="1" colspan="3" > + <class>QCheckBox</class> <property stdset="1"> <name>name</name> - <cstring>TextLabel1</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Check for screen updates every:</string> + <cstring>shared</cstring> </property> - </widget> - <widget> - <class>QLayoutWidget</class> <property stdset="1"> - <name>name</name> - <cstring>Layout2</cstring> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> </property> - <hbox> <property stdset="1"> - <name>margin</name> - <number>0</number> + <name>text</name> + <string>Request shared session</string> </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> + <property> + <name>whatsThis</name> + <string>Allow other users to connect to the VNC server</string> </property> - <widget> - <class>QSpinBox</class> - <property stdset="1"> + </widget> + <spacer row="6" column="1" > + <property> <name>name</name> - <cstring>timeBox</cstring> + <cstring>Spacer2</cstring> </property> <property stdset="1"> - <name>maxValue</name> - <number>500</number> + <name>orientation</name> + <enum>Vertical</enum> </property> <property stdset="1"> - <name>minValue</name> - <number>1</number> + <name>sizeType</name> + <enum>Expanding</enum> </property> <property> - <name>whatsThis</name> - <string>Delay between requesting updates from the server</string> - </property> - </widget> - <widget> - <class>QLabel</class> - <property stdset="1"> - <name>name</name> - <cstring>TextLabel2</cstring> - </property> - <property stdset="1"> - <name>text</name> - <string>Milliseconds</string> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> </property> - </widget> - </hbox> - </widget> - <widget> + </spacer> + <widget row="2" column="0" rowspan="1" colspan="3" > <class>QCheckBox</class> <property stdset="1"> @@ -287,4 +286,11 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>Request 8-bit session</string> @@ -295,46 +301,31 @@ </property> </widget> - <widget> - <class>QCheckBox</class> + <widget row="1" column="0" rowspan="1" colspan="2" > + <class>QSpinBox</class> <property stdset="1"> <name>name</name> - <cstring>deIconify</cstring> + <cstring>timeBox</cstring> </property> <property stdset="1"> - <name>text</name> - <string>Raise on bell</string> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> </property> - </widget> - <widget> - <class>QCheckBox</class> <property stdset="1"> - <name>name</name> - <cstring>shared</cstring> + <name>maxValue</name> + <number>500</number> </property> <property stdset="1"> - <name>text</name> - <string>Request shared session</string> + <name>minValue</name> + <number>1</number> </property> <property> <name>whatsThis</name> - <string>Allow other users to connect to the VNC server</string> + <string>Delay between requesting updates from the server</string> </property> </widget> - <widget> - <class>QLayoutWidget</class> - <property stdset="1"> - <name>name</name> - <cstring>Layout3</cstring> - </property> - <hbox> - <property stdset="1"> - <name>margin</name> - <number>0</number> - </property> - <property stdset="1"> - <name>spacing</name> - <number>6</number> - </property> - <widget> + <widget row="5" column="0" > <class>QComboBox</class> <item> @@ -360,4 +351,11 @@ <cstring>scaleFactor</cstring> </property> + <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> <property> <name>whatsThis</name> @@ -365,5 +363,5 @@ </property> </widget> - <widget> + <widget row="5" column="1" rowspan="1" colspan="2" > <class>QLabel</class> <property stdset="1"> @@ -376,28 +374,45 @@ </property> </widget> - </hbox> + <widget row="1" column="2" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel2</cstring> + </property> + <property stdset="1"> + <name>text</name> + <string>Milliseconds</string> + </property> </widget> - <spacer> - <property> + <widget row="3" column="0" rowspan="1" colspan="3" > + <class>QCheckBox</class> + <property stdset="1"> <name>name</name> - <cstring>Spacer2</cstring> + <cstring>deIconify</cstring> </property> <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> </property> <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> + <name>text</name> + <string>Raise on bell</string> </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> + </widget> + <widget row="0" column="0" rowspan="1" colspan="3" > + <class>QLabel</class> + <property stdset="1"> + <name>name</name> + <cstring>TextLabel1</cstring> </property> - </spacer> - </vbox> + <property stdset="1"> + <name>text</name> + <string>Check for screen updates every:</string> + </property> + </widget> + </grid> </widget> <widget> @@ -411,5 +426,5 @@ <string>Encodings</string> </attribute> - <vbox> + <grid> <property stdset="1"> <name>margin</name> @@ -420,5 +435,26 @@ <number>6</number> </property> - <widget> + <spacer row="4" column="1" > + <property> + <name>name</name> + <cstring>Spacer3</cstring> + </property> + <property stdset="1"> + <name>orientation</name> + <enum>Vertical</enum> + </property> + <property stdset="1"> + <name>sizeType</name> + <enum>Expanding</enum> + </property> + <property> + <name>sizeHint</name> + <size> + <width>20</width> + <height>20</height> + </size> + </property> + </spacer> + <widget row="0" column="0" rowspan="1" colspan="2" > <class>QCheckBox</class> <property stdset="1"> @@ -431,9 +467,16 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>Hextile encoding</string> </property> </widget> - <widget> + <widget row="1" column="0" rowspan="1" colspan="2" > <class>QCheckBox</class> <property stdset="1"> @@ -446,9 +489,16 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>CoRRE encoding</string> </property> </widget> - <widget> + <widget row="2" column="0" > <class>QCheckBox</class> <property stdset="1"> @@ -461,9 +511,16 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>RRE encoding</string> </property> </widget> - <widget> + <widget row="3" column="0" rowspan="1" colspan="2" > <class>QCheckBox</class> <property stdset="1"> @@ -472,4 +529,11 @@ </property> <property stdset="1"> + <name>sizePolicy</name> + <sizepolicy> + <hsizetype>7</hsizetype> + <vsizetype>0</vsizetype> + </sizepolicy> + </property> + <property stdset="1"> <name>text</name> <string>Copy rectangle encoding</string> @@ -480,28 +544,8 @@ </property> </widget> - <spacer> - <property> - <name>name</name> - <cstring>Spacer3</cstring> - </property> - <property stdset="1"> - <name>orientation</name> - <enum>Vertical</enum> - </property> - <property stdset="1"> - <name>sizeType</name> - <enum>Expanding</enum> - </property> - <property> - <name>sizeHint</name> - <size> - <width>20</width> - <height>20</height> - </size> - </property> - </spacer> - </vbox> + </grid> </widget> </widget> + </grid> </widget> <tabstops> |