mirror of
https://github.com/glfw/glfw.git
synced 2024-11-29 07:34:35 +00:00
X11: Clean up cursor shape translation
This commit is contained in:
parent
b1b21292b9
commit
338afe3c6d
@ -175,29 +175,6 @@ static Bool isSelPropNewValueNotify(Display* display, XEvent* event, XPointer po
|
|||||||
event->xproperty.atom == notification->xselection.property;
|
event->xproperty.atom == notification->xselection.property;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Translates a GLFW standard cursor to a font cursor shape
|
|
||||||
//
|
|
||||||
static int translateCursorShape(int shape)
|
|
||||||
{
|
|
||||||
switch (shape)
|
|
||||||
{
|
|
||||||
case GLFW_ARROW_CURSOR:
|
|
||||||
return XC_left_ptr;
|
|
||||||
case GLFW_IBEAM_CURSOR:
|
|
||||||
return XC_xterm;
|
|
||||||
case GLFW_CROSSHAIR_CURSOR:
|
|
||||||
return XC_crosshair;
|
|
||||||
case GLFW_HAND_CURSOR:
|
|
||||||
return XC_hand1;
|
|
||||||
case GLFW_HRESIZE_CURSOR:
|
|
||||||
return XC_sb_h_double_arrow;
|
|
||||||
case GLFW_VRESIZE_CURSOR:
|
|
||||||
return XC_sb_v_double_arrow;
|
|
||||||
}
|
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Translates an X event modifier state mask
|
// Translates an X event modifier state mask
|
||||||
//
|
//
|
||||||
static int translateState(int state)
|
static int translateState(int state)
|
||||||
@ -2799,8 +2776,24 @@ int _glfwPlatformCreateCursor(_GLFWcursor* cursor,
|
|||||||
|
|
||||||
int _glfwPlatformCreateStandardCursor(_GLFWcursor* cursor, int shape)
|
int _glfwPlatformCreateStandardCursor(_GLFWcursor* cursor, int shape)
|
||||||
{
|
{
|
||||||
cursor->x11.handle = XCreateFontCursor(_glfw.x11.display,
|
int native = 0;
|
||||||
translateCursorShape(shape));
|
|
||||||
|
if (shape == GLFW_ARROW_CURSOR)
|
||||||
|
native = XC_left_ptr;
|
||||||
|
else if (shape == GLFW_IBEAM_CURSOR)
|
||||||
|
native = XC_xterm;
|
||||||
|
else if (shape == GLFW_CROSSHAIR_CURSOR)
|
||||||
|
native = XC_crosshair;
|
||||||
|
else if (shape == GLFW_HAND_CURSOR)
|
||||||
|
native = XC_hand1;
|
||||||
|
else if (shape == GLFW_HRESIZE_CURSOR)
|
||||||
|
native = XC_sb_h_double_arrow;
|
||||||
|
else if (shape == GLFW_VRESIZE_CURSOR)
|
||||||
|
native = XC_sb_v_double_arrow;
|
||||||
|
else
|
||||||
|
return GLFW_FALSE;
|
||||||
|
|
||||||
|
cursor->x11.handle = XCreateFontCursor(_glfw.x11.display, native);
|
||||||
if (!cursor->x11.handle)
|
if (!cursor->x11.handle)
|
||||||
{
|
{
|
||||||
_glfwInputError(GLFW_PLATFORM_ERROR,
|
_glfwInputError(GLFW_PLATFORM_ERROR,
|
||||||
|
Loading…
Reference in New Issue
Block a user