-rw-r--r-- | library/qpeapplication.h | 40 |
1 files changed, 21 insertions, 19 deletions
diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 7f74510..0bad8b7 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h | |||
@@ -22,2 +22,3 @@ | |||
22 | 22 | ||
23 | #include <stdlib.h> // for setenv() | ||
23 | 24 | ||
@@ -161,24 +162,25 @@ enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws | |||
161 | 162 | ||
163 | inline int TransToDeg ( Transformation t ) | ||
164 | { | ||
165 | int d = static_cast<int>( t ); | ||
166 | return d * 90; | ||
167 | } | ||
168 | |||
169 | inline Transformation DegToTrans ( int d ) | ||
170 | { | ||
171 | Transformation t = static_cast<Transformation>( d / 90 ); | ||
172 | return t; | ||
173 | } | ||
174 | |||
175 | /* | ||
176 | * Set current rotation of Opie, and rotation for newly started apps. | ||
177 | * Differs from setDefaultRotation in that 1) it rotates currently running apps, | ||
178 | * and 2) does not set deforient or save orientation to qpe.conf. | ||
179 | */ | ||
180 | |||
162 | inline void QPEApplication::setCurrentRotation( int r ) | 181 | inline void QPEApplication::setCurrentRotation( int r ) |
163 | { | 182 | { |
164 | Transformation e; | 183 | Transformation e = DegToTrans( r ); |
165 | |||
166 | switch (r) { | ||
167 | case 0: | ||
168 | e = Rot0; | ||
169 | break; | ||
170 | case 90: | ||
171 | e = Rot90; | ||
172 | break; | ||
173 | case 180: | ||
174 | e = Rot180; | ||
175 | break; | ||
176 | case 270: | ||
177 | e = Rot270; | ||
178 | break; | ||
179 | default: | ||
180 | return; | ||
181 | } | ||
182 | 184 | ||
183 | qDebug("calling qApp->desktop()->qwsDisplay()->setTransformation( %d )\n", e); | 185 | setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 ); |
184 | qApp->desktop()->qwsDisplay()->setTransformation( e ); | 186 | qApp->desktop()->qwsDisplay()->setTransformation( e ); |