citra-emu
/
citra-canary
Archived
1
0
Fork 0

Sets OGL version for Qt; will only work with Qt5

This commit is contained in:
archshift 2014-04-30 17:10:38 -07:00
parent c1b770cc0d
commit 3dad4e3b5c
1 changed files with 10 additions and 6 deletions

View File

@ -73,11 +73,10 @@ void EmuThread::Stop()
class GGLWidgetInternal : public QGLWidget
{
public:
GGLWidgetInternal(GRenderWindow* parent) : QGLWidget(parent)
GGLWidgetInternal(QGLFormat fmt, GRenderWindow* parent) : QGLWidget(parent)
{
setAutoBufferSwap(false);
doneCurrent();
parent_ = parent;
doneCurrent();
parent_ = parent;
}
void paintEvent(QPaintEvent* ev)
@ -103,8 +102,13 @@ EmuThread& GRenderWindow::GetEmuThread()
GRenderWindow::GRenderWindow(QWidget* parent) : QWidget(parent), emu_thread(this)
{
// TODO: One of these flags might be interesting: WA_OpaquePaintEvent, WA_NoBackground, WA_DontShowOnScreen, WA_DeleteOnClose
child = new GGLWidgetInternal(this);
QGLFormat fmt;
fmt.setProfile(QGLFormat::CoreProfile);
fmt.setVersion(4,1);
fmt.setSampleBuffers(true);
fmt.setSamples(4);
child = new GGLWidgetInternal(fmt, this);
QBoxLayout* layout = new QHBoxLayout(this);
resize(VideoCore::kScreenTopWidth, VideoCore::kScreenTopHeight + VideoCore::kScreenBottomHeight);
layout->addWidget(child);