}
}
-void wxGLContext::SetCurrent(const wxGLCanvas& win) const
+bool wxGLContext::SetCurrent(const wxGLCanvas& win) const
{
if ( !m_aglContext )
- return;
+ return false;
- AGLDrawable drawable = (AGLDrawable)UMAGetWindowPort(
+ AGLDrawable drawable = (AGLDrawable)GetWindowPort(
MAC_WXHWND(win.MacGetTopLevelWindowRef()));
if ( !aglSetDrawable(m_aglContext, drawable) )
+ {
wxLogAGLError("aglSetDrawable");
+ return false;
+ }
if ( !aglSetCurrentContext(m_aglContext) )
+ {
wxLogAGLError("aglSetCurrentContext");
+ return false;
+ }
wx_const_cast(wxGLCanvas&, win).SetViewport();
+ return true;
}
// ----------------------------------------------------------------------------
aglDestroyPixelFormat(m_aglFormat);
}
-void wxGLCanvas::SwapBuffers()
+/* static */
+bool wxGLCanvasBase::IsDisplaySupported(const int *attribList)
+{
+ AGLPixelFormat aglFormat = ChoosePixelFormat(attribList);
+
+ if ( !aglFormat )
+ return false;
+
+ aglDestroyPixelFormat(aglFormat);
+
+ return true;
+}
+
+bool wxGLCanvas::SwapBuffers()
{
AGLContext context = aglGetCurrentContext();
- wxCHECK_RET( context, _T("should have current context") );
+ wxCHECK_MSG(context, false, _T("should have current context"));
aglSwapBuffers(context);
+ return true;
}
void wxGLCanvas::SetViewport()
void wxGLCanvas::MacVisibilityChanged()
{
- if ( MacIsReallyShown() != m_macCanvasIsShown )
+ if ( IsShownOnScreen() != m_macCanvasIsShown )
{
m_macCanvasIsShown = !m_macCanvasIsShown;
MacUpdateView();