From 3bf4610347376d326ac376e62a810e20661f1479 Mon Sep 17 00:00:00 2001 From: Harley Acheson Date: Thu, 26 Sep 2019 14:31:47 +0200 Subject: [PATCH] GHOST: refresh standard cursors available for platforms * Add more standard cursor types, that platforms can optionally support. * Remove a few unused cursor types that were not properly supported and would show the wrong cursor when used. * Add native cursor files for Windows. These scale well with DPI and have anti-aliasing. Designed by Duarte Farrajota Ramos. Ref D5197 --- intern/ghost/GHOST_Types.h | 21 ++- intern/ghost/intern/GHOST_WindowCocoa.mm | 18 +-- intern/ghost/intern/GHOST_WindowSDL.cpp | 28 ---- intern/ghost/intern/GHOST_WindowWin32.cpp | 139 +++++++++++++------ intern/ghost/intern/GHOST_WindowX11.cpp | 24 ---- release/windows/icons/cursors/arrowdown.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/arrowleft.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/arrowright.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/arrowup.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/cross.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/crossa.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/crossb.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/crossc.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/eraser.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/eyedropper.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/forbidden.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/handopen.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/knife.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/moveew.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/movens.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/pencil.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/pointer.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/scrollew.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/scrollns.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/scrollnsew.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/splith.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/splitv.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/zoomin.cur | Bin 0 -> 30894 bytes release/windows/icons/cursors/zoomout.cur | Bin 0 -> 30894 bytes release/windows/icons/winblender.rc | 25 ++++ 30 files changed, 147 insertions(+), 108 deletions(-) create mode 100644 release/windows/icons/cursors/arrowdown.cur create mode 100644 release/windows/icons/cursors/arrowleft.cur create mode 100644 release/windows/icons/cursors/arrowright.cur create mode 100644 release/windows/icons/cursors/arrowup.cur create mode 100644 release/windows/icons/cursors/cross.cur create mode 100644 release/windows/icons/cursors/crossa.cur create mode 100644 release/windows/icons/cursors/crossb.cur create mode 100644 release/windows/icons/cursors/crossc.cur create mode 100644 release/windows/icons/cursors/eraser.cur create mode 100644 release/windows/icons/cursors/eyedropper.cur create mode 100644 release/windows/icons/cursors/forbidden.cur create mode 100644 release/windows/icons/cursors/handopen.cur create mode 100644 release/windows/icons/cursors/knife.cur create mode 100644 release/windows/icons/cursors/moveew.cur create mode 100644 release/windows/icons/cursors/movens.cur create mode 100644 release/windows/icons/cursors/pencil.cur create mode 100644 release/windows/icons/cursors/pointer.cur create mode 100644 release/windows/icons/cursors/scrollew.cur create mode 100644 release/windows/icons/cursors/scrollns.cur create mode 100644 release/windows/icons/cursors/scrollnsew.cur create mode 100644 release/windows/icons/cursors/splith.cur create mode 100644 release/windows/icons/cursors/splitv.cur create mode 100644 release/windows/icons/cursors/zoomin.cur create mode 100644 release/windows/icons/cursors/zoomout.cur diff --git a/intern/ghost/GHOST_Types.h b/intern/ghost/GHOST_Types.h index 68516c3ecf8..891f9d982b9 100644 --- a/intern/ghost/GHOST_Types.h +++ b/intern/ghost/GHOST_Types.h @@ -197,11 +197,27 @@ typedef enum { GHOST_kStandardCursorInfo, GHOST_kStandardCursorDestroy, GHOST_kStandardCursorHelp, - GHOST_kStandardCursorCycle, - GHOST_kStandardCursorSpray, GHOST_kStandardCursorWait, GHOST_kStandardCursorText, GHOST_kStandardCursorCrosshair, + GHOST_kStandardCursorCrosshairA, + GHOST_kStandardCursorCrosshairB, + GHOST_kStandardCursorCrosshairC, + GHOST_kStandardCursorPencil, + GHOST_kStandardCursorUpArrow, + GHOST_kStandardCursorDownArrow, + GHOST_kStandardCursorVerticalSplit, + GHOST_kStandardCursorHorizontalSplit, + GHOST_kStandardCursorEraser, + GHOST_kStandardCursorKnife, + GHOST_kStandardCursorEyedropper, + GHOST_kStandardCursorZoomIn, + GHOST_kStandardCursorZoomOut, + GHOST_kStandardCursorMove, + GHOST_kStandardCursorNSEWScroll, + GHOST_kStandardCursorNSScroll, + GHOST_kStandardCursorEWScroll, + GHOST_kStandardCursorStop, GHOST_kStandardCursorUpDown, GHOST_kStandardCursorLeftRight, GHOST_kStandardCursorTopSide, @@ -214,7 +230,6 @@ typedef enum { GHOST_kStandardCursorBottomLeftCorner, GHOST_kStandardCursorCopy, GHOST_kStandardCursorCustom, - GHOST_kStandardCursorPencil, GHOST_kStandardCursorNumCursors } GHOST_TStandardCursor; diff --git a/intern/ghost/intern/GHOST_WindowCocoa.mm b/intern/ghost/intern/GHOST_WindowCocoa.mm index dcf6d5da487..dff45ba85fb 100644 --- a/intern/ghost/intern/GHOST_WindowCocoa.mm +++ b/intern/ghost/intern/GHOST_WindowCocoa.mm @@ -942,8 +942,10 @@ NSCursor *GHOST_WindowCocoa::getStandardCursor(GHOST_TStandardCursor shape) cons case GHOST_kStandardCursorCrosshair: return [NSCursor crosshairCursor]; case GHOST_kStandardCursorUpDown: + case GHOST_kStandardCursorHorizontalSplit: return [NSCursor resizeUpDownCursor]; case GHOST_kStandardCursorLeftRight: + case GHOST_kStandardCursorVerticalSplit: return [NSCursor resizeLeftRightCursor]; case GHOST_kStandardCursorTopSide: return [NSCursor resizeUpCursor]; @@ -953,18 +955,12 @@ NSCursor *GHOST_WindowCocoa::getStandardCursor(GHOST_TStandardCursor shape) cons return [NSCursor resizeLeftCursor]; case GHOST_kStandardCursorRightSide: return [NSCursor resizeRightCursor]; - case GHOST_kStandardCursorRightArrow: - case GHOST_kStandardCursorInfo: - case GHOST_kStandardCursorLeftArrow: - case GHOST_kStandardCursorHelp: - case GHOST_kStandardCursorCycle: - case GHOST_kStandardCursorSpray: - case GHOST_kStandardCursorWait: - case GHOST_kStandardCursorTopLeftCorner: - case GHOST_kStandardCursorTopRightCorner: - case GHOST_kStandardCursorBottomRightCorner: - case GHOST_kStandardCursorBottomLeftCorner: case GHOST_kStandardCursorCopy: + return [NSCursor dragCopyCursor]; + case GHOST_kStandardCursorStop: + return [NSCursor operationNotAllowedCursor]; + case GHOST_kStandardCursorMove: + return [NSCursor pointingHandCursor]; case GHOST_kStandardCursorDefault: return [NSCursor arrowCursor]; default: diff --git a/intern/ghost/intern/GHOST_WindowSDL.cpp b/intern/ghost/intern/GHOST_WindowSDL.cpp index 38c6f51dea4..99988dd55cc 100644 --- a/intern/ghost/intern/GHOST_WindowSDL.cpp +++ b/intern/ghost/intern/GHOST_WindowSDL.cpp @@ -301,19 +301,6 @@ static unsigned char sdl_std_cursor_top_left_corner[] = { #define sdl_std_cursor_HOT_X_top_left_corner 0 #define sdl_std_cursor_HOT_Y_top_left_corner -14 -static unsigned char sdl_std_cursor_mask_spraycan[] = { - 0x00, 0x0c, 0x18, 0x0d, 0x7c, 0x0d, 0x7c, 0x0d, 0x7e, 0x0d, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, - 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, 0xff, 0x00, -}; -static unsigned char sdl_std_cursor_spraycan[] = { - 0x00, 0x06, 0x80, 0x00, 0x2c, 0x06, 0x9e, 0x00, 0x16, 0x06, 0x3f, 0x00, 0x21, 0x00, 0x27, 0x00, - 0x25, 0x00, 0x27, 0x00, 0x25, 0x00, 0x27, 0x00, 0x27, 0x00, 0x21, 0x00, 0x21, 0x00, 0x3f, 0x00, -}; -#define sdl_std_cursor_WIDTH_spraycan 12 -#define sdl_std_cursor_HEIGHT_spraycan 16 -#define sdl_std_cursor_HOT_X_spraycan -9 -#define sdl_std_cursor_HOT_Y_spraycan -14 - static unsigned char sdl_std_cursor_mask_sb_v_double_arrow[] = { 0x38, 0x00, 0x7c, 0x00, 0xfe, 0x00, 0xff, 0x01, 0xff, 0x01, 0x7c, 0x00, 0x7c, 0x00, 0x7c, 0x00, 0x7c, 0x00, 0x7c, 0x00, 0xff, 0x01, 0xff, 0x01, 0xfe, 0x00, 0x7c, 0x00, 0x38, 0x00, @@ -450,19 +437,6 @@ static unsigned char sdl_std_cursor_left_ptr[] = { #define sdl_std_cursor_HOT_X_left_ptr -8 #define sdl_std_cursor_HOT_Y_left_ptr -14 -static unsigned char sdl_std_cursor_mask_exchange[] = { - 0xe3, 0x07, 0xf7, 0x0f, 0xff, 0x1f, 0xff, 0x3f, 0x3f, 0x38, 0xff, 0x30, 0xff, 0x00, 0xff, 0x00, - 0x00, 0xff, 0x00, 0xff, 0x0c, 0xfe, 0x1c, 0xfc, 0xfc, 0xff, 0xf8, 0xff, 0xf0, 0xef, 0xe0, 0xc7, -}; -static unsigned char sdl_std_cursor_exchange[] = { - 0xf1, 0x03, 0xfb, 0x07, 0x1f, 0x0c, 0x09, 0x08, 0x19, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x3f, 0x00, 0x26, 0x04, 0x24, 0x0c, 0x3e, 0xf8, 0x37, 0xf0, 0x23, 0x00, 0x00, 0x00, 0x00, -}; -#define sdl_std_cursor_WIDTH_exchange 16 -#define sdl_std_cursor_HEIGHT_exchange 16 -#define sdl_std_cursor_HOT_X_exchange -6 -#define sdl_std_cursor_HOT_Y_exchange -8 - static unsigned char sdl_std_cursor_mask_crosshair[] = { 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, 0xc0, 0x01, @@ -605,8 +579,6 @@ static void getStandardCursorShape(GHOST_TStandardCursor shape) DEF_CURSOR(umbrella, GHOST_kStandardCursorInfo); // TODO, replace this one. DEF_CURSOR(pirate, GHOST_kStandardCursorDestroy); DEF_CURSOR(question_arrow, GHOST_kStandardCursorHelp); - DEF_CURSOR(exchange, GHOST_kStandardCursorCycle); - DEF_CURSOR(spraycan, GHOST_kStandardCursorSpray); DEF_CURSOR(watch, GHOST_kStandardCursorWait); DEF_CURSOR(xterm, GHOST_kStandardCursorText); DEF_CURSOR(crosshair, GHOST_kStandardCursorCrosshair); diff --git a/intern/ghost/intern/GHOST_WindowWin32.cpp b/intern/ghost/intern/GHOST_WindowWin32.cpp index 679431e8597..d283e9e3aff 100644 --- a/intern/ghost/intern/GHOST_WindowWin32.cpp +++ b/intern/ghost/intern/GHOST_WindowWin32.cpp @@ -769,6 +769,11 @@ void GHOST_WindowWin32::registerMouseClickEvent(int press) HCURSOR GHOST_WindowWin32::getStandardCursor(GHOST_TStandardCursor shape) const { // Convert GHOST cursor to Windows OEM cursor + HANDLE cursor = NULL; + HMODULE module = ::GetModuleHandle(0); + GHOST_TUns32 flags = LR_SHARED | LR_DEFAULTSIZE; + int cx = 0, cy = 0; + switch (shape) { case GHOST_kStandardCursorCustom: if (m_customCursor) { @@ -777,64 +782,114 @@ HCURSOR GHOST_WindowWin32::getStandardCursor(GHOST_TStandardCursor shape) const else { return NULL; } - case GHOST_kStandardCursorDefault: - return ::LoadCursor(0, IDC_ARROW); case GHOST_kStandardCursorRightArrow: - return ::LoadCursor(0, IDC_ARROW); + cursor = ::LoadImage(module, "arrowright_cursor", IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorLeftArrow: - return ::LoadCursor(0, IDC_ARROW); - case GHOST_kStandardCursorInfo: - // Four-pointed arrow pointing north, south, east, and west - return ::LoadCursor(0, IDC_SIZEALL); - case GHOST_kStandardCursorDestroy: - // Slashed circle - return ::LoadCursor(0, IDC_NO); + cursor = ::LoadImage(module, "arrowleft_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorUpArrow: + cursor = ::LoadImage(module, "arrowup_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorDownArrow: + cursor = ::LoadImage(module, "arrowdown_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorVerticalSplit: + cursor = ::LoadImage(module, "splitv_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorHorizontalSplit: + cursor = ::LoadImage(module, "splith_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorKnife: + cursor = ::LoadImage(module, "knife_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorEyedropper: + cursor = ::LoadImage(module, "eyedropper_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorZoomIn: + cursor = ::LoadImage(module, "zoomin_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorZoomOut: + cursor = ::LoadImage(module, "zoomout_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorMove: + cursor = ::LoadImage(module, "handopen_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorNSEWScroll: + cursor = ::LoadImage(module, "scrollnsew_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorNSScroll: + cursor = ::LoadImage(module, "scrollns_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorEWScroll: + cursor = ::LoadImage(module, "scrollew_cursor", IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorHelp: - // Arrow and question mark - return ::LoadCursor(0, IDC_HELP); - case GHOST_kStandardCursorCycle: - // Slashed circle - return ::LoadCursor(0, IDC_NO); - case GHOST_kStandardCursorSpray: - // Four-pointed arrow pointing north, south, east, and west - return ::LoadCursor(0, IDC_SIZEALL); + cursor = ::LoadImage(NULL, IDC_HELP, IMAGE_CURSOR, cx, cy, flags); + break; // Arrow and question mark case GHOST_kStandardCursorWait: - // Hourglass - return ::LoadCursor(0, IDC_WAIT); + cursor = ::LoadImage(NULL, IDC_WAIT, IMAGE_CURSOR, cx, cy, flags); + break; // Hourglass case GHOST_kStandardCursorText: - // I-beam - return ::LoadCursor(0, IDC_IBEAM); + cursor = ::LoadImage(NULL, IDC_IBEAM, IMAGE_CURSOR, cx, cy, flags); + break; // I-beam case GHOST_kStandardCursorCrosshair: - // Crosshair - return ::LoadCursor(0, IDC_CROSS); - case GHOST_kStandardCursorUpDown: - // Double-pointed arrow pointing north and south - return ::LoadCursor(0, IDC_SIZENS); - case GHOST_kStandardCursorLeftRight: - // Double-pointed arrow pointing west and east - return ::LoadCursor(0, IDC_SIZEWE); - case GHOST_kStandardCursorTopSide: - // Vertical arrow - return ::LoadCursor(0, IDC_UPARROW); + cursor = ::LoadImage(module, "cross_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Standard Cross + case GHOST_kStandardCursorCrosshairA: + cursor = ::LoadImage(module, "crossA_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Crosshair A + case GHOST_kStandardCursorCrosshairB: + cursor = ::LoadImage(module, "crossB_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Diagonal Crosshair B + case GHOST_kStandardCursorCrosshairC: + cursor = ::LoadImage(module, "crossC_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Minimal Crosshair C case GHOST_kStandardCursorBottomSide: - return ::LoadCursor(0, IDC_SIZENS); + case GHOST_kStandardCursorUpDown: + cursor = ::LoadImage(module, "movens_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Double-pointed arrow pointing north and south case GHOST_kStandardCursorLeftSide: - return ::LoadCursor(0, IDC_SIZEWE); + case GHOST_kStandardCursorLeftRight: + cursor = ::LoadImage(module, "moveew_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Double-pointed arrow pointing west and east + case GHOST_kStandardCursorTopSide: + cursor = ::LoadImage(NULL, IDC_UPARROW, IMAGE_CURSOR, cx, cy, flags); + break; // Vertical arrow case GHOST_kStandardCursorTopLeftCorner: - return ::LoadCursor(0, IDC_SIZENWSE); + cursor = ::LoadImage(NULL, IDC_SIZENWSE, IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorTopRightCorner: - return ::LoadCursor(0, IDC_SIZENESW); + cursor = ::LoadImage(NULL, IDC_SIZENESW, IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorBottomRightCorner: - return ::LoadCursor(0, IDC_SIZENWSE); + cursor = ::LoadImage(NULL, IDC_SIZENWSE, IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorBottomLeftCorner: - return ::LoadCursor(0, IDC_SIZENESW); + cursor = ::LoadImage(NULL, IDC_SIZENESW, IMAGE_CURSOR, cx, cy, flags); + break; case GHOST_kStandardCursorPencil: - return ::LoadCursor(0, IDC_ARROW); - case GHOST_kStandardCursorCopy: - return ::LoadCursor(0, IDC_ARROW); + cursor = ::LoadImage(module, "pencil_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorEraser: + cursor = ::LoadImage(module, "eraser_cursor", IMAGE_CURSOR, cx, cy, flags); + break; + case GHOST_kStandardCursorDestroy: + case GHOST_kStandardCursorStop: + cursor = ::LoadImage(module, "forbidden_cursor", IMAGE_CURSOR, cx, cy, flags); + break; // Slashed circle + case GHOST_kStandardCursorDefault: + cursor = NULL; + break; default: return NULL; } + + if (cursor == NULL) { + cursor = ::LoadImage(NULL, IDC_ARROW, IMAGE_CURSOR, cx, cy, flags); + } + + return (HCURSOR)cursor; } void GHOST_WindowWin32::loadCursor(bool visible, GHOST_TStandardCursor shape) const diff --git a/intern/ghost/intern/GHOST_WindowX11.cpp b/intern/ghost/intern/GHOST_WindowX11.cpp index 402c48bc0fc..8aa4a4e284a 100644 --- a/intern/ghost/intern/GHOST_WindowX11.cpp +++ b/intern/ghost/intern/GHOST_WindowX11.cpp @@ -1289,27 +1289,9 @@ GHOST_TSuccess GHOST_WindowX11::getStandardCursor(GHOST_TStandardCursor g_cursor unsigned int xcursor_id; switch (g_cursor) { - case GHOST_kStandardCursorRightArrow: - xcursor_id = XC_arrow; - break; - case GHOST_kStandardCursorLeftArrow: - xcursor_id = XC_top_left_arrow; - break; - case GHOST_kStandardCursorInfo: - xcursor_id = XC_hand1; - break; - case GHOST_kStandardCursorDestroy: - xcursor_id = XC_pirate; - break; case GHOST_kStandardCursorHelp: xcursor_id = XC_question_arrow; break; - case GHOST_kStandardCursorCycle: - xcursor_id = XC_exchange; - break; - case GHOST_kStandardCursorSpray: - xcursor_id = XC_spraycan; - break; case GHOST_kStandardCursorWait: xcursor_id = XC_watch; break; @@ -1349,12 +1331,6 @@ GHOST_TSuccess GHOST_WindowX11::getStandardCursor(GHOST_TStandardCursor g_cursor case GHOST_kStandardCursorBottomLeftCorner: xcursor_id = XC_bottom_left_corner; break; - case GHOST_kStandardCursorPencil: - xcursor_id = XC_pencil; - break; - case GHOST_kStandardCursorCopy: - xcursor_id = XC_arrow; - break; case GHOST_kStandardCursorDefault: xcursor = None; return GHOST_kSuccess; diff --git a/release/windows/icons/cursors/arrowdown.cur b/release/windows/icons/cursors/arrowdown.cur new file mode 100644 index 0000000000000000000000000000000000000000..251f3453e634743502b75add761ae3f1396a4718 GIT binary patch literal 30894 zcmeI5L2KJs5XZ;y!66BF*(6PSsdL#~Llej$?A4*4r1ZFZG3+I`sFzYgpuSB%9MO399>FrNMpRjIchiHW!QvE5>OH`<%4t61|rjl7Aa!^lA2`B+2 zpahga3%?fj`%o(`Aog4D~&IUTCK z*=)*pXDt4%K`EiU3d-Rg#-+I0A>CLWa!9H@4>?5b z@6u<&Ot#<0IsK=^mHEtFv*Qf5kJE1R3d}*;mpCXgZ%xyD`6tkBHI3wu!I=7s%+2sT zhMAlBj5AhSR6jhYZ;eA=vGXM7c;-0Zc>#HrM~-vUJ`Nt4KnW;;cmy7x`iDW0=+A zN66o^@72|n=RC0=eD=-DJkg_H=Cpq1qhE5j=4qoq3_Q9M=3Z0=Y35!u29wCWNDSUV z>?E&SNv9w2UVlN}(*Wzqdm3Oa$%`K3 z2XOEn23UvWMGuT0!jTs}Ft>1{N6axVdXQH!mPVC`yWgLUHqo6G|-{PrUCqp tj%lDpdyX{FBKZejLd)XIs0!b%a909#s_aVOZjF1=j@w}F3&V$du16U%FQbe?g_#_lm&{(2Ky0`)<6nqT|kW$b_v62oU ziV)?|Ad4a)fx@K=<6&lR=eQ%bFoo@V{8!q{-FY7~zn$H?-Mico6{tvyi$o>5L2qvn zJtCr&6{1PHNpJ5FeU)SD>qOIZn<|fqUP^+Bq>(HnhiS}h5!ECe0tkQr2!H?xq=Z1V zR4V-vU8^I|w>mK~!Q0#0JUKbZL)O97y|=f=8dQ26o(_RStZu7+YHCUu47&bjVrOS} zch}jie+~`~*w_7Hz_z1qPdz8hNye6r_U~wzpPyGh|1e-*v*Mp?zmEF*{{Fu9^^PPM zw7)|KBM?ZmMZlq|K56G3?HfZr|ELx*9kl)-oqqxX5e_;&__{}O4Km2TArkEoNfoF^MX5UytkWnoiSeKF!Z^OxGz^BtDTCu2aaG1_B6x z00@8p2!H?xfB*=900@8p2n>;cPEX%URGGF=DHe-YqBMJ%CL5gYb8~a;ot+(4nIaqR zi>}{iW@g$)M@O>A!F+mp$_on%YQqm{kB13%q>%f`$%)h5{v014^Z599r%)(-OQ`-m zbypjz)vB)PYkZwR{jd3qaaXyyxoNt;5#7fUrayEaO@n|txc@JKH2X}y^;o1Ye9Vvo{L^-YkWu@4`h3{%veCu=?`EL=VS8kp zkG8jMqupcYJ@|aOJ3ab4`n$WPwec+~G1g(Mli^M0HyG#BJ-Vdx zt2VFA+WJP`?T?-7FD@>u$z!t1n4hJ!4KN@A12E9@0sH_A;0H*dt#B_^kPp|m7c0m|Z2YSzf)_Z*$8FpT7UV-W zUe>*=*()o8d>snPX;aCS+amV@2gzP``wjPg2Ki=A_w4Mm|B+rDtH$zKIaaRKWA&OI WOg#(OatfJUW~bS09N2T=fYWb>7^XA; literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/arrowright.cur b/release/windows/icons/cursors/arrowright.cur new file mode 100644 index 0000000000000000000000000000000000000000..ae561a54d04c35c15b9538f593d15e9caba9d2fa GIT binary patch literal 30894 zcmeI5&rj4q6vrRz0R*DP1;G{|1RM;oz09fuqL5 zO89Xxs|S$P14j;P$M>D~)$PJ!NVII*?@MOiY28Idu$A?vqA z9*fBQyvQB7DeLz|zUa24C6Os9OXZ2kOD#~*GP;ZCW*P7~k(!pHkN^pg011#lh6q%L zhK2&Qw|WgWS4T!h-0JG88yy{WDci7&wzsyn90WRL8U1lHvRAZz_z2K zUJ&Mq^AB9dxgd(QG|t6|^H0icTUV}XfAjr2MZc|W)0qEYZ29NRqj0{OTGQe~&IKh+ z1DY32wH4>;i_SHtojbkd+?gh5e8+bDuH{f3`(b~l^ghGL06^hZbMao}-(nv$gL!1dHe81eCt5o3^3q4Ty`mPWJ!gxdKAjGAQ=fgp z_9h;5g2qEns!#m`Q(7Lb==Zj)cpb>1*G{HGUDFEmcURX6pi#j^+J3k4(f(GS)o<-t z`({sUUu3V@Z~jF7;ovW6s%f(4v_${bj6wn=KmsH{0wh2JBtQZrKmsH{0wh2JBtQZr zKmsH{0wh2JBtQaJAaGa9euxtCMH2Y?S(D!N^9lK)Fo=Dhotx;Zd zk^N81i?Bv=kz8<{bT0=7pT2jjjq$iA2{7gp>!j@O*&gsX)^V)!_dt@PT=Z0HOxYYlyYq>n$4^N!$I`9AFbgVtf2k(3jF?BQK+rrsG&f@hOHi}*V?gm&5jA;&gxi0wG3_L?Mu*xk$@dLDO9RZcJiIKnmz4lC9PJwi=>+e?`E}n^Jc!E_x6WZ%R8cFD$%oN zMDI|UUcN{4IT7ve6TM4o^zvh(Kd|rckm!BvsXQn84h<@30~f+>T5?-N4Yadj1dMFPF=bcbf9Ga2NerMsNsqYun4q zOI}}JmvI}%Y*cPZa>y&T<~6{zZ!CUVU0vmV=Ca+>opioxoKZG5hpnxxf!H!;=qStB zn%BTs=va%*XuLJnFdLggL9sQbNDc+Z)*Re?kmEatxu!A3*_xcA&?t|&M*VYZ+U-|< zosYX!E_FO!YI{sAj~jr1#0-50?#z87y%<- z1dMLidfATmv?@}q1 zN>6wuFTeN6Z$RHq8BqLL`jdXKou`IR5aaL7&CTxh^)(+I9ZCMvXgC)CTCK*nx3|2r zv(rWY|6t!|s96`seS3SmdvkLW{!}5c5h#rY$6frjNWap5PUG;S7r z+L`p<Wq(`uN7+|z29rQB6R(&OP39NalFGGXwcfcdVu4zr0g^q(VD!wlrEnnr54y1LSo zLpwvctA>%sbeK3c3OvtfZb|J}4Ktj(Y8tkZyw zIj8%{JaT@sPx)I!?pyQxo8--yv7du;AYi((xb`phtBgDNpSkOaZEy!~N&!i|jkl&? ztF6F#O=lY$4flPsOs;)vnVf$c9@4(!P!V+rFJIxaPj~?fmI>}+#a(RE3v8ZJw5T>-kvhJ!FL~`PFsqK zGfAEUImsKeQZi;xRGdk)OWR*j-F$z1d<=y5{VV%2I2IyvK0%ycCKWM7`;qzu#gq)j zYLAIgr2fdfe0X^18~xXtDUXFn-*R4wD=~e4G{tzPagF4e5rasdGpt>CMe?1JL8Pxa z(4HlOdDWf;gL&7k4APvlev=3$Q z7HL-ok^6%To|9<5^JGH?NIH+_rSrf-7!>iFLFO#<9?k4z1lss-ajI}>)w$!rHmls0 zl^Gfy%YqL~8{Bj&HIY>9)F9F~F=9U55SLE1IxTQo&K_+NEASgZpf3qml~fsh3u xxC;xzSiDdcgpj2jq&oz1?$Uv{O9!5_ZRai>)ZOQ9ZwU@RaAywOnUCGq{{ssyry&3U literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/cross.cur b/release/windows/icons/cursors/cross.cur new file mode 100644 index 0000000000000000000000000000000000000000..62c5c322cfbfc4bb3539baa2170fb5aacd50c8b1 GIT binary patch literal 30894 zcmeI4OK#gR5J1QEqMHKE0lLVhK$cl`*%&!VZ&I#$mK>wKNYNt{@c#p_Lt7&#jOfU! zC`a~_F&dE^4u?-9^?_}XcQTgSTaowrdAbq#A|m(qA|Leg^jYM$=1nFdH~P7I6#1bB zcWR?mM6+eIKN4|j#|8liKmY;|fB*!J5OBWO)W#jL%T+}C@ZS^2JpRJiPKg%nH>dlQ z>ve`_7|61I<`ACZGK`M`-#gf9ow}?JFSxvbC)U)`MEaMpW-AdV3!N>5x?;7 zfxpe;wtDyAeVvT-?2UgOBplb-guL*cLSJRbHc-#>G5v2^G&3#QLDGvZ2U2)tJ_tc#qgT0YtQPW zVz>EHSGTJ?i{Uk0*PhimXZ#wMJ3*@5Xj`x9qt9cmUwzVk*_Nx0b1il+P2O}4@t^nf zI9t!T|2fNvfd5&rmyNpZcI!myU{=4$$zYDqlX*;hR{pb0|p8bN>f#li_rUBMt{PX-@zWZSOGyhrtSpNrj9cvr% kMO^<5|Ictm``yPwXM55z`Xdk8qKy9@*M*($DK2a09}=v{(EtDd literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/crossa.cur b/release/windows/icons/cursors/crossa.cur new file mode 100644 index 0000000000000000000000000000000000000000..f6f11f32b284faef66bd8afc645fbc4b0b61c805 GIT binary patch literal 30894 zcmeI3L2eT<6owzI1Y$!G7ih9T>aq*Oy6PR+H40Zi2)YYdAjAs9EqaeioS>`{r5pgN zsDd5A{J%SnMp0&(3FAzr{$KR!spr|x{`~CmxT)EW?OLZ}_7I=5$7avX?C{X+5k6;6 z%_hh@Ix>5L&%v?T2N)c{21N|ncF$j#4Phq{0TB=Z5fFiv5crCAIw;d7#9dxq(m%Bc zaTGX~|0d{zd(-?Ij=$LRFVr7mJfAMk`6{-nMvI$FCVq_bKbW^<&Q-Bp)qj;fRk2;w z|7~``C(|ZG>n{Qm;HgcBpB8YOtpB^b{^r-bm9O_$263;Xb^-|xHe zcpUohrcO8;sLKt9LmZUM&+djB@L8t|wZBf9)$0=f>dfjaA^vsJtX@~!*Z*yM{)YX` zdkn?L0_8pKd1xE#^ZOs}gWf`m$}^w$W9*mmJj0%#D5dS9uua?t6_v^7$Jj4j_j)}y zo6Y>5VA&7eqYc`4z1VpC{+ewcjYi9g&hvPmc9}hr+T^0!?Yh&`(^91kJYFpE%D8eT zCnu%ld7pMr+Se)1P#N15>Mu%ZL)%5+d|+Jth8C4&KJU|x_DxFY@3yq3DvNKOPRGX! z3X*Hx@ldrrRqg){1_M9ev-S_FR?x7$_CL)IfcT65{}5<<{Iq@jZ2R+TtM(5!8(eGz zylhcAWrNV3>ANT?{%dQ`pCInpgR(T1|4=W#r*#A!Lc{m8>=?gDL_h>YKmYKmYKmo=%u7W+qoa%8FJoRR@)I3( z=jZ2Mc@1S=D&ohUe^sWS(?Qk$Gze(?5%WP5|C;|<45Tspv-Mu_e?vg?U-Lh)`Jej! zH}&_Qw!ic_hIvDT?r^{(5`SmoGH zj`dZhyk=f1lKTE9_5H7Z7KUdgf<8POQ;C1|A7dUw&xbDowZq}1#QnNos&#R`+HPg=E_a75XtiAvM literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/crossb.cur b/release/windows/icons/cursors/crossb.cur new file mode 100644 index 0000000000000000000000000000000000000000..39c0b3fba028dfae141b88abf81d322bd37f04c0 GIT binary patch literal 30894 zcmeHQF;62$6ds?GkTh|m2xKbLB)X)5CV>Kk#UFt`z+V7MCk3h?rAd?~Qj|y+rArZ| zL=-8YL2wbe6cJqnN)XbeaDkY7-yCnX_U#z2J>%Vl_k538W@p~}zHi5~JA>sj=837B zxjAFr!|VA6#(Zv!Sy(XUeY~E3WXxZvYqyR05U;0e#(aSWPtgWl4604d9U0R>J2h26 z6;K6K0af5mf!|SD_%ZygySh9D`>-!#Fjii(r>Cd3-EOo0OL!g(Z2OXZ83V`kymq{@ zvSKeTF6`RcS{@88_ww>`x-WIeYfsSOk3I~4qHd55u1{a?`}z#Rl?OxU+=6Qu46$+x z26s*Su7!-rtm`f3q<@Ig<>8pVyu7qaOG_M+-_Uu?x)I+id9XPQi;IhPettg5&tujh zPz>Jv_=w?aIJxt>(|OD~o{Mco<}Xrzm%E_x=W_SWYckf{InR4D#8?<+ZgFk;FpM+r z3hrTY_p}X&Ay4iY7>+&HTXOlztno0){kQ1nk3yfnY))&~hMl@?*!oSw*18Sbxo+A0 zja7SYw(YgCwp+9IrvBP_%sQT98@6R1_GJvdxKFVF-+(9k6xh>HQw3B3RX`O`1yli5 zKow90Q~^~$6(~%B&ye{A{6F|taIU{Y8)Gsyb1)ZkhO!rPb8~imeVzN4^q=4%IWQJu zx*W`fV{!;(uQoO|+-iMqZ!a{51UqBXmeQ{C~xYdX3Q-jv9yfL@)^3b{QJA! zQtI#8Nk54raV3xB6&!*~a0+hWf$R>y@Zn>3aA3AfGVI0 zr~;~hDxeCe0;+&2pbDr0s(>n>3aA3Az++J09gy6E{{z2*e+i$0PuiH1xru>Th>6%@ z8}r~VHa-3;exIZU%*CAjIEXE_QEPi}a9|G)5ADp%j9{3Q1_^iOCI(_5COEOhwttbp z9vvOw?{(IFx5NZB=;6-q#G(-kF~Nx~w(&h@r>Cdw$;pY!e|C0eo6V+Rh&2up?)|xE zXJ;ihvBfqoj))p~bEde*(mhL0&a=P32aSW@aQ@w_&N=J6xl-Ii<;nxiiz_t_#>M5$ zQ80JW$%`+52Hw~u;T}_is&J2?LDjg2)S#-|LugQS?xKPBUY(i~`|s7>KB>8`zmMcA zW9j9S(jfh;mibIsQSNd*5)HUMxaV2D$TfxFjZyY!Fkr1#^qMjTcZr#3fC^csuuQMj z%dn>)cw>~*fba1uc-CGG=YDFyb8N%5?4za%JOl+E^Z0+v^IyXKp1sP4c>n9+{>Ywx z67ECpRq}o}XfN$SJo^uLp7-jNS}#;VgK^fd-o7af#@$bhc`x@OxvFTmvue z9NgvFcw?1R125hYxK~Ys7~HF(K}_yt*I*Ld%c_C*UY&ZshrU;PbEf9R&^bl_{xb7f zEh2ZxKa2*%7Tb#4t4uT)Vox=e4n?okdNdfYry7fY8TKj@4M5Vjry7et=l(M6RZ;`K z->=|Vd#b1oZ|(y>75>3*UD${7TNpZU_pJ;px9zPvUbQ!_Y}qc$PQzZa?f#TKXJ7ol zA^zW+8c$g^GA)!hX3MOiyfw@G!UqIwvO5Aa*&P9z?2Z6Uc1M6FyCXoeg`aO)x7l)) o(oXtG9Ep3ENAd~|!6i5ax9|{N0PlDL{A=E#1Co<~=p?%R59LBgi2wiq literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/crossc.cur b/release/windows/icons/cursors/crossc.cur new file mode 100644 index 0000000000000000000000000000000000000000..5c54525b2dc42239e159dad8db824b1f7cd53762 GIT binary patch literal 30894 zcmeI4OHRWu6h$v|!~`KWKqp8YcEq@1B`l>Q*3wvg&)3wmUY;`qvTE z7{wTW*8eelmDnB=*|KUA7T?weOGS{pmJ zcGmZ4$^O=i1OW&@00Izz00bZa0SG_<0uX=z1Rwwb2tWV=5P$##AOL|b1g_w^Z9a+KC>&4OZy=ujuhd_kZ;Gqx(O4{L%d% zJ^twaj~;(?|3{BMy8olcAKm|6d8+E|>h7A3 zF}0#v|SyNH~Zo?>Tzr_^G_BO@br_wLf?8Ao-S!5ZxBN*tM zb!VkVj~>}WhYs0lwaVQc!9d52>gT>rV_+Sg&fMIR*aim=9_&b4pt7eaj$7*I7pXFB zYYVvUMXsg%v&tX$L{rhcSU!P^@q$LIyAKHnbAA&Dy zf8f}go16QjZq}cH;c2_#H0l=&Po6xnw{PFJd-v{5cx&Bi*%qUtqtZv(RX_bGhR2T| zH>{s+Ky0obw2i;=Pz)RwY-??M!qd7td4BM9@G)#x-JT9fjH2G2=56cuT2~{hZNWat zjMTRCK%+X--=j|IFz0e_dVkrr!K0;QD%P4&0#Sje zz|JUui?wf%m+Dt-P5=Ib62Bm~<^E_p7z0afZEek7xpKu`zI-`1-@0{63H}-i2jJMe zdiCm-XCztAP59k~3m1aoKrpkjv$@YY6foN-G!CucXW7s=w2D784#1Q2|K(-g_A8b+ z4npWlKwEqD>XkimohG9F&Od?{mxYYOJ)=k4+1$L+<7 z7nMiQ9MahNOmfejJ?YpQBnKb+!oq@O>>3^(w!OW*c5rYoXbySUF)x;9z#(z){Ily(@EQb=jkjC8Q7`&>7B;y z*WZXk8L%r4aFD*lzOCay$Exe^!Sor$oVMBy%7Hw*u^LpLNn_V-ZHKpS-&$s*;B{B* zYJqtinfK{5Uj3npPAS~BC5s$&zC$T)^a~o@*>bBzSsIyrAB>S;wN-Q1V zH(BDqn5s}SW>p**vubC0asr{(G`1u$w{Fby^0$HH#@K5EY0DL5`fv7-KASw_Qhzdjnq5@HY?pFYh3kHyXLjF@89klj`$MD#JvML4a z*IJ{TS$ZDd4wg{^;C@d=XV0FMbvs-`RWzSDb4H&@(?uyYAaJIloYUndCnrm-L7n}7 z{B^sTefRF2J$34o=r%DiVc)!YqlYZu!%$hqf`Zm|)$JlSM}yLg1?BlU{CRBIHTY8g zW!E6h->osyuM1lq$5_aIRHm2+f^z<=R4Q563-f2eGHL+WGXKdL$1Q1)<0r_N2y$HD zLu`4mjJpe`5^BI}fZs_l2YX@uP5cBoKLF;afu})EENiJB_Em>YOrmh>iQiCk+IzP&oBXyMqdE9sH+GUx$Rf9D5TCJ8` zCzE$iPmg5PpbXc}h*O2mjYYWQz5rG!o37KK749Y0Aek%s=QYMPjcv62&9~kg(mt=8 z)0X3*!B`0XdcoH~<5?@*Rf`-AuAxkD3Gv{QexT>{=g*%f{h(R9gOtPpwY~=4Jn4OK zpZcW+g-V<^)1FXFG0k-~%1lZ~N zep7LF)LC(W{o-K8IjA}ZtJuMEc;ACK!22G=0p9mu=m76~;ENkradQVOM+dZYKuZU- n3DWu-C-9GW9FtYYjQ_ERX+!FzgNkf#)``J^Y+C!Hvzg{!wjv5? literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/eyedropper.cur b/release/windows/icons/cursors/eyedropper.cur new file mode 100644 index 0000000000000000000000000000000000000000..2294297b2100938e6fbb8fd7054fec1472242d03 GIT binary patch literal 30894 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 literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/handopen.cur b/release/windows/icons/cursors/handopen.cur new file mode 100644 index 0000000000000000000000000000000000000000..cba184488733d51ec1a0efedc6bcaaac558f0404 GIT binary patch literal 30894 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 literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/knife.cur b/release/windows/icons/cursors/knife.cur new file mode 100644 index 0000000000000000000000000000000000000000..edc97d9e9f2a7bb5e3579beaba6df1be50235366 GIT binary patch literal 30894 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 F@-OSci#PxP literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/pointer.cur b/release/windows/icons/cursors/pointer.cur new file mode 100644 index 0000000000000000000000000000000000000000..d9b1ee8a60ba92cf27efbce82c9ddc11b4418a8e GIT binary patch literal 30894 zcmeHQ-%lJx9G|^|R1+;&t&%?UFjU%T)arwxFGqZ#iP88M7^A_E&?g^xkb5vZk?_E~ z32!wfh6WmVfTrnNjf9Yf)`Vz;HZ39iJ|bNCF@8U@GwbXg+#c8av9mXmeD^yuJG0-< z=QFd*v9q_wSb`;4Ybz7!Ml)j{QSRzhS$>PLzp1XX(=A{5jIjY~aD|GkWSwM=$T60o zb~afBtO8a6tAJG?$_lhJCNDHO?BThD^Ya^xi4Urc^_7G({^x@S9I4rH{-{*^=7ckS zma(1J8xtR^7|4S=Vgo~yK-jFg8O~dwh~^&*D*|ukD7W1mmmNL65Nj zj#|WDSzZ>g^>d_LIKud6H#aL58ypJ7-_Pw;GzCF>8vbSCZ{79&KHR)7r-71J7tW4OS=5}|X z=?=|rZ> zdnx$0H#Q=J{j~U>(YkxB=Q}X#so42*_$(JW?BG!p{=>saVlNhd)aJ}-=1-Kdhv^@6 z?1k`~fc+%=reHq~ze(7G_)WvE<2Mnz!fz^eg};`c-+|$IlKamUW0CiGxQP=^JnTgN zNcxM?zk~;%sJ=mZJTHZ^=kd@K%6YzD)|112JWvHMkIRC`OUeCd>HDRJqkf`0dC{G` z=uTe1A)k`%($eEOtxmEGnR-r((Ra;kvI706Q{Ni{F#)z(kN=R|dl>_@V5^+VfZIx#jj#{2sEXw{8n z$%e@;dVAxYx!m5~E>;+^$!4>BU|;|`+i~4T9w6qka0siJK%+JsJ z_;+`Aqu=*YCm4cHa0=1j8s@p4R_Ix8I_?UY>7NBWS_L$i7#$t;+98w4WWfKY5N%D^ z?c;Tf2AA5}+I(#e4i3QmfULy?f*}}v+)xN;Fg!Ro=xZ}FG6McLLXK<7ZXY*Q&@{;6 z`#^f?=;#3dPfQ^gf>WpF%kS;&iO+bxN-EItU~x%7dZFc>o*tz^F@7`RLWS}zrNQdz zDzy2Rth3(uYuqnIoIBu^GQ21Dk=*hBpb6Z|%HKflW#g}LH|=eZC(h+!cNon5xyOHP zZ4K9XobRTMJGdhiJIs0Q*4Nh+_si~~jNIn&DyBl?j;|V+oQk3AYZD{x7&jlcu)+p? zPn`PTd^dgE!5t}#vbSI3{0d8MlAnL2u* zR7)wfw4_u+zK-50^;i1V)|7fFU(F4rK8it8Y-EU%ZdLNOlxm9|g#<`|1W14cNPq-L zAVOeU_Rz+awDw7UcWSkoMiZl*Bt!pLTKgoIJJo7ccRC%f`7tDM*tXb@6SFObU~Vmf z80z&p7$nY*7-4J1q~I2bVPf8Z>m}y5VW;qaVj@g8LLp(%wr8?o-G;4GIa6011!)36KB@kN^pg z011!)36KB@kN^pg014zEP_I-f9W?P#e*}KggitS)N?#@Rq2In`%)ynPG_ltt=FjDF zd3bPepifRt^wiW8^7t-Jo~Ll+%1??Z6>8=im>(Y>2e-5L_xJHXL$psRoWWLOtP%Kx zZ_FXb^3jM~=ObmQ{-OpEWLwi=3B>i;LSwG36(=Lv?^PA**1l=PSX# z>uYVCSYvYsgrf7e%yFL#?$jjWF=DCzx8nefv5Cyp>-Eeup0>=D=UR&i;ZC=;CQV?i zR?A%buFgqNYw$fP4r}dBqA?x+d;a%Xlaaab`z0)v`p9A#ykQMCudkv*Vg9+P}#okB-zq=yQ*&^HQ|` zJh_{(L5$Mj^0WVa`8V_A(O`h<6%E_2rD*@I6RBU=H6}%Ud7t;s<>;jc={HqUD7Tx-GgST8YNXFO=9twBK*+%(ye@hacm2 M;Ll^`l|zNdKg7QR&Hw-a literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/scrollns.cur b/release/windows/icons/cursors/scrollns.cur new file mode 100644 index 0000000000000000000000000000000000000000..4b443220da89373fa2c524e60a2aceb25c477c95 GIT binary patch literal 30894 zcmeI5&r2IY6vtnT5Spa5khZiZy%cg#$U%D0L&SfeJ@gMK#Z!9;^bgQe3;q@Mpa^>G zRnlsIKUP?2V4 zh;C7tw(k->A)-cu=nhTM_G6+yoVT<@RHJ)TUnY9X1?pUe43G_m6YQKmAxYMNPS|pS}jbEsD9DWlDewZs$BOEk@P6(~p*YJ>~fv zhR-GQ6b-f)Y~efw&uJil00@8p2!H?xfB*=900@8p2slNcS}YbniLuvJr#xqW3x&dG z_T3BYi$fYJ!hB+4!rR>3G`qXIW^!^;bbMtEw=;enV!rFFf+HFdeRo9z-ydzc*LQYy z)a9O7_DLBjo3;C>+yC?PbJJ`#FU2G+AR$OTwL_{cSmetVc}Bp0`^&M zi>wCLV#IHbpNj=)@juJHv#T~pU-h2tng7#nB`tZb^iPU z)eyEt{9MRbu67nZNZPM(&hs$UuCt%AT+vXH7pooc807@?jI_uklAwSH)WH zZ*Ux!w&e#E>v^@Fe*IA$sw>bb-)Swet+DBMTC~hR5I_I~KmY_l00ck)1V8`;KmY_l z00ck)1V8`;KmY_l00cmwKLQW9*pI*@ou?prf3flEku^!@g+Zu&c6Qc?<%q$3*7{TQ z*6Ve1baZ4+PfyL<+?+D_&HEm*jbrH1ZkIuMlLH2++H=6*TJ2-b;5$Feww*gUIZ>&p zv6P9liE^y#AyL2RoS&b!7UeRA`eXf_=szU31{$u>KKS|2jTCPLrOr4*KXO z4Qz(XUdte14R~C%>t#u0kOS?h405Dh8N~X-uC*}PmxmBCV6oA$U>>xqMq!Y&7N+|% z8>e<)&g^&>c*_6WMuJ!H<4*9WCoX8!W}H#e#)mY0Wvu1&xK6_sANfY>RX^0P8~Yz{ MP%b9mWPEP_0K44*MF0Q* literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/scrollnsew.cur b/release/windows/icons/cursors/scrollnsew.cur new file mode 100644 index 0000000000000000000000000000000000000000..fd0cad49c4215bce6078cd131eee3bd20c6c58cf GIT binary patch literal 30894 zcmeHQ&1+Ow6uQm1ERQVivty0wKIiMMTBUx+_w?AS3O-V#${?zj+NlEEC= z&=f(#qEGdN$dH{C%YbFTGGH0740HekvGMWo=V+8`tjYPt#>U28oIH6_uCA`iiHV87 znwY}~#eRO`#0gm_6y)pIujQ#zrzDO2O*xD=ng`;08@P9Nb|ee>E)Q6Xh6>gjv0lA; zB~PC|ts43mb8Ded@z0TCG`04Vlap%QQ3u?|IX5`lx`%bE)adA_L?cfrYKZfVtMxt& z3DXv1^+;-DWJKP(cTY7p2jB~ma{;! zy?Ryo!jJv?_apY53Xbl;js^4Kr^1}D(`qdP@Py)L{t+MZT)ygB1Ljoo7aBjnww~C` zi{in+f*d#xy&q)De(KR>G2Gg^1MT)1t8QCQ%%HjFb&jW|rqnuPZQLBr2Th7_%!|)8 zZq!<%;{(cvzaD5wfS!rIB=Tk#NL)crm?xOT9^!43q z--%0EoRG3G^nc3@N|_x_%g^&k*_V&YfkIqq9Dl!>mQUz>VW8BCG|!>=lKkL3MS|KI zHSawIz0SqcGO_sPNMc3@C%-i^U^ zID=!d!~MX#4}3*qs3+)VipqU@db)^aVAw~Ayk{hXV~p#fa!(`@d`&b9gO~f}=B7jo zz@XUwt^M_#&gsaY6&x%0kq`}S>)|7}pR#u(~dE-fud9P^Web)J)}H%@ZcM|KL4eB4jVjII$Q^a_4Re1zqPeBUdywU z98`J!8sh2qCO+KYaXu6oV4!ijUo>bOaEW%={o$hyt*2TfO~`PP7QfAr{)oSB)yv+4`7nTK(kN*RU@ z%AG0oFg$$tuv2*F+*zx=2+w>i+}}BuTJ<%0ZhbjP_Mgbh7mZ8Sq(-Oz& zz=~zSGGH073|Iy%1C{~HfMvikU>UFsSOzQumI2FvWxz6E8L$jk1}p=X0n318V0Q-a zy@p@i)^6W%*gf<5&jRo7)aW;Es-fR29C+9l78WF04{qaTVj^8*#dVqsa>?H=enuChiyPSic>0(y<+_PuT7;317jkYIZZl_Bi ze&AeQURF)#r3>-bZRoRj9MAyn_q@Jg z<2;Xbm|s5M4!RN+oDX{D4;yDpmHe_@E47zn#I@Wgzfp2kc8`zfnXXZOqr~o8AMD{Q z#(s`Hp<2Nl@BR?tm-mrseMey*iXFK&3V(p_R&Y>Oo4h{I0rme*4TSq*Jbn694-pij znV%g4Ym*aPSy|!FwDqoyS7Y#LN(41l!?LI;y^g;bwdsq2_a(YSbdA-z{+Q?0ChqzA z-j6&ZsLjwCGkn*3jWvV=BS&DVRs!)Gep`v1@%ZW#`*cLL*(kr9ca++9Ef}BiaIRKq zl;2wO*=?SeD;epZ@$@;csrEC_Ui|7YTG>agxNgzV*Ch-`*tj`2%&%_Ou6++Bt`m9Y#@cclFqw-k|HP4Y9K3;yK2|2m=Jl`6%L%urAg-}WHw1U zHzYH0(pl1ooFR?Kf;1uvvh!(oob9siyd3E`*|XomY(m8;9ucKKGMabu%n6uL;1JDr T1s7k@#p}5ErOSuBtlazupwVKo literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/splith.cur b/release/windows/icons/cursors/splith.cur new file mode 100644 index 0000000000000000000000000000000000000000..9b74fca7c6fde88b6bea37e7435394866f746d0c GIT binary patch literal 30894 zcmeHQTWnNY8D4GC(gH2_3I&H-JvCaalH;4z-Qp&;^r%q6 z@O#NL9>dlT==0*mi$c0|>5>!`6-jPxZc~hQ3GarFX8NK}H<=hFO`6o4u#=Gud=@lx zCr(%$YMc-FhsuJ?;33Y2m_!eZ>0J zt5+};Ke1hNbF;usuOI(2X3SW}7^Y93F4Lw>i<{YwzGu#y`E@`3v%L**BYuhCzhJ=v z-}uw_;lqa$I{ywGIwXw2&#{~{XU<@6Z!d2yzjJeIYwJIjELjq2X=(W<>nXX-dbb|S z-QC?E(vBbhBeY4`{U?h5Pu+iK&z_yq`|mhEe>5bBp@H`!_w%>7xHu)xU)M1i&-V`# zM!oaA9h3JjTtD$qKxC*`B$zKUkSEd&rc^2rVPnu;=hkIg+7Q@cKLxrn)VttFKLz?U zELj9B0u}*_fJML}U=gqgSOhEr7J)28pdv$a&OzKi2D9IulG~X=xd`+pU|F?l72_v! zoAv2VjPa*nVgEVlz<~oMhYwIcDUB1zLu@|-%f5a4bnNC&Q&W@90sTTP*q@F$F!rA_ z_Jaoxny}xH>}TcvoSd9i$j^Y&g$fW;8(5FExr4rP<%)Y#@24L4HwZpma(ElD=xcRw za8Sn^3Wa3HjvX3rN^X-lUQ$s}!7(KA7s2U5`w)n1+qP|}zrSC$Z{KdN*$b@a_KO!U zWXqNGJZ2&ODX81_Y}KFUoh#N(3kw{6)RSB;uL5a zjd$fOo@A3o%93c}x!*im`cK;QjRaR2JntAiNBk@M%zC!J57IwiDEKlJB4I&Yeo z4^V?~x_iJT?r~DDZD9Xn_}Ss&*%SOU0t0dn`xK!aSi_#IVANuAnvq%^5jYP?KZ6(Bap1X>wBTU~=lX7P44a?B z+^l~=M<8!PmOA>S&Nl0>p>B>-A60nt6}4>wm8E#Uxm8e55IlD57|($aw(r7TEhX>_ za-I^$qP^shKpcLWmLSGEc%B6>T)3c5iOZKS3+6TjVN6SIliJ(c-8oG2<7^Dtd(;GWno90px^!s>`Y#bjU<_jMYw~Tx)Q8xD_wL;@;l3dm zdwF?z5PJP^@=d>v#<1Nt5L++iLYL>;7{eHC+?AfzI$!++pN`dcWxu`(Qk6}z4 znTh?l>>v3Rc-;F*!dD`|)HIG#cO$`n_xp$hva32QI|5;@4&37@VFdJvH2cvqYI|ef_!}t>G4XZ;!uCx*CclBOU(VCo z0B!)Ad0MIl8Wv7n&CNc$(+-*V?K=O*=t#QIXQapOjV!2{@iX@UU2c?JJr?(5gDm!6)UNY29x z{Pv-?w$@nu?&gUX*Owv`GdA z^dy5w`uFeO7kopZnPoRox2C4XV8H7p6Db!#e*~8K^XJR;>(?VG-nnx}u+E&xPnTI| z$eGt@_Wv>ylXqgC0{JImfbWIm>eZ`q z@wi;aUxdFN%-0YnQx!{o1Qp{r<>U5YzMcGx65~zB<6d z?+C`5jvqg6zGZ0lmreYwko&ioKd)zE5YKs#EWGHGxibdF0)8j{O#HWizb418@jsrj z(SIiXTOxm+2Ooj^#sLfZJP)q(pMh;@5wHkY1pFa@d(S)Ic5p8^)%X7%$2Zr7NIAiG z<2d9T4dW2v;Mxl*BlxRh?tJ&)I|%zQQ%z5wKGo}#%$hZem=J@Mod@v6XTHuo)p-y1 z$N!taSiq@#|K+t8*LyF2-*Al<@<_jbxR1Y);`#l<^T5eJmA`+o`uA^~H<}68{}D(2 z+1&q?tp3lWe&ZjS#;?Q~ub4bd-UbJQi#Rw* H7`OiePWfU4 literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/splitv.cur b/release/windows/icons/cursors/splitv.cur new file mode 100644 index 0000000000000000000000000000000000000000..68a739eb11b0bf83cc951c0b015c319e750500da GIT binary patch literal 30894 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 S_z}Mnhwd*9zrN(f%hUgpX_0RL literal 0 HcmV?d00001 diff --git a/release/windows/icons/cursors/zoomin.cur b/release/windows/icons/cursors/zoomin.cur new file mode 100644 index 0000000000000000000000000000000000000000..8e6930b465ad6d2327845b5f2f96eb53f405d71c GIT binary patch literal 30894 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 Hsg?f&C={k` literal 0 HcmV?d00001 diff --git a/release/windows/icons/winblender.rc b/release/windows/icons/winblender.rc index a7d9eff8dbf..ba3363aacc5 100644 --- a/release/windows/icons/winblender.rc +++ b/release/windows/icons/winblender.rc @@ -13,6 +13,31 @@ APPICON ICON DISCARDABLE "winblender.ico" BLENDERFILE ICON DISCARDABLE "winblenderfile.ico" +pointer_cursor CURSOR "cursors/pointer.cur" +moveew_cursor CURSOR "cursors/moveew.cur" +movens_cursor CURSOR "cursors/movens.cur" +arrowdown_cursor CURSOR "cursors/arrowdown.cur" +arrowleft_cursor CURSOR "cursors/arrowleft.cur" +arrowright_cursor CURSOR "cursors/arrowright.cur" +arrowup_cursor CURSOR "cursors/arrowup.cur" +cross_cursor CURSOR "cursors/cross.cur" +crossA_cursor CURSOR "cursors/crossa.cur" +crossB_cursor CURSOR "cursors/crossb.cur" +crossC_cursor CURSOR "cursors/crossc.cur" +eraser_cursor CURSOR "cursors/eraser.cur" +eyedropper_cursor CURSOR "cursors/eyedropper.cur" +handopen_cursor CURSOR "cursors/handopen.cur" +knife_cursor CURSOR "cursors/knife.cur" +pencil_cursor CURSOR "cursors/pencil.cur" +scrollew_cursor CURSOR "cursors/scrollew.cur" +scrollns_cursor CURSOR "cursors/scrollns.cur" +scrollnsew_cursor CURSOR "cursors/scrollnsew.cur" +splith_cursor CURSOR "cursors/splith.cur" +splitv_cursor CURSOR "cursors/splitv.cur" +zoomin_cursor CURSOR "cursors/zoomin.cur" +zoomout_cursor CURSOR "cursors/zoomout.cur" +forbidden_cursor CURSOR "cursors/forbidden.cur" + IDR_VERSION1 VERSIONINFO FILEVERSION BLEN_VER_RC_1, BLEN_VER_RC_2, BLEN_VER_RC_3, BLEN_VER_RC_4 PRODUCTVERSION BLEN_VER_RC_1, BLEN_VER_RC_2, BLEN_VER_RC_3, BLEN_VER_RC_4