diff options
Diffstat (limited to 'weather-qml/build/mainwindow.cpp')
-rwxr-xr-x | weather-qml/build/mainwindow.cpp | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/weather-qml/build/mainwindow.cpp b/weather-qml/build/mainwindow.cpp new file mode 100755 index 0000000..9e9659c --- /dev/null +++ b/weather-qml/build/mainwindow.cpp @@ -0,0 +1,49 @@ +#include "mainwindow.h" + +#include <QApplication> +#include <QDeclarativeEngine> + +#if defined(Q_OS_SYMBIAN) +#include <QTimer> +#include <eikenv.h> +#include <coemain.h> +#include <aknappui.h> +#endif + +MainWindow::MainWindow() + : QDeclarativeView() +{ +#if defined(Q_OS_SYMBIAN) + QUrl mainqml("qrc:main_s60.qml"); +#else + QUrl mainqml("qrc:main_n900.qml"); +#endif + setSource(mainqml); + + setWindowTitle("Weather QML"); + + connect(engine(), SIGNAL(quit()), qApp, SLOT(quit())); + + m_isPortrait = true; + +#if defined(Q_OS_SYMBIAN) + QTimer::singleShot(0, this, SLOT(lockViewMode())); +#elif defined(Q_WS_MAEMO_5) + setAttribute(Qt::WA_Maemo5PortraitOrientation, true); +#endif +} + +#if defined(Q_OS_SYMBIAN) +void MainWindow::lockViewMode() +{ + CAknAppUi *aknAppUi = dynamic_cast<CAknAppUi *>(CEikonEnv::Static()->AppUi()); + + if (!aknAppUi) + return; + + if (m_isPortrait) + aknAppUi->SetOrientationL(CAknAppUi::EAppUiOrientationPortrait); + else + aknAppUi->SetOrientationL(CAknAppUi::EAppUiOrientationLandscape); +} +#endif |