author | kergoth <kergoth> | 2003-01-26 19:58:41 (UTC) |
---|---|---|
committer | kergoth <kergoth> | 2003-01-26 19:58:41 (UTC) |
commit | 808181587c1cea5a089c75df7d2833f100bddbf1 (patch) (side-by-side diff) | |
tree | 94b59d3b5d649cf9c7a15f76f5b049030684913e | |
parent | f389dd4e3d5ceacb15b5c0b751a618d7586d6c31 (diff) | |
download | opie-808181587c1cea5a089c75df7d2833f100bddbf1.zip opie-808181587c1cea5a089c75df7d2833f100bddbf1.tar.gz opie-808181587c1cea5a089c75df7d2833f100bddbf1.tar.bz2 |
Add setCurrentRotation QCop call for later use of on the fly rotation. Also adapt depends to the actual required qt version.
-rw-r--r-- | library/libqpe1.control | 2 | ||||
-rw-r--r-- | library/qpeapplication.cpp | 5 | ||||
-rw-r--r-- | library/qpeapplication.h | 63 |
3 files changed, 52 insertions, 18 deletions
diff --git a/library/libqpe1.control b/library/libqpe1.control index 6743e28..94992b1 100644 --- a/library/libqpe1.control +++ b/library/libqpe1.control @@ -3,6 +3,6 @@ Priority: required Section: opie/system Maintainer: Project Opie <opie@handhelds.org> Architecture: arm Version: $QPE_VERSION-$SUB_VERSION.1 -Depends: libqt2-emb (>=$QTE_VERSION), libqt2-emb-fonts (>=$QTE_VERSION) +Depends: libqt2-emb (>=2.3.4-beta4), libqt2-emb-fonts (>=$QTE_VERSION) Description: libqpe, base qtopia/opie library. diff --git a/library/qpeapplication.cpp b/library/qpeapplication.cpp index b21428a..95c4a1b 100644 --- a/library/qpeapplication.cpp +++ b/library/qpeapplication.cpp @@ -1065,8 +1065,13 @@ void QPEApplication::systemMessage( const QCString& msg, const QByteArray& data stream >> r; setDefaultRotation( r ); } } + else if ( msg == "setCurrentRotation(int)" ) { + int r; + stream >> r; + setCurrentRotation( r ); + } else if ( msg == "shutdown()" ) { if ( type() == GuiServer ) shutdown(); } diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 7d956a3..7505115 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h @@ -20,10 +20,12 @@ #ifndef __QPE_APPLICATION_H__ #define __QPE_APPLICATION_H__ +#include <qglobal.h> #include <qapplication.h> #include <qdialog.h> +#include <qwsdisplay_qws.h> #if defined(_WS_QWS_) && !defined(Q_WS_QWS) #define Q_WS_QWS #endif #include "qpedecoration_qws.h" @@ -46,30 +48,31 @@ public: static QString documentDir(); void applyStyle(); static int defaultRotation(); static void setDefaultRotation(int r); + static void setCurrentRotation(int r); static void grabKeyboard(); static void ungrabKeyboard(); enum StylusMode { - LeftOnly, - RightOnHold - // RightOnHoldLeftDelayed, etc. + LeftOnly, + RightOnHold + // RightOnHoldLeftDelayed, etc. }; static void setStylusOperation( QWidget*, StylusMode ); static StylusMode stylusOperation( QWidget* ); enum InputMethodHint { - Normal, - AlwaysOff, - AlwaysOn + Normal, + AlwaysOff, + AlwaysOn }; enum screenSaverHint { - Disable = 0, - DisableLightOff = 1, - DisableSuspend = 2, - Enable = 100 + Disable = 0, + DisableLightOff = 1, + DisableSuspend = 2, + Enable = 100 }; static void setInputMethodHint( QWidget *, InputMethodHint ); static InputMethodHint inputMethodHint( QWidget * ); @@ -114,9 +117,9 @@ protected: void timerEvent( QTimerEvent * ); bool raiseAppropriateWindow(); virtual void tryQuit(); - virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) + virtual void polish ( QWidget * ); // this is actually implemented in qt_override.cpp (!) private: void mapToDefaultAction( QWSKeyEvent *ke, int defKey ); @@ -137,15 +140,15 @@ inline void QPEApplication::showDialog( QDialog* d, bool nomax ) QSize sh = d->sizeHint(); int w = QMAX(sh.width(),d->width()); int h = QMAX(sh.height(),d->height()); if ( !nomax - && ( w > qApp->desktop()->width()*3/4 - || h > qApp->desktop()->height()*3/4 ) ) + && ( w > qApp->desktop()->width()*3/4 + || h > qApp->desktop()->height()*3/4 ) ) { - d->showMaximized(); + d->showMaximized(); } else { - d->resize(w,h); - d->show(); + d->resize(w,h); + d->show(); } } inline int QPEApplication::execDialog( QDialog* d, bool nomax ) @@ -153,7 +156,33 @@ inline int QPEApplication::execDialog( QDialog* d, bool nomax ) showDialog(d,nomax); return d->exec(); } +enum Transformation { None, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ -#endif +inline void QPEApplication::setCurrentRotation( int r ) +{ + Transformation e; + + switch (r) { + case 0: + e = None; + break; + case 90: + e = Rot90; + break; + case 180: + e = Rot180; + break; + case 270: + e = Rot270; + break; + default: + return; + } + qDebug("calling qApp->desktop()->qwsDisplay()->setTransformation( %d )\n", e); + qApp->desktop()->qwsDisplay()->setTransformation( e ); +} + + +#endif |