mirror of
https://github.com/glfw/glfw.git
synced 2024-11-26 06:14:35 +00:00
Expose display device name as UTF-8.
This makes interaction with libOVR simpler, as it provides the display device name in the same encoding.
This commit is contained in:
parent
1b6d8a6ed6
commit
99cedceef5
@ -112,7 +112,7 @@ extern "C" {
|
|||||||
* @return The the display device name of the specified monitor.
|
* @return The the display device name of the specified monitor.
|
||||||
* @ingroup native
|
* @ingroup native
|
||||||
*/
|
*/
|
||||||
GLFWAPI const WCHAR* glfwGetWin32Monitor(GLFWmonitor* monitor);
|
GLFWAPI const char* glfwGetWin32Monitor(GLFWmonitor* monitor);
|
||||||
|
|
||||||
/*! @brief Returns the `HWND` of the specified window.
|
/*! @brief Returns the `HWND` of the specified window.
|
||||||
* @return The `HWND` of the specified window.
|
* @return The `HWND` of the specified window.
|
||||||
|
@ -160,6 +160,12 @@ _GLFWmonitor** _glfwPlatformGetMonitors(int* count)
|
|||||||
wcscpy(monitors[found]->win32.adapterName, adapter.DeviceName);
|
wcscpy(monitors[found]->win32.adapterName, adapter.DeviceName);
|
||||||
wcscpy(monitors[found]->win32.displayName, display.DeviceName);
|
wcscpy(monitors[found]->win32.displayName, display.DeviceName);
|
||||||
|
|
||||||
|
WideCharToMultiByte(CP_UTF8, 0,
|
||||||
|
display.DeviceName, -1,
|
||||||
|
monitors[found]->win32.nativeName,
|
||||||
|
sizeof(monitors[found]->win32.nativeName),
|
||||||
|
NULL, NULL);
|
||||||
|
|
||||||
if (adapter.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE &&
|
if (adapter.StateFlags & DISPLAY_DEVICE_PRIMARY_DEVICE &&
|
||||||
displayIndex == 0)
|
displayIndex == 0)
|
||||||
{
|
{
|
||||||
@ -320,10 +326,10 @@ void _glfwPlatformSetGammaRamp(_GLFWmonitor* monitor, const GLFWgammaramp* ramp)
|
|||||||
////// GLFW native API //////
|
////// GLFW native API //////
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
GLFWAPI const WCHAR* glfwGetWin32Monitor(GLFWmonitor* handle)
|
GLFWAPI const char* glfwGetWin32Monitor(GLFWmonitor* handle)
|
||||||
{
|
{
|
||||||
_GLFWmonitor* monitor = (_GLFWmonitor*) handle;
|
_GLFWmonitor* monitor = (_GLFWmonitor*) handle;
|
||||||
_GLFW_REQUIRE_INIT_OR_RETURN(NULL);
|
_GLFW_REQUIRE_INIT_OR_RETURN(NULL);
|
||||||
return monitor->win32.displayName;
|
return monitor->win32.nativeName;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -205,6 +205,7 @@ typedef struct _GLFWmonitorWin32
|
|||||||
// This size matches the static size of DISPLAY_DEVICE.DeviceName
|
// This size matches the static size of DISPLAY_DEVICE.DeviceName
|
||||||
WCHAR adapterName[32];
|
WCHAR adapterName[32];
|
||||||
WCHAR displayName[32];
|
WCHAR displayName[32];
|
||||||
|
char nativeName[64];
|
||||||
GLboolean modeChanged;
|
GLboolean modeChanged;
|
||||||
|
|
||||||
} _GLFWmonitorWin32;
|
} _GLFWmonitorWin32;
|
||||||
|
Loading…
Reference in New Issue
Block a user