-wxGLCanvas is a class for displaying OpenGL graphics. There are
-wrappers for OpenGL on Windows, and GTK+ and Motif.
-
-To use this class, create a wxGLCanvas window, call \helpref{wxGLCanvas::SetCurrent}{wxglcanvassetcurrent}
-to direct normal OpenGL commands to the window, and then call \helpref{wxGLCanvas::SwapBuffers}{wxglcanvasswapbuffers}
-to show the OpenGL buffer on the window.
-
-To switch wxGLCanvas support on under Windows, edit setup.h and set
-{\tt wxUSE\_GLCANVAS} to $1$. You may also need to have to add
-{\tt opengl32.lib} to the list of libraries your program is linked with. On
-Unix, pass {\tt --with-opengl} to configure to compile using OpenGL or Mesa.
+wxGLCanvas is a class for displaying OpenGL graphics. It is always used in
+conjunction with \helpref{wxGLContext}{wxglcontext} as the context can only be
+be made current (i.e. active for the OpenGL commands) when it is associated to
+a wxGLCanvas.
+
+More precisely, you first need to create a wxGLCanvas window and then create an
+instance of a \helpref{wxGLContext}{wxglcontext} that is initialized with this
+wxGLCanvas and then later use either \helpref{wxGLCanvas::SetCurrent}{wxglcanvassetcurrent}
+with the instance of the \helpref{wxGLContext}{wxglcontext} or
+\helpref{wxGLContext::SetCurrent}{wxglcontextsetcurrent} with the instance of
+the \helpref{wxGLCanvas}{wxglcanvas} (which might be not the same as was used
+for the creation of the context) to bind the OpenGL state that is represented
+by the rendering context to the canvas, and then finally call
+\helpref{wxGLCanvas::SwapBuffers}{wxglcanvasswapbuffers} to swap the buffers of
+the OpenGL canvas and thus show your current output.
+
+Notice that previous versions of wxWidgets used to implicitly create a
+wxGLContext inside wxGLCanvas itself. This is still supported in the current
+version but is deprecated now and will be removed in the future, please update
+your code to create the rendering contexts explicitly.
+
+To set up the attributes for the canvas (number of bits for the depth buffer,
+number of bits for the stencil buffer and so on) you should set up the correct values of
+the {\it attribList} parameter. The values that should be set up and their meanings will be described below.
+
+Notice that OpenGL is not enabled by default. To switch it on, you need to edit
+setup.h under Windows and set {\tt wxUSE\_GLCANVAS} to $1$ (you may also need
+to have to add {\tt opengl32.lib} and {\tt glu32.lib} to the list of libraries
+your program is linked with). On Unix, pass {\tt --with-opengl} to configure.