dolphin/Source/Plugins/Plugin_VideoOGL/Src/WXGLWindow.cpp

55 lines
1.3 KiB
C++

#include "WXGLWindow.h"
void WXGLWindow::SwapBuffers() {
glCanvas->SwapBuffers();
}
void WXGLWindow::SetWindowText(const char *text) {
frame->SetTitle(wxString::FromAscii(text));
}
bool WXGLWindow::PeekMessages() {
// TODO implmenent
return false;
}
void WXGLWindow::Update() {
updateDim();
}
bool WXGLWindow::MakeCurrent() {
glCanvas->SetCurrent(*glCtxt);
return true;
}
WXGLWindow::~WXGLWindow() {
delete glCanvas;
delete frame;
}
WXGLWindow::WXGLWindow() : GLWindow() {
updateDim();
int args[] = {WX_GL_RGBA, WX_GL_DOUBLEBUFFER, WX_GL_DEPTH_SIZE, 16, 0};
wxSize size(GetWidth(), GetHeight());
if (!g_Config.renderToMainframe ||
g_VideoInitialize.pWindowHandle == NULL) {
frame = new wxFrame((wxWindow *)g_VideoInitialize.pWindowHandle,
-1, _("Dolphin"), wxPoint(0,0), size);
} else {
frame = new wxFrame((wxWindow *)NULL,
-1, _("Dolphin"), wxPoint(0,0), size);
}
glCanvas = new wxGLCanvas(frame, wxID_ANY, args,
wxPoint(0,0), size, wxSUNKEN_BORDER);
glCtxt = new wxGLContext(glCanvas);
frame->Show(TRUE);
glCanvas->Show(TRUE);
glCanvas->SetCurrent(*glCtxt);
}