Compare commits

...
217 Commits
Author SHA1 Message Date
Vincent Wei 38aa40042c release version 4.0.2 2019-10-31 11:29:24 +08:00
Vincent Wei 991472894b tune configure output 2019-10-24 17:33:45 +08:00
Vincent Wei ca249ba378 change version to 4.0.2 2019-10-24 17:27:51 +08:00
Vincent Wei 04adac288f change version to 4.0.2 2019-10-24 17:26:08 +08:00
Vincent Wei fcd401128c add configure options for RT-Thread, RTEMS, FreeRTOS 2019-10-24 17:24:37 +08:00
Vincent Wei 067df2ea37 tune for minigui-docs 2019-10-23 19:08:03 +08:00
Vincent Wei c47dad1ad5 restore build/rules-pc.linux and fix errors in makefile.ng files 2019-10-18 16:56:05 +08:00
Vincent Wei 28d907165f remove standalone option 2019-10-17 16:41:36 +08:00
Vincent Wei 8a8cdd18ed tune readme 2019-07-29 16:34:33 +08:00
Vincent Wei 2e5a8804bf tune api desc 2019-07-29 10:03:27 +08:00
Vincent Wei 173171b653 use -1 instead of 0xFFFFFFFF for ON_UPDSECDC_DONOTHING; chang return type of GetGDCapability to Uint32 2019-07-26 12:07:32 +08:00
Vincent Wei b4e46463cd remove _DEBUG 2019-07-19 15:49:16 +08:00
Vincent Wei d7c818080c libdrm does not need udev 2019-07-19 15:32:08 +08:00
Vincent Wei c03ed8d23a change version 2019-07-19 14:56:58 +08:00
Vincent Wei f965c4b8ea notes for ver-4-0-1 2019-07-19 14:45:24 +08:00
Vincent Wei 3710611ebd restore GetResPath 2019-07-19 14:08:08 +08:00
VincentWei d50c5c25ed use %zu instead of %lu for size_t values 2019-07-19 12:23:54 +08:00
Vincent Wei b7820d888f use DWORD for RES_KEY 2019-07-19 11:21:54 +08:00
Vincent Wei a068f25519 use FNV 1a algrithm for Str2Key 2019-07-19 11:11:34 +08:00
Vincent Wei f6ad9a960e cleanup 2019-07-18 14:59:12 +08:00
Vincent Wei 29a6e0f0f9 tune api desc 2019-07-18 12:44:24 +08:00
Vincent Wei 868548cf0d fix typos 2019-07-17 17:23:14 +08:00
Vincent Wei a9daa05807 - [Overview](#overview) 2019-07-17 17:22:41 +08:00
Vincent Wei 5e0500411e struct description for _DriDriverOps 2019-07-16 11:36:27 +08:00
Vincent Wei 717fbd6fee tune for version 4.0.0 2019-07-15 15:46:43 +08:00
Vincent Wei 53c77a9a73 prepend excpetion list statement 2019-07-15 14:17:20 +08:00
Vincent Wei e256fb2a0a restore timer thread 2019-07-14 17:17:40 +08:00
Vincent Wei ce29edbca6 disable timer thread for MiniGUI-Threads 2019-07-14 17:08:36 +08:00
Vincent Wei 3a37407982 cleanup for MiniGUI-Processes 2019-07-14 16:38:03 +08:00
Vincent Wei 3d0e33d2b3 Use ENTER_DRAWING_NOCHECK for BitBlt 2019-07-14 15:26:53 +08:00
Vincent Wei 8040f7abd5 __mg_time -> mg_os_time; __mg_mktime -> __mg_os_mktime; __mg_localtime -> __mg_os_localtime; use clock_gettime for tick count instead of gettimeofday 2019-07-14 14:21:40 +08:00
Vincent Wei 7e1e59a40b tune 2019-07-12 17:36:53 +08:00
Vincent Wei d6cbed96bc tune format 2019-07-12 17:25:56 +08:00
Vincent Wei 8adabc5917 Do not send MSG_NCPAINT when calling UpdateInvalidateRect 2019-07-12 17:13:56 +08:00
Vincent Wei 11950343df two new non-posix functions: __mg_os_start_time and __mg_os_get_time, and use __mg_os_get_time to implement GetTickCount for MiniGUI Standalone runmode 2019-07-12 16:38:16 +08:00
Vincent Wei c7201cbde1 Merge branch 'master' of gitlab.fmsoft.cn:VincentWei/minigui 2019-07-11 19:35:44 +08:00
Vincent Wei fd67781384 use DRM pixel format to define the pixel format surface 2019-07-11 19:34:43 +08:00
Vincent Wei 93101e6eed clear GAL_HWACCEL flag if check_blit retruns non-zero 2019-07-11 16:35:42 +08:00
Vincent Wei 3494e3d496 cleanup 2019-07-11 15:11:56 +08:00
Vincent Wei 5138402296 tune DriDriverOps to use DriSurfaceBuffer* for mapped surface buffer 2019-07-11 12:38:10 +08:00
Vincent Wei f324e2a1b6 tune release notes 2019-07-08 18:18:32 +08:00
Vincent Wei 36d5500a31 use DriPixelFormat when creating hardware buffer 2019-07-08 17:31:19 +08:00
Vincent Wei 61819fd832 Windows 2019-07-08 12:03:52 +08:00
Vincent Wei a2cd26ea99 DRM -> DRI 2019-07-05 12:47:00 +08:00
Vincent Wei f4af247b15 DRM -> DRI 2019-07-05 12:41:54 +08:00
Vincent Wei aa9bb68ad9 tune release notes 2019-07-04 18:43:12 +08:00
gengyue 5e8b27b810 solved some memery error 2019-07-04 18:39:16 +08:00
Vincent Wei 5f22485ed5 cleanup 2019-07-04 14:14:01 +08:00
Vincent Wei 06b90939c4 tune drm video engine for acclerated graphics 2019-07-03 12:17:21 +08:00
Vincent Wei 5e65422a28 tune 2019-07-03 08:42:26 +08:00
Vincent Wei ca98e4de5b show target name 2019-07-03 08:41:24 +08:00
Vincent Wei 46ed039e84 use a larger buffer 2019-07-02 14:30:16 +08:00
Vincent Wei d2701bac10 fix a minor bug 2019-07-02 11:58:20 +08:00
Vincent Wei ac6ebea61f clean extra input message before calling ial_wait_event 2019-07-02 11:52:30 +08:00
Vincent Wei 80f5ab49ce tune code for MiniGUI-Standalone runmode 2019-07-02 11:34:34 +08:00
Vincent Wei 59f97d7de0 tune for gcc 4.8 2019-06-25 17:42:50 +08:00
Vincent Wei d24fa1c8e5 just skip alpha component for RGBA format 2019-06-23 12:34:38 +08:00
Vincent Wei 775b7586d6 enhance __mg_load_jpg to support any type of MG_RWops 2019-06-23 12:30:43 +08:00
Vincent Wei 485b329737 tune 2019-06-20 16:39:07 +08:00
Vincent Wei 2cb7f7b08f fix typos 2019-06-20 11:38:10 +08:00
Vincent Wei 1a948f71d5 describe support for DRI and extra input messages 2019-06-20 11:29:57 +08:00
Vincent Wei 67ba6dc63d on the webpage -> in the webpage 2019-06-20 10:31:59 +08:00
Vincent Wei 52753ac730 fix typos 2019-06-19 14:00:05 +08:00
Vincent Wei 92acd5b204 update 2019-06-19 12:18:34 +08:00
Vincent Wei 58849e4b5a tune format 2019-06-19 11:54:30 +08:00
Vincent Wei d285256317 exception list 2019-06-19 11:53:47 +08:00
Vincent Wei 31b33c39c3 debug random IAL engine 2019-06-18 18:46:31 +08:00
Vincent Wei a5319df211 fix some bad documents for MSG_EXIN_XXX 2019-06-18 18:46:12 +08:00
Vincent Wei ee1cb96ec1 keys for random IAL engine 2019-06-18 18:45:55 +08:00
Vincent Wei d1b8c90b13 implementation of random IAL engine for mouse, keyboard, button, single_touch, gesture 2019-06-18 16:43:30 +08:00
Vincent Wei d503b340e0 handle KS_LEFTMETA and KS_RIGHTMETA 2019-06-17 15:16:41 +08:00
Vincent Wei 2a9549a138 add KS_LEFTMETA, KS_RIGHTMETA, and KS_META 2019-06-17 15:16:03 +08:00
Vincent Wei acb9b95bc6 implementation of random IAL engine 2019-06-17 12:34:16 +08:00
Vincent Wei 60f07ae26a move GetTickCount from window.h to minigui.h 2019-06-17 12:33:54 +08:00
Vincent Wei 77c4db5e2b framework of new random enigne 2019-06-16 18:50:15 +08:00
Vincent Wei 421ffea9c5 tune 2019-06-16 17:35:15 +08:00
Vincent Wei 57d8eb5237 section for enhanced random engine 2019-06-16 17:35:03 +08:00
Vincent Wei 799ff54869 description for two new engines: drm and libinput 2019-06-16 17:34:42 +08:00
Vincent Wei d6ee29ae11 fix some doc for messages 2019-06-14 18:58:46 +08:00
Vincent Wei 8dabf82a51 cleanup 2019-06-14 15:51:41 +08:00
Vincent Wei 237112bfe9 Implementation of GAL_SuspendVideo and GAL_ResumeVideo 2019-06-14 15:51:24 +08:00
Vincent Wei c445b5a80d Suspend and Resume methods 2019-06-14 15:50:37 +08:00
Vincent Wei 80773ab228 GAL_SuspendVideo and GAL_ResumeVideo 2019-06-14 15:50:11 +08:00
Vincent Wei 3f0ada1ee2 call GAL_SuspendVideo and GAL_ResumeVideo for VT switch 2019-06-14 15:49:53 +08:00
Vincent Wei e45b4ccad8 use LeftALT+LeftCTRL+Fx to switch virtual terminal 2019-06-14 15:49:19 +08:00
Vincent Wei fcb43eccb2 call treat_longpress when checking KS_REPEAT 2019-06-14 11:20:58 +08:00
Vincent Wei 111254b440 change DEF_LPRESS_TIME to 200 2019-06-14 11:20:20 +08:00
Vincent Wei 9f60ba7138 post MSG_EXIN_END_CHANGES message 2019-06-14 11:01:24 +08:00
Vincent Wei d2e0559bdf emulate mouse move and lbutton down for tablet tool 2019-06-14 11:01:03 +08:00
Vincent Wei 55b1934642 tune and cleanup 2019-06-14 10:13:04 +08:00
Vincent Wei 6a31f83a23 interfaces for Linux TTY 2019-06-14 10:12:37 +08:00
Vincent Wei fbe779b195 operators for Linux TTY 2019-06-14 10:12:17 +08:00
Vincent Wei f4e597d5d0 rename to have linux- prefix 2019-06-14 10:11:48 +08:00
Vincent Wei cf2ae944b7 special hande extra input messages in desktop procedure 2019-06-13 18:35:56 +08:00
Vincent Wei a9d7effc11 tune format 2019-06-13 18:00:20 +08:00
Vincent Wei 88771efb41 tune the default message queue length to 32 2019-06-13 18:00:02 +08:00
Vincent Wei 4a354b94f9 implementation of all extra input events 2019-06-13 17:50:30 +08:00
Vincent Wei 047ab34a98 handle extra input events in low-level event loop 2019-06-13 17:50:07 +08:00
Vincent Wei 83660e0d45 implementation of extra input events for touch and gesture 2019-06-13 12:35:44 +08:00
Vincent Wei 352a8cb158 add definitions of MSG_EXIN_XXX 2019-06-13 12:35:12 +08:00
Vincent Wei 85ba11cdd6 remove INPUT.mdev 2019-06-13 12:34:49 +08:00
Vincent Wei c9448ef4c6 Handle extra input events 2019-06-13 12:34:26 +08:00
Vincent Wei 2375100fd7 inline implementation of IAL_WaitEvent 2019-06-13 12:34:02 +08:00
Vincent Wei ebca4834a3 Tune INPUT structure: remove mdev and add wait_event_ex 2019-06-13 12:33:38 +08:00
Vincent Wei 34a007815b remove extra spaces after message name 2019-06-13 09:20:11 +08:00
Vincent Wei 50fcc2afc9 handle middle mouse button events 2019-06-12 19:08:24 +08:00
Vincent Wei 22cf10c508 handle mouse moved 2019-06-12 18:06:41 +08:00
Vincent Wei 51b0e704d7 cleanup 2019-06-12 18:06:22 +08:00
Vincent Wei da0cc99e7f cleanup 2019-06-12 18:06:13 +08:00
Vincent Wei c08a44638c Call IAL_SetMouseRange after initialized 2019-06-12 18:06:01 +08:00
Vincent Wei 9cc9e274cd handle more events 2019-06-12 17:48:08 +08:00
Vincent Wei 069c3eea17 cleanup 2019-06-12 17:47:49 +08:00
Vincent Wei 24381b4cb1 Add messages for middle mouse button: MSG_MBUTTONxxx and MSG_NCMBUTTONxxx;
Add messages for extra input events: MSG_EXIN_XXXX for pointer axis, generic button, touch, tablet, tablet pad, and switch.
2019-06-12 17:45:37 +08:00
Vincent Wei 5e362a9afb handle keyboard event 2019-06-12 12:33:32 +08:00
Vincent Wei 8a3437d948 change NR_KEYS to 250 2019-06-12 12:33:20 +08:00
Vincent Wei 4c2a8e7cc5 define more SCANCODE_xxxx and change NR_KEYS to 250 2019-06-12 12:32:45 +08:00
Vincent Wei b615321745 rename 2019-06-12 09:03:09 +08:00
Vincent Wei 8c81845eba change IAL engine of evdev to libinput 2019-06-11 18:39:26 +08:00
Vincent Wei e7913edc7e tuen implementation of dumb framebuffer 2019-06-11 17:02:48 +08:00
Vincent Wei d777055154 GAL_VideoModeOK returns Ok when the size requested are smaller than any mode available 2019-06-11 17:01:10 +08:00
Vincent Wei bbbff5bd8c Dumb buffer is almost ok 2019-06-11 15:33:30 +08:00
Vincent Wei 046353b9cb cleanup to use DrmVideoData for mode_list 2019-06-11 12:19:40 +08:00
Vincent Wei 06066b47b5 helpers for DRM mode setting 2019-06-10 18:25:58 +08:00
Vincent Wei 4f263517bb Source files for EvDev IAL engine 2019-06-10 18:25:03 +08:00
Vincent Wei 50afdc7826 add null implementation for EvDev IAL engine 2019-06-10 18:24:16 +08:00
Vincent Wei b282a7773d give mdev and mtype default values when they are not defined in ETC 2019-06-10 18:18:49 +08:00
Vincent Wei 1a5383b9bf open drm device 2019-06-10 16:11:18 +08:00
Vincent Wei 59e79143fb add DRM video driver 2019-06-10 16:10:59 +08:00
Vincent Wei 3601fa4868 use uintptr_t instead of UINT 2019-06-10 16:10:34 +08:00
Vincent Wei bad3722987 cleanup 2019-06-06 16:15:35 +08:00
Vincent Wei f3518b0254 ignore *.in~ 2019-06-06 12:39:43 +08:00
Vincent Wei 4fd4dfa561 empty implementation for drm video engine 2019-06-05 15:32:58 +08:00
Vincent Wei 924c1ecd79 sections for DRM video engine and EVDev input engine 2019-06-05 15:31:48 +08:00
Vincent Wei 43f9a1efbd options for DRM video engine and EVDev input engine 2019-06-05 15:31:27 +08:00
Vincent Wei fd7bb50756 add some notes for some keys 2019-06-04 10:50:57 +08:00
Vincent Wei 209a9cd69a remove checking of output rectangle for DrawTextEx2 2019-05-31 17:36:29 +08:00
Vincent Wei 855fdbad22 fixbug: convert Achar32 to Glyph32 for GetTabbedTextExtentPoint function 2019-05-30 16:34:22 +08:00
Vincent Wei ec330b1fea Try to load font from the relative path, if failed, try to load font from the system resource path. 2019-05-28 18:06:54 +08:00
Vincent Wei 09667150e8 Use _DBG_PRINTF for debug output instead of _WRN_PRINTF. 2019-05-28 18:06:19 +08:00
Vincent Wei 8ad28f6ae7 IsInvalidKey -> IsValidKey 2019-05-17 18:11:36 +08:00
Vincent Wei d3541df49e remove debug printf 2019-05-17 16:49:01 +08:00
Vincent Wei 617715e332 tune 2019-05-16 10:20:41 +08:00
Vincent Wei b9fd4b9178 New API: GetNextUChar 2019-05-15 11:58:48 +08:00
Vincent Wei e4499ee3ab cleanup 2019-04-22 16:24:31 +08:00
Vincent Wei dc31fc8e68 add link to CSS Writing Modes Level 3 2019-04-17 14:10:07 +08:00
Vincent Wei dff3093091 add link to GitHub wiki 2019-04-17 13:54:32 +08:00
Vincent Wei 05483a43bb fix typos 2019-04-16 18:08:25 +08:00
HOU Huihua 7ed7a27d62 tune code for SUBPIXEL rendering 2019-04-16 15:43:00 +08:00
Vincent Wei 4592dd3cd1 cleanup 2019-04-16 09:13:52 +08:00
Vincent Wei 8fe06d5a07 use const for pointer fields of INNER_RES 2019-04-15 16:44:37 +08:00
Vincent Wei fda8b7975d use inline functions for --disable-cursor instead of macros 2019-04-15 16:44:03 +08:00
Vincent Wei 9eb7bec6d3 update splash picture with new version (4.0) 2019-04-15 10:38:23 +08:00
Vincent Wei 5aee257855 Merge branch 'master' of github.com:VincentWei/minigui 2019-04-15 10:33:29 +08:00
Vincent Wei 9acc9e7b68 update to version 4.0 2019-04-15 10:33:04 +08:00
Vincent Wei 524fbd4833 cleanup 2019-04-15 10:13:23 +08:00
Vincent Wei 1eee78cfbc tune 2019-04-14 18:25:43 +08:00
Vincent Wei efc658016e HarzBuff -> HarfBuzz 2019-04-12 19:58:19 +08:00
Vincent Wei f8b834948f tune format 2019-04-12 19:42:59 +08:00
Vincent Wei ed4f2c1cfb tune format 2019-04-12 19:31:51 +08:00
WEI Yongming 8baaad037a tune release notes 2019-04-12 18:22:07 +08:00
WEI Yongming 2879190c44 Merge branch 'master' of github.com:VincentWei/minigui 2019-04-12 18:19:58 +08:00
WEI Yongming 49a9114155 support for LibPNG16 2019-04-12 18:19:35 +08:00
Vincent Wei 596c62b0c7 tune release notes 2019-04-12 15:50:47 +08:00
Vincent Wei 08f0d86c6e tune readme.md 2019-04-12 14:30:52 +08:00
Vincent Wei 7135b7ee5f tune release notes 2019-04-12 14:16:49 +08:00
Vincent Wei 9c1e9ad2ff GetGlyphValue -> GetGlyphValueAlt; Restore old GetGlyphValue 2019-04-12 14:05:22 +08:00
Vincent Wei 0c8a8acadd tune code for make docs 2019-04-12 11:39:53 +08:00
Vincent Wei 15fad87930 Restore GetGlyphBitmap 2019-04-12 11:39:06 +08:00
WEI Yongming 2caa09e185 tune 2019-04-12 09:23:51 +08:00
WEI Yongming 54577e9dd2 increase temp buffer size to avoid overflow; \t -> 4 spaces 2019-04-11 18:49:47 +08:00
WEI Yongming 2547782f77 tune code for gcc 4.8.5 2019-04-11 18:16:29 +08:00
Vincent Wei 9db7ec1abb use directly link for RELEASE-NOTES.md file 2019-04-11 12:53:13 +08:00
Vincent Wei d8264a91d5 Include README.md for Doxygen mainpage 2019-04-11 12:51:31 +08:00
Vincent Wei 852b7da5bc tune API description 2019-04-11 12:18:03 +08:00
Vincent Wei dd6248e90e cleanup for Doxygen 2019-04-11 10:54:17 +08:00
Vincent Wei 2581fa4d18 remove assert 2019-04-10 18:22:32 +08:00
Vincent Wei 7ab32056e1 tune glyph generating 2019-04-10 18:06:48 +08:00
Vincent Wei 3e6e0151af check ellipsized for next line 2019-04-10 16:31:02 +08:00
Vincent Wei 8f27fbb1a8 debug and tune 2019-04-10 16:20:37 +08:00
Vincent Wei 87d4fcf00b shape_fallback when the shaping engine failed 2019-04-10 14:38:29 +08:00
Vincent Wei 9ae76a1d91 cleanup 2019-04-10 10:13:51 +08:00
Vincent Wei 43ef338bd8 debug: use FS_SLANT_ROMAN as the default 2019-04-10 10:13:41 +08:00
Vincent Wei 3407d6f20c GRF_ALIGN_JUSTIFY for all lines 2019-04-10 09:39:28 +08:00
Vincent Wei 33bd6087b5 always use __mg_glyph_string_set_size 2019-04-10 09:16:41 +08:00
Vincent Wei a36b2fb3b3 debug 2019-04-09 18:46:53 +08:00
Vincent Wei 7811f86782 debug 2019-04-09 18:39:28 +08:00
Vincent Wei eb81fadbda debug: use bad ellipsis_ucs in shape_ellipsis 2019-04-09 16:04:24 +08:00
Vincent Wei 27139876a8 Use language code instead of script type for the first argument of UStrGetBreaks 2019-04-09 15:35:19 +08:00
Vincent Wei 14eca8703c debug 2019-04-09 15:26:07 +08:00
Vincent Wei 9e0c3a9c99 cleanup 2019-04-09 11:09:54 +08:00
Vincent Wei 7cc185f409 use 0xff for alpha of RGB2Pixel 2019-04-09 10:46:54 +08:00
Vincent Wei c827a8b6a9 debug: use static _funcs object to avoid memory leak 2019-04-09 10:17:52 +08:00
Vincent Wei 5abeee3b64 tune __mg_ft2_get_face return filename and face 2019-04-08 18:35:34 +08:00
Vincent Wei 5758700e70 cleanup 2019-04-08 18:12:07 +08:00
Vincent Wei 4586e25709 cleanup 2019-04-08 17:53:55 +08:00
Vincent Wei 7e776f6b78 optimize complex shaping engine 2019-04-08 17:52:46 +08:00
Vincent Wei 4ea2e11c5a debug 2019-04-08 16:13:03 +08:00
Vincent Wei 8e95f3bd93 debug 2019-04-08 15:34:51 +08:00
Vincent Wei 872ea630fd initial implementation of complex shaping engine 2019-04-08 15:17:05 +08:00
Vincent Wei 0b92cd51be check li.bpp with the requested bpp 2019-04-08 12:10:24 +08:00
Vincent Wei 724da1b1c0 tune links 2019-04-08 11:03:15 +08:00
Vincent Wei f78b9b750c link to RELEASENOTES.md 2019-04-08 10:59:13 +08:00
Vincent Wei c3683fb626 C++ -> Class 2019-04-08 10:57:42 +08:00
Vincent Wei 79b1dfefa2 more description 2019-04-08 10:54:29 +08:00
Vincent Wei eca76e6e89 fix typos 2019-04-07 18:17:46 +08:00
Vincent Wei 114426559f fix typos 2019-04-07 17:45:46 +08:00
Vincent Wei a0aaccdfd0 use standard pixel format for pdc->alpha_pixel_format 2019-04-07 17:19:12 +08:00
Vincent Wei 944d2ca8ae expose structures and definitions 2019-04-07 17:04:28 +08:00
Vincent Wei 321633c7bc Merge branch 'master' of github.com:VincentWei/minigui 2019-04-07 16:56:55 +08:00
Vincent Wei e5255d13e1 merge changes for exstubs.h from rel-3-2 manually 2019-04-07 16:56:43 +08:00
VincentWei e8bf19f212 fix typos 2019-04-06 23:13:43 +08:00
Vincent Wei a407f36975 introduction to MiniGUI 4.0.0 2019-04-06 15:51:02 +08:00
Vincent Wei c179737716 release notes for MiniGUI 4.0.0 2019-04-06 15:44:11 +08:00
Vincent Wei 4ef0079488 release notes for MiniGUI 4.0.0 2019-04-06 15:30:51 +08:00
Vincent Wei 36e3869385 handle SIGINT for ths and sa runmodes 2019-04-06 13:59:13 +08:00
Vincent Wei 32d800b1b9 always link to pthread 2019-04-06 13:45:59 +08:00
Vincent Wei dfd4a603f9 change version to 4.0.0 2019-04-06 13:34:20 +08:00
1025 changed files with 26419 additions and 5419 deletions
+1
View File
@@ -22,4 +22,5 @@ Makefile.in
/*.pc
/*config.h
/*config.h.in
/*config.h.in~
+2 -2
View File
@@ -4984,11 +4984,11 @@ provide the function whether the file exist or not.(xwyan)
* src/server/request.c
10/24. MODIFICATION: Use 1980/01/01 00:00:00 to return the default local time
for __mg_localtime.
for __mg_os_localtime.
* src/misc/nposix.c
10/24. MODIFICATION: Use HAVE_TIME, HAVE_MKTIME, and HAVE_LOCALTIME to define
__mg_time, __mg_mktime, and __mg_localtime functions.
__mg_os_time, __mg_os_mktime, and __mg_os_localtime functions.
* configure.in
* src/misc/nposix.c
+10 -5
View File
@@ -38,7 +38,7 @@ PROJECT_NAME = "MiniGUI API Reference (MiniGUI-Processes)"
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = v3.2.0
PROJECT_NUMBER = v4.0.1
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
@@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = doc
OUTPUT_DIRECTORY = doc-api-ref-minigui-procs-4.0.1
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
@@ -782,6 +782,7 @@ WARN_LOGFILE =
# Note: If this tag is empty the current directory is searched.
INPUT = ./include
INPUT += README.md
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
@@ -939,7 +940,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE = README.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -1288,7 +1289,7 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
CHM_FILE =
CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler (hhc.exe). If non-empty,
@@ -2073,6 +2074,7 @@ PREDEFINED = _MGRM_PROCESSES \
_MGMISC_SAVEBITMAP \
_MGHAVE_CURSOR \
_MGCHARSET_UNICODE \
_MGCOMPLEX_SCRIPTS \
_MGCTRL_STATIC \
_MGCTRL_SLEDIT \
_MGCTRL_BIDISLEDIT \
@@ -2099,7 +2101,10 @@ PREDEFINED = _MGRM_PROCESSES \
_MGCTRL_ANIMATION \
_MGFONT_FT2 \
_MGFONT_UPF \
_MGFONT_BMPF
_MGFONT_BMPF \
_MGGAL_DRI \
_MGGAL_COMMLCD \
_MGIAL_COMM
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
+10 -5
View File
@@ -38,7 +38,7 @@ PROJECT_NAME = "MiniGUI API Reference (MiniGUI-Standalone)"
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = v3.4.0
PROJECT_NUMBER = v4.0.1
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
@@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = doc
OUTPUT_DIRECTORY = doc-api-ref-minigui-sa-4.0.1
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
@@ -782,6 +782,7 @@ WARN_LOGFILE =
# Note: If this tag is empty the current directory is searched.
INPUT = ./include
INPUT += README.md
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
@@ -939,7 +940,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE = README.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -1288,7 +1289,7 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
CHM_FILE =
CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler (hhc.exe). If non-empty,
@@ -2073,6 +2074,7 @@ PREDEFINED = _MGRM_STANDALONE \
_MGMISC_SAVEBITMAP \
_MGHAVE_CURSOR \
_MGCHARSET_UNICODE \
_MGCOMPLEX_SCRIPTS \
_MGCTRL_STATIC \
_MGCTRL_SLEDIT \
_MGCTRL_BIDISLEDIT \
@@ -2099,7 +2101,10 @@ PREDEFINED = _MGRM_STANDALONE \
_MGCTRL_ANIMATION \
_MGFONT_FT2 \
_MGFONT_UPF \
_MGFONT_BMPF
_MGFONT_BMPF \
_MGGAL_DRI \
_MGGAL_COMMLCD \
_MGIAL_COMM
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
+10 -5
View File
@@ -38,7 +38,7 @@ PROJECT_NAME = "MiniGUI API Reference (MiniGUI-Threads)"
# could be handy for archiving the generated documentation or if some version
# control system is used.
PROJECT_NUMBER = v3.2.0
PROJECT_NUMBER = v4.0.1
# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
@@ -58,7 +58,7 @@ PROJECT_LOGO =
# entered, it will be relative to the location where doxygen was started. If
# left blank the current directory will be used.
OUTPUT_DIRECTORY = doc
OUTPUT_DIRECTORY = doc-api-ref-minigui-ths-4.0.1
# If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
# directories (in 2 levels) under the output directory of each output format and
@@ -782,6 +782,7 @@ WARN_LOGFILE =
# Note: If this tag is empty the current directory is searched.
INPUT = ./include
INPUT += README.md
# This tag can be used to specify the character encoding of the source files
# that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
@@ -939,7 +940,7 @@ FILTER_SOURCE_PATTERNS =
# (index.html). This can be useful if you have a project on for instance GitHub
# and want to reuse the introduction page also for the doxygen output.
USE_MDFILE_AS_MAINPAGE =
USE_MDFILE_AS_MAINPAGE = README.md
#---------------------------------------------------------------------------
# Configuration options related to source browsing
@@ -1288,7 +1289,7 @@ GENERATE_HTMLHELP = NO
# written to the html output directory.
# This tag requires that the tag GENERATE_HTMLHELP is set to YES.
CHM_FILE =
CHM_FILE =
# The HHC_LOCATION tag can be used to specify the location (absolute path
# including file name) of the HTML help compiler (hhc.exe). If non-empty,
@@ -2073,6 +2074,7 @@ PREDEFINED = _MGRM_THREADS \
_MGMISC_SAVEBITMAP \
_MGHAVE_CURSOR \
_MGCHARSET_UNICODE \
_MGCOMPLEX_SCRIPTS \
_MGCTRL_STATIC \
_MGCTRL_SLEDIT \
_MGCTRL_BIDISLEDIT \
@@ -2099,7 +2101,10 @@ PREDEFINED = _MGRM_THREADS \
_MGCTRL_ANIMATION \
_MGFONT_FT2 \
_MGFONT_UPF \
_MGFONT_BMPF
_MGFONT_BMPF \
_MGGAL_DRI \
_MGGAL_COMMLCD \
_MGIAL_COMM
# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
+13 -12
View File
@@ -1,11 +1,10 @@
SUBDIRS = src 3rd-party include rtos etc m4 cmake build
EXTRA_DIST = \
minigui.pc.in \
EXTRA_DIST = minigui.pc.in \
GNUmakefile makefile.ng makefile.msvc rules.make \
Version INSTALL LICENSE \
README.md RELEASE-NOTES.md \
LICENSE-POLICY-en.md LICENSE-POLICY-zh.md
LICENSE-POLICY-en.md LICENSE-POLICY-zh.md
# The directory where the include files will be installed
libminiguiincludedir = $(includedir)/minigui
@@ -13,15 +12,17 @@ libminiguiincludedir = $(includedir)/minigui
# Which header files to install
libminiguiinclude_HEADERS = mgconfig.h
docs:
doxygen Doxyfile.procs Doxyfile.ths Doxyfile.sa
dist-nolicense: dist
./clean_license.sh $(DIST_ARCHIVES)
dist:
distcheck-nolicense:dist-nolicense distcheck
pkgconfigdir = $(libdir)/pkgconfig
pkgconfig_DATA = minigui.pc
docs:
doxygen Doxyfile.procs
doxygen Doxyfile.ths
doxygen Doxyfile.sal
#dist-nolicense: dist
# ./clean_license.sh $(DIST_ARCHIVES)
#
#dist:
#distcheck-nolicense:dist-nolicense distcheck
+254 -209
View File
File diff suppressed because it is too large Load Diff
+573 -124
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -1,9 +1,9 @@
Version 3.4.0 (2019/06/30)
Version 4.0.2 (2019/10/31)
This release needs the following resource packages:
* minigui-res-3.4.0.tar.gz
* minigui-res-4.0.0.tar.gz
The latest samples package is:
* mg-samples-3.4.0.tar.gz
* mg-samples-4.0.1.tar.gz
+36
View File
@@ -0,0 +1,36 @@
# rules for pc-linux
# set your own targaet_os
TARGET_OS=linux
##################################################
# set your compile tool #
CC=gcc
CXX=g++
CPP=g++
AR=ar
AS=as
RANLIB=ranlib
MAKE=/usr/bin/make
##################################################
ARFLAGS=-rc
COFLAG=-c
OBJ=o
LIBA=a
##################################################
# if you don't want to create dynamic, delete it #
LIBSO=so
SOFLAGS=-fPIC -shared -o
##################################################
##################################################
# set your compile flags and install prefix path #
PREFIX=/usr/local
CFLAGS+=-g -Wall -fPIC `pkg-config --cflags freetype2` -I/usr/local/include/harfbuzz
LDFLAGS+=
##################################################
+249 -97
View File
File diff suppressed because it is too large Load Diff
+55 -11
View File
@@ -1,18 +1,22 @@
# This configuration file is for MiniGUI V3.x.x
# This configuration file is for MiniGUI V4.0.x or later
#
# Copyright (C) 2002~2018 FMSoft
# Copyright (C) 2002~2019 FMSoft
# Copyright (C) 1998~2002 Wei Yongming.
#
# Web: http://www.minigui.com
#
# This configuration file must be installed in /etc,
# /usr/local/etc or your home directory. When you install it in your
# home directory, it should be named ".MiniGUI.cfg".
#
# The priority of above configruation files is ~/.MiniGUI.cfg,
# /usr/local/etc/MiniGUI.cfg, and then /etc/MiniGUI.cfg.
# /usr/local/etc, your home directory, or the current working direcotry.
# When you install it in your home directory, it should be named
# ".MiniGUI.cfg".
#
# If you change the install path of MiniGUI resource, you should
# The priority of above configruation files is ./MiniGUI.cfg,
# ~/.MiniGUI.cfg, /usr/local/etc/MiniGUI.cfg, and then /etc/MiniGUI.cfg.
#
# NOTE that the one in the current working directory will have
# always have the highest priority.
#
# If you change the install path of MiniGUI resource, you should
# modify this file to meet your configuration.
#
@@ -26,12 +30,36 @@ ial_engine=pc_xvfb
mdev=/dev/input/mice
mtype=IMPS2
[fbcon]
defaultmode=1024x768-16bpp
# Linux IAL engine based on libinput
# ial_engine=libinut
#{{ifdef _MGGAL_DRI
[dri]
defaultmode=1024x768-32bpp
# We use DRM fourcc code to defined the pixel format of the video surface.
# For more information, please see <drm/drm_fourcc.h> header file.
# Note that only 8/16/24/32 bpp RGB formats are supported.
pixelformat=XR24
# The DRI device
device=/dev/dri/card0
# The resolution of the display
# It is defined in dots (physical pixels) per inch
# The default value is 96.
dpi=96
#}}
#{{ifdef _MGIAL_LIBINPUT
[libinput]
seat=seat0
#}}
#{{ifdef _MGGAL_FBCON
[fbcon]
defaultmode=1024x768-16bpp
dpi=96
#}}
#{{ifdef _MGGAL_PCXVFB
[pc_xvfb]
@@ -58,7 +86,19 @@ def_bgcolor=0x00FF00
double_buffer=enable
#}}
#{{ifdef _MGIAL_RANDOM
[random]
logfile=/dev/null
eventtypes=mouse-keyboard-button-gesture
minkeycode=1
maxkeycode=128
minbtncode=0x100
maxbtncode=0x1ff
#}}
# The first system font must be a logical font using RBF device font.
# NOTE that the maxiaml number of system logfonts is 6. You should not
# set `font_number` in this section to be a number larger than 6.
[systemfont]
font_number=5
font0=rbf-FixedSys-rrncnn-8-16-ISO8859-1
@@ -88,6 +128,10 @@ font_number=0
[truetypefonts]
font_number=0
# The devfont now supports multiple font family names since V4.0.0.
name0=ttf-Source Sans Pro,SansSerif-rrncnn-0-0-ISO8859-1,UTF-8
# The path of font file can be relative to the current working directory.
fontfile0=font/SourceSansPro-Regular.ttf
[mouse]
dblclicktime=300
@@ -126,7 +170,7 @@ cursor22=ve_split.cur
[resinfo]
respath=/usr/local/share/minigui/res/
[classic]
# Note that max number defined in source code is 5.
iconnumber=5
+5 -5
View File
@@ -10,9 +10,9 @@ libminiguiincludedir = $(includedir)/minigui
COMM_HDRS = \
common.h endianrw.h fixedmath.h \
minigui.h gdi.h window.h control.h \
own_malloc.h own_stdio.h \
xvfb.h customial.h \
dti.c
own_malloc.h own_stdio.h \
xvfb.h customial.h exstubs.h \
dti.c
UCOSII_HDRS=ucos2_pthread.h ucos2_semaphore.h
THREADX_HDRS=threadx_pthread.h threadx_semaphore.h
@@ -23,12 +23,12 @@ OSE_HDRS=ose_semaphore.h
PSOS_HDRS=psos_pthread.h psos_semaphore.h
EXTRA_DIST=$(UCOSII_HDRS) $(THREADX_HDRS) $(NUCLEUS_HDRS) $(VXWORKS_HDRS) \
$(OSE_HDRS) $(PSOS_HDRS) $(WIN32_HDRS) makefile.ng makefile.msvc
$(OSE_HDRS) $(PSOS_HDRS) $(WIN32_HDRS) makefile.ng makefile.msvc
#CLEANFILES=pthread.h semaphore.h
libminiguiinclude_HEADERS=$(COMM_HDRS) $(UCOSII_HDRS) $(THREADX_HDRS) \
$(NUCLEUS_HDRS) $(VXWORKS_HDRS) $(OSE_HDRS) $(PSOS_HDRS) $(WIN32_HDRS)
$(NUCLEUS_HDRS) $(VXWORKS_HDRS) $(OSE_HDRS) $(PSOS_HDRS) $(WIN32_HDRS)
if MGUSE_OWN_PTHREAD
install-data-local:
+244 -28
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file common.h
* \author Wei Yongming <vincent@minigui.org>
@@ -727,7 +739,7 @@ typedef UINT_PTR LPARAM;
#define MAKEWORD16(low, high) ((WORD16)(((BYTE)(low)) | (((WORD16)((BYTE)(high))) << 8)))
/**
* \def MAKEWORD32(first, second, third, fourth)
* \def MAKEDWORD32(first, second, third, fourth)
* \brief Makes a WORD32 value with four bytes.
*
* \sa MAKEWORD16, FIRSTBYTE, SECONDBYTE, THIRDBYTE, FOURTHBYTE
@@ -1161,7 +1173,7 @@ typedef struct _GAL_Rect {
*
* The number of MiniGUI keys is defined to 255 by default. This means that
* MiniGUI can destinguish 255 different keys with each has an unique scan code.
* The scan codes below 129 are defined for PC keyboard by default.
* The scan codes below 251 are defined for Linux keyboard keys by default.
* If your system has a large amount of keys, you can define the scan code of
* keys ranged from 1 to 255 in your IAL engine. And your application will
* receive a MSG_KEYDOWN and MSG_KEYUP messages when a key pressed and
@@ -1176,7 +1188,7 @@ typedef struct _GAL_Rect {
* \def NR_KEYS
* \brief The number of keys defined by Linux operating system.
*
* For a PC box, NR_KEYS is defined to 128 by default. You can define
* For a Linux box, NR_KEYS is defined to 250 by default. You can define
* some input events from an input device other than keyboard, e.g.
* your remote controller, as key events with different scan codes from
* those of PC's. MiniGUI can support 255 keys, and the constant
@@ -1185,7 +1197,7 @@ typedef struct _GAL_Rect {
* \sa MGUI_NR_KEYS
*/
#ifndef NR_KEYS
#define NR_KEYS 128
#define NR_KEYS 250
#endif
/**
@@ -1206,7 +1218,9 @@ typedef struct _GAL_Rect {
*/
#define SCANCODE_USER (NR_KEYS + 1)
#define SCANCODE_RESERVED 0
#define SCANCODE_ESCAPE 1
#define SCANCODE_ESC SCANCODE_ESCAPE
#define SCANCODE_1 2
#define SCANCODE_2 3
@@ -1236,11 +1250,14 @@ typedef struct _GAL_Rect {
#define SCANCODE_O 24
#define SCANCODE_P 25
#define SCANCODE_BRACKET_LEFT 26
#define SCANCODE_LEFTBRACE SCANCODE_BRACKET_LEFT
#define SCANCODE_BRACKET_RIGHT 27
#define SCANCODE_RIGHTBRACE SCANCODE_BRACKET_RIGHT
#define SCANCODE_ENTER 28
#define SCANCODE_LEFTCONTROL 29
#define SCANCODE_LEFTCTRL SCANCODE_LEFTCONTROL
#define SCANCODE_A 30
#define SCANCODE_S 31
@@ -1254,7 +1271,6 @@ typedef struct _GAL_Rect {
#define SCANCODE_SEMICOLON 39
#define SCANCODE_APOSTROPHE 40
#define SCANCODE_GRAVE 41
#define SCANCODE_LEFTSHIFT 42
#define SCANCODE_BACKSLASH 43
@@ -1267,11 +1283,11 @@ typedef struct _GAL_Rect {
#define SCANCODE_M 50
#define SCANCODE_COMMA 51
#define SCANCODE_PERIOD 52
#define SCANCODE_DOT SCANCODE_PERIOD
#define SCANCODE_SLASH 53
#define SCANCODE_RIGHTSHIFT 54
#define SCANCODE_KEYPADMULTIPLY 55
#define SCANCODE_KPASTERISK SCANCODE_KEYPADMULTIPLY
#define SCANCODE_LEFTALT 56
#define SCANCODE_SPACE 57
#define SCANCODE_CAPSLOCK 58
@@ -1291,66 +1307,264 @@ typedef struct _GAL_Rect {
#define SCANCODE_SCROLLLOCK 70
#define SCANCODE_KEYPAD7 71
#define SCANCODE_KP7 SCANCODE_KEYPAD7
#define SCANCODE_CURSORUPLEFT 71
#define SCANCODE_KEYPAD8 72
#define SCANCODE_KP8 SCANCODE_KEYPAD8
#define SCANCODE_CURSORUP 72
#define SCANCODE_KEYPAD9 73
#define SCANCODE_KP9 SCANCODE_KEYPAD9
#define SCANCODE_CURSORUPRIGHT 73
#define SCANCODE_KEYPADMINUS 74
#define SCANCODE_KPMINUS SCANCODE_KEYPADMINUS
#define SCANCODE_KEYPAD4 75
#define SCANCODE_KP4 SCANCODE_KEYPAD4
#define SCANCODE_CURSORLEFT 75
#define SCANCODE_KEYPAD5 76
#define SCANCODE_KP5 SCANCODE_KEYPAD5
#define SCANCODE_KEYPAD6 77
#define SCANCODE_KP6 SCANCODE_KEYPAD6
#define SCANCODE_CURSORRIGHT 77
#define SCANCODE_KEYPADPLUS 78
#define SCANCODE_KPPLUS SCANCODE_KEYPADPLUS
#define SCANCODE_KEYPAD1 79
#define SCANCODE_KP1 SCANCODE_KEYPAD1
#define SCANCODE_CURSORDOWNLEFT 79
#define SCANCODE_KEYPAD2 80
#define SCANCODE_KP2 SCANCODE_KEYPAD2
#define SCANCODE_CURSORDOWN 80
#define SCANCODE_KEYPAD3 81
#define SCANCODE_KP3 SCANCODE_KEYPAD3
#define SCANCODE_CURSORDOWNRIGHT 81
#define SCANCODE_KEYPAD0 82
#define SCANCODE_KP0 SCANCODE_KEYPAD0
#define SCANCODE_KEYPADPERIOD 83
#define SCANCODE_KPDOT SCANCODE_KEYPADPERIOD
#define SCANCODE_ZENKAKUHANKAKU 85
#define SCANCODE_LESS 86
#define SCANCODE_102ND SCANCODE_LESS
#define SCANCODE_F11 87
#define SCANCODE_F12 88
#define SCANCODE_RO 89
#define SCANCODE_KATAKANA 90
#define SCANCODE_HIRAGANA 91
#define SCANCODE_HENKAN 92
#define SCANCODE_KATAKANAHIRAGANA 93
#define SCANCODE_MUHENKAN 94
#define SCANCODE_KPJPCOMMA 95
#define SCANCODE_KEYPADENTER 96
#define SCANCODE_KPENTER SCANCODE_KEYPADENTER
#define SCANCODE_RIGHTCONTROL 97
#define SCANCODE_RIGHTCTRL SCANCODE_RIGHTCONTROL
#define SCANCODE_CONTROL 97
#define SCANCODE_KEYPADDIVIDE 98
#define SCANCODE_KPSLASH SCANCODE_KEYPADDIVIDE
#define SCANCODE_PRINTSCREEN 99
#define SCANCODE_SYSRQ SCANCODE_PRINTSCREEN
#define SCANCODE_RIGHTALT 100
#define SCANCODE_BREAK 101 /* Beware: is 119 */
#define SCANCODE_BREAK_ALTERNATIVE 119 /* on some keyboards! */
#define SCANCODE_LINEFEED 101
#define SCANCODE_HOME 102
#define SCANCODE_CURSORBLOCKUP 103 /* Cursor key block */
#define SCANCODE_UP SCANCODE_CURSORBLOCKUP
#define SCANCODE_PAGEUP 104
#define SCANCODE_CURSORBLOCKLEFT 105 /* Cursor key block */
#define SCANCODE_LEFT SCANCODE_CURSORBLOCKLEFT
#define SCANCODE_CURSORBLOCKRIGHT 106 /* Cursor key block */
#define SCANCODE_RIGHT SCANCODE_CURSORBLOCKRIGHT
#define SCANCODE_END 107
#define SCANCODE_CURSORBLOCKDOWN 108 /* Cursor key block */
#define SCANCODE_DOWN SCANCODE_CURSORBLOCKDOWN
#define SCANCODE_PAGEDOWN 109
#define SCANCODE_INSERT 110
#define SCANCODE_REMOVE 111
#define SCANCODE_DELETE SCANCODE_REMOVE
#define SCANCODE_PAUSE 119
#define SCANCODE_POWER 120
#define SCANCODE_SLEEP 121
#define SCANCODE_WAKEUP 122
#define SCANCODE_MACRO 112
#define SCANCODE_MUTE 113
#define SCANCODE_VOLUMEDOWN 114
#define SCANCODE_VOLUMEUP 115
#define SCANCODE_POWER 116 /* SC System Power Down */
#define SCANCODE_KPEQUAL 117
#define SCANCODE_KPPLUSMINUS 118
#define SCANCODE_BREAK 119
#define SCANCODE_BREAK_ALTERNATIVE SCANCODE_BREAK
#define SCANCODE_PAUSE SCANCODE_BREAK
#define SCANCODE_SCALE 120 /* AL Compiz Scale (Expose) */
#define SCANCODE_KPCOMMA 121
#define SCANCODE_HANGEUL 122
#define SCANCODE_HANJA 123
#define SCANCODE_YEN 124
#define SCANCODE_LEFTWIN 125
#define SCANCODE_LEFTMETA SCANCODE_LEFTWIN
#define SCANCODE_RIGHTWIN 126
#define SCANCODE_MENU 127
#define SCANCODE_RIGHTMETA SCANCODE_RIGHTWIN
#define SCANCODE_COMPOSE 127
#define SCANCODE_STOP 128 /* AC Stop */
#define SCANCODE_AGAIN 129
#define SCANCODE_PROPS 130 /* AC Properties */
#define SCANCODE_UNDO 131 /* AC Undo */
#define SCANCODE_FRONT 132
#define SCANCODE_COPY 133 /* AC Copy */
#define SCANCODE_OPEN 134 /* AC Open */
#define SCANCODE_PASTE 135 /* AC Paste */
#define SCANCODE_FIND 136 /* AC Search */
#define SCANCODE_CUT 137 /* AC Cut */
#define SCANCODE_HELP 138 /* AL Integrated Help Center */
#define SCANCODE_MENU 139 /* Menu (show menu) */
#define SCANCODE_CALC 140 /* AL Calculator */
#define SCANCODE_SETUP 141
#define SCANCODE_SLEEP 142 /* SC System Sleep */
#define SCANCODE_WAKEUP 143 /* System Wake Up */
#define SCANCODE_FILE 144 /* AL Local Machine Browser */
#define SCANCODE_SENDFILE 145
#define SCANCODE_DELETEFILE 146
#define SCANCODE_XFER 147
#define SCANCODE_PROG1 148
#define SCANCODE_PROG2 149
#define SCANCODE_WWW 150 /* AL Internet Browser */
#define SCANCODE_MSDOS 151
#define SCANCODE_COFFEE 152 /* AL Terminal Lock/Screensaver */
#define SCANCODE_SCREENLOCK SCANCODE_COFFEE
#define SCANCODE_ROTATE_DISPLAY 153 /* Display orientation for e.g. tablets */
#define SCANCODE_DIRECTION SCANCODE_ROTATE_DISPLAY
#define SCANCODE_CYCLEWINDOWS 154
#define SCANCODE_MAIL 155
#define SCANCODE_BOOKMARKS 156 /* AC Bookmarks */
#define SCANCODE_COMPUTER 157
#define SCANCODE_BACK 158 /* AC Back */
#define SCANCODE_FORWARD 159 /* AC Forward */
#define SCANCODE_CLOSECD 160
#define SCANCODE_EJECTCD 161
#define SCANCODE_EJECTCLOSECD 162
#define SCANCODE_NEXTSONG 163
#define SCANCODE_PLAYPAUSE 164
#define SCANCODE_PREVIOUSSONG 165
#define SCANCODE_STOPCD 166
#define SCANCODE_RECORD 167
#define SCANCODE_REWIND 168
#define SCANCODE_PHONE 169 /* Media Select Telephone */
#define SCANCODE_ISO 170
#define SCANCODE_CONFIG 171 /* AL Consumer Control Configuration */
#define SCANCODE_HOMEPAGE 172 /* AC Home */
#define SCANCODE_REFRESH 173 /* AC Refresh */
#define SCANCODE_EXIT 174 /* AC Exit */
#define SCANCODE_MOVE 175
#define SCANCODE_EDIT 176
#define SCANCODE_SCROLLUP 177
#define SCANCODE_SCROLLDOWN 178
#define SCANCODE_KPLEFTPAREN 179
#define SCANCODE_KPRIGHTPAREN 180
#define SCANCODE_NEW 181 /* AC New */
#define SCANCODE_REDO 182 /* AC Redo/Repeat */
#define SCANCODE_F13 183
#define SCANCODE_F14 184
#define SCANCODE_F15 185
#define SCANCODE_F16 186
#define SCANCODE_F17 187
#define SCANCODE_F18 188
#define SCANCODE_F19 189
#define SCANCODE_F20 190
#define SCANCODE_F21 191
#define SCANCODE_F22 192
#define SCANCODE_F23 193
#define SCANCODE_F24 194
#define SCANCODE_PLAYCD 200
#define SCANCODE_PAUSECD 201
#define SCANCODE_PROG3 202
#define SCANCODE_PROG4 203
#define SCANCODE_DASHBOARD 204 /* AL Dashboard */
#define SCANCODE_SUSPEND 205
#define SCANCODE_CLOSE 206 /* AC Close */
#define SCANCODE_PLAY 207
#define SCANCODE_FASTFORWARD 208
#define SCANCODE_BASSBOOST 209
#define SCANCODE_PRINT 210 /* AC Print */
#define SCANCODE_HP 211
#define SCANCODE_CAMERA 212
#define SCANCODE_SOUND 213
#define SCANCODE_QUESTION 214
#define SCANCODE_EMAIL 215
#define SCANCODE_CHAT 216
#define SCANCODE_SEARCH 217
#define SCANCODE_CONNECT 218
#define SCANCODE_FINANCE 219 /* AL Checkbook/Finance */
#define SCANCODE_SPORT 220
#define SCANCODE_SHOP 221
#define SCANCODE_ALTERASE 222
#define SCANCODE_CANCEL 223 /* AC Cancel */
#define SCANCODE_BRIGHTNESSDOWN 224
#define SCANCODE_BRIGHTNESSUP 225
#define SCANCODE_MEDIA 226
#define SCANCODE_SWITCHVIDEOMODE 227 /* Cycle between available video outputs (Monitor/LCD/TV-out/etc) */
#define SCANCODE_KBDILLUMTOGGLE 228
#define SCANCODE_KBDILLUMDOWN 229
#define SCANCODE_KBDILLUMUP 230
#define SCANCODE_SEND 231 /* AC Send */
#define SCANCODE_REPLY 232 /* AC Reply */
#define SCANCODE_FORWARDMAIL 233 /* AC Forward Msg */
#define SCANCODE_SAVE 234 /* AC Save */
#define SCANCODE_DOCUMENTS 235
#define SCANCODE_BATTERY 236
#define SCANCODE_BLUETOOTH 237
#define SCANCODE_WLAN 238
#define SCANCODE_UWB 239
#define SCANCODE_UNKNOWN 240
#define SCANCODE_VIDEO_NEXT 241 /* drive next video source */
#define SCANCODE_VIDEO_PREV 242 /* drive previous video source */
#define SCANCODE_BRIGHTNESS_CYCLE 243 /* brightness up, after max is min */
#define SCANCODE_BRIGHTNESS_AUTO 244 /* Set Auto Brightness: manual brightness control is off, rely on ambient */
#define SCANCODE_BRIGHTNESS_ZERO SCANCODE_BRIGHTNESS_AUTO
#define SCANCODE_DISPLAY_OFF 245 /* display device to off state */
#define SCANCODE_WWAN 246 /* Wireless WAN (LTE, UMTS, GSM, etc.) */
#define SCANCODE_WIMAX SCANCODE_WWAN
#define SCANCODE_RFKILL 247 /* Key that controls all radios */
#define SCANCODE_MICMUTE 248 /* Mute / unmute the microphone */
#define SCANCODE_LEFTBUTTON 0x1000
#define SCANCODE_RIGHTBUTTON 0x2000
#define SCANCODE_MIDDLBUTTON 0x4000
/**
* \def KS_LEFTMETA
* \brief This status indicate that left-Meta key was pressed when
* the key or mouse message posted to the window.
*
* \sa key_msgs
*
* Since 4.0.0
*/
#define KS_LEFTMETA 0x00002000
/**
* \def KS_RIGHTMETA
* \brief This status indicate that right-Meta key was pressed when
* the key or mouse message posted to the window.
*
* \sa key_msgs
*
* Since 4.0.0
*/
#define KS_RIGHTMETA 0x00001000
/**
* \def KS_META
* \brief This status indicate that either the left-Meta key or the right-Meta key
* was pressed when the key or mouse message posted to the window.
*
* \sa key_msgs
*
* Since 4.0.0
*/
#define KS_META 0x00003000
/**
* \def KS_REPEATED
* \brief This status indicate that the key down message is an
@@ -1528,7 +1742,7 @@ typedef struct _GAL_Rect {
* \def MASK_KS_SHIFTKEYS
* \brief The mask of key status.
*/
#define MASK_KS_SHIFTKEYS 0x00000FFF
#define MASK_KS_SHIFTKEYS 0x0000FFFF
/**
* \def KS_LEFTBUTTON
@@ -1537,7 +1751,7 @@ typedef struct _GAL_Rect {
*
* \sa key_msgs
*/
#define KS_LEFTBUTTON 0x00001000
#define KS_LEFTBUTTON 0x00010000
/**
* \def KS_RIGHTBUTTON
@@ -1546,22 +1760,22 @@ typedef struct _GAL_Rect {
*
* \sa key_msgs
*/
#define KS_RIGHTBUTTON 0x00002000
#define KS_RIGHTBUTTON 0x00020000
/**
* \def KS_MIDDLBUTTON
* \def KS_MIDDLEBUTTON
* \brief This status indicate that middle button was pressed when
* the key or mouse message posted to the window.
*
* \sa key_msgs
*/
#define KS_MIDDLBUTTON 0x00004000
#define KS_MIDDLEBUTTON 0x00040000
/**
* \def MASK_KS_BUTTONS
* \brief The mask of mouse button status.
*/
#define MASK_KS_BUTTONS 0x0000F000
#define MASK_KS_BUTTONS 0x000F0000
/** @} end of key_defs */
@@ -1749,7 +1963,7 @@ typedef struct _GAL_Rect {
#endif
/* Commonly used definitions */
#if !defined(__NOUNIX__) || defined (__ECOS__)
#ifdef HAVE_LIMITS_H
#include <limits.h>
#endif
@@ -1784,12 +1998,10 @@ typedef struct _GAL_Rect {
/** @} end of macros_types */
#ifdef __cplusplus
extern "C" {
#endif
#ifndef HAVE_TIME
typedef unsigned int time_t;
#ifdef HAVE_TIME
#include <time.h>
#else
typedef unsigned long time_t;
struct tm {
int tm_sec; /* seconds [0,61] */
@@ -1804,6 +2016,10 @@ struct tm {
};
#endif
#ifdef __cplusplus
extern "C" {
#endif
#if defined (__THREADX__) && defined (__TARGET_VFANVIL__)
#include "fx_api.h"
#include "tx_api.h"
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file control.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file animation.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file button.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file combobox.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file coolbar.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file ctrlhelper.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file edit.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file gridview.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file iconview.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file listbox.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file listview.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file menubutton.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file monthcal.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file newtoolbar.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file progressbar.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file propsheet.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file scrollbar.h
* \author wangjian
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file scrollview.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file spinbox.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file static.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file textedit.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file trackbar.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file treeview.h
* \author Wei Yongming <vincent@minigui.org>
+163 -21
View File
@@ -1,13 +1,25 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file customial.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2007/06/06
*
*
* \brief This file is the head file for Custom IAL Engine.
*
\verbatim
This file is part of MiniGUI, a mature cross-platform windowing
This file is part of MiniGUI, a mature cross-platform windowing
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
@@ -44,31 +56,155 @@
/*
* $Id: customial.h 11349 2009-03-02 05:00:43Z weiym $
*
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* pSOS, ThreadX, NuCleus, OSE, and Win32.
*/
#ifndef GUI_IAL_CUSTOM_H
#define GUI_IAL_CUSTOM_H
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#define IAL_MOUSE_LEFTBUTTON (1 << 0)
#define IAL_MOUSE_RIGHTBUTTON (1 << 1)
#define IAL_MOUSE_MIDDLEBUTTON (1 << 2)
/* deprecated since 4.0.0
#define IAL_MOUSE_FOURTHBUTTON (1 << 3)
#define IAL_MOUSE_FIFTHBUTTON (1 << 4)
#define IAL_MOUSE_SIXTHBUTTON (1 << 5)
#define IAL_MOUSE_SEVENTHBUTTON (1 << 6)
#define IAL_MOUSE_EIGHTHBUTTON (1 << 7)
#define IAL_MOUSE_LEFTBUTTON 1
#define IAL_MOUSE_RIGHTBUTTON 2
#define IAL_MOUSE_MIDDLEBUTTON 4
#define IAL_MOUSE_FOURTHBUTTON 8
#define IAL_MOUSE_FIFTHBUTTON 16
#define IAL_MOUSE_SIXTHBUTTON 32
#define IAL_MOUSE_RESETBUTTON 64
#define IAL_MOUSE_SIDEBUTTON IAL_MOUSE_FOURTHBUTTON
#define IAL_MOUSE_EXTRABUTTON IAL_MOUSE_FIFTHBUTTON
#define IAL_MOUSE_FORWARDBUTTON IAL_MOUSE_SIXTHBUTTON
#define IAL_MOUSE_BACKBUTTON IAL_MOUSE_SEVENTHBUTTON
#define IAL_MOUSE_TASKBUTTON IAL_MOUSE_EIGHTHBUTTON
#define IAL_MOUSE_RESETBUTTON IAL_MOUSE_EIGHTHBUTTON
*/
#define IAL_MOUSEEVENT 1
#define IAL_KEYEVENT 2
#define IAL_EVENT_MOUSE (1 << 0)
#define IAL_MOUSEEVENT IAL_EVENT_MOUSE
#define IAL_EVENT_KEY (1 << 1)
#define IAL_KEYEVENT IAL_EVENT_KEY
typedef struct tagINPUT
{
#define IAL_EVENT_EXTRA (1 << 2)
/* The event identifiers, should keep sync with MSG_EXIN_XXX */
#ifndef AXIS_SCROLL_INVALID
#define AXIS_SCROLL_INVALID 0
#define AXIS_SCROLL_VERTICAL 1
#define AXIS_SCROLL_HORIZONTAL 2
#define AXIS_SOURCE_INVALID 0
#define AXIS_SOURCE_WHEEL 1
#define AXIS_SOURCE_FINGER 2
#define AXIS_SOURCE_CONTINUOUS 3
#define AXIS_SOURCE_WHEEL_TILT 4
#endif
#define IAL_EVENT_AXIS 0x0070
#define IAL_EVENT_BUTTONDOWN 0x0071
#define IAL_EVENT_BUTTONUP 0x0072
#define IAL_EVENT_TOUCH_DOWN 0x0073
#define IAL_EVENT_TOUCH_UP 0x0074
#define IAL_EVENT_TOUCH_MOTION 0x0075
#define IAL_EVENT_TOUCH_CANCEL 0x0076
#define IAL_EVENT_TOUCH_FRAME 0x0077
#ifndef SWITCH_INVALID
#define SWITCH_INVALID 0
#define SWITCH_LID 1
#define SWITCH_TABLET_MODE 2
#define SWITCH_STATE_INVALID 0
#define SWITCH_STATE_ON 1
#define SWITCH_STATE_OFF 2
#endif
#define IAL_EVENT_SWITCH_TOGGLE 0x007A
#define IAL_EVENT_GESTURE_SWIPE_BEGIN 0x0080
#define IAL_EVENT_GESTURE_SWIPE_UPDATE 0x0081
#define IAL_EVENT_GESTURE_SWIPE_END 0x0082
#define IAL_EVENT_GESTURE_PINCH_BEGIN 0x0083
#define IAL_EVENT_GESTURE_PINCH_UPDATE 0x0084
#define IAL_EVENT_GESTURE_PINCH_END 0x0085
#ifndef TABLET_TOOL_X
#define TABLET_TOOL_PROXIMITY_STATE_INVALID 0
#define TABLET_TOOL_PROXIMITY_STATE_OUT 1
#define TABLET_TOOL_PROXIMITY_STATE_IN 2
#define TABLET_TOOL_TIP_INVALID 0
#define TABLET_TOOL_TIP_UP 1
#define TABLET_TOOL_TIP_DOWN 2
#define TABLET_BUTTON_STATE_INVALID 0
#define TABLET_BUTTON_STATE_RELEASED 1
#define TABLET_BUTTON_STATE_PRESSED 2
#define TABLET_PAD_RING_SOURCE_UNKNOWN 0
#define TABLET_PAD_RING_SOURCE_FINGER 1
#define TABLET_PAD_STRIP_SOURCE_UNKNOWN 0
#define TABLET_PAD_STRIP_SOURCE_FINGER 1
#define TABLET_TOOL_CHANGED_X (1 << 0)
#define TABLET_TOOL_CHANGED_Y (1 << 1)
#define TABLET_TOOL_CHANGED_PRESSURE (1 << 2)
#define TABLET_TOOL_CHANGED_DISTANCE (1 << 3)
#define TABLET_TOOL_CHANGED_TILT_X (1 << 4)
#define TABLET_TOOL_CHANGED_TILT_Y (1 << 5)
#define TABLET_TOOL_CHANGED_ROTATION (1 << 6)
#define TABLET_TOOL_CHANGED_SLIDER (1 << 7)
#define TABLET_TOOL_CHANGED_SIZE_MAJOR (1 << 8)
#define TABLET_TOOL_CHANGED_SIZE_MINOR (1 << 9)
#define TABLET_TOOL_CHANGED_WHEEL (1 << 10)
#define TABLET_TOOL_X 0
#define TABLET_TOOL_Y 1
#define TABLET_TOOL_PRESSURE 2
#define TABLET_TOOL_DISTANCE 3
#define TABLET_TOOL_TILT_X 4
#define TABLET_TOOL_TILT_Y 5
#define TABLET_TOOL_ROTATION 6
#define TABLET_TOOL_SLIDER 7
#define TABLET_TOOL_SIZE_MAJOR 8
#define TABLET_TOOL_SIZE_MINOR 9
#define TABLET_TOOL_WHEEL 10
#endif
#define IAL_EVENT_TABLET_TOOL_AXIS 0x0090
#define IAL_EVENT_TABLET_TOOL_PROXIMITY 0x0091
#define IAL_EVENT_TABLET_TOOL_TIP 0x0092
#define IAL_EVENT_TABLET_TOOL_BUTTON 0x0093
#define IAL_EVENT_TABLET_PAD_BUTTON 0x0094
#define IAL_EVENT_TABLET_PAD_RING 0x0095
#define IAL_EVENT_TABLET_PAD_STRIP 0x0096
#define IAL_EVENT_USER_BEGIN 0x009A
#define IAL_EVENT_USER_UPDATE 0x009B
#define IAL_EVENT_USER_END 0x009C
#define NR_PACKED_SUB_EVENTS 16
typedef struct _EXTRA_INPUT_EVENT {
int event;
WPARAM wparam;
LPARAM lparam;
// for tablet tool messages
unsigned int params_mask;
WPARAM wparams[NR_PACKED_SUB_EVENTS];
LPARAM lparams[NR_PACKED_SUB_EVENTS];
} EXTRA_INPUT_EVENT;
#define IAL_LEN_MDEV 127
typedef struct tagINPUT {
char* id;
// Initialization and termination
@@ -91,12 +227,18 @@ typedef struct tagINPUT
int (*resume_keyboard) (void);
void (*set_leds) (unsigned int leds);
// Event
int (*wait_event) (int which, int maxfd, fd_set *in, fd_set *out,
// Event loop
int (*wait_event) (int which, int maxfd, fd_set *in, fd_set *out,
fd_set *except, struct timeval *timeout);
char mdev [MAX_PATH + 1];
}INPUT;
// New wait event method for getting extra input events; since 4.0.0
int (*wait_event_ex) (int maxfd, fd_set *in, fd_set *out,
fd_set *except, struct timeval *timeout, EXTRA_INPUT_EVENT* extra);
} INPUT;
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#ifdef _MGIAL_CUSTOM
extern BOOL InitCustomInput (INPUT* input, const char* mdev, const char* mtype);
+42 -6
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/*
* \file dti.c
* \author Wei Yongming <vincent@minigui.org>
@@ -5,13 +17,37 @@
*
\verbatim
Copyright (C) 2002-2018 FMSoft
Copyright (C) 1999-2002 Wei Yongming.
All rights reserved by Feynman Software.
This file is part of MiniGUI, a mature cross-platform windowing
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
This file is part of MiniGUI, a compact cross-platform Graphics
User Interface (GUI) support system for real-time embedded systems.
Copyright (C) 2002~2018, Beijing FMSoft Technologies Co., Ltd.
Copyright (C) 1998~2002, WEI Yongming
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Or,
As this program is a library, any link to this program must follow
GNU General Public License version 3 (GPLv3). If you cannot accept
GPLv3, you need to be licensed from FMSoft.
If you have got a commercial license of this program, please use it
under the terms and conditions of the commercial license.
For more information about the commercial license, please refer to
<http://www.minigui.com/en/about/licensing-policy/>.
\endverbatim
*/
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file endianrw.h
* \author Wei Yongming <vincent@minigui.org>
+473
View File
@@ -0,0 +1,473 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file exstubs.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2019/04/07
*
* \brief This file is the header for NEWGAL/IAL engines which should be
* implemented by an external module.
*
\verbatim
This file is part of MiniGUI, a mature cross-platform windowing
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
Copyright (C) 2007~2018, Beijing FMSoft Technologies Co., Ltd.
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Or,
As this program is a library, any link to this program must follow
GNU General Public License version 3 (GPLv3). If you cannot accept
GPLv3, you need to be licensed from FMSoft.
If you have got a commercial license of this program, please use it
under the terms and conditions of the commercial license.
For more information about the commercial license, please refer to
<http://www.minigui.com/en/about/licensing-policy/>.
\endverbatim
*/
/*
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* pSOS, ThreadX, NuCleus, OSE, and Win32.
*/
#ifndef GUI_EXSTUBS_H
#define GUI_EXSTUBS_H
/**
* \defgroup external_stubs External Stubs
*
* The stubs (callbacks) you need to implement for external target.
*
* @{
*/
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#ifdef _MGGAL_DRI
#include <stdint.h>
/**
* \defgroup external_stubs_dri External Stubs for DRI sub driver
*
* @{
*/
/**
* The struct type represents the DRI sub driver.
* The concrete struct should be defined by the driver.
*/
struct _DriDriver;
typedef struct _DriDriver DriDriver;
/**
* The struct type represents the bufffer can be used by
* MiniGUI NEWGAL engine for hardware surface.
*/
typedef struct _DriSurfaceBuffer {
uint32_t buff_id;
uint32_t width;
uint32_t height;
uint32_t pitch;
uint32_t drm_format;
uint16_t bpp:8;
uint16_t cpp:8;
uint8_t* pixels;
} DriSurfaceBuffer;
/**
* The color logic operations.
*/
enum DriColorLogicOp {
COLOR_LOGICOP_CLEAR = 0,
COLOR_LOGICOP_NOR = 1,
COLOR_LOGICOP_AND_INVERTED = 2,
COLOR_LOGICOP_COPY_INVERTED = 3,
COLOR_LOGICOP_AND_REVERSE = 4,
COLOR_LOGICOP_INVERT = 5,
COLOR_LOGICOP_XOR = 6,
COLOR_LOGICOP_NAND = 7,
COLOR_LOGICOP_AND = 8,
COLOR_LOGICOP_EQUIV = 9,
COLOR_LOGICOP_NOOP = 10,
COLOR_LOGICOP_OR_INVERTED = 11,
COLOR_LOGICOP_COPY = 12,
COLOR_LOGICOP_OR_REVERSE = 13,
COLOR_LOGICOP_OR = 14,
COLOR_LOGICOP_SET = 15
};
/**
* The struct type defines the operations for a DRI driver.
*/
typedef struct _DriDriverOps {
/**
* This operation creates the DriDriver object.
*
* \note The driver must implement this operation.
*/
DriDriver* (*create_driver) (int device_fd);
/**
* This operation destroies the DriDriver object.
*
* \note The driver must implement this operation.
*/
void (*destroy_driver) (DriDriver *driver);
/**
* This operation flushs the batch buffer of the driver or the hardware cache.
*
* \note This operation can be NULL.
*/
void (* flush_driver) (DriDriver *driver);
/**
* This operation creates a buffer with the specified pixel format,
* width, and height. If succeed, a valid (not zero) buffer identifier
* and the picth (row stride in bytes) will be returned.
* If failed, it returns 0.
*
* \note The driver must implement this operation.
*/
uint32_t (* create_buffer) (DriDriver *driver,
uint32_t drm_format,
unsigned int width, unsigned int height,
unsigned int *pitch);
BOOL (* fetch_buffer) (DriDriver *driver,
uint32_t buffer_id,
unsigned int *width, unsigned int *height,
unsigned int *pitch);
/**
* This operation maps the buffer into the current process's virtual memory
* space, and returns the virtual address. If failed, it returns NULL.
*
* \note The driver must implement this operation.
*/
DriSurfaceBuffer* (* map_buffer) (DriDriver *driver,
uint32_t buffer_id);
/**
* This operation un-maps a buffer.
*
* \note The driver must implement this operation.
*/
void (* unmap_buffer) (DriDriver *driver, DriSurfaceBuffer* buffer);
/**
* This operation destroies a buffer.
*
* \note The driver must implement this operation.
*/
void (* destroy_buffer) (DriDriver *driver, uint32_t buffer_id);
/**
* This operation clears the specific rectangle area of a buffer
* with the specific pixel value. If succeed, it returns 0.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated clear operation.
*/
int (* clear_buffer) (DriDriver *driver,
DriSurfaceBuffer* dst_buf, const GAL_Rect* rc, uint32_t pixel_value);
/**
* This operation checks whether a hardware accelerated blit
* can be done between the source buffer and the destination buffer.
* If succeed, it returns 0.
*
* \note If this operation is set as NULL, it will be supposed that
* the driver does not support any hardware accelerated blit operation.
*/
int (* check_blit) (DriDriver *driver,
DriSurfaceBuffer* src_buf, DriSurfaceBuffer* dst_buf);
/**
* This operation copies bits from a source buffer to a destination buffer.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated copy blit.
*/
int (* copy_blit) (DriDriver *driver,
DriSurfaceBuffer* src_buf, const GAL_Rect* src_rc,
DriSurfaceBuffer* dst_buf, const GAL_Rect* dst_rc,
enum DriColorLogicOp logic_op);
/**
* This operation blits pixles from a source buffer with the source alpha value
* specified to a destination buffer.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated blit with alpha.
*/
int (* alpha_blit) (DriDriver *driver,
DriSurfaceBuffer* src_buf, const GAL_Rect* src_rc,
DriSurfaceBuffer* dst_buf, const GAL_Rect* dst_rc, uint8_t alpha);
/**
* This operation blits pixles from a source buffer to a destination buffer,
* but skipping the pixel value specified by \a color_key.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated blit with color key.
*/
int (* key_blit) (DriDriver *driver,
DriSurfaceBuffer* src_buf, const GAL_Rect* src_rc,
DriSurfaceBuffer* dst_buf, const GAL_Rect* dst_rc, uint32_t color_key);
/**
* This operation blits pixles from a source buffer with the source alpha value
* specified to a destination buffer, but skipping the pixel value specified.
*
* \note If this operation is set as NULL, the driver does not support
* hardware accelerated blit with alpha and color key.
*/
int (* alpha_key_blit) (DriDriver *driver,
DriSurfaceBuffer* src_buf, const GAL_Rect* src_rc,
DriSurfaceBuffer* dst_buf, const GAL_Rect* dst_rc,
uint8_t alpha, uint32_t color_key);
} DriDriverOps;
/** Implement this stub to return the DRI driver operations */
DriDriverOps* __dri_ex_driver_get (const char* driver_name);
/** @} end of external_stubs_dri */
#endif /* _MGGAL_DRI */
#ifdef _MGGAL_COMMLCD
/**
* \defgroup external_stubs_commlcd External Stubs for CommLCD NEWGAL Engine
*
* The external stubs for COMMLCD NEWGAL engine.
*
* @{
*/
/* The pixel format defined by depth */
#define COMMLCD_PSEUDO_RGB332 1
#define COMMLCD_TRUE_RGB555 2
#define COMMLCD_TRUE_RGB565 3
#define COMMLCD_TRUE_RGB888 4
#define COMMLCD_TRUE_RGB0888 5
#define COMMLCD_TRUE_ARGB1555 6
#define COMMLCD_TRUE_ARGB8888 7
#define COMMLCD_TRUE_ABRG8888 8
#define COMMLCD_UPDATE_NONE 0
#define COMMLCD_UPDATE_SYNC 1
#define COMMLCD_UPDATE_ASYNC 2
/**
* The structue represented the screen information of CommmLCD engine.
*/
struct commlcd_info {
/** The vertical resolution of the screen. */
int height;
/** The horizontal resolution of the screen. */
int width;
/** The length of one scan line in bytes. */
int pitch;
/** The color depth (bits-per-pixel). */
int bpp;
/**
* The pixel type, can be one of the following values:
* - COMMLCD_PSEUDO_RGB332
* - COMMLCD_TRUE_RGB555
* - COMMLCD_TRUE_RGB565
* - COMMLCD_TRUE_RGB888
* - COMMLCD_TRUE_RGB0888
* - COMMLCD_TRUE_ARGB1555
* - COMMLCD_TRUE_ARGB8888
* - COMMLCD_TRUE_ABRG8888
*/
int type;
/**
* The update method, can be one of the following values:
* - COMMLCD_UPDATE_NONE\n
* No update method.
* - COMMLCD_UPDATE_SYNC
* The update method should be called synchronously.
* - COMMLCD_UPDATE_ASYNC
* The update method should be called asynchronously.
*/
int update_method;
/**
* The pointer to the frame buffer of the screen.
*/
Uint8* fb;
};
/**
* Implement this stub to initialize the CommLCD engine.
* Return 0 for success.
*/
int __commlcd_drv_init (void);
/**
* Implement this stub to initialize the CommLCD engine.
*
* \param li The pointer to struct commlcd_info. This structure
* will be used to return the LCD surface information.
* \param width The desired horizontal resolution of the screen.
* \param height The desired vertical resolution of the screen.
* \param depth The desired depth of the screen.
*
* Return 0 for success, otherwise for failure.
*/
int __commlcd_drv_getinfo (struct commlcd_info *li,
int width, int height, int depth);
/**
* Implement this stub to release (destroy) the CommLCD engine.
*
* Return 0 for success, otherwise for failure.
*/
int __commlcd_drv_release (void);
/**
* Implement this stub to set the pallete when the pixel type
* is COMMLCD_PSEUDO_RGB332.
*
* \param firstcolor
* The index value of the first entry of the pallete.
* \param ncolors
* The number of entries of the pallete.
* \param colors
* The array of the colors for each entries in the pallete.
*
* Return 0 for success, otherwise for failure.
*/
int __commlcd_drv_setclut (int firstcolor, int ncolors, GAL_Color *colors);
/**
* Implement this stub to update the screen.
*
* \param rc_dirty The rectangle contains the dirty region.
*
* Return 0 for success, otherwise for failure.
*/
int __commlcd_drv_update (const RECT* rc_dirty);
/** @} end of external_stubs_commlcd */
#endif /* _MGGAL_COMMLCD */
#ifdef _MGIAL_COMM
/**
* \defgroup external_stubs_commial External Stubs for COMM IAL Engine
*
* The external stubs for COMM IAL engine
*
* @{
*/
#define COMM_MOUSEINPUT 0x01
#define COMM_KBINPUT 0x02
#define COMM_MOUSELBUTTON 0x01
#define COMM_MOUSERBUTTON 0x04
/**
* Implement this stub to initialize the COMM IAL engine.
* Return 0 for success, otherwise for failure.
*/
int __comminput_init (void);
/**
* Implement this stub to return the mouse event data.
* The implementation should return the position of mouse or touch,
* and the button status through the pointers \a x, \a y, and \a button.
* The position should be in absolute coordinates, and the button
* will have \a COMM_MOUSELBUTTON set if left button was pressed,
* and \a COMM_MOUSERBUTTON set if right button was pressed.
*
* Return 0 for success, otherwise for failure.
*/
int __comminput_ts_getdata (short *x, short *y, short *button);
/**
* Implement this stub to return the keyboard event data.
* The implementation should return the key scancode pressed or released
* through the pointer \a key, and the pressed or released status of the
* key through \a status.
*
* Return 0 for success, otherwise for failure.
*/
int __comminput_kb_getdata (short *key, short *status);
/**
* Implement this stub to wait for an event.
*
* \retval 0
* The timeout period expires.
* \retval COMM_MOUSEINPUT
* There is an mouse moved, button pressed, or button released event.
* \retval COMM_KBINPUT
* There is a key pressed or released event.
* \retval others
* Failed.
*/
int __comminput_wait_for_input (struct timeval *timeout);
/**
* Implement this stub to de-initialize the COMM IAL engine.
*/
void __comminput_deinit (void);
/** @} end of external_stubs_commial */
#endif /* _MGIAL_COMM */
#ifdef __cplusplus
}
#endif /* __cplusplus */
/** @} end of external_stubs */
#endif /* GUI_EXSTUBS_H */
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file fixedmath.h
* \author Wei Yongming <vincent@minigui.org>
+886 -529
View File
File diff suppressed because it is too large Load Diff
+267 -191
View File
File diff suppressed because it is too large Load Diff
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file nucleus_pthread.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/*
* \file nucleus_semaphore.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/*
* \file ose_semaphore.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/*
Default header file for malloc-2.7.2, written by Doug Lea
and released to the public domain. Use, modify, and redistribute
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file own_stdio.h
* \author Wei Yongming <vincent@minigui.org>
+12
View File
@@ -1,3 +1,15 @@
///////////////////////////////////////////////////////////////////////////////
//
// IMPORTANT NOTICE
//
// The following open source license statement does not apply to any
// entity in the Exception List published by FMSoft.
//
// For more information, please visit:
//
// https://www.fmsoft.cn/exception-list
//
//////////////////////////////////////////////////////////////////////////////
/**
* \file psos.h
* \author Wei Yongming <vincent@minigui.org>

Some files were not shown because too many files have changed in this diff Show More