Add EGL-based backend for wxGLCanvas

Among other things, this enables wxGLCanvas to be used natively on
Wayland.

Closes https://github.com/wxWidgets/wxWidgets/pull/2038

Closes #17702.
This commit is contained in:
Scott Talbert
2020-08-28 11:59:27 -04:00
committed by Vadim Zeitlin
parent ed4b9e5f97
commit 7cd12a2bd6
23 changed files with 1101 additions and 31 deletions

View File

@@ -3036,11 +3036,13 @@ set(OPENGL_MSW_HDR
set(OPENGL_GTK_SRC
src/gtk/glcanvas.cpp
src/unix/glx11.cpp
src/unix/glegl.cpp
)
set(OPENGL_GTK_HDR
wx/gtk/glcanvas.h
wx/unix/glx11.h
wx/unix/glegl.h
)
set(OPENGL_OSX_COCOA_SRC

View File

@@ -385,6 +385,9 @@ if(wxUSE_GUI)
set(OPENGL_LIBRARIES "-framework OpenGLES" "-framework QuartzCore")
else()
find_package(OpenGL)
if(WXGTK3 AND OpenGL_EGL_FOUND)
set(wxUSE_GLCANVAS_EGL ON)
endif()
endif()
if(NOT OPENGL_FOUND)
message(WARNING "opengl not found, wxGLCanvas won't be available")

View File

@@ -549,6 +549,8 @@
#cmakedefine01 wxUSE_GLCANVAS
#cmakedefine01 wxUSE_GLCANVAS_EGL
#cmakedefine01 wxUSE_RICHTEXT