summaryrefslogtreecommitdiff
path: root/library/qpeapplication.cpp
authorzecke <zecke>2004-08-24 13:38:23 (UTC)
committer zecke <zecke>2004-08-24 13:38:23 (UTC)
commit0a141c4a9719aa273867ad45c4293208545489b1 (patch) (unidiff)
tree4059ae180d00d33cc31dd9083d38a14b946253a2 /library/qpeapplication.cpp
parent102bb2b65c71da12c4f9f1ce7a5d1b37b6eb50ee (diff)
downloadopie-0a141c4a9719aa273867ad45c4293208545489b1.zip
opie-0a141c4a9719aa273867ad45c4293208545489b1.tar.gz
opie-0a141c4a9719aa273867ad45c4293208545489b1.tar.bz2
Add RightOn Hold Visual Feedback and integrate it
into QPEApplication Icons and Config Option will be comitted by WIMPIE
Diffstat (limited to 'library/qpeapplication.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--library/qpeapplication.cpp32
1 files changed, 29 insertions, 3 deletions
diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp
index 59ca61b..acad81d 100644
--- a/library/qpeapplication.cpp
+++ b/library/qpeapplication.cpp
@@ -97,8 +97,12 @@
97#endif 97#endif
98#include "qt_override_p.h" 98#include "qt_override_p.h"
99 99
100#include <qpe/rohfeedback.h>
101
102
100static bool useBigPixmaps = 0; 103static bool useBigPixmaps = 0;
101 104
105
102class HackWidget : public QWidget 106class HackWidget : public QWidget
103{ 107{
104public: 108public:
@@ -126,6 +130,7 @@ public:
126 fontSize = cfg.readNumEntry( "FontSize", 10 ); 130 fontSize = cfg.readNumEntry( "FontSize", 10 );
127 smallIconSize = cfg.readNumEntry( "SmallIconSize", 14 ); 131 smallIconSize = cfg.readNumEntry( "SmallIconSize", 14 );
128 bigIconSize = cfg.readNumEntry( "BigIconSize", 32 ); 132 bigIconSize = cfg.readNumEntry( "BigIconSize", 32 );
133 RoH = 0;
129 } 134 }
130 135
131 int presstimer; 136 int presstimer;
@@ -492,6 +497,8 @@ static void qpe_show_dialog( QDialog* d, bool nomax )
492 } 497 }
493 } 498 }
494 } 499 }
500
501 Opie::Internal::RoHFeedback * RoH;
495}; 502};
496 503
497class ResourceMimeFactory : public QMimeSourceFactory 504class ResourceMimeFactory : public QMimeSourceFactory
@@ -1205,7 +1212,7 @@ QPEApplication::~QPEApplication()
1205 delete sysChannel; 1212 delete sysChannel;
1206 delete pidChannel; 1213 delete pidChannel;
1207#endif 1214#endif
1208 1215 delete d->RoH;
1209 delete d; 1216 delete d;
1210} 1217}
1211 1218
@@ -2023,16 +2030,30 @@ bool QPEApplication::eventFilter( QObject *o, QEvent *e )
2023 switch ( me->type() ) { 2030 switch ( me->type() ) {
2024 case QEvent::MouseButtonPress: 2031 case QEvent::MouseButtonPress:
2025 if ( me->button() == LeftButton ) { 2032 if ( me->button() == LeftButton ) {
2026 if (!d->presstimer )
2027 d->presstimer = startTimer(500); // #### pref.
2028 d->presswidget = (QWidget*)o; 2033 d->presswidget = (QWidget*)o;
2029 d->presspos = me->pos(); 2034 d->presspos = me->pos();
2030 d->rightpressed = FALSE; 2035 d->rightpressed = FALSE;
2036 // just for the time being
2037 static int pref = 500;
2038#ifdef WITHROHFEEDBACK
2039 if( ! d->RoH )
2040 d->RoH = new Opie::Internal::RoHFeedback;
2041
2042 d->RoH->init( me->globalPos(), d->presswidget );
2043 pref = d->RoH->delay();
2044#endif
2045 if (!d->presstimer )
2046 d->presstimer = startTimer( pref ); // #### pref.
2047
2031 } 2048 }
2032 break; 2049 break;
2033 case QEvent::MouseMove: 2050 case QEvent::MouseMove:
2034 if (d->presstimer && (me->pos() - d->presspos).manhattanLength() > 8) { 2051 if (d->presstimer && (me->pos() - d->presspos).manhattanLength() > 8) {
2035 killTimer(d->presstimer); 2052 killTimer(d->presstimer);
2053#ifdef WITHROHFEEDBACK
2054 if( d->RoH )
2055 d->RoH->stop( );
2056#endif
2036 d->presstimer = 0; 2057 d->presstimer = 0;
2037 } 2058 }
2038 break; 2059 break;
@@ -2040,6 +2061,10 @@ bool QPEApplication::eventFilter( QObject *o, QEvent *e )
2040 if ( me->button() == LeftButton ) { 2061 if ( me->button() == LeftButton ) {
2041 if ( d->presstimer ) { 2062 if ( d->presstimer ) {
2042 killTimer(d->presstimer); 2063 killTimer(d->presstimer);
2064#ifdef WITHROHFEEDBACK
2065 if( d->RoH )
2066 d->RoH->stop( );
2067#endif
2043 d->presstimer = 0; 2068 d->presstimer = 0;
2044 } 2069 }
2045 if ( d->rightpressed && d->presswidget ) { 2070 if ( d->rightpressed && d->presswidget ) {
@@ -2093,6 +2118,7 @@ void QPEApplication::timerEvent( QTimerEvent *e )
2093 killTimer( d->presstimer ); 2118 killTimer( d->presstimer );
2094 d->presstimer = 0; 2119 d->presstimer = 0;
2095 d->rightpressed = TRUE; 2120 d->rightpressed = TRUE;
2121 d->RoH->stop();
2096 } 2122 }
2097} 2123}
2098 2124