// Author: Julian Smart
// Modified by:
// Created: 04/01/98
-// RCS-ID: $Id$
// Copyright: (c) Julian Smart
// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
{
if ( !wglShareLists(other->m_glContext, m_glContext) )
{
- wxLogLastError(_T("wglShareLists"));
+ wxLogLastError(wxT("wglShareLists"));
}
}
}
{
if ( !wglMakeCurrent(win.GetHDC(), m_glContext) )
{
- wxLogLastError(_T("wglMakeCurrent"));
+ wxLogLastError(wxT("wglMakeCurrent"));
return false;
}
return true;
IMPLEMENT_CLASS(wxGLCanvas, wxWindow)
BEGIN_EVENT_TABLE(wxGLCanvas, wxWindow)
+#if wxUSE_PALETTE
EVT_PALETTE_CHANGED(wxGLCanvas::OnPaletteChanged)
EVT_QUERY_NEW_PALETTE(wxGLCanvas::OnQueryNewPalette)
+#endif
END_EVENT_TABLE()
// ----------------------------------------------------------------------------
DWORD msflags = WS_CHILD | WS_VISIBLE | WS_CLIPSIBLINGS | WS_CLIPCHILDREN;
msflags |= MSWGetStyle(style, &exStyle);
- if ( !MSWCreate(wxApp::GetRegisteredClassName(_T("wxGLCanvas"), -1, CS_OWNDC),
+ if ( !MSWCreate(wxApp::GetRegisteredClassName(wxT("wxGLCanvas"), -1, CS_OWNDC),
NULL, pos, size, msflags, exStyle) )
return false;
if ( !::SetPixelFormat(m_hDC, pixelFormat, &pfd) )
{
- wxLogLastError(_T("SetPixelFormat"));
+ wxLogLastError(wxT("SetPixelFormat"));
return false;
}
}
{
if ( !::SwapBuffers(m_hDC) )
{
- wxLogLastError(_T("SwapBuffers"));
+ wxLogLastError(wxT("SwapBuffers"));
return false;
}
int pf;
UINT numFormats = 0;
+
if ( !wglChoosePixelFormatARB(hdc, iAttributes, NULL, 1, &pf, &numFormats) )
{
- wxLogLastError(_T("wglChoosePixelFormatARB"));
+ wxLogLastError(wxT("wglChoosePixelFormatARB"));
return 0;
}
+ // Although TRUE is returned if no matching formats are found (see
+ // http://www.opengl.org/registry/specs/ARB/wgl_pixel_format.txt), pf is
+ // not initialized in this case so we need to check for numFormats being
+ // not 0 explicitly (however this is not an error so don't call
+ // wxLogLastError() here).
+ if ( !numFormats )
+ pf = 0;
+
return pf;
}
if ( !pixelFormat )
{
- wxLogLastError(_T("ChoosePixelFormat"));
+ wxLogLastError(wxT("ChoosePixelFormat"));
return 0;
}
if ( !::SetPixelFormat(m_hDC, pixelFormat, &pfd) )
{
- wxLogLastError(_T("SetPixelFormat"));
+ wxLogLastError(wxT("SetPixelFormat"));
return 0;
}
const int pixelFormat = ::GetPixelFormat(m_hDC);
if ( !pixelFormat )
{
- wxLogLastError(_T("GetPixelFormat"));
+ wxLogLastError(wxT("GetPixelFormat"));
return false;
}
PIXELFORMATDESCRIPTOR pfd;
if ( !::DescribePixelFormat(m_hDC, pixelFormat, sizeof(pfd), &pfd) )
{
- wxLogLastError(_T("DescribePixelFormat"));
+ wxLogLastError(wxT("DescribePixelFormat"));
return false;
}
m_palette = palette;
- if ( !m_palette.Ok() )
+ if ( !m_palette.IsOk() )
{
m_palette = CreateDefaultPalette();
- if ( !m_palette.Ok() )
+ if ( !m_palette.IsOk() )
return false;
}
if ( !::SelectPalette(m_hDC, GetHpaletteOf(m_palette), FALSE) )
{
- wxLogLastError(_T("SelectPalette"));
+ wxLogLastError(wxT("SelectPalette"));
return false;
}
if ( ::RealizePalette(m_hDC) == GDI_ERROR )
{
- wxLogLastError(_T("RealizePalette"));
+ wxLogLastError(wxT("RealizePalette"));
return false;
}
void wxGLCanvas::OnQueryNewPalette(wxQueryNewPaletteEvent& event)
{
/* realize palette if this is the current window */
- if ( GetPalette()->Ok() ) {
+ if ( GetPalette()->IsOk() ) {
::UnrealizeObject((HPALETTE) GetPalette()->GetHPALETTE());
::SelectPalette(GetHDC(), (HPALETTE) GetPalette()->GetHPALETTE(), FALSE);
::RealizePalette(GetHDC());
{
/* realize palette if this is *not* the current window */
if ( GetPalette() &&
- GetPalette()->Ok() && (this != event.GetChangedWindow()) )
+ GetPalette()->IsOk() && (this != event.GetChangedWindow()) )
{
::UnrealizeObject((HPALETTE) GetPalette()->GetHPALETTE());
::SelectPalette(GetHDC(), (HPALETTE) GetPalette()->GetHPALETTE(), FALSE);