qDebug() << Q_FUNC_INFO;
#endif
// Cache initial orientation of this display
- // TODO: use ORIENTATION environment variable?
errno = 0;
int result = screen_get_display_property_iv(m_display, SCREEN_PROPERTY_ROTATION, &m_initialRotation);
if (result != 0) {
m_currentRotation = m_initialRotation;
// Cache size of this display in pixels
- // TODO: use WIDTH and HEIGHT environment variables?
errno = 0;
int val[2];
result = screen_get_display_property_iv(m_display, SCREEN_PROPERTY_SIZE, val);
return defaultDepth();
}
+Qt::ScreenOrientation QQnxScreen::orientation() const
+{
+ Qt::ScreenOrientation orient;
+ if (m_currentRotation == 0)
+ orient = Qt::LandscapeOrientation;
+ else if (m_currentRotation == 90)
+ orient = Qt::PortraitOrientation;
+ else if (m_currentRotation == 180)
+ orient = Qt::InvertedLandscapeOrientation;
+ else
+ orient = Qt::InvertedPortraitOrientation;
+#if defined(QQNXSCREEN_DEBUG)
+ qDebug() << Q_FUNC_INFO << "orientation =" << orient;
+#endif
+ return orient;
+}
+
/*!
Check if the supplied angles are perpendicular to each other.
*/
QImage::Format format() const { return (depth() == 32) ? QImage::Format_RGB32 : QImage::Format_RGB16; }
QSizeF physicalSize() const { return m_currentPhysicalSize; }
+ Qt::ScreenOrientation orientation() const;
+
bool isPrimaryScreen() const { return m_primaryScreen; }
int rotation() const { return m_currentRotation; }