summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/qnx/qqnxscreen.cpp
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer.qnx@kdab.com>2012-05-21 13:45:39 +0100
committerQt by Nokia <qt-info@nokia.com>2012-05-23 10:52:11 +0200
commit856ca268f81934ac65596ee545a3ffaf25457186 (patch)
tree465e9780553770ce3ae2a591b0f153bcb640e094 /src/plugins/platforms/qnx/qqnxscreen.cpp
parente0cf8cf5f122c9b7ecd5bc532591cdb138c71877 (diff)
QNX: Implementing QPlatformScreen::refreshRate() for QNX QPA
Change-Id: I777ebd2c1ca51d244de714eb5b235d931df044d6 Reviewed-by: Giuseppe D'Angelo <giuseppe.dangelo@kdab.com> Reviewed-by: Samuel Rødal <samuel.rodal@nokia.com>
Diffstat (limited to 'src/plugins/platforms/qnx/qqnxscreen.cpp')
-rw-r--r--src/plugins/platforms/qnx/qqnxscreen.cpp18
1 files changed, 18 insertions, 0 deletions
diff --git a/src/plugins/platforms/qnx/qqnxscreen.cpp b/src/plugins/platforms/qnx/qqnxscreen.cpp
index e788ce94a2..f33de5be21 100644
--- a/src/plugins/platforms/qnx/qqnxscreen.cpp
+++ b/src/plugins/platforms/qnx/qqnxscreen.cpp
@@ -140,6 +140,24 @@ int QQnxScreen::depth() const
return defaultDepth();
}
+qreal QQnxScreen::refreshRate() const
+{
+ screen_display_mode_t displayMode;
+ int result = screen_get_display_property_pv(m_display, SCREEN_PROPERTY_MODE, reinterpret_cast<void **>(&displayMode));
+ if (result != 0) {
+ qWarning("QQnxScreen: Failed to query screen mode. Using default value of 60Hz");
+ return 60.0;
+ }
+#if defined(QQNXSCREEN_DEBUG)
+ qDebug() << Q_FUNC_INFO << "screen mode:" << endl
+ << " width =" << displayMode.width << endl
+ << " height =" << displayMode.height << endl
+ << " refresh =" << displayMode.refresh << endl
+ << " interlaced =" << displayMode.interlaced;
+#endif
+ return static_cast<qreal>(displayMode.refresh);
+}
+
Qt::ScreenOrientation QQnxScreen::orientation() const
{
Qt::ScreenOrientation orient;