Browse Source

Use designated initializers for platform structs

This should make platform struct initializers slightly more resistant to
merge mistakes.
Camilla Löwy 1 year ago
parent
commit
7e2470d343
5 changed files with 370 additions and 370 deletions
  1. 72 72
      src/cocoa_init.m
  2. 72 72
      src/null_init.c
  3. 72 72
      src/win32_init.c
  4. 77 77
      src/wl_init.c
  5. 77 77
      src/x11_init.c

+ 72 - 72
src/cocoa_init.m

@@ -495,78 +495,78 @@ GLFWbool _glfwConnectCocoa(int platformID, _GLFWplatform* platform)
 {
     const _GLFWplatform cocoa =
     {
-        GLFW_PLATFORM_COCOA,
-        _glfwInitCocoa,
-        _glfwTerminateCocoa,
-        _glfwGetCursorPosCocoa,
-        _glfwSetCursorPosCocoa,
-        _glfwSetCursorModeCocoa,
-        _glfwSetRawMouseMotionCocoa,
-        _glfwRawMouseMotionSupportedCocoa,
-        _glfwCreateCursorCocoa,
-        _glfwCreateStandardCursorCocoa,
-        _glfwDestroyCursorCocoa,
-        _glfwSetCursorCocoa,
-        _glfwGetScancodeNameCocoa,
-        _glfwGetKeyScancodeCocoa,
-        _glfwSetClipboardStringCocoa,
-        _glfwGetClipboardStringCocoa,
-        _glfwInitJoysticksCocoa,
-        _glfwTerminateJoysticksCocoa,
-        _glfwPollJoystickCocoa,
-        _glfwGetMappingNameCocoa,
-        _glfwUpdateGamepadGUIDCocoa,
-        _glfwFreeMonitorCocoa,
-        _glfwGetMonitorPosCocoa,
-        _glfwGetMonitorContentScaleCocoa,
-        _glfwGetMonitorWorkareaCocoa,
-        _glfwGetVideoModesCocoa,
-        _glfwGetVideoModeCocoa,
-        _glfwGetGammaRampCocoa,
-        _glfwSetGammaRampCocoa,
-        _glfwCreateWindowCocoa,
-        _glfwDestroyWindowCocoa,
-        _glfwSetWindowTitleCocoa,
-        _glfwSetWindowIconCocoa,
-        _glfwGetWindowPosCocoa,
-        _glfwSetWindowPosCocoa,
-        _glfwGetWindowSizeCocoa,
-        _glfwSetWindowSizeCocoa,
-        _glfwSetWindowSizeLimitsCocoa,
-        _glfwSetWindowAspectRatioCocoa,
-        _glfwGetFramebufferSizeCocoa,
-        _glfwGetWindowFrameSizeCocoa,
-        _glfwGetWindowContentScaleCocoa,
-        _glfwIconifyWindowCocoa,
-        _glfwRestoreWindowCocoa,
-        _glfwMaximizeWindowCocoa,
-        _glfwShowWindowCocoa,
-        _glfwHideWindowCocoa,
-        _glfwRequestWindowAttentionCocoa,
-        _glfwFocusWindowCocoa,
-        _glfwSetWindowMonitorCocoa,
-        _glfwWindowFocusedCocoa,
-        _glfwWindowIconifiedCocoa,
-        _glfwWindowVisibleCocoa,
-        _glfwWindowMaximizedCocoa,
-        _glfwWindowHoveredCocoa,
-        _glfwFramebufferTransparentCocoa,
-        _glfwGetWindowOpacityCocoa,
-        _glfwSetWindowResizableCocoa,
-        _glfwSetWindowDecoratedCocoa,
-        _glfwSetWindowFloatingCocoa,
-        _glfwSetWindowOpacityCocoa,
-        _glfwSetWindowMousePassthroughCocoa,
-        _glfwPollEventsCocoa,
-        _glfwWaitEventsCocoa,
-        _glfwWaitEventsTimeoutCocoa,
-        _glfwPostEmptyEventCocoa,
-        _glfwGetEGLPlatformCocoa,
-        _glfwGetEGLNativeDisplayCocoa,
-        _glfwGetEGLNativeWindowCocoa,
-        _glfwGetRequiredInstanceExtensionsCocoa,
-        _glfwGetPhysicalDevicePresentationSupportCocoa,
-        _glfwCreateWindowSurfaceCocoa,
+        .platformID = GLFW_PLATFORM_COCOA,
+        .init = _glfwInitCocoa,
+        .terminate = _glfwTerminateCocoa,
+        .getCursorPos = _glfwGetCursorPosCocoa,
+        .setCursorPos = _glfwSetCursorPosCocoa,
+        .setCursorMode = _glfwSetCursorModeCocoa,
+        .setRawMouseMotion = _glfwSetRawMouseMotionCocoa,
+        .rawMouseMotionSupported = _glfwRawMouseMotionSupportedCocoa,
+        .createCursor = _glfwCreateCursorCocoa,
+        .createStandardCursor = _glfwCreateStandardCursorCocoa,
+        .destroyCursor = _glfwDestroyCursorCocoa,
+        .setCursor = _glfwSetCursorCocoa,
+        .getScancodeName = _glfwGetScancodeNameCocoa,
+        .getKeyScancode = _glfwGetKeyScancodeCocoa,
+        .setClipboardString = _glfwSetClipboardStringCocoa,
+        .getClipboardString = _glfwGetClipboardStringCocoa,
+        .initJoysticks = _glfwInitJoysticksCocoa,
+        .terminateJoysticks = _glfwTerminateJoysticksCocoa,
+        .pollJoystick = _glfwPollJoystickCocoa,
+        .getMappingName = _glfwGetMappingNameCocoa,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDCocoa,
+        .freeMonitor = _glfwFreeMonitorCocoa,
+        .getMonitorPos = _glfwGetMonitorPosCocoa,
+        .getMonitorContentScale = _glfwGetMonitorContentScaleCocoa,
+        .getMonitorWorkarea = _glfwGetMonitorWorkareaCocoa,
+        .getVideoModes = _glfwGetVideoModesCocoa,
+        .getVideoMode = _glfwGetVideoModeCocoa,
+        .getGammaRamp = _glfwGetGammaRampCocoa,
+        .setGammaRamp = _glfwSetGammaRampCocoa,
+        .createWindow = _glfwCreateWindowCocoa,
+        .destroyWindow = _glfwDestroyWindowCocoa,
+        .setWindowTitle = _glfwSetWindowTitleCocoa,
+        .setWindowIcon = _glfwSetWindowIconCocoa,
+        .getWindowPos = _glfwGetWindowPosCocoa,
+        .setWindowPos = _glfwSetWindowPosCocoa,
+        .getWindowSize = _glfwGetWindowSizeCocoa,
+        .setWindowSize = _glfwSetWindowSizeCocoa,
+        .setWindowSizeLimits = _glfwSetWindowSizeLimitsCocoa,
+        .setWindowAspectRatio = _glfwSetWindowAspectRatioCocoa,
+        .getFramebufferSize = _glfwGetFramebufferSizeCocoa,
+        .getWindowFrameSize = _glfwGetWindowFrameSizeCocoa,
+        .getWindowContentScale = _glfwGetWindowContentScaleCocoa,
+        .iconifyWindow = _glfwIconifyWindowCocoa,
+        .restoreWindow = _glfwRestoreWindowCocoa,
+        .maximizeWindow = _glfwMaximizeWindowCocoa,
+        .showWindow = _glfwShowWindowCocoa,
+        .hideWindow = _glfwHideWindowCocoa,
+        .requestWindowAttention = _glfwRequestWindowAttentionCocoa,
+        .focusWindow = _glfwFocusWindowCocoa,
+        .setWindowMonitor = _glfwSetWindowMonitorCocoa,
+        .windowFocused = _glfwWindowFocusedCocoa,
+        .windowIconified = _glfwWindowIconifiedCocoa,
+        .windowVisible = _glfwWindowVisibleCocoa,
+        .windowMaximized = _glfwWindowMaximizedCocoa,
+        .windowHovered = _glfwWindowHoveredCocoa,
+        .framebufferTransparent = _glfwFramebufferTransparentCocoa,
+        .getWindowOpacity = _glfwGetWindowOpacityCocoa,
+        .setWindowResizable = _glfwSetWindowResizableCocoa,
+        .setWindowDecorated = _glfwSetWindowDecoratedCocoa,
+        .setWindowFloating = _glfwSetWindowFloatingCocoa,
+        .setWindowOpacity = _glfwSetWindowOpacityCocoa,
+        .setWindowMousePassthrough = _glfwSetWindowMousePassthroughCocoa,
+        .pollEvents = _glfwPollEventsCocoa,
+        .waitEvents = _glfwWaitEventsCocoa,
+        .waitEventsTimeout = _glfwWaitEventsTimeoutCocoa,
+        .postEmptyEvent = _glfwPostEmptyEventCocoa,
+        .getEGLPlatform = _glfwGetEGLPlatformCocoa,
+        .getEGLNativeDisplay = _glfwGetEGLNativeDisplayCocoa,
+        .getEGLNativeWindow = _glfwGetEGLNativeWindowCocoa,
+        .getRequiredInstanceExtensions = _glfwGetRequiredInstanceExtensionsCocoa,
+        .getPhysicalDevicePresentationSupport = _glfwGetPhysicalDevicePresentationSupportCocoa,
+        .createWindowSurface = _glfwCreateWindowSurfaceCocoa
     };
 
     *platform = cocoa;

+ 72 - 72
src/null_init.c

@@ -39,78 +39,78 @@ GLFWbool _glfwConnectNull(int platformID, _GLFWplatform* platform)
 {
     const _GLFWplatform null =
     {
-        GLFW_PLATFORM_NULL,
-        _glfwInitNull,
-        _glfwTerminateNull,
-        _glfwGetCursorPosNull,
-        _glfwSetCursorPosNull,
-        _glfwSetCursorModeNull,
-        _glfwSetRawMouseMotionNull,
-        _glfwRawMouseMotionSupportedNull,
-        _glfwCreateCursorNull,
-        _glfwCreateStandardCursorNull,
-        _glfwDestroyCursorNull,
-        _glfwSetCursorNull,
-        _glfwGetScancodeNameNull,
-        _glfwGetKeyScancodeNull,
-        _glfwSetClipboardStringNull,
-        _glfwGetClipboardStringNull,
-        _glfwInitJoysticksNull,
-        _glfwTerminateJoysticksNull,
-        _glfwPollJoystickNull,
-        _glfwGetMappingNameNull,
-        _glfwUpdateGamepadGUIDNull,
-        _glfwFreeMonitorNull,
-        _glfwGetMonitorPosNull,
-        _glfwGetMonitorContentScaleNull,
-        _glfwGetMonitorWorkareaNull,
-        _glfwGetVideoModesNull,
-        _glfwGetVideoModeNull,
-        _glfwGetGammaRampNull,
-        _glfwSetGammaRampNull,
-        _glfwCreateWindowNull,
-        _glfwDestroyWindowNull,
-        _glfwSetWindowTitleNull,
-        _glfwSetWindowIconNull,
-        _glfwGetWindowPosNull,
-        _glfwSetWindowPosNull,
-        _glfwGetWindowSizeNull,
-        _glfwSetWindowSizeNull,
-        _glfwSetWindowSizeLimitsNull,
-        _glfwSetWindowAspectRatioNull,
-        _glfwGetFramebufferSizeNull,
-        _glfwGetWindowFrameSizeNull,
-        _glfwGetWindowContentScaleNull,
-        _glfwIconifyWindowNull,
-        _glfwRestoreWindowNull,
-        _glfwMaximizeWindowNull,
-        _glfwShowWindowNull,
-        _glfwHideWindowNull,
-        _glfwRequestWindowAttentionNull,
-        _glfwFocusWindowNull,
-        _glfwSetWindowMonitorNull,
-        _glfwWindowFocusedNull,
-        _glfwWindowIconifiedNull,
-        _glfwWindowVisibleNull,
-        _glfwWindowMaximizedNull,
-        _glfwWindowHoveredNull,
-        _glfwFramebufferTransparentNull,
-        _glfwGetWindowOpacityNull,
-        _glfwSetWindowResizableNull,
-        _glfwSetWindowDecoratedNull,
-        _glfwSetWindowFloatingNull,
-        _glfwSetWindowOpacityNull,
-        _glfwSetWindowMousePassthroughNull,
-        _glfwPollEventsNull,
-        _glfwWaitEventsNull,
-        _glfwWaitEventsTimeoutNull,
-        _glfwPostEmptyEventNull,
-        _glfwGetEGLPlatformNull,
-        _glfwGetEGLNativeDisplayNull,
-        _glfwGetEGLNativeWindowNull,
-        _glfwGetRequiredInstanceExtensionsNull,
-        _glfwGetPhysicalDevicePresentationSupportNull,
-        _glfwCreateWindowSurfaceNull,
+        .platformID = GLFW_PLATFORM_NULL,
+        .init = _glfwInitNull,
+        .terminate = _glfwTerminateNull,
+        .getCursorPos = _glfwGetCursorPosNull,
+        .setCursorPos = _glfwSetCursorPosNull,
+        .setCursorMode = _glfwSetCursorModeNull,
+        .setRawMouseMotion = _glfwSetRawMouseMotionNull,
+        .rawMouseMotionSupported = _glfwRawMouseMotionSupportedNull,
+        .createCursor = _glfwCreateCursorNull,
+        .createStandardCursor = _glfwCreateStandardCursorNull,
+        .destroyCursor = _glfwDestroyCursorNull,
+        .setCursor = _glfwSetCursorNull,
+        .getScancodeName = _glfwGetScancodeNameNull,
+        .getKeyScancode = _glfwGetKeyScancodeNull,
+        .setClipboardString = _glfwSetClipboardStringNull,
+        .getClipboardString = _glfwGetClipboardStringNull,
+        .initJoysticks = _glfwInitJoysticksNull,
+        .terminateJoysticks = _glfwTerminateJoysticksNull,
+        .pollJoystick = _glfwPollJoystickNull,
+        .getMappingName = _glfwGetMappingNameNull,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDNull,
+        .freeMonitor = _glfwFreeMonitorNull,
+        .getMonitorPos = _glfwGetMonitorPosNull,
+        .getMonitorContentScale = _glfwGetMonitorContentScaleNull,
+        .getMonitorWorkarea = _glfwGetMonitorWorkareaNull,
+        .getVideoModes = _glfwGetVideoModesNull,
+        .getVideoMode = _glfwGetVideoModeNull,
+        .getGammaRamp = _glfwGetGammaRampNull,
+        .setGammaRamp = _glfwSetGammaRampNull,
+        .createWindow = _glfwCreateWindowNull,
+        .destroyWindow = _glfwDestroyWindowNull,
+        .setWindowTitle = _glfwSetWindowTitleNull,
+        .setWindowIcon = _glfwSetWindowIconNull,
+        .getWindowPos = _glfwGetWindowPosNull,
+        .setWindowPos = _glfwSetWindowPosNull,
+        .getWindowSize = _glfwGetWindowSizeNull,
+        .setWindowSize = _glfwSetWindowSizeNull,
+        .setWindowSizeLimits = _glfwSetWindowSizeLimitsNull,
+        .setWindowAspectRatio = _glfwSetWindowAspectRatioNull,
+        .getFramebufferSize = _glfwGetFramebufferSizeNull,
+        .getWindowFrameSize = _glfwGetWindowFrameSizeNull,
+        .getWindowContentScale = _glfwGetWindowContentScaleNull,
+        .iconifyWindow = _glfwIconifyWindowNull,
+        .restoreWindow = _glfwRestoreWindowNull,
+        .maximizeWindow = _glfwMaximizeWindowNull,
+        .showWindow = _glfwShowWindowNull,
+        .hideWindow = _glfwHideWindowNull,
+        .requestWindowAttention = _glfwRequestWindowAttentionNull,
+        .focusWindow = _glfwFocusWindowNull,
+        .setWindowMonitor = _glfwSetWindowMonitorNull,
+        .windowFocused = _glfwWindowFocusedNull,
+        .windowIconified = _glfwWindowIconifiedNull,
+        .windowVisible = _glfwWindowVisibleNull,
+        .windowMaximized = _glfwWindowMaximizedNull,
+        .windowHovered = _glfwWindowHoveredNull,
+        .framebufferTransparent = _glfwFramebufferTransparentNull,
+        .getWindowOpacity = _glfwGetWindowOpacityNull,
+        .setWindowResizable = _glfwSetWindowResizableNull,
+        .setWindowDecorated = _glfwSetWindowDecoratedNull,
+        .setWindowFloating = _glfwSetWindowFloatingNull,
+        .setWindowOpacity = _glfwSetWindowOpacityNull,
+        .setWindowMousePassthrough = _glfwSetWindowMousePassthroughNull,
+        .pollEvents = _glfwPollEventsNull,
+        .waitEvents = _glfwWaitEventsNull,
+        .waitEventsTimeout = _glfwWaitEventsTimeoutNull,
+        .postEmptyEvent = _glfwPostEmptyEventNull,
+        .getEGLPlatform = _glfwGetEGLPlatformNull,
+        .getEGLNativeDisplay = _glfwGetEGLNativeDisplayNull,
+        .getEGLNativeWindow = _glfwGetEGLNativeWindowNull,
+        .getRequiredInstanceExtensions = _glfwGetRequiredInstanceExtensionsNull,
+        .getPhysicalDevicePresentationSupport = _glfwGetPhysicalDevicePresentationSupportNull,
+        .createWindowSurface = _glfwCreateWindowSurfaceNull
     };
 
     *platform = null;

+ 72 - 72
src/win32_init.c

@@ -642,78 +642,78 @@ GLFWbool _glfwConnectWin32(int platformID, _GLFWplatform* platform)
 {
     const _GLFWplatform win32 =
     {
-        GLFW_PLATFORM_WIN32,
-        _glfwInitWin32,
-        _glfwTerminateWin32,
-        _glfwGetCursorPosWin32,
-        _glfwSetCursorPosWin32,
-        _glfwSetCursorModeWin32,
-        _glfwSetRawMouseMotionWin32,
-        _glfwRawMouseMotionSupportedWin32,
-        _glfwCreateCursorWin32,
-        _glfwCreateStandardCursorWin32,
-        _glfwDestroyCursorWin32,
-        _glfwSetCursorWin32,
-        _glfwGetScancodeNameWin32,
-        _glfwGetKeyScancodeWin32,
-        _glfwSetClipboardStringWin32,
-        _glfwGetClipboardStringWin32,
-        _glfwInitJoysticksWin32,
-        _glfwTerminateJoysticksWin32,
-        _glfwPollJoystickWin32,
-        _glfwGetMappingNameWin32,
-        _glfwUpdateGamepadGUIDWin32,
-        _glfwFreeMonitorWin32,
-        _glfwGetMonitorPosWin32,
-        _glfwGetMonitorContentScaleWin32,
-        _glfwGetMonitorWorkareaWin32,
-        _glfwGetVideoModesWin32,
-        _glfwGetVideoModeWin32,
-        _glfwGetGammaRampWin32,
-        _glfwSetGammaRampWin32,
-        _glfwCreateWindowWin32,
-        _glfwDestroyWindowWin32,
-        _glfwSetWindowTitleWin32,
-        _glfwSetWindowIconWin32,
-        _glfwGetWindowPosWin32,
-        _glfwSetWindowPosWin32,
-        _glfwGetWindowSizeWin32,
-        _glfwSetWindowSizeWin32,
-        _glfwSetWindowSizeLimitsWin32,
-        _glfwSetWindowAspectRatioWin32,
-        _glfwGetFramebufferSizeWin32,
-        _glfwGetWindowFrameSizeWin32,
-        _glfwGetWindowContentScaleWin32,
-        _glfwIconifyWindowWin32,
-        _glfwRestoreWindowWin32,
-        _glfwMaximizeWindowWin32,
-        _glfwShowWindowWin32,
-        _glfwHideWindowWin32,
-        _glfwRequestWindowAttentionWin32,
-        _glfwFocusWindowWin32,
-        _glfwSetWindowMonitorWin32,
-        _glfwWindowFocusedWin32,
-        _glfwWindowIconifiedWin32,
-        _glfwWindowVisibleWin32,
-        _glfwWindowMaximizedWin32,
-        _glfwWindowHoveredWin32,
-        _glfwFramebufferTransparentWin32,
-        _glfwGetWindowOpacityWin32,
-        _glfwSetWindowResizableWin32,
-        _glfwSetWindowDecoratedWin32,
-        _glfwSetWindowFloatingWin32,
-        _glfwSetWindowOpacityWin32,
-        _glfwSetWindowMousePassthroughWin32,
-        _glfwPollEventsWin32,
-        _glfwWaitEventsWin32,
-        _glfwWaitEventsTimeoutWin32,
-        _glfwPostEmptyEventWin32,
-        _glfwGetEGLPlatformWin32,
-        _glfwGetEGLNativeDisplayWin32,
-        _glfwGetEGLNativeWindowWin32,
-        _glfwGetRequiredInstanceExtensionsWin32,
-        _glfwGetPhysicalDevicePresentationSupportWin32,
-        _glfwCreateWindowSurfaceWin32,
+        .platformID = GLFW_PLATFORM_WIN32,
+        .init = _glfwInitWin32,
+        .terminate = _glfwTerminateWin32,
+        .getCursorPos = _glfwGetCursorPosWin32,
+        .setCursorPos = _glfwSetCursorPosWin32,
+        .setCursorMode = _glfwSetCursorModeWin32,
+        .setRawMouseMotion = _glfwSetRawMouseMotionWin32,
+        .rawMouseMotionSupported = _glfwRawMouseMotionSupportedWin32,
+        .createCursor = _glfwCreateCursorWin32,
+        .createStandardCursor = _glfwCreateStandardCursorWin32,
+        .destroyCursor = _glfwDestroyCursorWin32,
+        .setCursor = _glfwSetCursorWin32,
+        .getScancodeName = _glfwGetScancodeNameWin32,
+        .getKeyScancode = _glfwGetKeyScancodeWin32,
+        .setClipboardString = _glfwSetClipboardStringWin32,
+        .getClipboardString = _glfwGetClipboardStringWin32,
+        .initJoysticks = _glfwInitJoysticksWin32,
+        .terminateJoysticks = _glfwTerminateJoysticksWin32,
+        .pollJoystick = _glfwPollJoystickWin32,
+        .getMappingName = _glfwGetMappingNameWin32,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDWin32,
+        .freeMonitor = _glfwFreeMonitorWin32,
+        .getMonitorPos = _glfwGetMonitorPosWin32,
+        .getMonitorContentScale = _glfwGetMonitorContentScaleWin32,
+        .getMonitorWorkarea = _glfwGetMonitorWorkareaWin32,
+        .getVideoModes = _glfwGetVideoModesWin32,
+        .getVideoMode = _glfwGetVideoModeWin32,
+        .getGammaRamp = _glfwGetGammaRampWin32,
+        .setGammaRamp = _glfwSetGammaRampWin32,
+        .createWindow = _glfwCreateWindowWin32,
+        .destroyWindow = _glfwDestroyWindowWin32,
+        .setWindowTitle = _glfwSetWindowTitleWin32,
+        .setWindowIcon = _glfwSetWindowIconWin32,
+        .getWindowPos = _glfwGetWindowPosWin32,
+        .setWindowPos = _glfwSetWindowPosWin32,
+        .getWindowSize = _glfwGetWindowSizeWin32,
+        .setWindowSize = _glfwSetWindowSizeWin32,
+        .setWindowSizeLimits = _glfwSetWindowSizeLimitsWin32,
+        .setWindowAspectRatio = _glfwSetWindowAspectRatioWin32,
+        .getFramebufferSize = _glfwGetFramebufferSizeWin32,
+        .getWindowFrameSize = _glfwGetWindowFrameSizeWin32,
+        .getWindowContentScale = _glfwGetWindowContentScaleWin32,
+        .iconifyWindow = _glfwIconifyWindowWin32,
+        .restoreWindow = _glfwRestoreWindowWin32,
+        .maximizeWindow = _glfwMaximizeWindowWin32,
+        .showWindow = _glfwShowWindowWin32,
+        .hideWindow = _glfwHideWindowWin32,
+        .requestWindowAttention = _glfwRequestWindowAttentionWin32,
+        .focusWindow = _glfwFocusWindowWin32,
+        .setWindowMonitor = _glfwSetWindowMonitorWin32,
+        .windowFocused = _glfwWindowFocusedWin32,
+        .windowIconified = _glfwWindowIconifiedWin32,
+        .windowVisible = _glfwWindowVisibleWin32,
+        .windowMaximized = _glfwWindowMaximizedWin32,
+        .windowHovered = _glfwWindowHoveredWin32,
+        .framebufferTransparent = _glfwFramebufferTransparentWin32,
+        .getWindowOpacity = _glfwGetWindowOpacityWin32,
+        .setWindowResizable = _glfwSetWindowResizableWin32,
+        .setWindowDecorated = _glfwSetWindowDecoratedWin32,
+        .setWindowFloating = _glfwSetWindowFloatingWin32,
+        .setWindowOpacity = _glfwSetWindowOpacityWin32,
+        .setWindowMousePassthrough = _glfwSetWindowMousePassthroughWin32,
+        .pollEvents = _glfwPollEventsWin32,
+        .waitEvents = _glfwWaitEventsWin32,
+        .waitEventsTimeout = _glfwWaitEventsTimeoutWin32,
+        .postEmptyEvent = _glfwPostEmptyEventWin32,
+        .getEGLPlatform = _glfwGetEGLPlatformWin32,
+        .getEGLNativeDisplay = _glfwGetEGLNativeDisplayWin32,
+        .getEGLNativeWindow = _glfwGetEGLNativeWindowWin32,
+        .getRequiredInstanceExtensions = _glfwGetRequiredInstanceExtensionsWin32,
+        .getPhysicalDevicePresentationSupport = _glfwGetPhysicalDevicePresentationSupportWin32,
+        .createWindowSurface = _glfwCreateWindowSurfaceWin32
     };
 
     *platform = win32;

+ 77 - 77
src/wl_init.c

@@ -405,86 +405,86 @@ GLFWbool _glfwConnectWayland(int platformID, _GLFWplatform* platform)
 {
     const _GLFWplatform wayland =
     {
-        GLFW_PLATFORM_WAYLAND,
-        _glfwInitWayland,
-        _glfwTerminateWayland,
-        _glfwGetCursorPosWayland,
-        _glfwSetCursorPosWayland,
-        _glfwSetCursorModeWayland,
-        _glfwSetRawMouseMotionWayland,
-        _glfwRawMouseMotionSupportedWayland,
-        _glfwCreateCursorWayland,
-        _glfwCreateStandardCursorWayland,
-        _glfwDestroyCursorWayland,
-        _glfwSetCursorWayland,
-        _glfwGetScancodeNameWayland,
-        _glfwGetKeyScancodeWayland,
-        _glfwSetClipboardStringWayland,
-        _glfwGetClipboardStringWayland,
+        .platformID = GLFW_PLATFORM_WAYLAND,
+        .init = _glfwInitWayland,
+        .terminate = _glfwTerminateWayland,
+        .getCursorPos = _glfwGetCursorPosWayland,
+        .setCursorPos = _glfwSetCursorPosWayland,
+        .setCursorMode = _glfwSetCursorModeWayland,
+        .setRawMouseMotion = _glfwSetRawMouseMotionWayland,
+        .rawMouseMotionSupported = _glfwRawMouseMotionSupportedWayland,
+        .createCursor = _glfwCreateCursorWayland,
+        .createStandardCursor = _glfwCreateStandardCursorWayland,
+        .destroyCursor = _glfwDestroyCursorWayland,
+        .setCursor = _glfwSetCursorWayland,
+        .getScancodeName = _glfwGetScancodeNameWayland,
+        .getKeyScancode = _glfwGetKeyScancodeWayland,
+        .setClipboardString = _glfwSetClipboardStringWayland,
+        .getClipboardString = _glfwGetClipboardStringWayland,
 #if defined(GLFW_BUILD_LINUX_JOYSTICK)
-        _glfwInitJoysticksLinux,
-        _glfwTerminateJoysticksLinux,
-        _glfwPollJoystickLinux,
-        _glfwGetMappingNameLinux,
-        _glfwUpdateGamepadGUIDLinux,
+        .initJoysticks = _glfwInitJoysticksLinux,
+        .terminateJoysticks = _glfwTerminateJoysticksLinux,
+        .pollJoystick = _glfwPollJoystickLinux,
+        .getMappingName = _glfwGetMappingNameLinux,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDLinux,
 #else
-        _glfwInitJoysticksNull,
-        _glfwTerminateJoysticksNull,
-        _glfwPollJoystickNull,
-        _glfwGetMappingNameNull,
-        _glfwUpdateGamepadGUIDNull,
+        .initJoysticks = _glfwInitJoysticksNull,
+        .terminateJoysticks = _glfwTerminateJoysticksNull,
+        .pollJoystick = _glfwPollJoystickNull,
+        .getMappingName = _glfwGetMappingNameNull,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDNull,
 #endif
-        _glfwFreeMonitorWayland,
-        _glfwGetMonitorPosWayland,
-        _glfwGetMonitorContentScaleWayland,
-        _glfwGetMonitorWorkareaWayland,
-        _glfwGetVideoModesWayland,
-        _glfwGetVideoModeWayland,
-        _glfwGetGammaRampWayland,
-        _glfwSetGammaRampWayland,
-        _glfwCreateWindowWayland,
-        _glfwDestroyWindowWayland,
-        _glfwSetWindowTitleWayland,
-        _glfwSetWindowIconWayland,
-        _glfwGetWindowPosWayland,
-        _glfwSetWindowPosWayland,
-        _glfwGetWindowSizeWayland,
-        _glfwSetWindowSizeWayland,
-        _glfwSetWindowSizeLimitsWayland,
-        _glfwSetWindowAspectRatioWayland,
-        _glfwGetFramebufferSizeWayland,
-        _glfwGetWindowFrameSizeWayland,
-        _glfwGetWindowContentScaleWayland,
-        _glfwIconifyWindowWayland,
-        _glfwRestoreWindowWayland,
-        _glfwMaximizeWindowWayland,
-        _glfwShowWindowWayland,
-        _glfwHideWindowWayland,
-        _glfwRequestWindowAttentionWayland,
-        _glfwFocusWindowWayland,
-        _glfwSetWindowMonitorWayland,
-        _glfwWindowFocusedWayland,
-        _glfwWindowIconifiedWayland,
-        _glfwWindowVisibleWayland,
-        _glfwWindowMaximizedWayland,
-        _glfwWindowHoveredWayland,
-        _glfwFramebufferTransparentWayland,
-        _glfwGetWindowOpacityWayland,
-        _glfwSetWindowResizableWayland,
-        _glfwSetWindowDecoratedWayland,
-        _glfwSetWindowFloatingWayland,
-        _glfwSetWindowOpacityWayland,
-        _glfwSetWindowMousePassthroughWayland,
-        _glfwPollEventsWayland,
-        _glfwWaitEventsWayland,
-        _glfwWaitEventsTimeoutWayland,
-        _glfwPostEmptyEventWayland,
-        _glfwGetEGLPlatformWayland,
-        _glfwGetEGLNativeDisplayWayland,
-        _glfwGetEGLNativeWindowWayland,
-        _glfwGetRequiredInstanceExtensionsWayland,
-        _glfwGetPhysicalDevicePresentationSupportWayland,
-        _glfwCreateWindowSurfaceWayland,
+        .freeMonitor = _glfwFreeMonitorWayland,
+        .getMonitorPos = _glfwGetMonitorPosWayland,
+        .getMonitorContentScale = _glfwGetMonitorContentScaleWayland,
+        .getMonitorWorkarea = _glfwGetMonitorWorkareaWayland,
+        .getVideoModes = _glfwGetVideoModesWayland,
+        .getVideoMode = _glfwGetVideoModeWayland,
+        .getGammaRamp = _glfwGetGammaRampWayland,
+        .setGammaRamp = _glfwSetGammaRampWayland,
+        .createWindow = _glfwCreateWindowWayland,
+        .destroyWindow = _glfwDestroyWindowWayland,
+        .setWindowTitle = _glfwSetWindowTitleWayland,
+        .setWindowIcon = _glfwSetWindowIconWayland,
+        .getWindowPos = _glfwGetWindowPosWayland,
+        .setWindowPos = _glfwSetWindowPosWayland,
+        .getWindowSize = _glfwGetWindowSizeWayland,
+        .setWindowSize = _glfwSetWindowSizeWayland,
+        .setWindowSizeLimits = _glfwSetWindowSizeLimitsWayland,
+        .setWindowAspectRatio = _glfwSetWindowAspectRatioWayland,
+        .getFramebufferSize = _glfwGetFramebufferSizeWayland,
+        .getWindowFrameSize = _glfwGetWindowFrameSizeWayland,
+        .getWindowContentScale = _glfwGetWindowContentScaleWayland,
+        .iconifyWindow = _glfwIconifyWindowWayland,
+        .restoreWindow = _glfwRestoreWindowWayland,
+        .maximizeWindow = _glfwMaximizeWindowWayland,
+        .showWindow = _glfwShowWindowWayland,
+        .hideWindow = _glfwHideWindowWayland,
+        .requestWindowAttention = _glfwRequestWindowAttentionWayland,
+        .focusWindow = _glfwFocusWindowWayland,
+        .setWindowMonitor = _glfwSetWindowMonitorWayland,
+        .windowFocused = _glfwWindowFocusedWayland,
+        .windowIconified = _glfwWindowIconifiedWayland,
+        .windowVisible = _glfwWindowVisibleWayland,
+        .windowMaximized = _glfwWindowMaximizedWayland,
+        .windowHovered = _glfwWindowHoveredWayland,
+        .framebufferTransparent = _glfwFramebufferTransparentWayland,
+        .getWindowOpacity = _glfwGetWindowOpacityWayland,
+        .setWindowResizable = _glfwSetWindowResizableWayland,
+        .setWindowDecorated = _glfwSetWindowDecoratedWayland,
+        .setWindowFloating = _glfwSetWindowFloatingWayland,
+        .setWindowOpacity = _glfwSetWindowOpacityWayland,
+        .setWindowMousePassthrough = _glfwSetWindowMousePassthroughWayland,
+        .pollEvents = _glfwPollEventsWayland,
+        .waitEvents = _glfwWaitEventsWayland,
+        .waitEventsTimeout = _glfwWaitEventsTimeoutWayland,
+        .postEmptyEvent = _glfwPostEmptyEventWayland,
+        .getEGLPlatform = _glfwGetEGLPlatformWayland,
+        .getEGLNativeDisplay = _glfwGetEGLNativeDisplayWayland,
+        .getEGLNativeWindow = _glfwGetEGLNativeWindowWayland,
+        .getRequiredInstanceExtensions = _glfwGetRequiredInstanceExtensionsWayland,
+        .getPhysicalDevicePresentationSupport = _glfwGetPhysicalDevicePresentationSupportWayland,
+        .createWindowSurface = _glfwCreateWindowSurfaceWayland
     };
 
     void* module = _glfwPlatformLoadModule("libwayland-client.so.0");

+ 77 - 77
src/x11_init.c

@@ -1166,86 +1166,86 @@ GLFWbool _glfwConnectX11(int platformID, _GLFWplatform* platform)
 {
     const _GLFWplatform x11 =
     {
-        GLFW_PLATFORM_X11,
-        _glfwInitX11,
-        _glfwTerminateX11,
-        _glfwGetCursorPosX11,
-        _glfwSetCursorPosX11,
-        _glfwSetCursorModeX11,
-        _glfwSetRawMouseMotionX11,
-        _glfwRawMouseMotionSupportedX11,
-        _glfwCreateCursorX11,
-        _glfwCreateStandardCursorX11,
-        _glfwDestroyCursorX11,
-        _glfwSetCursorX11,
-        _glfwGetScancodeNameX11,
-        _glfwGetKeyScancodeX11,
-        _glfwSetClipboardStringX11,
-        _glfwGetClipboardStringX11,
+        .platformID = GLFW_PLATFORM_X11,
+        .init = _glfwInitX11,
+        .terminate = _glfwTerminateX11,
+        .getCursorPos = _glfwGetCursorPosX11,
+        .setCursorPos = _glfwSetCursorPosX11,
+        .setCursorMode = _glfwSetCursorModeX11,
+        .setRawMouseMotion = _glfwSetRawMouseMotionX11,
+        .rawMouseMotionSupported = _glfwRawMouseMotionSupportedX11,
+        .createCursor = _glfwCreateCursorX11,
+        .createStandardCursor = _glfwCreateStandardCursorX11,
+        .destroyCursor = _glfwDestroyCursorX11,
+        .setCursor = _glfwSetCursorX11,
+        .getScancodeName = _glfwGetScancodeNameX11,
+        .getKeyScancode = _glfwGetKeyScancodeX11,
+        .setClipboardString = _glfwSetClipboardStringX11,
+        .getClipboardString = _glfwGetClipboardStringX11,
 #if defined(GLFW_BUILD_LINUX_JOYSTICK)
-        _glfwInitJoysticksLinux,
-        _glfwTerminateJoysticksLinux,
-        _glfwPollJoystickLinux,
-        _glfwGetMappingNameLinux,
-        _glfwUpdateGamepadGUIDLinux,
+        .initJoysticks = _glfwInitJoysticksLinux,
+        .terminateJoysticks = _glfwTerminateJoysticksLinux,
+        .pollJoystick = _glfwPollJoystickLinux,
+        .getMappingName = _glfwGetMappingNameLinux,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDLinux,
 #else
-        _glfwInitJoysticksNull,
-        _glfwTerminateJoysticksNull,
-        _glfwPollJoystickNull,
-        _glfwGetMappingNameNull,
-        _glfwUpdateGamepadGUIDNull,
+        .initJoysticks = _glfwInitJoysticksNull,
+        .terminateJoysticks = _glfwTerminateJoysticksNull,
+        .pollJoystick = _glfwPollJoystickNull,
+        .getMappingName = _glfwGetMappingNameNull,
+        .updateGamepadGUID = _glfwUpdateGamepadGUIDNull,
 #endif
-        _glfwFreeMonitorX11,
-        _glfwGetMonitorPosX11,
-        _glfwGetMonitorContentScaleX11,
-        _glfwGetMonitorWorkareaX11,
-        _glfwGetVideoModesX11,
-        _glfwGetVideoModeX11,
-        _glfwGetGammaRampX11,
-        _glfwSetGammaRampX11,
-        _glfwCreateWindowX11,
-        _glfwDestroyWindowX11,
-        _glfwSetWindowTitleX11,
-        _glfwSetWindowIconX11,
-        _glfwGetWindowPosX11,
-        _glfwSetWindowPosX11,
-        _glfwGetWindowSizeX11,
-        _glfwSetWindowSizeX11,
-        _glfwSetWindowSizeLimitsX11,
-        _glfwSetWindowAspectRatioX11,
-        _glfwGetFramebufferSizeX11,
-        _glfwGetWindowFrameSizeX11,
-        _glfwGetWindowContentScaleX11,
-        _glfwIconifyWindowX11,
-        _glfwRestoreWindowX11,
-        _glfwMaximizeWindowX11,
-        _glfwShowWindowX11,
-        _glfwHideWindowX11,
-        _glfwRequestWindowAttentionX11,
-        _glfwFocusWindowX11,
-        _glfwSetWindowMonitorX11,
-        _glfwWindowFocusedX11,
-        _glfwWindowIconifiedX11,
-        _glfwWindowVisibleX11,
-        _glfwWindowMaximizedX11,
-        _glfwWindowHoveredX11,
-        _glfwFramebufferTransparentX11,
-        _glfwGetWindowOpacityX11,
-        _glfwSetWindowResizableX11,
-        _glfwSetWindowDecoratedX11,
-        _glfwSetWindowFloatingX11,
-        _glfwSetWindowOpacityX11,
-        _glfwSetWindowMousePassthroughX11,
-        _glfwPollEventsX11,
-        _glfwWaitEventsX11,
-        _glfwWaitEventsTimeoutX11,
-        _glfwPostEmptyEventX11,
-        _glfwGetEGLPlatformX11,
-        _glfwGetEGLNativeDisplayX11,
-        _glfwGetEGLNativeWindowX11,
-        _glfwGetRequiredInstanceExtensionsX11,
-        _glfwGetPhysicalDevicePresentationSupportX11,
-        _glfwCreateWindowSurfaceX11,
+        .freeMonitor = _glfwFreeMonitorX11,
+        .getMonitorPos = _glfwGetMonitorPosX11,
+        .getMonitorContentScale = _glfwGetMonitorContentScaleX11,
+        .getMonitorWorkarea = _glfwGetMonitorWorkareaX11,
+        .getVideoModes = _glfwGetVideoModesX11,
+        .getVideoMode = _glfwGetVideoModeX11,
+        .getGammaRamp = _glfwGetGammaRampX11,
+        .setGammaRamp = _glfwSetGammaRampX11,
+        .createWindow = _glfwCreateWindowX11,
+        .destroyWindow = _glfwDestroyWindowX11,
+        .setWindowTitle = _glfwSetWindowTitleX11,
+        .setWindowIcon = _glfwSetWindowIconX11,
+        .getWindowPos = _glfwGetWindowPosX11,
+        .setWindowPos = _glfwSetWindowPosX11,
+        .getWindowSize = _glfwGetWindowSizeX11,
+        .setWindowSize = _glfwSetWindowSizeX11,
+        .setWindowSizeLimits = _glfwSetWindowSizeLimitsX11,
+        .setWindowAspectRatio = _glfwSetWindowAspectRatioX11,
+        .getFramebufferSize = _glfwGetFramebufferSizeX11,
+        .getWindowFrameSize = _glfwGetWindowFrameSizeX11,
+        .getWindowContentScale = _glfwGetWindowContentScaleX11,
+        .iconifyWindow = _glfwIconifyWindowX11,
+        .restoreWindow = _glfwRestoreWindowX11,
+        .maximizeWindow = _glfwMaximizeWindowX11,
+        .showWindow = _glfwShowWindowX11,
+        .hideWindow = _glfwHideWindowX11,
+        .requestWindowAttention = _glfwRequestWindowAttentionX11,
+        .focusWindow = _glfwFocusWindowX11,
+        .setWindowMonitor = _glfwSetWindowMonitorX11,
+        .windowFocused = _glfwWindowFocusedX11,
+        .windowIconified = _glfwWindowIconifiedX11,
+        .windowVisible = _glfwWindowVisibleX11,
+        .windowMaximized = _glfwWindowMaximizedX11,
+        .windowHovered = _glfwWindowHoveredX11,
+        .framebufferTransparent = _glfwFramebufferTransparentX11,
+        .getWindowOpacity = _glfwGetWindowOpacityX11,
+        .setWindowResizable = _glfwSetWindowResizableX11,
+        .setWindowDecorated = _glfwSetWindowDecoratedX11,
+        .setWindowFloating = _glfwSetWindowFloatingX11,
+        .setWindowOpacity = _glfwSetWindowOpacityX11,
+        .setWindowMousePassthrough = _glfwSetWindowMousePassthroughX11,
+        .pollEvents = _glfwPollEventsX11,
+        .waitEvents = _glfwWaitEventsX11,
+        .waitEventsTimeout = _glfwWaitEventsTimeoutX11,
+        .postEmptyEvent = _glfwPostEmptyEventX11,
+        .getEGLPlatform = _glfwGetEGLPlatformX11,
+        .getEGLNativeDisplay = _glfwGetEGLNativeDisplayX11,
+        .getEGLNativeWindow = _glfwGetEGLNativeWindowX11,
+        .getRequiredInstanceExtensions = _glfwGetRequiredInstanceExtensionsX11,
+        .getPhysicalDevicePresentationSupport = _glfwGetPhysicalDevicePresentationSupportX11,
+        .createWindowSurface = _glfwCreateWindowSurfaceX11
     };
 
     // HACK: If the application has left the locale as "C" then both wide