add hand cursor support (+11 squashed commit)
This commit is contained in:
parent
004fe8916a
commit
ecd9a223e3
@ -155,6 +155,7 @@ static bool ImGui_ImplGlfw_Init(GLFWwindow* window, bool install_callbacks, Glfw
|
|||||||
g_MouseCursors[ImGuiMouseCursor_ResizeEW] = glfwCreateStandardCursor(GLFW_HRESIZE_CURSOR);
|
g_MouseCursors[ImGuiMouseCursor_ResizeEW] = glfwCreateStandardCursor(GLFW_HRESIZE_CURSOR);
|
||||||
g_MouseCursors[ImGuiMouseCursor_ResizeNESW] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); // FIXME: GLFW doesn't have this.
|
g_MouseCursors[ImGuiMouseCursor_ResizeNESW] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); // FIXME: GLFW doesn't have this.
|
||||||
g_MouseCursors[ImGuiMouseCursor_ResizeNWSE] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); // FIXME: GLFW doesn't have this.
|
g_MouseCursors[ImGuiMouseCursor_ResizeNWSE] = glfwCreateStandardCursor(GLFW_ARROW_CURSOR); // FIXME: GLFW doesn't have this.
|
||||||
|
g_MouseCursors[ImGuiMouseCursor_Hand] = glfwCreateStandardCursor(GLFW_HAND_CURSOR);
|
||||||
|
|
||||||
if (install_callbacks)
|
if (install_callbacks)
|
||||||
ImGui_ImplGlfw_InstallCallbacks(window);
|
ImGui_ImplGlfw_InstallCallbacks(window);
|
||||||
|
@ -156,6 +156,7 @@ static bool ImGui_ImplSDL2_Init(SDL_Window* window)
|
|||||||
g_MouseCursors[ImGuiMouseCursor_ResizeEW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZEWE);
|
g_MouseCursors[ImGuiMouseCursor_ResizeEW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZEWE);
|
||||||
g_MouseCursors[ImGuiMouseCursor_ResizeNESW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENESW);
|
g_MouseCursors[ImGuiMouseCursor_ResizeNESW] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENESW);
|
||||||
g_MouseCursors[ImGuiMouseCursor_ResizeNWSE] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENWSE);
|
g_MouseCursors[ImGuiMouseCursor_ResizeNWSE] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_SIZENWSE);
|
||||||
|
g_MouseCursors[ImGuiMouseCursor_Hand] = SDL_CreateSystemCursor(SDL_SYSTEM_CURSOR_HAND);
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
SDL_SysWMinfo wmInfo;
|
SDL_SysWMinfo wmInfo;
|
||||||
|
@ -104,6 +104,7 @@ static bool ImGui_ImplWin32_UpdateMouseCursor()
|
|||||||
case ImGuiMouseCursor_ResizeNS: win32_cursor = IDC_SIZENS; break;
|
case ImGuiMouseCursor_ResizeNS: win32_cursor = IDC_SIZENS; break;
|
||||||
case ImGuiMouseCursor_ResizeNESW: win32_cursor = IDC_SIZENESW; break;
|
case ImGuiMouseCursor_ResizeNESW: win32_cursor = IDC_SIZENESW; break;
|
||||||
case ImGuiMouseCursor_ResizeNWSE: win32_cursor = IDC_SIZENWSE; break;
|
case ImGuiMouseCursor_ResizeNWSE: win32_cursor = IDC_SIZENWSE; break;
|
||||||
|
case ImGuiMouseCursor_Hand: win32_cursor = IDC_HAND; break;
|
||||||
}
|
}
|
||||||
::SetCursor(::LoadCursor(NULL, win32_cursor));
|
::SetCursor(::LoadCursor(NULL, win32_cursor));
|
||||||
}
|
}
|
||||||
|
1
imgui.h
1
imgui.h
@ -985,6 +985,7 @@ enum ImGuiMouseCursor_
|
|||||||
ImGuiMouseCursor_ResizeEW, // When hovering over a vertical border or a column
|
ImGuiMouseCursor_ResizeEW, // When hovering over a vertical border or a column
|
||||||
ImGuiMouseCursor_ResizeNESW, // When hovering over the bottom-left corner of a window
|
ImGuiMouseCursor_ResizeNESW, // When hovering over the bottom-left corner of a window
|
||||||
ImGuiMouseCursor_ResizeNWSE, // When hovering over the bottom-right corner of a window
|
ImGuiMouseCursor_ResizeNWSE, // When hovering over the bottom-right corner of a window
|
||||||
|
ImGuiMouseCursor_Hand, // When hoverinf over the HyperLink
|
||||||
ImGuiMouseCursor_COUNT
|
ImGuiMouseCursor_COUNT
|
||||||
|
|
||||||
// Obsolete names (will be removed)
|
// Obsolete names (will be removed)
|
||||||
|
@ -1340,34 +1340,34 @@ ImFontConfig::ImFontConfig()
|
|||||||
|
|
||||||
// A work of art lies ahead! (. = white layer, X = black layer, others are blank)
|
// A work of art lies ahead! (. = white layer, X = black layer, others are blank)
|
||||||
// The white texels on the top left are the ones we'll use everywhere in ImGui to render filled shapes.
|
// The white texels on the top left are the ones we'll use everywhere in ImGui to render filled shapes.
|
||||||
const int FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF = 90;
|
const int FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF = 108;
|
||||||
const int FONT_ATLAS_DEFAULT_TEX_DATA_H = 27;
|
const int FONT_ATLAS_DEFAULT_TEX_DATA_H = 27;
|
||||||
const unsigned int FONT_ATLAS_DEFAULT_TEX_DATA_ID = 0x80000000;
|
const unsigned int FONT_ATLAS_DEFAULT_TEX_DATA_ID = 0x80000000;
|
||||||
static const char FONT_ATLAS_DEFAULT_TEX_DATA_PIXELS[FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF * FONT_ATLAS_DEFAULT_TEX_DATA_H + 1] =
|
static const char FONT_ATLAS_DEFAULT_TEX_DATA_PIXELS[FONT_ATLAS_DEFAULT_TEX_DATA_W_HALF * FONT_ATLAS_DEFAULT_TEX_DATA_H + 1] =
|
||||||
{
|
{
|
||||||
"..- -XXXXXXX- X - X -XXXXXXX - XXXXXXX"
|
"..- -XXXXXXX- X - X -XXXXXXX - XXXXXXX- xx "
|
||||||
"..- -X.....X- X.X - X.X -X.....X - X.....X"
|
"..- -X.....X- X.X - X.X -X.....X - X.....X- x x "
|
||||||
"--- -XXX.XXX- X...X - X...X -X....X - X....X"
|
"--- -XXX.XXX- X...X - X...X -X....X - X....X- x x "
|
||||||
"X - X.X - X.....X - X.....X -X...X - X...X"
|
"X - X.X - X.....X - X.....X -X...X - X...X- x x "
|
||||||
"XX - X.X -X.......X- X.......X -X..X.X - X.X..X"
|
"XX - X.X -X.......X- X.......X -X..X.X - X.X..X- x x "
|
||||||
"X.X - X.X -XXXX.XXXX- XXXX.XXXX -X.X X.X - X.X X.X"
|
"X.X - X.X -XXXX.XXXX- XXXX.XXXX -X.X X.X - X.X X.X- x xxx "
|
||||||
"X..X - X.X - X.X - X.X -XX X.X - X.X XX"
|
"X..X - X.X - X.X - X.X -XX X.X - X.X XX- x x xxx "
|
||||||
"X...X - X.X - X.X - XX X.X XX - X.X - X.X "
|
"X...X - X.X - X.X - XX X.X XX - X.X - X.X - x x x xx "
|
||||||
"X....X - X.X - X.X - X.X X.X X.X - X.X - X.X "
|
"X....X - X.X - X.X - X.X X.X X.X - X.X - X.X - x x x x x "
|
||||||
"X.....X - X.X - X.X - X..X X.X X..X - X.X - X.X "
|
"X.....X - X.X - X.X - X..X X.X X..X - X.X - X.X -xxx x x x x x"
|
||||||
"X......X - X.X - X.X - X...XXXXXX.XXXXXX...X - X.X XX-XX X.X "
|
"X......X - X.X - X.X - X...XXXXXX.XXXXXX...X - X.X XX-XX X.X -x xx x x"
|
||||||
"X.......X - X.X - X.X -X.....................X- X.X X.X-X.X X.X "
|
"X.......X - X.X - X.X -X.....................X- X.X X.X-X.X X.X -x x x"
|
||||||
"X........X - X.X - X.X - X...XXXXXX.XXXXXX...X - X.X..X-X..X.X "
|
"X........X - X.X - X.X - X...XXXXXX.XXXXXX...X - X.X..X-X..X.X - x x"
|
||||||
"X.........X -XXX.XXX- X.X - X..X X.X X..X - X...X-X...X "
|
"X.........X -XXX.XXX- X.X - X..X X.X X..X - X...X-X...X - x x"
|
||||||
"X..........X-X.....X- X.X - X.X X.X X.X - X....X-X....X "
|
"X..........X-X.....X- X.X - X.X X.X X.X - X....X-X....X - x x"
|
||||||
"X......XXXXX-XXXXXXX- X.X - XX X.X XX - X.....X-X.....X "
|
"X......XXXXX-XXXXXXX- X.X - XX X.X XX - X.....X-X.....X - x x"
|
||||||
"X...X..X --------- X.X - X.X - XXXXXXX-XXXXXXX "
|
"X...X..X --------- X.X - X.X - XXXXXXX-XXXXXXX - x x "
|
||||||
"X..X X..X - -XXXX.XXXX- XXXX.XXXX ------------------------------------"
|
"X..X X..X - -XXXX.XXXX- XXXX.XXXX ------------------------------------- x x "
|
||||||
"X.X X..X - -X.......X- X.......X - XX XX - "
|
"X.X X..X - -X.......X- X.......X - XX XX - - x x "
|
||||||
"XX X..X - - X.....X - X.....X - X.X X.X - "
|
"XX X..X - - X.....X - X.....X - X.X X.X - - x x "
|
||||||
" X..X - X...X - X...X - X..X X..X - "
|
" X..X - X...X - X...X - X..X X..X - - x x "
|
||||||
" XX - X.X - X.X - X...XXXXXXXXXXXXX...X - "
|
" XX - X.X - X.X - X...XXXXXXXXXXXXX...X - - xxxxxxxxxx "
|
||||||
"------------ - X - X -X.....................X- "
|
"------------ - X - X -X.....................X- ------------------"
|
||||||
" ----------------------------------- X...XXXXXXXXXXXXX...X - "
|
" ----------------------------------- X...XXXXXXXXXXXXX...X - "
|
||||||
" - X..X X..X - "
|
" - X..X X..X - "
|
||||||
" - X.X X.X - "
|
" - X.X X.X - "
|
||||||
@ -1384,6 +1384,7 @@ static const ImVec2 FONT_ATLAS_DEFAULT_TEX_CURSOR_DATA[ImGuiMouseCursor_COUNT][3
|
|||||||
{ ImVec2(55,18),ImVec2(23, 9), ImVec2(11, 5) }, // ImGuiMouseCursor_ResizeEW
|
{ ImVec2(55,18),ImVec2(23, 9), ImVec2(11, 5) }, // ImGuiMouseCursor_ResizeEW
|
||||||
{ ImVec2(73,0), ImVec2(17,17), ImVec2( 9, 9) }, // ImGuiMouseCursor_ResizeNESW
|
{ ImVec2(73,0), ImVec2(17,17), ImVec2( 9, 9) }, // ImGuiMouseCursor_ResizeNESW
|
||||||
{ ImVec2(55,0), ImVec2(17,17), ImVec2( 9, 9) }, // ImGuiMouseCursor_ResizeNWSE
|
{ ImVec2(55,0), ImVec2(17,17), ImVec2( 9, 9) }, // ImGuiMouseCursor_ResizeNWSE
|
||||||
|
{ ImVec2(91,0), ImVec2(17,22), ImVec2( 5, 0) }, // ImGuiMouseCursor_Hand
|
||||||
};
|
};
|
||||||
|
|
||||||
ImFontAtlas::ImFontAtlas()
|
ImFontAtlas::ImFontAtlas()
|
||||||
|
Loading…
Reference in New Issue
Block a user