X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=platform.cpp;h=ac2503997cbd40da22b9eb424a928ff58239850a;hb=4f302c4427507fec544f32b9003035e93f32b2e2;hp=4fc6deedc1c5359f0ef24657d304cb9c6e5eef76;hpb=6c8d9bb19213aee37517232ef889409200e53ac1;p=dorian diff --git a/platform.cpp b/platform.cpp index 4fc6dee..ac25039 100644 --- a/platform.cpp +++ b/platform.cpp @@ -6,7 +6,15 @@ # include #endif +#ifdef Q_OS_SYMBIAN +# include +# include +# include +# include +#endif + #include "platform.h" +#include "trace.h" #if defined(Q_OS_WIN32) || defined(Q_OS_SYMBIAN) # define DORIAN_BASE "dorian" @@ -83,7 +91,14 @@ QString Platform::version() QString Platform::downloadDir() { +#ifdef Q_OS_SYMBIAN + if (QDir("E:/").exists()) { + return "E:/Books"; + } + return "C:/Books"; +#else return QDir::home().absoluteFilePath("Books"); +#endif } QString Platform::defaultFont() @@ -138,3 +153,37 @@ QString Platform::defaultOrientation() return QString("landscape"); #endif } + +void Platform::setOrientation(QWidget *widget, const QString &orientation) +{ + TRACE; + qDebug() << "To" << orientation; + + Q_UNUSED(widget); + +#if defined(Q_OS_SYMBIAN) + CAknAppUi *appUi = dynamic_cast(CEikonEnv::Static()->AppUi()); + if (!appUi) { + qCritical() << "Platform::setOrientation: Couldn't get AppUi pointer"; + return; + } +#endif + + if (orientation == "portrait") { +#if defined(Q_WS_MAEMO_5) + widget->setAttribute(Qt::WA_Maemo5LandscapeOrientation, false); + widget->setAttribute(Qt::WA_Maemo5PortraitOrientation, true); +#elif defined(Q_OS_SYMBIAN) + TRAPD(error, + appUi->SetOrientationL(CAknAppUi::EAppUiOrientationPortrait);); +#endif + } else { +#if defined(Q_WS_MAEMO_5) + widget->setAttribute(Qt::WA_Maemo5PortraitOrientation, false); + widget->setAttribute(Qt::WA_Maemo5LandscapeOrientation, true); +#elif defined(Q_OS_SYMBIAN) + TRAPD(error, + appUi->SetOrientationL(CAknAppUi::EAppUiOrientationLandscape);); +#endif + } +}