#ifdef __WXOSX_IPHONE__
#import <OpenGLES/ES1/gl.h>
#import <OpenGLES/ES1/glext.h>
+#define wxUSE_OPENGL_EMULATION 1
#else
#include <OpenGL/gl.h>
#endif
+#include "wx/vector.h"
+
// low level calls
WXDLLIMPEXP_GL WXGLContext WXGLCreateContext( WXGLPixelFormat pixelFormat, WXGLContext shareContext );
WXDLLIMPEXP_GL void WXGLDestroyContext( WXGLContext context );
+
WXDLLIMPEXP_GL WXGLContext WXGLGetCurrentContext();
WXDLLIMPEXP_GL bool WXGLSetCurrentContext(WXGLContext context);
-WXDLLIMPEXP_GL void WXGLSwapBuffers( WXGLContext context );
WXDLLIMPEXP_GL WXGLPixelFormat WXGLChoosePixelFormat(const int *attribList);
WXDLLIMPEXP_GL void WXGLDestroyPixelFormat( WXGLPixelFormat pixelFormat );
}
}
-void WXGLSwapBuffers( WXGLContext context )
-{
- aglSwapBuffers(context);
-}
-
WXGLContext WXGLGetCurrentContext()
{
return aglGetCurrentContext();
WXGLDestroyContext(m_dummyContext);
}
+bool wxGLCanvas::SwapBuffers()
+{
+ WXGLContext context = WXGLGetCurrentContext();
+ wxCHECK_MSG(context, false, wxT("should have current context"));
+
+ aglSwapBuffers(context);
+ return true;
+}
+
void wxGLCanvas::SetViewport()
{
if ( !m_needsUpdate )
return [[NSOpenGLPixelFormat alloc] initWithAttributes:(NSOpenGLPixelFormatAttribute*) attribs];
}
-bool wxGLContext::SetCurrent(const wxGLCanvas& win) const
-{
- if ( !m_glContext )
- return false;
-
- [m_glContext setView: win.GetHandle() ];
- [m_glContext update];
-
- [m_glContext makeCurrentContext];
-
- return true;
-}
-
@interface wxNSCustomOpenGLView : NSView
{
NSOpenGLContext* context;
WXGLDestroyPixelFormat(m_glFormat);
}
+bool wxGLCanvas::SwapBuffers()
+{
+ WXGLContext context = WXGLGetCurrentContext();
+ wxCHECK_MSG(context, false, wxT("should have current context"));
+
+ [context flushBuffer];
+
+ return true;
+}
+
+bool wxGLContext::SetCurrent(const wxGLCanvas& win) const
+{
+ if ( !m_glContext )
+ return false;
+
+ [m_glContext setView: win.GetHandle() ];
+ [m_glContext update];
+
+ [m_glContext makeCurrentContext];
+
+ return true;
+}
#endif // wxUSE_GLCANVAS
#include "wx/osx/private.h"
-#include <AGL/agl.h>
-
// ----------------------------------------------------------------------------
// wxGLCanvas
// ----------------------------------------------------------------------------
return true;
}
-bool wxGLCanvas::SwapBuffers()
-{
- WXGLContext context = WXGLGetCurrentContext();
- wxCHECK_MSG(context, false, wxT("should have current context"));
-
- WXGLSwapBuffers(context);
- return true;
-}
-
bool wxGLCanvasBase::IsExtensionSupported(const char *extension)
{
// we need a valid context to query for extensions.