/////////////////////////////////////////////////////////////////////////////
-// Name: cocoa/glcanvas.mm
+// Name: src/cocoa/glcanvas.mm
// Purpose: wxGLContext, wxGLCanvas
// Author: David Elliott
// Modified by:
// Created: 2004/09/29
// RCS-ID: $Id$
// Copyright: (c) 2004 David Elliott
-// Licence: wxWidgets licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
#include "wx/wxprec.h"
#import <AppKit/NSOpenGL.h>
#import <AppKit/NSOpenGLView.h>
-IMPLEMENT_DYNAMIC_CLASS(wxGLCanvas, wxWindow)
-BEGIN_EVENT_TABLE(wxGLCanvas, wxWindow)
-END_EVENT_TABLE()
-// WX_IMPLEMENT_COCOA_OWNER(wxGLCanvas,NSOpenGLView,NSView,NSView)
-
-wxGLCanvas::wxGLCanvas(wxWindow *parent,
- wxWindowID winid, const wxPoint& pos, const wxSize& size,
- long style, const wxString& name,
- int *attribList, const wxPalette& palette)
+wxGLContext::wxGLContext(wxGLCanvas *win, const wxGLContext *other)
{
- Create(parent,winid,pos,size,style,name);
+ // TODO
}
-wxGLCanvas::wxGLCanvas(wxWindow *parent,
- const wxGLContext *shared,
- wxWindowID winid, const wxPoint& pos, const wxSize& size,
- long style, const wxString& name,
- int *attribList, const wxPalette& palette)
+wxGLContext::~wxGLContext()
{
- Create(parent,winid,pos,size,style,name);
}
-wxGLCanvas::wxGLCanvas(wxWindow *parent,
- const wxGLCanvas *shared,
- wxWindowID winid, const wxPoint& pos, const wxSize& size,
- long style, const wxString& name,
- int *attribList, const wxPalette& palette)
+void wxGLContext::SetCurrent(const wxGLCanvas& win) const
{
- Create(parent,winid,pos,size,style,name);
+ [[win.GetNSOpenGLView() openGLContext] makeCurrentContext];
}
-bool wxGLCanvas::Create(wxWindow *parent, wxWindowID winid,
- const wxPoint& pos,
- const wxSize& size,
- long style,
- const wxString& name)
+IMPLEMENT_CLASS(wxGLCanvas, wxWindow)
+// WX_IMPLEMENT_COCOA_OWNER(wxGLCanvas,NSOpenGLView,NSView,NSView)
+
+bool wxGLCanvas::Create(wxWindow *parent,
+ wxWindowID winid,
+ const wxPoint& pos,
+ const wxSize& size,
+ long style,
+ const wxString& name,
+ const int *attribList,
+ const wxPalette& palette)
{
wxAutoNSAutoreleasePool pool;
if(!CreateBase(parent,winid,pos,size,style,wxDefaultValidator,name))
{
}
-void wxGLCanvas::SetCurrent()
-{
- [[(NSOpenGLView*)m_cocoaNSView openGLContext] makeCurrentContext];
-}
-
void wxGLCanvas::SwapBuffers()
{
- [[(NSOpenGLView*)m_cocoaNSView openGLContext] flushBuffer];
+ [[GetNSOpenGLView() openGLContext] flushBuffer];
}
#endif // wxUSE_GLCANVAS