qt : qt-everywhere-opensource-src-4.7.1
HW platform: broadcom7413
Broadcom7413 support openGL es 1.1(standard),and I'm porting QT on it.
But here below returns 0(qgl_qws.cpp),so nothing displayed on QGLWidget.
What can I do ?Do I need to implement the screen driver ?(but I have done this on qscreenlinuxfb_qws.cpp : setting display and framebuffer ,the 2D display is OK)Maybe only the QGLscreen?.
{
if (screen
->classId
() == QScreen::MultiClass) {
int screenNumber;
if (device && device->devType() == QInternal::Widget)
screenNumber = qApp->desktop()->screenNumber(static_cast<QWidget *>(device));
else
screenNumber = 0;
screen = screen->subScreens()[screenNumber];
}
while (screen
->classId
() == QScreen::ProxyClass ||
screen
->classId
() == QScreen::TransformedClass) { screen = static_cast<QProxyScreen *>(screen)->screen();
}
if (screen
->classId
() == QScreen::GLClass) {
return static_cast<QGLScreen *>(screen);
}
else
return 0;
}
static QGLScreen *glScreenForDevice(QPaintDevice *device)
{
QScreen *screen = qt_screen;
if (screen->classId() == QScreen::MultiClass) {
int screenNumber;
if (device && device->devType() == QInternal::Widget)
screenNumber = qApp->desktop()->screenNumber(static_cast<QWidget *>(device));
else
screenNumber = 0;
screen = screen->subScreens()[screenNumber];
}
while (screen->classId() == QScreen::ProxyClass ||
screen->classId() == QScreen::TransformedClass) {
screen = static_cast<QProxyScreen *>(screen)->screen();
}
if (screen->classId() == QScreen::GLClass)
{
return static_cast<QGLScreen *>(screen);
}
else
return 0;
}
To copy to clipboard, switch view to plain text mode
Bookmarks