openclonk/src/platform
Günther Brammer d4634526fd GL: Switch from GLEW to Epoxy
Epoxy automatically fetches the extension functions on demand, including
the GLX context creation functions. This means that you can't test the
function pointers for NULL anymore, because they're always set to a
resolver function until the first call. Instead, you have to check for the
availability of an extension by the extension's name. Thanks to Isilkor for
catching these.

On windows, epoxy invalidates all extension function pointers when the
GL context changes. This means we need to have an active context at all
times we call an extension function (like wglGetPixelFormatAttribivARB)
or else the code will jump to an invalid pointer. On the other hand, we do
not need to make it reinitialize the pointers ourselves.

Epoxy automatically uses an alias for a function if the requested name is
not available, like glDebugMessageCallbackARB instead of
glDebugMessageCallback. It also does not have the problem with varying
parameter types for that function. So switch to it while removing
GLDEBUGPROCARB_USERPARAM_IS_CONST.
2016-02-06 16:50:47 +01:00
..
C4App.cpp StdScheduler: Make DoScheduleProcs virtual, override it in C4AbstractApp and set isInManualLoop flag around the DoScheduleProcs call so the FlushMessages() of C4AbstractApp will happen when isInManualLoop is true 2014-02-16 14:54:32 +01:00
C4App.h gtk: Add support for microsoft windows 2016-02-06 16:47:44 +01:00
C4AppDelegate+MainMenuActions.h Add copyright header to files that were missing it 2015-02-16 18:40:52 +01:00
C4AppDelegate+MainMenuActions.mm GL: Switch from GLEW to Epoxy 2016-02-06 16:50:47 +01:00
C4AppDelegate.h Fix the console build on Mac 2015-12-23 16:31:19 -08:00
C4AppDelegate.mm Fix the console build on Mac 2015-12-23 16:31:19 -08:00
C4AppGTK.cpp gtk: Add support for microsoft windows 2016-02-06 16:47:44 +01:00
C4AppMac.mm GL: Switch from GLEW to Epoxy 2016-02-06 16:50:47 +01:00
C4AppSDL.cpp Update the SDL port to SDL2 2016-02-06 16:48:21 +01:00
C4AppT.cpp Stop pretending we support 16 bit color 2016-02-02 00:00:23 +01:00
C4AppWin32Impl.h Update copyright notices 2013-12-23 13:03:19 +01:00
C4CrashHandlerWin32.cpp Win32: Update crash handler for MSVC 2015 2015-09-18 15:02:33 +02:00
C4FileMonitor.cpp Drop Min, Max, Swap for std::min, std::max, std::swap 2015-11-15 13:53:01 +01:00
C4FileMonitor.h Remove a lot of disabled legacy code, round 2 2015-03-25 20:02:53 +01:00
C4FileMonitorMac.mm Update license texts 2015-02-08 15:05:11 +01:00
C4GamePadCon.cpp Fix the SDL build 2016-02-06 16:47:56 +01:00
C4GamePadCon.h Update copyright notices 2013-12-23 13:03:19 +01:00
C4MusicFile.cpp Add max memory time to music resume feature (#1461) 2015-12-03 19:17:41 -05:00
C4MusicFile.h Add max memory time to music resume feature (#1461) 2015-12-03 19:17:41 -05:00
C4MusicSystem.cpp Play frontend music by tag. 2015-12-12 12:08:45 -05:00
C4MusicSystem.h Add max memory time to music resume feature (#1461) 2015-12-03 19:17:41 -05:00
C4SoundIncludes.h Get rid of FMOD 2015-10-12 17:34:26 +02:00
C4SoundInstance.cpp Allow sounds in subfolders and create namespaces for them (#1185) 2015-12-06 23:44:41 -05:00
C4SoundInstance.h Allow sounds in subfolders and create namespaces for them (#1185) 2015-12-06 23:44:41 -05:00
C4SoundLoaders.cpp Get rid of FMOD 2015-10-12 17:34:26 +02:00
C4SoundLoaders.h Get rid of FMOD 2015-10-12 17:34:26 +02:00
C4SoundModifiers.cpp Make OpenAL extension init log entry slightly less useless 2015-12-27 01:54:44 +01:00
C4SoundModifiers.h Get rid of FMOD 2015-10-12 17:34:26 +02:00
C4SoundSystem.cpp sound system: warn about missing sounds (in debug mode only) 2015-12-10 19:35:55 +01:00
C4SoundSystem.h Allow sounds in subfolders and create namespaces for them (#1185) 2015-12-06 23:44:41 -05:00
C4StdInProc.cpp CMake: Re-enable readline support for openclonk-server 2015-12-28 18:48:45 +01:00
C4StdInProc.h Update copyright notices 2013-12-23 13:03:19 +01:00
C4TimeMilliseconds.cpp Update copyright notices 2013-12-23 13:03:19 +01:00
C4TimeMilliseconds.h Remove some redundant #includes 2015-01-25 18:53:48 +01:00
C4Window.h Update the SDL port to SDL2 2016-02-06 16:48:21 +01:00
C4WindowController.h Update copyright notices 2013-12-23 13:03:19 +01:00
C4WindowController.mm GL: Switch from GLEW to Epoxy 2016-02-06 16:50:47 +01:00
C4WindowGTK.cpp GL: Switch from GLEW to Epoxy 2016-02-06 16:50:47 +01:00
C4WindowMac.mm mac: send keydown events for modifier flags change (#1574) 2016-01-10 18:11:29 -08:00
C4WindowSDL.cpp Update the SDL port to SDL2 2016-02-06 16:48:21 +01:00
C4WindowWin32.cpp Merge epoxy preparation branch 2016-02-02 03:35:13 +01:00
C4windowswrapper.h Win32: Fix file deletion from scenario selection dialogue 2016-01-24 00:43:09 -05:00
CocoaKeycodeMap.h mac: send keydown events for modifier flags change (#1574) 2016-01-10 18:11:29 -08:00
ObjectiveCAssociated.h Update copyright notices 2013-12-23 13:03:19 +01:00
PlatformAbstraction.cpp Win32: Fix file deletion from scenario selection dialogue 2016-01-24 00:43:09 -05:00
PlatformAbstraction.h gtk: Add support for microsoft windows 2016-02-06 16:47:44 +01:00
StdFile.cpp Fix memory leak in GetWorkingDirectory. 2015-09-12 03:05:16 -04:00
StdFile.h Remove arbitrary inline forward declarations of StdBuf (and derivatives) 2015-12-29 21:42:46 +01:00
StdJoystick.cpp Drop Min, Max, Swap for std::min, std::max, std::swap 2015-11-15 13:53:01 +01:00
StdJoystick.h Update copyright notices 2013-12-23 13:03:19 +01:00
StdRegistry.cpp Drop Min, Max, Swap for std::min, std::max, std::swap 2015-11-15 13:53:01 +01:00
StdRegistry.h Fix some uses-after-free due to terrible StdBuf semantics 2014-03-19 14:21:23 +01:00
StdScheduler.cpp Drop Min, Max, Swap for std::min, std::max, std::swap 2015-11-15 13:53:01 +01:00
StdScheduler.h Fix thread handle type for Win32 threads. 2016-01-09 00:19:40 -04:00
StdSchedulerMac.mm Fix the console build on Mac 2015-12-23 16:31:19 -08:00
StdSchedulerPoll.cpp Add copyright header to files that were missing it 2015-02-16 18:40:52 +01:00
StdSchedulerWin32.cpp Fix some unused variables. 2015-09-03 21:26:49 -04:00
StdSync.h Fix build on 32-bit architectures 2014-12-10 21:45:41 +01:00