From 06bcd227c2806a35d77e9da4c1338d578680e3ed Mon Sep 17 00:00:00 2001 From: kergoth Date: Thu, 27 Mar 2003 05:07:03 +0000 Subject: Behavior change for setCurrentRotation. Now changes rotation for newly started apps as well as those currently running. Differs from setDefaultRotation in that 1) it rotates currently running apps, and 2) does not set deforient or save orientation to qpe.conf. --- (limited to 'library/qpeapplication.h') diff --git a/library/qpeapplication.h b/library/qpeapplication.h index 7f74510..0bad8b7 100644 --- a/library/qpeapplication.h +++ b/library/qpeapplication.h @@ -20,6 +20,7 @@ #ifndef __QPE_APPLICATION_H__ #define __QPE_APPLICATION_H__ +#include // for setenv() #include #include @@ -159,28 +160,29 @@ inline int QPEApplication::execDialog( QDialog* d, bool nomax ) enum Transformation { Rot0, Rot90, Rot180, Rot270 }; /* from qgfxtransformed_qws.cpp */ +inline int TransToDeg ( Transformation t ) +{ + int d = static_cast( t ); + return d * 90; +} + +inline Transformation DegToTrans ( int d ) +{ + Transformation t = static_cast( d / 90 ); + return t; +} + +/* + * Set current rotation of Opie, and rotation for newly started apps. + * Differs from setDefaultRotation in that 1) it rotates currently running apps, + * and 2) does not set deforient or save orientation to qpe.conf. + */ + inline void QPEApplication::setCurrentRotation( int r ) { - Transformation e; - - switch (r) { - case 0: - e = Rot0; - break; - case 90: - e = Rot90; - break; - case 180: - e = Rot180; - break; - case 270: - e = Rot270; - break; - default: - return; - } + Transformation e = DegToTrans( r ); - qDebug("calling qApp->desktop()->qwsDisplay()->setTransformation( %d )\n", e); + setenv( "QWS_DISPLAY", QString( "Transformed:Rot%1:0" ).arg( r ).latin1(), 1 ); qApp->desktop()->qwsDisplay()->setTransformation( e ); } -- cgit v0.9.0.2