diff --git a/framebuffer/fb_gui.c b/framebuffer/fb_gui.c index 2690d66e1..dfa3865e3 100644 --- a/framebuffer/fb_gui.c +++ b/framebuffer/fb_gui.c @@ -491,6 +491,10 @@ void gui_window_set_pointer(struct gui_window *g, gui_pointer_shape shape) fb_cursor_set(framebuffer->cursor, &hand_image); break; + case GUI_POINTER_CARET: + fb_cursor_set(framebuffer->cursor, &caret_image); + break; + default: fb_cursor_set(framebuffer->cursor, &pointer_image); } diff --git a/framebuffer/fb_image_data.c b/framebuffer/fb_image_data.c index 0a5e8da3a..8c8fb727e 100644 --- a/framebuffer/fb_image_data.c +++ b/framebuffer/fb_image_data.c @@ -22,59 +22,128 @@ #include "framebuffer/fb_bitmap.h" struct bitmap pointer_image = { - 11, 15, - "\0\0\0'\0\0\0""8\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0`\230\230\230\275\3\3\3D\0\0\0\1\0\0\0\4\0\0\0\1\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\377\377\377\277\230\230\230" - "\275\2\2\2N\0\0\0\37\0\0\0\23\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0`\377\377\377\277\377\377\377\277\224\224\224\302\2\2\2`\0\0\0$\0\0\0\24" - "\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0`\377\377\377\277\377\377\377\277\370" - "\370\370\304\220\220\220\307\2\2\2`\0\0\0$\0\0\0\24\0\0\0\2\0\0\0\0\0\0\0" - "\0\0\0\0`\377\377\377\277\377\377\377\277\370\370\370\304\362\362\362\311" - "\220\220\220\307\2\2\2`\0\0\0$\0\0\0\24\0\0\0\2\0\0\0\0\0\0\0`\377\377\377" - "\277\377\377\377\277\370\370\370\304\362\362\362\311\361\361\361\311]]]\307" - "\0\0\0;\0\0\0$\0\0\0\24\0\0\0\2\0\0\0`\377\377\377\277\377\377\377\277\370" - "\370\370\304\304\304\304\311222\245\0\0\0Z\0\0\0'\0\0\0&\0\0\0$\0\0\0\24" - "\0\0\0`\334\334\334\277sss\273\277\277\277\304\340\340\340\311\16\16\16~" - "\0\0\0&\0\0\0&\0\0\0&\0\0\0&\0\0\0#\0\0\0-\5\5\5T\0\0\0\21]]]\261\362\362" - "\362\311ccc\276\0\0\0,\0\0\0&\0\0\0&\0\0\0#\0\0\0\26\0\0\0\0\0\0\0\0\0\0" - "\0\0\11\11\11h\333\333\333\311\306\306\306\311\0\0\0g\0\0\0&\0\0\0&\0\0\0" - "\31\0\0\0\2\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\36ooo\304\212\212\212\305\15\15" - "\15q\0\0\0&\0\0\0&\0\0\0!\0\0\0\6\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0""8" - "\0\0\0\35\0\0\0\25\0\0\0&\0\0\0&\0\0\0%\0\0\0\21\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\10\0\0\0#\0\0\0&\0\0\0%\0\0\0\24\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\1\0\0\0\24\0\0\0\34\0\0\0\22" - "\0\0\0\4", + 12, 22, + "33L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0""33L\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\273\273\324\3773" + "3L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0""33L\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360" + "\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""3" + "3L\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\273" + "\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0""33L" + "\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\273\273\324\37733L\377\0\0\0" + "\0\0\0\0\0""33L\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360" + "\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\273\273\324\37733L\377\0\0\0\0""33L\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\273\273\324\37733L\37733L\37733L\37733L" + "\37733L\37733L\37733L\377\360\360\377\377\360\360\377\377\273\273\324\377" + "\360\360\377\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0""33L\377\360\360\377\377\273\273\324\37733L\37733L\377\360" + "\360\377\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L" + "\377\273\273\324\37733L\377\0\0\0\0""33L\377\273\273\324\377\360\360\377" + "\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0""33L\37733L\377\0\0\0" + "\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\377\0\0\0" + "\0\0\0\0\0\0\0\0\0""33L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\273" + "\273\324\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360\360" + "\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0""33L\377\273\273\324\377\360\360\377\377\273\273\324\37733L\377\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360" + "\360\377\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\273\273\324\377\360\360\377\37733L\377" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + """33L\37733L\37733L\377\0\0\0\0", +}; + +struct bitmap caret_image = { + 7, 19, + "33L\37733L\37733L\377\0\0\0\0""33L\37733L\37733L\37733L\377\273\273\324\377" + "\360\360\377\37733L\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0""3" + "3L\377\273\273\324\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0" + "\0\0\0\0\0\0""33L\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0""33L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33" + "L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360" + "\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377" + "\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\37733L\377" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\37733L\377\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0""33L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + """33L\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377" + "\360\360\377\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\273\273" + "\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\273\273\324\377\360\360" + "\377\377\273\273\324\37733L\377\0\0\0\0""33L\377\273\273\324\377\360\360" + "\377\37733L\377\360\360\377\377\273\273\324\37733L\37733L\37733L\37733L\377" + "\0\0\0\0""33L\37733L\37733L\377", }; struct bitmap hand_image = { - 13, 15, - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0CGTe,/?]\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0LPa`|~\210\342\205" - "\206\213\333\25\25$K\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0""9CRa6;Ka(+8\225\217\220\226\347\242\243\247\347" - "\22\22\32\211\12\13\15Z\20\21\26\204\4\4\14\6\0\0\0\0\0\0\0\0\333\344\366" - "\1""24D\240LLS\347<\275\200\201\205\356\0\0\0L\0\0\0\0\0\0\0\0DFPy\222\223\230\347ii" - "p\347uu{\347\245\246\253\347\241\242\247\347\245\246\252\34700:\351\254\256" - "\263\356ghm\340\0\0\0\35\0\0\0\0\0\0\0\0@@J~\250\251\256\347\235\237\245" - "\347\330\332\337\347\334\337\343\354\336\340\344\355\242\244\251\355\202" - "\203\211\356\257\261\265\356\17\16\26\242\0\0\0\5\0\0\0,\0\0\0""5:;D~\260" - "\262\267\347\315\320\325\347\323\325\333\354\332\335\342\356\334\337\344" - "\356\307\311\316\356\272\274\301\356OOW\312\3\3\6^\0\0\0""1\0\0\0M\0\0\0" - "G)*5C\216\220\227\341\317\321\327\347\305\307\315\356\312\315\323\356\314" - "\317\325\356\314\316\323\356klr\356\1\1\1]\0\0\0M\0\0\0M\0\0\0M\0\0\0\32" - "\0\0\0\0GIT\330\306\310\315\347\274\276\303\356\277\302\306\356\277\302\307" - "\356\251\253\257\35622;\262\0\0\0P\0\0\0M\0\0\0M\0\0\0@\0\0\0\10\0\0\0\0" - "+,1\253\202\204\207\326vvy\344vwy\346vwy\346^_a\347\7\7\17~\0\0\0M\0\0\0" - "M\0\0\0@\0\0\0\14\0\0\0\0\0\0\0\0\0\0\0\5\0\0\0\12\0\0\0(\0\0\0T\0\0\0T\0" - "\0\0T\0\0\0M\0\0\0M\0\0\0M\0\0\0*\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" - "\0\0\0\32\0\0\0M\0\0\0M\0\0\0M\0\0\0M\0\0\0M\0\0\0M\0\0\0\6\0\0\0\0\0\0\0" - "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\3\0\0\0!\0\0\0\40\0\0\0\"\0\0\0\"\0\0\0" - "\"\0\0\0\31\0\0\0\1\0\0\0\0\0\0\0\0", + 16, 22, + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\273\273\324\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\273\273\324\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\37733L\37733L\377\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\377\273\273\324\377\273" + "\273\324\37733L\37733L\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360\360\377\37733L\377\360\360" + "\377\377\360\360\377\37733L\377\273\273\324\377\273\273\324\37733L\377\0" + "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360" + "\360\377\37733L\377\360\360\377\377\360\360\377\37733L\377\360\360\377\377" + "\360\360\377\37733L\37733L\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""3" + "3L\377\360\360\377\377\360\360\377\37733L\377\360\360\377\377\360\360\377" + "\37733L\377\360\360\377\377\360\360\377\37733L\377\273\273\324\377\273\273" + "\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0""33L\377\360\360\377\377\360\360" + "\377\37733L\377\360\360\377\377\360\360\377\37733L\377\360\360\377\377\360" + "\360\377\37733L\377\360\360\377\377\360\360\377\37733L\377\0\0\0\0""33L\377" + "33L\37733L\377\360\360\377\377\360\360\377\37733L\377\360\360\377\377\360" + "\360\377\37733L\377\360\360\377\377\360\360\377\37733L\377\360\360\377\377" + "\360\360\377\37733L\37733L\377\360\360\377\377\273\273\324\37733L\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\37733L\37733L\377\360\360\377\377\360\360\377\377" + "33L\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\360\360\377\37733L\37733L\377\360\360\377\377\360\360" + "\377\37733L\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\377\360\360\377\37733L\37733L\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360" + "\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\37733L\3773" + "3L\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\37733L\37733L\377\273\273\324\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360" + "\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\37733L\377\0\0\0\0""33L\377\273\273\324\377" + "\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360" + "\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0""3" + "3L\377\273\273\324\377\360\360\377\377\360\360\377\377\360\360\377\377\360" + "\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377" + "\377\360\360\377\377\273\273\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0" + "\0""33L\377\273\273\324\377\360\360\377\377\360\360\377\377\360\360\377\377" + "\360\360\377\377\360\360\377\377\360\360\377\377\360\360\377\377\273\273" + "\324\37733L\377\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0""33L\377" + "33L\37733L\37733L\37733L\37733L\37733L\37733L\37733L\377\0\0\0\0\0\0\0\0" + "\0\0\0\0", }; const fb_widget_image_t left_arrow = { diff --git a/framebuffer/fb_image_data.h b/framebuffer/fb_image_data.h index 8d95548db..c381bc6ad 100644 --- a/framebuffer/fb_image_data.h +++ b/framebuffer/fb_image_data.h @@ -32,3 +32,4 @@ extern const fb_widget_image_t stop_image; extern struct bitmap pointer_image; extern struct bitmap hand_image; +extern struct bitmap caret_image;