Compare commits

..
29 Commits
Author SHA1 Message Date
Vincent Wei 6d287f72e3 change default exdriver for DRM engine: libhidrmdrivers-0.2.so.0 2020-03-27 16:46:20 +08:00
Vincent Wei bbac3b1796 fix compilation errors 2020-03-27 16:44:14 +08:00
Vincent Wei e25fbb39d0 for clients under MiniGUI-Processes, use the video information in shared resource segment to initialize the video 2020-03-27 16:28:30 +08:00
Vincent Wei 1b42c853ba change version to 4.0.7 2020-03-25 15:32:27 +08:00
Vincent Wei a932bc798e call EmptyClipRgn for the temporary clipping region 2020-03-25 15:32:16 +08:00
Vincent Wei 713fd0ccb8 reset olddownkey to zero when got a KEYUP event 2020-03-25 15:31:49 +08:00
Vincent Wei 1a63b30d32 use 0x01UL for shift 2020-03-25 15:31:31 +08:00
Vincent Wei 7ba6246dd1 fix typos 2020-03-25 15:31:14 +08:00
Vincent Wei 190b2fea97 release notes for 4.0.7 2020-03-22 13:21:56 +08:00
Vincent Wei f2c2c28e62 map hardware surface as scanout framebuffer for clients 2020-03-22 13:10:22 +08:00
Vincent Wei 837f2987fd remove conditional compilation for request ids 2020-03-22 13:09:42 +08:00
Vincent Wei 7de60f2b94 tune for call JoinLayer first 2020-03-22 13:09:18 +08:00
Vincent Wei 018340f42e check whether using external driver before calling flush_driver 2020-03-22 12:48:04 +08:00
Vincent Wei d4b226d2a5 fix a compilation error 2020-03-21 22:04:33 +08:00
Vincent Wei 699a68a9ac tune constant macros 2020-03-21 21:59:12 +08:00
Vincent Wei 5a6705d8bc copy chagnes from 5.0.0 to enhance DRM engine to support PROCS runmode 2020-03-21 21:30:31 +08:00
Vincent Wei e7cc2f1e35 change version to 4.0.7; DRM engine now support procs runmode 2020-03-21 21:29:44 +08:00
Vincent Wei 03b1dd9042 change version to 4.0.6 2020-03-12 11:16:59 +08:00
Vincent Wei 7651fbda35 handling mdev in INPUT structure 2020-03-12 11:15:59 +08:00
Vincent Wei 6927a22507 cleanup 2020-03-12 11:15:31 +08:00
Vincent Wei c640565f3b fix conditional compilation errors. 2020-03-12 11:15:17 +08:00
Vincent Wei c720b2a9ca Handle middle mouse button in Standalone and Processes runtime modes. 2020-03-12 11:14:40 +08:00
Vincent Wei 8b24b1243b bugfixing: Bad checking pci_accel_driver in FBCON engine 2020-03-12 11:14:04 +08:00
Vincent Wei d8b2895527 bugfixing: Bad checking cursor width and height in LoadCursorFromMem 2020-03-12 11:13:39 +08:00
Vincent Wei 2a4ead5e0f Call ThrowAwayMessages when failed to create a main window. 2020-03-12 11:13:20 +08:00
Vincent Wei 6f15548dc4 bugfixing: Bad handling of backspace character in SLEdit control. 2020-03-12 11:12:58 +08:00
Vincent Wei ef9048c582 restore mdev field in INPUT structure 2020-03-12 11:12:21 +08:00
Vincent Wei da15a1dbd5 change version to 4.0.6; make fbcon, console, imps2, textmode enabled by default 2020-03-12 11:11:55 +08:00
Vincent Wei 32aad95e7b notes for version 4.0.6 2020-03-12 11:10:27 +08:00
1086 changed files with 491811 additions and 514064 deletions
+1 -3
View File
@@ -4,8 +4,6 @@
*.al
*.a
*.so
\#
am--include-marker
Makefile
Makefile.in
.deps/
@@ -25,8 +23,8 @@ Makefile.in
/*config.h
/*config.h.in
/*config.h.in~
/src/font/utils/emoji/
/src/font/utils/ucd/
/src/sysres/font_list
/src/sysres/license/dat_files/
/configure~
+50793 -50793
View File
File diff suppressed because it is too large Load Diff
+196 -196
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+99451 -99451
View File
File diff suppressed because it is too large Load Diff
+99017 -99017
View File
File diff suppressed because it is too large Load Diff
+10509 -10509
View File
File diff suppressed because it is too large Load Diff
+16 -16
View File
@@ -1,4 +1,4 @@
/*
/*
** $Id: sample.c,v 1.38 2009-01-15 07:56:45 houhuihua Exp $
**
** sample.c: Sample program for komoxo scripteasy font.
@@ -35,7 +35,7 @@ static void make_welcome_text (void)
SetRect (&welcome_rc, 10, 20, g_rcScr.right - 10, g_rcScr.bottom / 1.5 - 10);
SetRect (&msg_rc, 10, welcome_rc.bottom + 10, g_rcScr.right - 10, g_rcScr.bottom - 20);
if (strcmp (sys_charset, FONT_CHARSET_GB2312_0) == 0
if (strcmp (sys_charset, FONT_CHARSET_GB2312_0) == 0
|| strcmp (sys_charset, FONT_CHARSET_GBK) == 0) {
format = "昨天,市工商局局长张志宽在市工商局工作会上透露,本市工商系统今年将推出一系列促进经济发展、保护消费者权益的监管措施。其中,将会把B2B交易平台中的网店、专业门户网站和综合门户网站中的经营主体纳入监控,重点监控网上传销、无照经营、售假和网上欺诈等4种行为。张志宽说,2008年网上违法情况主要表现在虚假宣传、网上欺诈、销售假冒产品等。针对这些违法行为,今年本市将把B2B交易平台上的网店、专业门户网站和综合门户网站中的经营主体信息,全部纳入监控。其中,网上传销、无照经营、销售假冒伪劣商品和网上欺诈等4种行为,将成为打击的重点,工商将研究推出新的监管手段。据了解,目前国务院已经将网上交易监管交由国家工重点打击无照经营商总局负责,工商总局正在研究监管意见。本市工商局将根据工商总局的监管意见,相应地完善监管制度。\
\nA proprietary protocol VOIP system built using Peer-to-peer (P2P) techniques.Free for non commercial use when using softphones (PC to PC).Offers toll access to PSTN via SkypeOut and SkypeIn.\nFrom the company that created KaZaA Licenses the Global IP Sound VoiceEngine suite of codecs and related software including their wideband codecs (double the width of regular pstn.) If you find yourself asking, 'why does Skype sound so good?', the answer is primarily this wideband ability.";
@@ -88,12 +88,12 @@ static int HelloWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam)
break;
case MSG_TIMER:
sprintf (msg_text, "Timer expired, current tick count: %ul.",
sprintf (msg_text, "Timer expired, current tick count: %ul.",
GetTickCount ());
//InvalidateRect (hWnd, &msg_rc, TRUE);
InvalidateRect (hWnd, NULL, TRUE);
break;
case MSG_LBUTTONDOWN:
strcpy (msg_text, "The left button pressed.");
InvalidateRect (hWnd, &msg_rc, TRUE);
@@ -119,23 +119,23 @@ static int HelloWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam)
PLOGFONT logfont;
PLOGFONT bklogfont;
#ifdef UTF_8
logfont = CreateLogFont("sef",
"fzxhgb_yh",
"UTF-8",
logfont = CreateLogFont("sef",
"fzxhgb_yh",
"UTF-8",
FONT_WEIGHT_BOOK,
FONT_SLANT_ROMAN,
0,
FONT_SLANT_ROMAN,
0,
0,
FONT_UNDERLINE_NONE,
FONT_STRUCKOUT_NONE,
16, 0);
#else
logfont = CreateLogFont("sef",
"fzxhgb_yh",
logfont = CreateLogFont("sef",
"fzxhgb_yh",
"GB2312",
FONT_WEIGHT_BOOK,
FONT_SLANT_ROMAN,
0,
FONT_SLANT_ROMAN,
0,
0,
FONT_UNDERLINE_NONE,
FONT_STRUCKOUT_NONE,
@@ -166,7 +166,7 @@ static int HelloWinProc(HWND hWnd, int message, WPARAM wParam, LPARAM lParam)
last_key = wParam;
last_key_count = 1;
}
sprintf (msg_text, "The %d %skey pressed %d times",
sprintf (msg_text, "The %d %skey pressed %d times",
wParam, syskey, last_key_count);
InvalidateRect (hWnd, &msg_rc, TRUE);
return 0;
@@ -210,9 +210,9 @@ int MiniGUIMain (int argc, const char* argv[])
CreateInfo.iBkColor = COLOR_lightwhite;
CreateInfo.dwAddData = 0;
CreateInfo.hHosting = HWND_DESKTOP;
hMainWnd = CreateMainWindow (&CreateInfo);
if (hMainWnd == HWND_INVALID)
return -1;
+341 -341
View File
File diff suppressed because it is too large Load Diff
+78 -176
View File
File diff suppressed because it is too large Load Diff
+78 -175
View File
File diff suppressed because it is too large Load Diff
+78 -175
View File
File diff suppressed because it is too large Load Diff
+2 -2
View File
@@ -1,6 +1,6 @@
MAJOR_VERSION = 5
MAJOR_VERSION = 4
MINOR_VERSION = 0
MICRO_VERSION = 0
MICRO_VERSION = 4
EXTRAVERSION =
MINIGUI_RELEASE=$(MAJOR_VERSION).$(MINOR_VERSION).$(MICRO_VERSION)$(EXTRAVERSION)
+116 -344
View File
File diff suppressed because it is too large Load Diff
+587 -917
View File
File diff suppressed because it is too large Load Diff
+5 -13
View File
@@ -1,16 +1,8 @@
Version 5.2.0 (2023/09/30)
Version 4.0.7 (2020/03/30)
This is a minor enhancement and bugfix release of MiniGUI 5.2.x, the stable version.
This release needs the following packages:
Other packages for MiniGUI resource, tools, components, and samples:
- GVFB: `gvfb-1.2.5.tar.gz`
- The resource package: `minigui-res-5.0.6.tar.gz`
- mGUtils component: `libmgutils-1.5.0.tar.gz`
- mGPlus component: `libmgplus-1.5.0.tar.gz`
- mGEff component: `libmgeff-1.5.0.tar.gz`
- mGNCS component: `libmgncs-1.5.0.tar.gz`
- mGNCS4Touch component: `libmgncs4touch-1.5.0.tar.gz`
- The test cases package: `mg-tests-5.0.0.tar.gz`
- The sample package: `mg-samples-5.0.0.tar.gz`
- The resource package: `minigui-res-4.0.0.tar.gz`
- The sample package: `mg-samples-4.0.1.tar.gz`
- The test cases package: `mg-tests-4.0.7.tar.gz`
-44
View File
@@ -1,44 +0,0 @@
#!/bin/sh
rm config.cache config.status -f
./configure \
--disable-shared \
--enable-static \
--with-osname=freertos \
--with-targetname=external \
--with-runmode=sa \
--enable-mgslicefallback \
--disable-videopcxvfb \
--disable-videoqvfb \
--disable-videodrm \
--disable-videofbcon \
--enable-videocommlcd \
--enable-dummyial \
--disable-consoleial \
--disable-libinputial \
--enable-commial \
--disable-consoleimps2 \
--disable-mousecalibrate \
--enable-incoreres \
--disable-cursor \
--disable-clipboard \
--disable-adv2dapi \
--disable-savebitmap \
--disable-savescreen \
--disable-dblclk \
--disable-splash \
--disable-latin9support \
--disable-fullunicode \
--disable-rbfsupport \
--disable-vbfsupport \
--disable-upfsupport \
--disable-qpfsupport \
--disable-ttfsupport \
--disable-complexscripts \
--disable-ttfcache \
--disable-jpgsupport \
--disable-pngsupport \
--disable-flatlf \
--disable-textmode \
--disable-shmopen
-41
View File
@@ -1,41 +0,0 @@
#!/bin/sh
rm config.cache config.status -f
./configure \
--disable-shared \
--enable-static \
--with-osname=linux \
--with-targetname=external \
--with-runmode=sa \
--enable-mgslicefallback \
--disable-videopcxvfb \
--disable-videoqvfb \
--disable-videodrm \
--disable-videofbcon \
--enable-videocommlcd \
--enable-dummyial \
--disable-consoleial \
--disable-libinputial \
--enable-commial \
--disable-consoleimps2 \
--disable-mousecalibrate \
--enable-incoreres \
--disable-cursor \
--disable-savebitmap \
--disable-savescreen \
--disable-dblclk \
--disable-splash \
--disable-latin9support \
--disable-fullunicode \
--disable-rbfsupport \
--disable-vbfsupport \
--disable-upfsupport \
--disable-qpfsupport \
--disable-ttfsupport \
--disable-complexscripts \
--disable-ttfcache \
--disable-jpgsupport \
--disable-pngsupport \
--disable-flatlf \
--disable-textmode
+3 -3
View File
@@ -130,9 +130,9 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */
/* Define to 1 if you have the ANSI C header files. */
+3 -3
View File
@@ -130,9 +130,9 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */
/* Define to 1 if you have the ANSI C header files. */
+3 -3
View File
@@ -130,9 +130,9 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */
/* Define to 1 if you have the ANSI C header files. */
+1 -1
View File
@@ -366,7 +366,7 @@
/* #undef _MGINCOREFONT_VGAS */
/* Define if include in-core font: 12x12 RBF for GB2312 */
#define _MGINCORERBF_GB12 1
#define _MGINCORERBF_GB12 1
/* Define if include in-core font: 16x16 RBF for GB2312 */
/* #undef _MGINCORERBF_GB16 */
+1 -1
View File
@@ -269,7 +269,7 @@
/*#define _MGHAVE_MOUSECALIBRATE 1*/
/* Define if include skin support */
#define _EXT_SKIN 1
#define _EXT_SKIN 1
/* Define if include 16BPP FB subdriver */
/* #undef _MGFONT_FBLIN16 */
+1 -1
View File
@@ -377,7 +377,7 @@
/* #undef _MGINCOREFONT_VGAS */
/* Define if include in-core font: 12x12 RBF for GB2312 */
#define _MGINCORERBF_GB12 1
#define _MGINCORERBF_GB12 1
/* Define if include in-core font: 16x16 RBF for GB2312 */
#define _MGINCORERBF_GB16 1
+1 -1
View File
@@ -377,7 +377,7 @@
/* #undef _MGINCOREFONT_VGAS */
/* Define if include in-core font: 12x12 RBF for GB2312 */
#define _MGINCORERBF_GB12 1
#define _MGINCORERBF_GB12 1
/* Define if include in-core font: 16x16 RBF for GB2312 */
#define _MGINCORERBF_GB16 1
+3 -3
View File
@@ -156,7 +156,7 @@
/* Define if include the automatic IAL engine */
//#define _MGIAL_AUTO 1
/* Define if include the COMM input engine */
#define _MGIAL_COMM 1
#define _MGIAL_COMM 1
/* Define if support BIG5 charset */
/* #undef _MGCHARSET_BIG5 */
@@ -259,11 +259,11 @@
/* Define if include full gif support */
#define _MGHAVE_MOUSECALIBRATE 1
#define _EXT_FULLGIF 1
#define _EXT_FULLGIF 1
#define _MGCTRL_GRIDVIEW 1
#define _MGCTRL_ICONVIEW 1
/* Define if include skin support */
#define _EXT_SKIN 1
#define _EXT_SKIN 1
/* Define if include 16BPP FB subdriver */
/* #undef _MGFONT_FBLIN16 */
+4 -4
View File
@@ -156,7 +156,7 @@
/* Define if include the automatic IAL engine */
#define _MGIAL_AUTO 1
/* Define if include the COMM input engine */
#define _MGIAL_COMM 1
#define _MGIAL_COMM 1
/* Define if support BIG5 charset */
/* #undef _MGCHARSET_BIG5 */
@@ -259,11 +259,11 @@
/* Define if include full gif support */
#define _MGHAVE_MOUSECALIBRATE 1
#define _EXT_FULLGIF 1
#define _EXT_FULLGIF 1
#define _MGCTRL_GRIDVIEW 1
#define _MGCTRL_ICONVIEW 1
/* Define if include skin support */
#define _EXT_SKIN 1
#define _EXT_SKIN 1
/* Define if include 16BPP FB subdriver */
/* #undef _MGFONT_FBLIN16 */
@@ -573,7 +573,7 @@
/* #define _MGIAL_UCOSII 1 */
/* Define if support UNICODE */
#define _MGCHARSET_UNICODE 1
#define _MGCHARSET_UNICODE 1
/* Define if use own implementation of malloc functions */
/* #define _MGUSE_OWN_MALLOC 1 */
-36
View File
@@ -1,36 +0,0 @@
# set your own targaet_os
TARGET_OS=freertos
##################################################
# set your compile tool #
CC=arm-linux-gnueabihf-gcc
CXX=arm-linux-gnueabihf-g++
CPP=arm-linux-gnueabihf-g++
AR=arm-linux-gnueabihf-ar
AS=arm-linux-gnueabihf-as
RANLIB=arm-linux-gnueabihf-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
LDFLAGS+=
##################################################
+5 -5
View File
@@ -91,12 +91,12 @@
/* Define to 1 if you have the `tmpfile' function. */
#define HAVE_TMPFILE 1
/*#define HAVE_MODE_T 1*/
/*#define HAVE_MODE_T 1*/
/* Define to 1 if you have the `mktime' function. */
#define HAVE_MKTIME 1
/* Define to 1 if you have the `time' function. */
#define HAVE_TIME 1
#define HAVE_TIME 1
/* Define to 1 if you have the `localtime' function. */
#define HAVE_LOCALTIME 1
@@ -140,9 +140,9 @@
/* If using the C implementation of alloca, define if you know the
direction of stack growth for your system; otherwise it will be
automatically deduced at run-time.
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
STACK_DIRECTION > 0 => grows toward higher addresses
STACK_DIRECTION < 0 => grows toward lower addresses
STACK_DIRECTION = 0 => direction of growth unknown */
/* #undef STACK_DIRECTION */
/* Define to 1 if you have the ANSI C header files. */
+1 -1
View File
@@ -24,5 +24,5 @@
#pragma warning(disable:4101) /* unreferenced local variable */
#pragma warning(error:4150)
#pragma warning(disable:4244) /* No possible loss of data warnings */
#pragma warning(disable:4244) /* No possible loss of data warnings */
#pragma warning(disable:4305) /* No truncation from int to char warnings */
+9 -9
View File
@@ -1,15 +1,15 @@
#! /bin/bash
keyword_list="
__mg_license_create
__mg_license_destroy
__mg_screensaver_create
__mg_screensaver_destroy
__mg_splash_draw_framework
__mg_splash_progress
__mg_splash_delay
__mg_license_on_input
__mg_license_on_timeout
license_create
license_destroy
screensaver_create
screensaver_destroy
splash_draw_framework
splash_progress
splash_delay
license_on_input
license_on_timeout
license_get_processor_id
#\s*include.*license\/c_files.*
#\s*include.*license\.h
-181
View File
@@ -1,181 +0,0 @@
#!/bin/bash
tab2space() {
sed -i 's/\t/ /g' `find . -name '*.c'`
sed -i 's/\t/ /g' `find . -name '*.h'`
sed -i 's/\s\+$//g' `find . -name '*.c'`
sed -i 's/\s\+$//g' `find . -name '*.h'`
}
# tab2space
# templates
# sed -i 's/\<AAA\>/__AAA/g' `grep '\<AAA\>' -rl include/ src/`
# sed -i 's/\<AAA\>/__mgAAA/g' `grep '\<AAA\>' -rl include/ src/`
# sed -i 's/\<AAA\>/__gdiAAA/g' `grep '\<AAA\>' -rl include/ src/`
# sed -i 's/\<AAA\>/__mg_AAA/g' `grep '\<AAA\>' -rl include/ src/`
# sed -i 's/\<AAA\>/dbg_AAA/g' `grep '\<AAA\>' -rl include/ src/`
# sed -i 's/\<kernel_alloc_z_order_info\>/__kernel_alloc_z_order_info/g' `grep kernel_alloc_z_order_info -rl include/ src/`
# sed -i 's/\<kernel_free_z_order_info\>/__kernel_free_z_order_info/g' `grep kernel_free_z_order_info -rl include/ src/`
# sed -i 's/\<kernel_change_z_order_mask_rect\>/__kernel_change_z_order_mask_rect/g' `grep kernel_change_z_order_mask_rect -rl include/ src/`
# sed -i 's/\<kernel_get_window_region\>/__kernel_get_window_region/g' `grep kernel_get_window_region -rl include/ src/`
# sed -i 's/\<kernel_get_next_znode\>/__kernel_get_next_znode/g' `grep kernel_get_next_znode -rl include/ src/`
# sed -i 's/\<kernel_get_prev_znode\>/__kernel_get_prev_znode/g' `grep kernel_get_prev_znode -rl include/ src/`
# sed -i 's/\<gui_open_ime_window\>/__gui_open_ime_window/g' `grep gui_open_ime_window -rl include/ src/`
# sed -i 's/\<_begin_fill_bitmap\>/__mg_begin_fill_bitmap/g' `grep _begin_fill_bitmap -rl include/ src/`
# sed -i 's/\<_fill_bitmap_scanline\>/__mg_fill_bitmap_scanline/g' `grep _fill_bitmap_scanline -rl include/ src/`
# sed -i 's/\<_end_fill_bitmap\>/__mg_end_fill_bitmap/g' `grep _end_fill_bitmap -rl include/ src/`
# sed -i 's/\<DumpCtrlClassInfoTable\>/dbg_DumpCtrlClassInfoTable/g' `grep DumpCtrlClassInfoTable -rl include/ src/`
# sed -i 's/\<GetPixelUnderCursor\>/kernel_GetPixelUnderCursor/g' `grep GetPixelUnderCursor -rl include/ src/`
# sed -i 's/\<update_secondary_dc\>/__mg_update_secondary_dc/g' `grep update_secondary_dc -rl include/ src/`
# sed -i 's/\<initialize_scripteasy\>/font_InitializeScripteasy/g' `grep initialize_scripteasy -rl include/ src/`
# sed -i 's/\<uninitialize_scripteasy\>/font_UninitializeScripteasy/g' `grep uninitialize_scripteasy -rl include/ src/`
# sed -i 's/\<free_window_element_data\>/__mg_free_window_element_data/g' `grep free_window_element_data -rl include/ src/`
# sed -i 's/\<append_window_element_data\>/__mg_append_window_element_data/g' `grep append_window_element_data -rl include/ src/`
# sed -i 's/\<set_window_element_data\>/__mg_set_window_element_data/g' `grep set_window_element_data -rl include/ src/`
# sed -i 's/\<__compsor_check_znodes\>/__mg_composite_dirty_znodes/g' `grep __compsor_check_znodes -rl include/ src/`
# sed -i 's/\<mg_linux_tty_init\>/__mg_linux_tty_init/g' `grep mg_linux_tty_init -rl include/ src/`
# sed -i 's/\<mg_linux_tty_enable_vt_switch\>/__mg_linux_tty_enable_vt_switch/g' `grep mg_linux_tty_enable_vt_switch -rl include/ src/`
# sed -i 's/\<mg_linux_tty_disable_vt_switch\>/__mg_linux_tty_disable_vt_switch/g' `grep mg_linux_tty_disable_vt_switch -rl include/ src/`
# sed -i 's/\<mg_linux_tty_switch_vt\>/__mg_linux_tty_switch_vt/g' `grep mg_linux_tty_switch_vt -rl include/ src/`
# sed -i 's/\<mg_linux_tty_fini\>/__mg_linux_tty_fini/g' `grep mg_linux_tty_fini -rl include/ src/`
# sed -i 's/\<DumpMenu\>/dbg_DumpMenu/g' `grep DumpMenu -rl include/ src/`
# sed -i 's/\<sysres_init_inner_resource\>/__sysres_init_inner_resource/g' `grep sysres_init_inner_resource -rl include/ src/`
# sed -i 's/\<sysres_get_system_res_path\>/__sysres_get_system_res_path/g' `grep sysres_get_system_res_path -rl include/ src/`
# sed -i 's/\<_set_pixel_helper\>/_gdi_set_pixel_helper/g' `grep _set_pixel_helper -rl src/`
# sed -i 's/\<err_dump\>/__mg_err_dump/g' `grep err_dump -rl src/`
# sed -i 's/\<err_msg\>/__mg_err_msg/g' `grep err_msg -rl src/`
# sed -i 's/\<err_quit\>/__mg_err_quit/g' `grep err_quit -rl src/`
# sed -i 's/\<err_ret\>/__mg_err_ret/g' `grep err_ret -rl src/`
# sed -i 's/\<err_sys\>/__mg_err_sys/g' `grep err_sys -rl src/`
# sed -i 's/\<mg_dispatch_timer_message\>/__mg_dispatch_timer_message/g' `grep mg_dispatch_timer_message -rl src/`
# sed -i 's/\<mgDeleteObject\>/mg_DeleteObject/g' `grep mgDeleteObject -rl src/`
# sed -i 's/\<init_arabic_kbd_layout\>/__mg_init_arabic_kbd_layout/g' `grep init_arabic_kbd_layout -rl src/`
# sed -i 's/\<init_default_kbd_layout\>/__mg_init_default_kbd_layout/g' `grep init_default_kbd_layout -rl src/`
# sed -i 's/\<init_de_kbd_layout\>/__mg_init_de_kbd_layout/g' `grep init_de_kbd_layout -rl src/`
# sed -i 's/\<init_delatin1_kbd_layout\>/__mg_init_delatin1_kbd_layout/g' `grep init_delatin1_kbd_layout -rl src/`
# sed -i 's/\<init_escp850_kbd_layout\>/__mg_init_escp850_kbd_layout/g' `grep init_escp850_kbd_layout -rl src/`
# sed -i 's/\<init_es_kbd_layout\>/__mg_init_es_kbd_layout/g' `grep init_es_kbd_layout -rl src/`
# sed -i 's/\<init_fr_kbd_layout\>/__mg_init_fr_kbd_layout/g' `grep init_fr_kbd_layout -rl src/`
# sed -i 's/\<init_frpc_kbd_layout\>/__mg_init_frpc_kbd_layout/g' `grep init_frpc_kbd_layout -rl src/`
# sed -i 's/\<init_it_kbd_layout\>/__mg_init_it_kbd_layout/g' `grep init_it_kbd_layout -rl src/`
# sed -i 's/\<init_hebrew_kbd_layout\>/__mg_init_hebrew_kbd_layout/g' `grep init_hebrew_kbd_layout -rl src/`
# sed -i 's/\<InitAutoInput\>/ial_InitAutoInput/g' `grep InitAutoInput -rl src/`
# sed -i 's/\<InitDummyInput\>/ial_InitDummyInput/g' `grep InitDummyInput -rl src/`
# sed -i 's/\<InitLibInput\>/ial_InitLibInput/g' `grep InitLibInput -rl src/`
# sed -i 's/\<InitNetInput\>/ial_InitNetInput/g' `grep InitNetInput -rl src/`
# sed -i 's/\<InitPCXVFBInput\>/ial_InitPCXVFBInput/g' `grep InitPCXVFBInput -rl src/`
# sed -i 's/\<InitRandomInput\>/ial_InitRandomInput/g' `grep InitRandomInput -rl src/`
# sed -i 's/\<InitializeResManager\>/mg_InitResManager/g' `grep InitializeResManager -rl src/`
# sed -i 's/\<InitTextBitmapBuffer\>/gdi_InitTextBitmapBuffer/g' `grep InitTextBitmapBuffer -rl src/`
# sed -i 's/\<clipboard_op\>/__mg_clipboard_op/g' `grep clipboard_op -rl src/`
# sed -i 's/\<mg_miFreeArcCache\>/miFreeArcCache/g' `grep mg_miFreeArcCache -rl src/`
# sed -i 's/\<mgNewObject\>/mgNewObjectEx/g' `grep mgNewObject -rl src/`
# sed -i 's/\<mg_newObject\>/mgNewObject/g' `grep mg_newObject -rl src/`
# sed -i 's/\<mg_remove_timers_by_msg_queue\>/__mg_remove_timers_by_msg_queue/g' `grep mg_remove_timers_by_msg_queue -rl src/`
# sed -i 's/\<mg_DeleteObject\>/mgDeleteObject/g' `grep mg_DeleteObject -rl src/`
# sed -i 's/\<GetMsgQueueThisThread\>/getMsgQueueThisThread/g' `grep GetMsgQueueThisThread -rl src/`
# sed -i 's/\<pMessages\>/pMsgQueue/g' `grep pMessages -rl src/`
# sed -i 's/\<mg_InitMsgQueueThisThread\>/mg_AllocMsgQueueThisThread/g' `grep mg_InitMsgQueueThisThread -rl include/ src/`
# sed -i 's/\<mg_AllocMsgQueueThisThread\>/mg_AllocMsgQueueForThisThread/g' `grep mg_AllocMsgQueueThisThread -rl src/`
# sed -i 's/\<mg_FreeMsgQueueThisThread\>/mg_FreeMsgQueueForThisThread/g' `grep mg_FreeMsgQueueThisThread -rl src/`
# sed -i 's/\<GetMsgQueueThisThread\>/mg_GetMsgQueueForThisThread/g' `grep GetMsgQueueThisThread -rl src/`
# sed -i 's/\<kernel_GetMsgQueue\>/getMsgQueue/g' `grep kernel_GetMsgQueue -rl src/`
# sed -i 's/\<BE_THIS_THREAD\>/isWindowInThisThread/g' `grep BE_THIS_THREAD -rl src/`
# sed -i 's/\<SetMsgQueueTimerFlag\>/setMsgQueueTimerFlag/g' `grep SetMsgQueueTimerFlag -rl src/`
# sed -i 's/\<RemoveMsgQueueTimerFlag\>/removeMsgQueueTimerFlag/g' `grep RemoveMsgQueueTimerFlag -rl src/`
# sed -i 's/\<getMsgQueueByWindowInThisThread\>/getMsgQueueIfWindowInThisThread/g' `grep getMsgQueueByWindowInThisThread -rl include/ src/`
# sed -i 's/\<FirstTimerSlot\>/first_time_slot/g' `grep FirstTimerSlot -rl src/`
# sed -i 's/\<TimerMask\>/expired_timer_mask/g' `grep TimerMask -rl src/`
# sed -i 's/\<first_time_slot\>/first_timer_slot/g' `grep first_time_slot -rl src/`
# sed -i 's/\<__mg_dispatch_timer_message\>/__mg_check_expired_timers/g' `grep __mg_dispatch_timer_message -rl src/`
# sed -i 's/\<4\.2\.0\>/5.0.0/g' `grep '4\.2\.0' -rl include/ src/`
# sed -i 's/\<__mg_check_hook_func\>/____mg_check_hook_event/g' `grep __mg_check_hook_func -rl src/`
# sed -i 's/\<____mg_check_hook_event\>/__mg_check_hook_event/g' `grep ____mg_check_hook_event -rl src/`
# sed -i 's/\<__mg_capture_wnd\>/_captured_wnd/g' `grep __mg_capture_wnd -rl include/ src/`
# sed -i 's/\<_captured_wnd\>/__mg_captured_wnd/g' `grep _captured_wnd -rl include/ src/`
# sed -i 's/\<__mg_check_hook_event\>/__mg_check_hook_func/g' `grep __mg_check_hook_event -rl include/ src/`
# sed -i 's/\<DEF_NR_FIXEDZNODES\>/NR_FIXED_ZNODES/g' `grep DEF_NR_FIXEDZNODES -rl src/`
#sed -i 's/\<ZOF_TYPE_TOPMOST\>/__ZOF_TYPE_HIGHER/g' `grep ZOF_TYPE_TOPMOST -rl include/ src/`
# sed -i 's/\<__ZOF_TYPE_HIGHER\>/ZOF_TYPE_HIGHER/g' `grep __ZOF_TYPE_HIGHER -rl include/ src/`
# sed -i 's/\<SetDesktopTimerFlag\>/AlertDesktopTimerEvent/g' `grep SetDesktopTimerFlag -rl include/ src/`
# sed -i 's/\<__mg_update_timer_count\>/__mg_update_tick_count/g' `grep __mg_update_timer_count -rl include/ src/`
# sed -i 's/\<__mg_timer_counter\>/__mg_tick_counter/g' `grep __mg_timer_counter -rl include/ src/`
# sed -i 's/\<pAdd\>/pSyncMsg/g' `grep '\<pAdd\>' -rl include/ src/`
# sed -i 's/\<isWindowInThisThread\>/getMainWinIfWindowInThisThread/g' `grep '\<isWindowInThisThread\>' -rl include/ src/`
# sed -i 's/\<GetMainVirtWindowById\>/GetHostedById/g' `grep '\<GetMainVirtWindowById\>' -rl include/ src/`
# sed -i 's/\<__mg_os_start_time_ms\>/__mg_os_start_time/g' `grep '\<__mg_os_start_time_ms\>' -rl include/ src/`
# sed -i 's/\<Gets\>/Get/g' `grep '\<Gets\>' -rl include/ src/`
# sed -i 's/\<Sets\>/Set/g' `grep '\<Sets\>' -rl include/ src/`
# sed -i 's/\<Retrieves\>/Retrieve/g' `grep '\<Retrieves\>' -rl include/ src/`
# sed -i 's/\<Determines\>/Determine/g' `grep '\<Determines\>' -rl include/ src/`
# sed -i 's/\<Checks\>/Check/g' `grep '\<Checks\>' -rl include/ src/`
#sed -i 's/\<SetWindowExStyle\>/gui_SetWindowExStyle/g' `grep '\<SetWindowExStyle\>' -rl include/ src/`
#sed -i 's/\<AddNewControlClass\>/gui_AddNewControlClass/g' `grep '\<AddNewControlClass\>' -rl include/ src/`
#sed -i 's/\<SetCtrlClassAddData\>/gui_SetCtrlClassAddData/g' `grep '\<SetCtrlClassAddData\>' -rl include/ src/`
#sed -i 's/\<GetCtrlClassAddData\>/gui_GetCtrlClassAddData/g' `grep '\<GetCtrlClassAddData\>' -rl include/ src/`
# sed -i 's/\<get_valid_dc\>/get_effective_dc/g' `grep '\<get_valid_dc\>' -rl include/ src/`
# sed -i 's/\<release_valid_dc\>/release_effective_dc/g' `grep '\<release_valid_dc\>' -rl include/ src/`
# sed -i 's/\<gui_GetMainWindowPtrOfControl\>/checkAndGetMainWindowPtrOfControl/g' `grep '\<gui_GetMainWindowPtrOfControl\>' -rl include/ src/`
# sed -i 's/\<gui_CheckAndGetMainWindowPtr\>/checkAndGetMainWindowPtrOfMainWin/g' `grep '\<gui_CheckAndGetMainWindowPtr\>' -rl include/ src/`
# sed -i 's/\<GetSubDCInSecondaryDC\>/GetDCInSecondarySurface/g' `grep '\<GetSubDCInSecondaryDC\>' -rl include/ src/`
# sed -i 's/\<checkAndGetMainWindowPtrOfMainWin\>/checkAndGetMainWinIfMainWin/g' `grep '\<checkAndGetMainWindowPtrOfMainWin\>' -rl include/ src/`
# sed -i 's/\<checkAndGetMainWindowPtrOfControl\>/checkAndGetMainWinIfWindow/g' `grep '\<checkAndGetMainWindowPtrOfControl\>' -rl include/ src/`
# sed -i 's/\<mg_GetMsgQueueForThisThread\>/getMsgQueueForThisThread/g' `grep '\<mg_GetMsgQueueForThisThread\>' -rl include/ src/`
# sed -i 's/\<IS_SHAREDFB_SCHEMA\>/IS_SHAREDFB_SCHEMA_PROCS/g' `grep '\<IS_SHAREDFB_SCHEMA\>' -rl include/ src/`
sed -i 's/\<REQID_GETWPSURFACE\>/REQID_GETSHAREDSURFACE/g' `grep '\<REQID_GETWPSURFACE\>' -rl include/ src/`
exit 0
+187 -266
View File
File diff suppressed because it is too large Load Diff
+10 -105
View File
@@ -1,6 +1,6 @@
# This configuration file is for MiniGUI V4.2.x or later
# This configuration file is for MiniGUI V4.0.x or later
#
# Copyright (C) 2002~2020 FMSoft
# Copyright (C) 2002~2019 FMSoft
# Copyright (C) 1998~2002 Wei Yongming.
#
# Web: http://www.minigui.com
@@ -36,55 +36,6 @@ mtype=IMPS2
# Linux IAL engine based on libinput
# ial_engine=libinut
#{{ifdef _MGSCHEMA_COMPOSITING
# Options for compositing schema
[compositing_schema]
# The size of wallpaper pattern surface (the fake screen for clients).
# Optional values: <w>x<h>, full, half, quarter, octant, and empty.
# Default value is empty.
wallpaper_pattern_size=full
# wallpaper_pattern_size=half
# wallpaper_pattern_size=quarter
# wallpaper_pattern_size=octant
# wallpaper_pattern_size=empty
# wallpaper_pattern_size=32x32
# The shared object name of the default compositor. If it is not defined
# or failed to load, MiniGUI will use the built-in fallback compositor.
# The equivalent environment variable: MG_DEF_COMPOSITOR_SO
# def_compositor_so=
#}}
#{{ifdef _MGGAL_SHADOW
[shadow]
real_engine=pc_xvfb
defaultmode=800x600-16bpp
# `cw`: rotating screen clock-wise.
# `ccw`: rotating screen counter clock-wise.
# `hflip`: flipping screen horizontally.
# `vflip`: flipping screen vertically.
rotate_screen=ccw
# Whether the async. update is enabled.
# Use `true` or `yes` for enabled, anything else for disabled.
# Since 5.0.13.
async_update=yes
# The synchronization interval for the asyn. updater (milli-seconds).
# This setting is only valid when `async_update` is enabled and
# the real engine does not provide WaitWBlank method.
# Since 5.0.13.
update_interval=15
# The minimal pixels to use the hardware accelerator.
# If the number of pixels to copy is less than this value,
# MiniGUI will use the software copy routine to update the real screen,
# even if the real device provides a hardware accelerator.
# Since 5.0.13.
min_pixels_using_hwaccl=4096
#}}
#{{ifdef _MGGAL_DRM
[drm]
defaultmode=1024x768-32bpp
@@ -102,40 +53,9 @@ device=/dev/dri/card0
# The default value is 96.
dpi=96
# Whether double buffering is enabled.
# Use `true` or `yes` for enabled, anything else for disabled.
# Note that under compositing schema, double buffering is always enabled.
# Since 5.0.0.
double_buffering=true
# The update interval for the asyn. updater (milli-seconds).
# This setting is only valid when drmWaitVBlank doesn't work correctly.
# Since 5.0.13.
update_interval=15
# The minimal pixels to use the hardware accelerator.
# If the number of pixels to copy is less than this value,
# MiniGUI will use the software copy routine to update the real screen,
# even if the device provides a hardware accelerator.
# Since 5.0.13.
min_pixels_using_hwaccl=4096
# The filename of the shared library for the external driver.
# The equivalent environment variable: MG_GAL_DRM_DRIVER
exdriver=libdrmdrivers.so
#}}
#{{ifdef _MGIAL_SINGLETOUCHKEY
[singletouchkey]
# The touch device; use none to disable touch event.
touch_dev=/dev/input/event0
# The key device; use none to disable key event.
key_dev=none
# The number of keys; only valid if the key device is not `none` and can be opened.
nr_keys=2
# The maps from Linux keycode to MiniGUI scancode; only valid if `nr_keys` > 0.
keycode2scancode0=20,1
keycode2scancode1=50,2
exdriver=libhidrmdrivers-0.2.so.0
#}}
#{{ifdef _MGIAL_LIBINPUT
@@ -147,22 +67,6 @@ seat=seat0
[fbcon]
defaultmode=1024x768-16bpp
dpi=96
# Whether double buffering is enabled (only for threads and standalone runmodes).
# Use `true` or `yes` for enabled, anything else for disabled.
# Note that under compositing schema, double buffering is always enabled.
# Since 5.0.10.
double_buffering=true
# Whether the async. update is enabled.
# Use `true` or `yes` for enabled, anything else for disabled.
# Since 5.0.13.
async_update=yes
# The update interval for the asyn. updater (milli-seconds).
# This setting is only valid when drmWaitVBlank doesn't work correctly.
# Since 5.0.13.
update_interval=15
#}}
#{{ifdef _MGGAL_PCXVFB
@@ -175,6 +79,13 @@ exec_file=/usr/local/bin/gvfb
[rtos_xvfb]
defaultmode=800x600-16bpp
#{{ifdef _MGGAL_SHADOW
[shadow]
real_engine=pc_xvfb
defaultmode=800x600-16bpp
rotate_screen=normal
#}}
#{{ifdef _MGGAL_MLSHADOW
[mlshadow]
real_engine=qvfb
@@ -265,12 +176,6 @@ cursor20=h_select.cur
cursor21=ho_split.cur
cursor22=ve_split.cur
# Under compositing schema, you can specify a PNG file as the cursor.
# You should use a 'hotspotN' key to specify the hotspot coordinates
# of a PNG cursor. For example:
# cursor23=foo.png
# hotspot23=32,32
[resinfo]
respath=/usr/local/share/minigui/res/
+4 -4
View File
@@ -5,11 +5,11 @@
*/
case MSG_ACTIVEMENU:
if (wParam == 2) {
CheckMenuRadioItem ((HMENU)lParam,
IDM_40X15, IDM_CUSTOMIZE,
CheckMenuRadioItem ((HMENU)lParam,
IDM_40X15, IDM_CUSTOMIZE,
pConInfo->termType, MF_BYCOMMAND);
CheckMenuRadioItem ((HMENU)lParam,
IDM_DEFAULT, IDM_BIG5,
CheckMenuRadioItem ((HMENU)lParam,
IDM_DEFAULT, IDM_BIG5,
pConInfo->termCharset, MF_BYCOMMAND);
}
break;
+1 -1
View File
@@ -1,6 +1,6 @@
/*
* This example trys to handle the event when the user presses
* This example trys to handle the event when the user presses
* left button and right button of the mouse at the same time.
*/
LRESULT MyWinProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
+1 -1
View File
@@ -16,6 +16,6 @@ void DrawMyCircle (HDC hdc, int x, int y, int r, gal_pixel pixel)
old_bursh = SetBrushColor (hdc, pixle);
CircleGenerator ((void*)hdc, x, y, r, draw_circle_pixel);
SetBrushColor (hdc, old_brush);
}
+1 -1
View File
@@ -1,4 +1,4 @@
/*
/*
* This program tries to create a new layer named "vcongui" if
* there is no such layer. If there is already a layer named "vcongui",
* this program brings the layer to be the topmost one.
+6 -6
View File
@@ -1,14 +1,14 @@
static LOGFONT *logfont, *logfontgb12, *logfontbig24;
logfont = CreateLogFont (NULL, "SansSerif", "ISO8859-1",
logfont = CreateLogFont (NULL, "SansSerif", "ISO8859-1",
FONT_WEIGHT_REGULAR, FONT_SLANT_ITALIC, FONT_FLIP_NONE,
FONT_OTHER_NIL, FONT_UNDERLINE_NONE, FONT_STRUCKOUT_LINE,
FONT_OTHER_NIL, FONT_UNDERLINE_NONE, FONT_STRUCKOUT_LINE,
16, 0);
logfontgb12 = CreateLogFont (NULL, "song", "GB2312",
logfontgb12 = CreateLogFont (NULL, "song", "GB2312",
FONT_WEIGHT_REGULAR, FONT_SLANT_ROMAN, FONT_FLIP_NONE,
FONT_OTHER_NIL, FONT_UNDERLINE_LINE, FONT_STRUCKOUT_LINE,
FONT_OTHER_NIL, FONT_UNDERLINE_LINE, FONT_STRUCKOUT_LINE,
12, 0);
logfontbig24 = CreateLogFont (NULL, "ming", "BIG5",
logfontbig24 = CreateLogFont (NULL, "ming", "BIG5",
FONT_WEIGHT_REGULAR, FONT_SLANT_ROMAN, FONT_FLIP_NONE,
FONT_OTHER_NIL, FONT_UNDERLINE_LINE, FONT_STRUCKOUT_NONE,
FONT_OTHER_NIL, FONT_UNDERLINE_LINE, FONT_STRUCKOUT_NONE,
24, 0);
+4 -4
View File
@@ -1,14 +1,14 @@
static LOGFONT *logfont, *logfontgb12, *logfontttf;
logfont = CreateLogFontEx (NULL, "SansSerif", "ISO8859-1",
logfont = CreateLogFontEx (NULL, "SansSerif", "ISO8859-1",
FONT_WEIGHT_REGULAR, FONT_SLANT_ITALIC, FONT_FLIP_NONE,
FONT_OTHER_NIL, FONT_DECORATE_NONE, FONT_RENDER_MONO,
FONT_OTHER_NIL, FONT_DECORATE_NONE, FONT_RENDER_MONO,
16, 0);
logfontgb12 = CreateLogFontEx (NULL, "song", "GB2312",
logfontgb12 = CreateLogFontEx (NULL, "song", "GB2312",
FONT_WEIGHT_REGULAR, FONT_SLANT_ROMAN, FONT_FLIP_NONE,
FONT_OTHER_NIL, FONT_DECORATE_NONE, FONT_RENDER_MONO,
12, 0);
logfontttf = CreateLogFontEx ("ttf", "Courier", "UTF-8",
logfontttf = CreateLogFontEx ("ttf", "Courier", "UTF-8",
FONT_WEIGHT_BLACK, FONT_SLANT_ROMAN, FONT_FLIP_NONE,
FS_OTHER_LCDPORTRAIT, FONT_DECORATE_NONE, FONT_RENDER_SUBPIXEL,
24, 0);
-24
View File
@@ -1,24 +0,0 @@
/*
* The following code creates a virtual window.
*/
static LRESULT
my_virt_wnd_proc (HWND hwnd, UINT message, WPARAM wparam, LPARAM lparam)
{
switch (message) {
...
}
return DefaultVirtualWinProc (hwnd, message, wparam, lparam);
}
...
HWND new_wnd = CreateVirtualWindow (HWND_NULL, my_virt_wnd_proc,
"A Virtual Window", 0, 0);
if (new_wnd != HWND_INVALID) {
// failed to create the virtual window.
}
// go on...
...
+18 -18
View File
@@ -15,35 +15,35 @@ LRESULT ControlTestWinProc (HWND hWnd, UINT message, WPARAM wParam, LPARAM lPara
switch (message) {
case MSG_CREATE:
{
hStaticWnd1 = CreateWindow (CTRL_STATIC,
"This is a static control",
hStaticWnd1 = CreateWindow (CTRL_STATIC,
"This is a static control",
WS_CHILD | SS_NOTIFY | SS_SIMPLE | WS_VISIBLE | WS_BORDER,
IDC_STATIC1,
IDC_STATIC1,
10, 10, 180, 300, hWnd, 0);
hButton1 = CreateWindow (CTRL_BUTTON,
"Button1",
WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE,
IDC_BUTTON1,
"Button1",
WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE,
IDC_BUTTON1,
20, 20, 80, 20, hStaticWnd1, 0);
hButton2 = CreateWindow (CTRL_BUTTON,
"Button2",
WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE,
IDC_BUTTON2,
"Button2",
WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE,
IDC_BUTTON2,
20, 50, 80, 20, hStaticWnd1, 0);
hEdit1 = CreateWindow (CTRL_EDIT,
"Edit Box 1",
WS_CHILD | WS_VISIBLE | WS_BORDER,
IDC_EDIT1,
"Edit Box 1",
WS_CHILD | WS_VISIBLE | WS_BORDER,
IDC_EDIT1,
20, 80, 100, 24, hStaticWnd1, 0);
hStaticWnd2 = CreateWindow (CTRL_STATIC,
"This is child static control",
hStaticWnd2 = CreateWindow (CTRL_STATIC,
"This is child static control",
WS_CHILD | SS_NOTIFY | SS_SIMPLE | WS_VISIBLE | WS_BORDER,
IDC_STATIC1,
IDC_STATIC1,
20, 110, 100, 50, hStaticWnd1, 0);
hEdit2 = CreateWindow (CTRL_EDIT,
"Edit Box 2",
WS_CHILD | WS_VISIBLE | WS_BORDER,
IDC_EDIT2,
"Edit Box 2",
WS_CHILD | WS_VISIBLE | WS_BORDER,
IDC_EDIT2,
0, 20, 100, 24, hStaticWnd2, 0);
break;
}
+14 -14
View File
@@ -2,19 +2,19 @@
* The following code destroies all resource used by the main window
* and then destroies the main window itself.
*/
case MSG_CLOSE:
/* Destroy the resource used by the main window. */
DestroyLogFont (logfont1);
DestroyLogFont (logfont2);
DestroyLogFont (logfont3);
case MSG_CLOSE:
/* Destroy the resource used by the main window. */
DestroyLogFont (logfont1);
DestroyLogFont (logfont2);
DestroyLogFont (logfont3);
/* Destroy the child windows. */
DestroyWindow(hWndButton);
DestroyWindow(hWndEdit);
/* Destroy the child windows. */
DestroyWindow(hWndButton);
DestroyWindow(hWndEdit);
/* Destroy the main window. */
DestroyMainWindow (hWnd);
/* Destroy the main window. */
DestroyMainWindow (hWnd);
/* Send a MSG_QUIT message to quit the message loop. */
PostQuitMessage(hWnd);
return 0;
/* Send a MSG_QUIT message to quit the message loop. */
PostQuitMessage(hWnd);
return 0;
+4 -4
View File
@@ -7,7 +7,7 @@ static LRESULT InitDialogBoxProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM
switch (message) {
case MSG_INITDIALOG:
return 1;
case MSG_COMMAND:
switch (wParam) {
case IDOK:
@@ -16,16 +16,16 @@ static LRESULT InitDialogBoxProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM
break;
}
break;
}
return DefaultDialogProc (hDlg, message, wParam, lParam);
}
static void InitDialogBox (HWND hWnd)
{
/* Assoiciate the dialog with the controls */
DlgInitProgress.controls = CtrlInitProgress;
/* Display the dialog box and wait */
DialogBoxIndirectParam (&DlgInitProgress, hWnd, InitDialogBoxProc, 0L);
}
+7 -7
View File
@@ -1,8 +1,8 @@
static DLGTEMPLATE DlgInitProgress =
{
WS_BORDER | WS_CAPTION,
WS_BORDER | WS_CAPTION,
WS_EX_NONE,
120, 150, 400, 130,
120, 150, 400, 130,
"VAM-CNC is initializing",
0, 0,
3, NULL,
@@ -10,12 +10,12 @@ static DLGTEMPLATE DlgInitProgress =
};
static CTRLDATA CtrlInitProgress [] =
{
{
{
"static",
WS_VISIBLE | SS_SIMPLE,
10, 10, 380, 16,
IDC_PROMPTINFO,
10, 10, 380, 16,
IDC_PROMPTINFO,
"Initialize...",
0
},
@@ -29,9 +29,9 @@ static CTRLDATA CtrlInitProgress [] =
},
{
"button",
WS_TABSTOP | WS_VISIBLE | BS_DEFPUSHBUTTON,
WS_TABSTOP | WS_VISIBLE | BS_DEFPUSHBUTTON,
170, 70, 60, 25,
IDOK,
IDOK,
"OK",
0
}
+3 -3
View File
@@ -1,4 +1,4 @@
/**
/**
* Selecting a logical font to the DC and output text in GB2312 charset
* by using DrawText.
*/
@@ -10,7 +10,7 @@ void OnModeDrawText (HDC hdc)
const char* szBuff2 = "This is a good day. \n"
"This text is drawn by calling DrawText.";
const char* szBuff3 = "Single line text, center.";
const char* szBuff4 =
const char* szBuff4 =
"This text is drawn by calling DrawText.";
rc1.left = 1; rc1.top = 1; rc1.right = 401; rc1.bottom = 101;
@@ -18,7 +18,7 @@ void OnModeDrawText (HDC hdc)
rc3.left = 0; rc3.top = 361; rc3.right = 401; rc3.bottom = 451;
rc4.left = 0; rc4.top = 461; rc4.right = 401; rc4.bottom = 551;
SetBkColor (hdc, DWORD2Pixel (hdc, RGBA_lightwhite));
SetBkColor (hdc, COLOR_lightwhite);
Rectangle (hdc, rc1.left, rc1.top, rc1.right, rc1.bottom);
Rectangle (hdc, rc2.left, rc2.top, rc2.right, rc2.bottom);
+3 -3
View File
@@ -40,11 +40,11 @@ static void InitCreateInfo (PMAINWINCREATE pCreateInfo)
pCreateInfo->hCursor = GetSystemCursor (0);
pCreateInfo->hIcon = 0;
pCreateInfo->MainWindowProc = HelloWinProc;
pCreateInfo->lx = 0;
pCreateInfo->ty = 0;
pCreateInfo->lx = 0;
pCreateInfo->ty = 0;
pCreateInfo->rx = 320;
pCreateInfo->by = 240;
pCreateInfo->iBkColor = PIXEL_lightwhite;
pCreateInfo->iBkColor = PIXEL_lightwhite;
pCreateInfo->dwAddData = 0;
pCreateInfo->hHosting = HWND_DESKTOP;
}
+1 -1
View File
@@ -1,6 +1,6 @@
/*
* This program parses the command line arguments.
* If the user specified a layer name by using "-layer <layer_name",
* If the user specified a layer name by using "-layer <layer_name",
* the program will try to join the layer, otherwise create a new layer.
*/
int MiniGUIMain (int args, const char* arg[])
+4 -4
View File
@@ -1,11 +1,11 @@
static LRESULT DepInfoBoxProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{
struct _DepInfo *info;
switch(message) {
case MSG_INITDIALOG:
{
/*
/*
* Get the lParam passed to this dialog box, and assign it
* to the second private additional data assoiciated
* with the dialog box.
@@ -17,7 +17,7 @@ static LRESULT DepInfoBoxProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lP
case MSG_COMMAND:
{
/*
/*
* Get the parameter from the second private data assoiciated
* with the dialog box.
*/
@@ -34,6 +34,6 @@ static LRESULT DepInfoBoxProc (HWND hDlg, UINT message, WPARAM wParam, LPARAM lP
}
}
}
return DefaultDialogProc (hDlg, message, wParam, lParam);
}
+7 -7
View File
@@ -2,10 +2,10 @@
* The handler makes sure that the client area always
* is _WIDTH wide and _HEIGHT high.
*/
case MSG_SIZECHANGED:
{
RECT* rcClient = (RECT*)lParam;
rcClient->right = rcClient->left + _WIDTH;
rcClient->bottom = rcClient->top + _HEIGHT;
return 1;
}
case MSG_SIZECHANGED:
{
RECT* rcClient = (RECT*)lParam;
rcClient->right = rcClient->left + _WIDTH;
rcClient->bottom = rcClient->top + _HEIGHT;
return 1;
}
+10 -10
View File
@@ -2,14 +2,14 @@
* The handler set the actual size of the window always
* to be _WIDTH wide and _HEIGHT high.
*/
case MSG_SIZECHANGING:
{
const RECT* rcExpect = (const RECT*)wParam;
RECT* rcResult = (RECT*)lParam;
case MSG_SIZECHANGING:
{
const RECT* rcExpect = (const RECT*)wParam;
RECT* rcResult = (RECT*)lParam;
rcResult->left = rcExpect->left;
rcResult->top = rcExpect->top;
rcResult->right = rcExpect->left + _WIDTH;
rcResult->bottom = rcExpect->top + _HEIGHT;
return 0;
}
rcResult->left = rcExpect->left;
rcResult->top = rcExpect->top;
rcResult->right = rcExpect->left + _WIDTH;
rcResult->bottom = rcExpect->top + _HEIGHT;
return 0;
}
+8 -8
View File
@@ -3,14 +3,14 @@
*/
case MSG_PAINT:
{
HDC hdc = BeginPaint (hWnd);
HDC hdc = BeginPaint (hWnd);
for (j = 0; j < 10; j ++) {
if (RectVisible (hdc, rcs + j)) {
FillBox (hdc, rcs[j].left, rcs[j].top, rcs [j].right, rcs [j].bottom);
}
}
for (j = 0; j < 10; j ++) {
if (RectVisible (hdc, rcs + j)) {
FillBox (hdc, rcs[j].left, rcs[j].top, rcs [j].right, rcs [j].bottom);
}
}
EndPaint (hWnd, hdc);
return 0;
EndPaint (hWnd, hdc);
return 0;
}
+4 -4
View File
@@ -53,15 +53,15 @@ static void GDIDemo_Region (HWND hWnd, HDC hdc)
FillBox (hdc, 400, 0, 180, 200);
/*
* Empty two clipping region to free the clipping rectangles used
/*
* Empty two clipping region to free the clipping rectangles used
* by them.
*/
EmptyClipRgn (&my_cliprgn1);
EmptyClipRgn (&my_cliprgn2);
/*
* You should not forget to destroy the FreeClipRectList in your
/*
* You should not forget to destroy the FreeClipRectList in your
* applications.
* Here we do not destroy the heap because we will use it in next call.
*
+6 -9
View File
@@ -7,7 +7,7 @@ static LRESULT StepControlProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
{
HDC hdc;
HELPWININFO* info;
switch (message) {
case MSG_PAINT:
hdc = BeginPaint (hwnd);
@@ -17,7 +17,7 @@ static LRESULT StepControlProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
info = (HELPWININFO*)GetWindowAdditionalData (hwnd);
/* Draw the step information. */
...
......
EndPaint (hwnd, hdc);
break;
@@ -43,7 +43,8 @@ static LRESULT StepControlProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM l
return DefaultControlProc (hwnd, message, wParam, lParam);
}
static BOOL RegisterStepControl (void)
static BOOL RegisterStepControl ()
{
int result;
WNDCLASS StepClass;
@@ -51,17 +52,13 @@ static BOOL RegisterStepControl (void)
StepClass.spClassName = STEP_CTRL_NAME;
StepClass.dwStyle = 0;
StepClass.hCursor = GetSystemCursor (IDC_ARROW);
#ifdef _MGSCHEMA_COMPOSITING
StepClass.dwBkRGBA = COLOR_lightwhite;
#else
StepClass.iBkColor = PIXEL_lightwhite;
#endif
StepClass.iBkColor = COLOR_lightwhite;
StepClass.WinProc = StepControlProc;
return RegisterWindowClass (&StepClass);
}
static void UnregisterStepControl (void)
static void UnregisterStepControl ()
{
UnregisterWindowClass (STEP_CTRL_NAME);
}
+2 -2
View File
@@ -3,7 +3,7 @@ typedef struct TEST_REQ
int a, b;
} TEST_REQ;
/*
/*
* In the server, we define the request handler
* and register it.
*/
@@ -11,7 +11,7 @@ static int ServerSendReply (int clifd, void* reply, int len)
{
MSG reply_msg = {HWND_INVALID, 0};
/*
/*
* Sending a null message to client in order to indicate this is
* a reply of a request.
*/
+1 -1
View File
@@ -1,5 +1,5 @@
/*
* This program which should be named "mginit" calls "ServerStartup"
* This program which should be named "mginit" calls "ServerStartup"
* to start the server of MiniGUI-Processes.
*/
int MiniGUIMain (int args, const char* arg[])
+8 -8
View File
@@ -9,7 +9,7 @@ BOOL listen_socket (HWND hwnd)
return RegisterListenFD (fd, POLL_IN, hwnd, NULL);
}
/*
/*
* When the server receives the request to connect from a client,
* the window hwnd will receive a MSG_FDEVENT message.
* Now the server can accept the request.
@@ -17,11 +17,11 @@ BOOL listen_socket (HWND hwnd)
LRESULT MyWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
switch (message) {
...
case MSG_FDEVENT:
if (LOWORD (wParam) == listen_fd) {
if (LOWORD (wParam) == listen_fd) {
/* This message comes from the listen socket fd. */
pid_t pid;
uid_t uid;
@@ -31,7 +31,7 @@ LRESULT MyWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
RegisterListenFD (conn_fd, POLL_IN, hwnd, NULL);
}
}
else {
else {
/* Client send a request. */
int fd = LOWORD(wParam);
/* Handle the request from client. */
@@ -39,9 +39,9 @@ LRESULT MyWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
sock_write_t (fd, ....);
}
break;
...
}
}
@@ -50,7 +50,7 @@ LRESULT MyWndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
*/
int conn_fd;
if ((conn_fd = cli_conn (LISTEN_SOCKET, 'b')) >= 0) {
/* Send a request to the server. */
sock_write_t (fd, ....);
+7 -7
View File
@@ -35,20 +35,20 @@ static LRESULT ControlTestWinProc (HWND hWnd, UINT message, WPARAM wParam, LPARA
{
HWND hWnd1, hWnd2, hWnd3;
CreateWindow (CTRL_STATIC, "Digit-only box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
CreateWindow (CTRL_STATIC, "Digit-only box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
10, 10, 180, 24, hWnd, 0);
hWnd1 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_VISIBLE | WS_BORDER, IDC_CTRL1,
hWnd1 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_VISIBLE | WS_BORDER, IDC_CTRL1,
200, 10, 180, 24, hWnd, MY_ES_DIGIT_ONLY);
CreateWindow (CTRL_STATIC, "Alpha-only box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
CreateWindow (CTRL_STATIC, "Alpha-only box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
10, 40, 180, 24, hWnd, 0);
hWnd2 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_BORDER | WS_VISIBLE, IDC_CTRL2,
hWnd2 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_BORDER | WS_VISIBLE, IDC_CTRL2,
200, 40, 180, 24, hWnd, MY_ES_ALPHA_ONLY);
CreateWindow (CTRL_STATIC, "Normal edit box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
CreateWindow (CTRL_STATIC, "Normal edit box:", WS_CHILD | WS_VISIBLE | SS_RIGHT, 0,
10, 70, 180, 24, hWnd, 0);
hWnd3 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_BORDER | WS_VISIBLE, IDC_CTRL2,
hWnd3 = CreateWindow (CTRL_EDIT, "", WS_CHILD | WS_BORDER | WS_VISIBLE, IDC_CTRL2,
200, 70, 180, 24, hWnd, MY_ES_ALPHA_ONLY);
CreateWindow ("button", "Close", WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, IDC_CTRL4,
CreateWindow ("button", "Close", WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, IDC_CTRL4,
100, 100, 60, 24, hWnd, 0);
/* Set new window procedure and save the old procedure. */
+3 -3
View File
@@ -39,11 +39,11 @@ static void InitCreateInfo (PMAINWINCREATE pCreateInfo)
pCreateInfo->hCursor = GetSystemCursor (0);
pCreateInfo->hIcon = 0;
pCreateInfo->MainWindowProc = HelloWinProc;
pCreateInfo->lx = 0;
pCreateInfo->ty = 0;
pCreateInfo->lx = 0;
pCreateInfo->ty = 0;
pCreateInfo->rx = 320;
pCreateInfo->by = 240;
pCreateInfo->iBkColor = PIXEL_lightwhite;
pCreateInfo->iBkColor = PIXEL_lightwhite;
pCreateInfo->dwAddData = 0;
pCreateInfo->hHosting = HWND_DESKTOP;
}
+79 -106
View File
File diff suppressed because it is too large Load Diff
+5 -5
View File
@@ -23,7 +23,7 @@
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -65,6 +65,10 @@
#ifndef _MGUI_CONTROL_H
#define _MGUI_CONTROL_H
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#include "ctrl/ctrlhelper.h"
/**
@@ -162,10 +166,6 @@
#include "ctrl/animation.h"
#endif /* _MGCTRL_ANIMATION */
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
#ifdef __cplusplus
}
#endif /* __cplusplus */
+11 -10
View File
@@ -14,10 +14,10 @@
* \file animation.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,13 +55,14 @@
/*
* $Id: animation.h 10865 2008-08-27 06:52:22Z wangjian $
*
* 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 EXT_ANIMATION_H
#define EXT_ANIMATION_H
#ifdef __cplusplus
extern "C" {
#endif
@@ -82,10 +83,10 @@ typedef struct _ANIMATIONFRAME
/** The disposal method (from GIF89a specification):
* Indicates the way in which the graphic is to be treated after being displayed.
* - 0\n No disposal specified. The decoder is not required to take any action.
* - 1\n Do not dispose. The graphic is to be left in place.
* - 2\n Restore to background color. The area used by the frame must be restored to
* - 1\n Do not dispose. The graphic is to be left in place.
* - 2\n Restore to background color. The area used by the frame must be restored to
* the background color.
* - 3\n Restore to previous. The decoder is required to restore the area overwritten by
* - 3\n Restore to previous. The decoder is required to restore the area overwritten by
* the frmae with what was there prior to rendering the frame.
*/
int disposal;
@@ -250,7 +251,7 @@ MG_EXPORT void DestroyAnimation (ANIMATION* anim, BOOL free_it);
#define ANS_FITTOANI 0x0004L
/**
* \def ANS_WINBGC
* \def ANS_WINBGC
* \brief Use the background color of the window.
*/
#define ANS_WINBGC 0x0010L
@@ -264,7 +265,7 @@ MG_EXPORT void DestroyAnimation (ANIMATION* anim, BOOL free_it);
/**
* \def ANM_SETANIMATION
* \brief Set the animation object for the control.
* \brief Sets the animation object for the control.
*
* An application can send ANM_SETANIMATION to set the animation object of a control.
*
@@ -282,7 +283,7 @@ MG_EXPORT void DestroyAnimation (ANIMATION* anim, BOOL free_it);
/**
* \def ANM_GETANIMATION
* \brief Get the animation object of the control.
* \brief Gets the animation object of the control.
*
* An application can send ANM_GETANIMATION to retrive the animation object of a control.
*
@@ -301,7 +302,7 @@ MG_EXPORT void DestroyAnimation (ANIMATION* anim, BOOL free_it);
* \def ANM_STARTPLAY
* \brief Indicates the control to start playing the animation.
*
* The animation will not be played when create the control,
* The animation will not be played when create the control,
* an application should send ANM_STARTPLAY to an animation control
* to start playing the animation.
*
+59 -59
View File
File diff suppressed because it is too large Load Diff
+57 -57
View File
File diff suppressed because it is too large Load Diff
+6 -6
View File
@@ -14,10 +14,10 @@
* \file coolbar.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: coolbar.h 10690 2008-08-18 09:32:47Z 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.
*/
@@ -158,7 +158,7 @@ typedef COOLBARITEMINFO *PCOOLBARITEMINFO;
* \brief The item bitmap has customized size.
*
* \note For the control with this style, you should pass
* the width and the height of the item bitmap by
* the width and the height of the item bitmap by
* the argument \a dwAddData of \a CreateWindowEx function.
*
* \code
@@ -204,7 +204,7 @@ typedef COOLBARITEMINFO *PCOOLBARITEMINFO;
* lParam = (LPARAM)newIteminfo;
* \endcode
*
* \param newIteminfo Pointer to the item info structure of the new item
* \param newIteminfo Pointer to the item info structure of the new item
* to be added.
*
* \return Zero when success, otherwise less than 0;
@@ -213,7 +213,7 @@ typedef COOLBARITEMINFO *PCOOLBARITEMINFO;
/**
* \def CBM_ENABLE
* \brief Set an item to be enabled or disabled.
* \brief Sets an item to be enabled or disabled.
*
* \code
* CBM_ENABLE
+34 -39
View File
@@ -14,10 +14,10 @@
* \file ctrlhelper.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: ctrlhelper.h 10829 2008-08-26 07:47:17Z 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 _MGUI_CTRL_CTRLHELPER_H
#define _MGUI_CTRL_CTRLHELPER_H
#ifdef __cplusplus
extern "C" {
@@ -114,7 +114,7 @@ typedef enum
* This function outputs a grayed text at the specified position.
*
* \param hdc The device context.
* \param hwnd Tell the function to draw with the color definitions of the window.
* \param hwnd Tell the function to draw with the color definitions of this window.
* \param x The x-coordinate of start point.
* \param y The y-coordinate of start point.
* \param szText The null-terminated text to be output.
@@ -129,24 +129,24 @@ MG_EXPORT void GUIAPI DisabledTextOutEx (HDC hdc, HWND hwnd, int x, int y, const
* \brief Creates a tool tip window.
*
* This function creates a tool tip window and returns the handle to it.
* You can call \a DestroyToolTipWin to destroy it. This function also
* receives \a printf-like arguments to format a string.
* You can call \a DestroyToolTipWin to destroy it. This function also
* receives \a printf-like arguments to format a string.
*
* Note that the tool tip window will disappear automatically after the
* specified milliseconds by \a timeout_ms if \a timeout_ms is larger
* Note that the tool tip window will disappear automatically after the
* specified milliseconds by \a timeout_ms if \a timeout_ms is larger
* than 9 ms.
*
* \param hParentWnd The hosting main window.
* \param x The position of the tool tip window.
* \param y The position of the tool tip window.
* \param timeout_ms The timeout value of the tool tip window.
* \param timeout_ms The timeout value of the tool tip window.
* \param text The format string.
*
* \return The handle to the tool tip window on success, HWND_INVALID on error.
*
* \sa ResetToolTipWin, DestroyToolTipWin
*/
MG_EXPORT HWND CreateToolTipWin (HWND hParentWnd, int x, int y,
MG_EXPORT HWND CreateToolTipWin (HWND hParentWnd, int x, int y,
int timeout_ms, const char* text, ...);
/**
@@ -158,7 +158,7 @@ MG_EXPORT HWND CreateToolTipWin (HWND hParentWnd, int x, int y,
* position, text displayed in it, and the visible status. If the tool tip is
* invisible, it will become visible.
*
* This function also receives \a printf-like arguments to format a string.
* This function also receives \a printf-like arguments to format a string.
*
* \param hwnd The tool tip window handle returned by \a CreateToolTipWin.
* \param x The new position of the tool tip window.
@@ -167,46 +167,41 @@ MG_EXPORT HWND CreateToolTipWin (HWND hParentWnd, int x, int y,
*
* \sa CreateToolTipWin, DestroyToolTipWin
*/
MG_EXPORT void ResetToolTipWin (HWND hwnd, int x, int y,
MG_EXPORT void ResetToolTipWin (HWND hwnd, int x, int y,
const char* text, ...);
/**
* \fn void DestroyToolTipWin (HWND hwnd)
* \brief Destroy a tool tip window.
* \brief Destroies a tool tip window.
*
* This function destroys the specified tool tip window \a hwnd, which
* This function destroies the specified tool tip window \a hwnd, which
* is returned by \a CreateToolTipWin.
*
* \param hwnd The handle to the tool tip window.
*
*
* \sa CreateToolTipWin
*/
MG_EXPORT void DestroyToolTipWin (HWND hwnd);
/**
* \fn void GUIAPI NotifyParentEx (HWND hwnd, LINT id, int code,
* DWORD add_data)
* \brief Send a notification message to the parent.
* \fn void GUIAPI NotifyParentEx (HWND hwnd, LINT id, int code, DWORD add_data)
* \brief Sends a notification message to the parent.
*
* This function send a notification message to the parent.
* By default, the notification from a control will be sent to its parent
* window within a MSG_COMMAND messsage.
*
* In the early version, the notification from a control will be sent to
* its parent window within a MSG_COMMAND message.
* Since version 1.2.6, MiniGUI defines the Nofication Callback Procedure
* for control. You can specify a callback function for a control by calling
* \a SetNotificationCallback to receive and handle the notification from
* the control.
*
* Since version 1.2.6, MiniGUI defines the Notification Callback Procedure
* for a window. You can specify a callback function to a window by calling
* \a SetNotificationCallback to receive and handle the notification from
* its children in the procedure.
* If you have defined the Notificaton Callback Procedure for the control,
* calling NotifyParentEx will call the notification callback procedure,
* not send the notification message to the parent.
*
* Note that if the control has \a WS_EX_NOPARENTNOTIFY style, this function
* Note that if the control has WS_EX_NOPARENTNOTIFY style, this function
* will not notify the parent.
*
* Note taht there was a mistake in the implementation. This function will
* check and call the notification callback procedure of the control itself
* instead of its parent.
*
* Since 5.0.0, you can call NotifyWindow to notify any kind of window.
*
* \param hwnd The handle to current control window.
* \param id The identifier of current control.
* \param code The notification code.
@@ -214,21 +209,20 @@ MG_EXPORT void DestroyToolTipWin (HWND hwnd);
*
* \note The type of \a id change from int to LINT since v3.2.
*
* \sa NotifyWindow, SetNotificationCallback
* \sa SetNotificationCallback
*/
MG_EXPORT void GUIAPI NotifyParentEx (HWND hwnd, LINT id, int code,
DWORD add_data);
MG_EXPORT void GUIAPI NotifyParentEx (HWND hwnd, LINT id, int code, DWORD add_data);
/**
* \def NotifyParent(hwnd, id, code)
* \brief Sends a notification message to the parent,
* \brief Sends a notification message to the parent,
* but without additional data.
*
* \param hwnd The handle to current control window.
* \param id The identifier of current control.
* \param code The notification code.
*
* \note This function is actually a macro of \a NotifyParentEx with
* \note This function is actually a macro of NotifyParentEx with
* \a dwAddData being zero.
*
* \sa NotifiyParentEx
@@ -237,13 +231,14 @@ MG_EXPORT void GUIAPI NotifyParentEx (HWND hwnd, LINT id, int code,
NotifyParentEx(hwnd, id, code, 0)
/**
* \var typedef int (*STRCMP) (const char* s1, const char* s2, size_t n)
* \brief Type of general strncmp function.
*
* The function compares the two strings \a s1 and \a s2. It returns
* an integer less than, equal to, or greater than zero if \a s1 is found,
* respectively, to be less than, to match, or be greater than \a s2.
*
* Note that it only compares the first (at most) \a n characters of s1 and s2.
* Note that it only compares the first (at most) \a n characters of s1 and s2.
*/
typedef int (*STRCMP) (const char* s1, const char* s2, size_t n);
+75 -74
View File
File diff suppressed because it is too large Load Diff
+36 -36
View File
File diff suppressed because it is too large Load Diff
+21 -21
View File
@@ -14,10 +14,10 @@
* \file iconview.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: iconview.h 11576 2009-04-27 01:01:57Z dongjunjie $
*
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* pSOS, ThreadX, NuCleus, OSE, and Win32.
*/
@@ -76,7 +76,7 @@ extern "C" {
* \defgroup mgext_ctrl_iconview IconView control
* @{
*/
/**
/**
* \def CTRL_ICONVIEW
* \brief The class name of iconview control.
*/
@@ -88,16 +88,16 @@ extern "C" {
#define IV_ERR (-1)
/** Iconview return value */
#define IV_ERRSPACE (-2)
/**
* \var typedef GHANDLE HIVITEM
* \brief Icon view item handle
*/
typedef GHANDLE HIVITEM;
/**
/**
* Structure of the iconview item info, contains information about an item.
* This structure is used for creating or retrieving an item.
* This structure is used for creating or retrieving an item.
*/
typedef struct _IVITEMINFO
{
@@ -128,22 +128,22 @@ typedef struct _IVITEMINFO
typedef IVITEMINFO* PIVITEMINFO;
/** Iconview bitmap flags, reserved */
#define IVFLAG_BITMAP 0x0001
#define IVFLAG_BITMAP 0x0001
/** Iconview icon flags, reserved */
#define IVFLAG_ICON 0x0002
#define IVFLAG_ICON 0x0002
/**
* \fn int iconview_is_item_hilight (HWND hWnd, GHANDLE hivi)
* \brief Uses this to get an iconview item is hilighted or not.
*
* \returns TRUE when item is hilighted, or FALSE.
* \returns TRUE when item is hilighted, or FALSE.
*/
MG_EXPORT int iconview_is_item_hilight (HWND hWnd, GHANDLE hivi);
/**
* \fn DWORD iconview_get_item_bitmap (GHANDLE hivi)
* \brief Uses this to get bitmap handle from an iconview item.
* \brief Uses this to get bitmap handle from an iconview item.
*
* \returns the bitmap handle of iconview item.
*/
@@ -157,7 +157,7 @@ MG_EXPORT PBITMAP iconview_get_item_bitmap (GHANDLE hivi);
*/
MG_EXPORT const char* iconview_get_item_label (GHANDLE hivi);
/**
/**
* \fn DWORD iconview_get_item_adddata (GHANDLE hivi)
* \brief Uses this to get additional data from an iconview item.
*
@@ -182,7 +182,7 @@ MG_EXPORT PBITMAP iconview_set_item_bitmap(GHANDLE hivi, PBITMAP pbmp);
* \def IVS_NOTIFY
* \brief The notify style of iconview control
* \sa SVS_NOTIFY
*/
*/
#define IVS_NOTIFY SVS_NOTIFY
/**
@@ -196,14 +196,14 @@ MG_EXPORT PBITMAP iconview_set_item_bitmap(GHANDLE hivi, PBITMAP pbmp);
* \def IVS_AUTOSORT
* \brief The auto sort style of iconview control
* \sa SVS_AUTOSORT
*/
*/
#define IVS_AUTOSORT SVS_AUTOSORT
/**
* \def IVS_LOOP
* \brief The loop style of iconview control
* \sa SVS_LOOP
*/
*/
#define IVS_LOOP SVS_LOOP
@@ -216,17 +216,17 @@ MG_EXPORT PBITMAP iconview_set_item_bitmap(GHANDLE hivi, PBITMAP pbmp);
/**
* \def IVM_ADDITEM
* \brief Adds a item to iconview.
*
* \code
* \brief Adds a item to iconview.
*
* \code
* IVM_ADDITEM
* PIVITEMINFO p
*
* p =(LPARAM)lParam;
* \endcode
*
* \param p Pointes to a IVITEMINFO structure that contains the information of
* the new item to be added. nItem member of the IVITEMINFO struct speficied
* \param p Pointes to a IVITEMINFO structure that contains the information of
* the new item to be added. nItem member of the IVITEMINFO struct speficied
* the item position in its parent item, beginning with zero.
*
* \return Returns the handle of the new item if successful, or 0 otherwise.
@@ -235,7 +235,7 @@ MG_EXPORT PBITMAP iconview_set_item_bitmap(GHANDLE hivi, PBITMAP pbmp);
/**
* \def IVM_SETITEMSIZE
* \brief Set the item width and height of an iconview control
* \brief Sets the item width and height of an iconview control
*
* All the items have the same item size. This message should be sent
* before you add items to iconview control.
+111 -111
View File
File diff suppressed because it is too large Load Diff
+113 -113
View File
File diff suppressed because it is too large Load Diff
+14 -14
View File
@@ -14,10 +14,10 @@
* \file menubutton.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: menubutton.h 10690 2008-08-18 09:32:47Z 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 _MGUI_CTRL_MENUBUTTON_H
#define _MGUI_CTRL_MENUBUTTON_H
#ifdef __cplusplus
extern "C" {
@@ -109,7 +109,7 @@ extern "C" {
typedef struct _MENUBUTTONITEM
{
/**
* Which fields are valid when sets/retrives the item information
* Which fields are valid when sets/retrives the item information
* (ignored when add item). It can be OR'd with the following values:
*
* - MB_WHICH_TEXT The \a text field is valid.
@@ -138,8 +138,8 @@ typedef MENUBUTTONITEM* PMENUBUTTONITEM;
/**
* \def MBS_SORT
* \brief If this bit is set, the items listed in the control
* are displayed in a specified order.
* \brief If this bit is set, the items listed in the control
* are displayed in a specified order.
*/
#define MBS_SORT 0x0001
@@ -201,12 +201,12 @@ typedef MENUBUTTONITEM* PMENUBUTTONITEM;
*
* \param pos The position at which to add the item. If the control
* was created with the style of \a MBS_SORT, this parameter
* will be ignored. If this parameter is less than 0,
* will be ignored. If this parameter is less than 0,
* the new item will be append to the tail of the menu list.
* \param newitem Pointer to the menubutton item info structure.
*
* \return The position at which the item has been added, i.e.,
* the index of the added item if success. Otherwise,
* the index of the added item if success. Otherwise,
* the following error code will be returned:
*
* - MB_ERR_SPACE\n No memory can be allocated for new item.
@@ -260,7 +260,7 @@ typedef MENUBUTTONITEM* PMENUBUTTONITEM;
* \endcode
*
* \param index The index of the item to be altered.
* \param pmbi Pointer to the MENUBUTTONITEM structure that stores the new
* \param pmbi Pointer to the MENUBUTTONITEM structure that stores the new
* menubutton item data.
*
* \return MB_OKAY if success, otherwise will be one of the following error codes:
@@ -284,7 +284,7 @@ typedef MENUBUTTONITEM* PMENUBUTTONITEM;
* \endcode
*
* \param index The index of the specific item.
* \param pmbi Pointer to the MENUBUTTONITEM structure for storing the
* \param pmbi Pointer to the MENUBUTTONITEM structure for storing the
* menubutton item data.
*
* \return MB_OKAY if success, otherwise MB_INV_ITEM to indicate invalid index.
@@ -327,12 +327,12 @@ typedef MENUBUTTONITEM* PMENUBUTTONITEM;
/**
* \def MBM_SETSTRCMPFUNC
* \brief Set the STRCMP function used to sort items.
* \brief Sets the STRCMP function used to sort items.
*
* An application sends a MBM_SETSTRCMPFUNC message to set a
* An application sends a MBM_SETSTRCMPFUNC message to set a
* new STRCMP function to sort items in the menubutton.
*
* Note that you should send this message before adding
* Note that you should send this message before adding
* any item to the menubutton control.
*
* \code
+23 -23
View File
@@ -14,10 +14,10 @@
* \file monthcal.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: monthcal.h 10690 2008-08-18 09:32:47Z 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.
*/
@@ -97,7 +97,7 @@ typedef struct _SYSTEMTIME
} SYSTEMTIME;
/**
* \var typedef SYSTEMTIME *PSYSTEMTIME;
* \brief Data type of the pointer to a SYSTEMTIME.
* \brief Data type of the pointer to a SYSTEMTIME.
*/
typedef SYSTEMTIME *PSYSTEMTIME;
@@ -132,7 +132,7 @@ typedef struct _MCCOLORINFO
/**
* \var typedef MCCOLORINFO *PMCCOLORINFO;
* \brief Data type of the pointer to a MCCOLORINFO.
* \brief Data type of the pointer to a MCCOLORINFO.
*/
typedef MCCOLORINFO *PMCCOLORINFO;
@@ -179,7 +179,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURDAY
* \brief Get the day number of the current selected date.
* \brief Gets the day number of the current selected date.
*
* \code
* MCM_GETCURDAY
@@ -194,7 +194,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURMONTH
* \brief Get the month number of the current selected date.
* \brief Gets the month number of the current selected date.
*
* \code
* MCM_GETCURMONTH
@@ -209,7 +209,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURYEAR
* \brief Get the year number of the current selected date.
* \brief Gets the year number of the current selected date.
*
* \code
* MCM_GETCURYEAR
@@ -224,7 +224,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURWEEKDAY
* \brief Get the weekday number of the current selected date.
* \brief Gets the weekday number of the current selected date.
*
* \code
* MCM_GETCURWEEKDAY
@@ -239,7 +239,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURMONLEN
* \brief Get the month length of the current selected date.
* \brief Gets the month length of the current selected date.
*
* \code
* MCM_GETCURMONLEN
@@ -302,7 +302,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_SETTODAY
* \brief Set the currently selected date as the date of "today".
* \brief Sets the currently selected date as the date of "today".
*
* \code
* MCM_SETTODAY
@@ -315,7 +315,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETFIRSTWEEKDAY
* \brief Get the weekday of the first day of this month.
* \brief Gets the weekday of the first day of this month.
*
* \code
* MCM_GETFIRSTWEEKDAY
@@ -330,7 +330,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETCURDATE
* \brief Get the currently selected date.
* \brief Gets the currently selected date.
*
* \code
* MCM_GETCURDATE
@@ -346,7 +346,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETTODAY
* \brief Get the date of "today".
* \brief Gets the date of "today".
*
* \code
* MCM_GETTODAY
@@ -356,14 +356,14 @@ typedef MCCOLORINFO *PMCCOLORINFO;
* lParam = (LPARAM)pcurdate;
* \endcode
*
* \param pcurdate Pointer to the SYSTEMTIME structure to retreive the
* \param pcurdate Pointer to the SYSTEMTIME structure to retreive the
* date of "today".
*/
#define MCM_GETTODAY 0xF311
/**
* \def MCM_GETMINREQRECTW
* \brief Get the minimum width required to display a full month in a month
* \brief Gets the minimum width required to display a full month in a month
* calendar control.
*
* \code
@@ -379,7 +379,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_GETMINREQRECTH
* \brief Get the minimum height required to display a full month in a month
* \brief Gets the minimum height required to display a full month in a month
* calendar control.
*
* \code
@@ -395,7 +395,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_SETCURDATE
* \brief Set the currently selected date.
* \brief Sets the currently selected date.
*
* \code
* MCM_SETCURDATE
@@ -405,14 +405,14 @@ typedef MCCOLORINFO *PMCCOLORINFO;
* lParam = (LPARAM)pcurdate;
* \endcode
*
* \param pcurdate Pointer to the SYSTEMTIME structure storing the values of
* \param pcurdate Pointer to the SYSTEMTIME structure storing the values of
* the current selected date.
*/
#define MCM_SETCURDATE 0xF314
/**
* \def MCM_SETCOLOR
* \brief Set the color of the monthcalendar control.
* \brief Sets the color of the monthcalendar control.
*
* \code
* MCM_SETCOLOR
@@ -422,14 +422,14 @@ typedef MCCOLORINFO *PMCCOLORINFO;
* lParam = (LPARAM)newcolor;
* \endcode
*
* \param newcolor Pointer to the MCCOLORINFO structure storing the vaules of
* \param newcolor Pointer to the MCCOLORINFO structure storing the vaules of
* the new color info.
*/
#define MCM_SETCOLOR 0xF315
/**
* \def MCM_GETCOLOR
* \brief Get the color of the monthcalendar control.
* \brief Gets the color of the monthcalendar control.
*
* \code
* MCM_GETCOLOR
@@ -445,7 +445,7 @@ typedef MCCOLORINFO *PMCCOLORINFO;
/**
* \def MCM_SETDAYCOLOR
* \brief Set the color of a specified date .
* \brief Sets the color of a specified date .
*
* \code
* MCM_SETDAYCOLOR
+13 -13
View File
@@ -14,10 +14,10 @@
* \file newtoolbar.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: newtoolbar.h 10690 2008-08-18 09:32:47Z 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 _MGUI_CTRL_NEWTOOLBAR_H
#define _MGUI_CTRL_NEWTOOLBAR_H
#ifdef __cplusplus
extern "C" {
@@ -75,7 +75,7 @@ extern "C" {
/**
* \defgroup ctrl_newtoolbar NewToolBar control
*
* \note You should pass information of the control through
* \note You should pass information of the control through
* the argument \a dwAddData of \a CreateWindowEx function.
*
* \code
@@ -119,17 +119,17 @@ typedef struct _NTBINFO
int nr_cols;
/**
* Width of bitmap cell. If w_cell is zero, it will be
* Width of bitmap cell. If w_cell is zero, it will be
* equal to (width_of_image / nr_cols).
*/
int w_cell;
/**
* Height of bitmap cell. If h_cell is zero, it will be
* Height of bitmap cell. If h_cell is zero, it will be
* equal to (height_of_image / nr_cells).
*/
int h_cell;
} NTBINFO;
/**
@@ -179,7 +179,7 @@ typedef void (* HOTSPOTPROC)(HWND hwnd, int id, const RECT* cell, int x, int y);
typedef struct _NTBITEMINFO
{
/**
* Which fields are valid when sets/retrives the item information
* Which fields are valid when sets/retrives the item information
* (ignored when add item). It can be OR'd with the following values:
*
* - MTB_WHICH_FLAGS\n The flags is valid.
@@ -246,13 +246,13 @@ typedef NTBITEMINFO* PNTBITEMINFO;
/**
* \def NTBS_WITHTEXT
* \brief Displays text with the item bitmap.
* \brief Displays text with the item bitmap.
*/
#define NTBS_WITHTEXT 0x000000001L
/**
* \def NTBS_TEXTRIGHT
* \brief Displays text at the right side of the item bitmap.
* \brief Displays text at the right side of the item bitmap.
*/
#define NTBS_TEXTRIGHT 0x000000002L
@@ -346,7 +346,7 @@ typedef NTBITEMINFO* PNTBITEMINFO;
/**
* \def NTBM_SETITEM
* \brief Set the information of an item in a newtoolbar control.
* \brief Sets the information of an item in a newtoolbar control.
*
* \code
* NTBM_SETITEM
@@ -386,7 +386,7 @@ typedef NTBITEMINFO* PNTBITEMINFO;
/**
* \def NTBM_SETBITMAP
* \brief Set the bitmap of a newtoolbar control.
* \brief Sets the bitmap of a newtoolbar control.
*
* \code
* NTBM_SETBITMAP
+13 -13
View File
@@ -14,10 +14,10 @@
* \file progressbar.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: progressbar.h 10690 2008-08-18 09:32:47Z 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 _MGUI_CTRL_PROGRESSBAR_H
#define _MGUI_CTRL_PROGRESSBAR_H
#ifdef __cplusplus
extern "C" {
@@ -95,8 +95,8 @@ extern "C" {
/**
* \def PBS_NOTIFY
* \brief Notifies the parent window.
*
* Sends the parent window notification messages when
*
* Sends the parent window notification messages when
* the user clicks or double-clicks the control.
*/
#define PBS_NOTIFY 0x0001L
@@ -116,9 +116,9 @@ extern "C" {
/**
* \def PBM_SETRANGE
* \brief Set the limits of the range.
* \brief Sets the limits of the range.
*
* Set the upper and lower limits of the progress bar control's range,
* Sets the upper and lower limits of the progress bar control's range,
* and redraws the bar to reflect the new ranges.
*
* \code
@@ -155,9 +155,9 @@ extern "C" {
/**
* \def PBM_SETPOS
* \brief Set the progress bar control's current position.
* \brief Sets the progress bar control's current position.
*
* Set the progress bar control's current position as specified by nPos,
* Sets the progress bar control's current position as specified by nPos,
* and redraw the bar to reflect the new position.
*
* \code
@@ -175,9 +175,9 @@ extern "C" {
/**
* \def PBM_DELTAPOS
* \brief Advances the progress bar control's current position.
* \brief Advances the progress bar control's current position.
*
* Advances the progress bar control's current position as specified by posInc,
* Advances the progress bar control's current position as specified by posInc,
* and redraw the bar to reflect the new position.
*
* \code
@@ -197,7 +197,7 @@ extern "C" {
* \def PBM_STEPIT
* \brief Advances the current position by the step increment.
*
* Advances the current position for a progress bar control by
* Advances the current position for a progress bar control by
* the step increment, and redraw the bar to reflect the new position.
*
* \code
+19 -19
View File
@@ -14,10 +14,10 @@
* \file propsheet.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: propsheet.h 10690 2008-08-18 09:32:47Z 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.
*/
@@ -108,7 +108,7 @@ extern "C" {
/**
* \def PSS_BOTTOM
* \brief Bottom tab style. Tabs will be located at the bottom of
* \brief Bottom tab style. Tabs will be located at the bottom of
* the property sheet.
*/
#define PSS_BOTTOM 0x0010L
@@ -126,7 +126,7 @@ extern "C" {
/**
* \def PSM_GETACTIVEPAGE
* \brief Get the handle of current active page.
* \brief Gets the handle of current active page.
*
* Sends this message to retreive the propsheet window's active page.
*
@@ -163,7 +163,7 @@ extern "C" {
/**
* \def PSM_GETPAGE
* \brief Get the handle of a page by index.
* \brief Gets the handle of a page by index.
*
* Sends this message to retreive the handle to a page by index.
*
@@ -183,7 +183,7 @@ extern "C" {
/**
* \def PSM_GETACTIVEINDEX
* \brief Get the index of the current active page.
* \brief Gets the index of the current active page.
*
* Sends this message to retreive the index of the propsheet window's active page.
*
@@ -200,7 +200,7 @@ extern "C" {
/**
* \def PSM_GETPAGEINDEX
* \brief Get the index of a page by handle.
* \brief Gets the index of a page by handle.
*
* Sends this message to retreive the index to a page by handle.
*
@@ -220,7 +220,7 @@ extern "C" {
/**
* \def PSM_GETPAGECOUNT
* \brief Get the number of pages of the propsheet.
* \brief Gets the number of pages of the propsheet.
*
* Sends this message to retreive the number of pages currently in the propsheet.
*
@@ -237,7 +237,7 @@ extern "C" {
/**
* \def PSM_GETTITLELENGTH
* \brief Get the length of a page title.
* \brief Gets the length of a page title.
*
* Sends this message to retreive the title length of a page.
*
@@ -257,7 +257,7 @@ extern "C" {
/**
* \def PSM_GETTITLE
* \brief Get a page title.
* \brief Gets a page title.
*
* Sends this message to retreive the title of a page.
*
@@ -279,7 +279,7 @@ extern "C" {
/**
* \def PSM_SETTITLE
* \brief Set a page title.
* \brief Sets a page title.
*
* Sends this message to specify the title of a page.
*
@@ -327,7 +327,7 @@ extern "C" {
* \def PSM_REMOVEPAGE
* \brief Removes a page from the propsheet.
*
* Sends this message to remove a page from the propsheet and destroys the
* Sends this message to remove a page from the propsheet and destroys the
* associated controls.
*
* \code
@@ -349,10 +349,10 @@ extern "C" {
* \brief Sends a MSG_SHEETCMD message to all pages in the propsheet.
*
* If you send MSG_SHEETCMD message to the propsheet control, the control
* will broadcast the message to all pages it contains. The page callback
* will broadcast the message to all pages it contains. The page callback
* procedure will receive the message and handle it. If one page return non-zero
* value, the broadcast will be broken and the message will return a value
* indicating which page returned error. The value will be equal to the page index
* value, the broadcast will be broken and the message will return a value
* indicating which page returned error. The value will be equal to the page index
* plus one.
*
* The PSM_SHEETCMD can be used by property sheet window, i.e., the container
@@ -360,11 +360,11 @@ extern "C" {
* "Ok", "Cancel", and "Apply". When the user clicked the "Apply" or "Ok"
* button, it can send a PSM_SHEETCMD message to the propsheet control, the
* control will then send the message to all pages to notify pages to apply
* the changes made by the user. If there are some errors, the page can return
* the changes made by the user. If there are some errors, the page can return
* a non-zero value to indicate an invalid chage so that the sheet can stop
* to close the sheet window. You can tell the pages which action should
* be taken by passing a value through the WPARAM parameter of the message.
*
*
* \code
* PSM_SHEETCMD
* WPARAM wParam;
@@ -393,7 +393,7 @@ extern "C" {
/**
* \def PSN_ACTIVE_CHANGED
* \brief Notifies the parent window that the active page of
* \brief Notifies the parent window that the active page of
* the propsheet has been changed.
*/
#define PSN_ACTIVE_CHANGED 0x01
+29 -29
View File
@@ -12,12 +12,12 @@
//////////////////////////////////////////////////////////////////////////////
/**
* \file scrollbar.h
* \author wangjian
* \author wangjian
* \date 2008/01/17
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: scrollbar.h 10690 2008-08-18 09:32:47Z 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 _MGUI_CTRL_SCROLLBAR_H
#define _MGUI_CTRL_SCROLLBAR_H
#ifdef __cplusplus
extern "C" {
#endif /* __cplusplus */
@@ -105,7 +105,7 @@ extern "C" {
* \def SBS_BOTTOMALIGN
* \brief Create a horizontal scrollbar on the bottom of the rect.
*
* \note This style must be used together with SBS_HORZ, and the height of the
* \note This style must be used together with SBS_HORZ, and the height of the
* scrollbar will depend on the window elements or renderer.
*/
#define SBS_BOTTOMALIGN 0x0001
@@ -114,7 +114,7 @@ extern "C" {
* \def SBS_TOPALIGN
* \brief Create a horizontal scrollbar on the top of the rect.
*
* \note This style must be used together with SBS_HORZ, and the height of the
* \note This style must be used together with SBS_HORZ, and the height of the
* scrollbar will depend on the window elements or renderer.
*/
#define SBS_TOPALIGN 0x0002
@@ -123,7 +123,7 @@ extern "C" {
* \def SBS_LEFTALIGN
* \brief Create a vertical scrollbar on the left of the rect.
*
* \note This style must be used together with SBS_VERT, and the width of the
* \note This style must be used together with SBS_VERT, and the width of the
* scrollbar will depend on the window elements or renderer.
*/
#define SBS_LEFTALIGN 0x0001
@@ -132,7 +132,7 @@ extern "C" {
* \def SBS_RIGHTALIGN
* \brief Create a vertical scrollbar on the right of the rect.
*
* \note This style must be used together with SBS_VERT, and the width of the
* \note This style must be used together with SBS_VERT, and the width of the
* scrollbar will depend on the window elements or renderer.
*/
#define SBS_RIGHTALIGN 0x0002
@@ -191,15 +191,15 @@ extern "C" {
* \def SBM_GETPOS
* \brief Get the thumb pos of the scrollbar.
*
* An application sends a SBM_GETPOS message to get the start position
* of the scrollbar thumb.
* An application sends a SBM_GETPOS message to get the start position
* of the scrollbar thumb.
*
* \code
* SBM_GETPOS
* int pos;
*
*
* pos = SendMessage (hwnd_scrollbar, SBM_GETPOS, 0, 0);
* \endcode
* \endcode
*
* \return the postion of the thumb.
*/
@@ -209,20 +209,20 @@ extern "C" {
* \def SBM_SETPOS
* \brief Set the thumb pos of the scrollbar.
*
* An application sends a SBM_SETPOS message to set the start position
* of the scrollbar thumb.
* An application sends a SBM_SETPOS message to set the start position
* of the scrollbar thumb.
*
* \code
* SBM_SETPOS
* int pos = 10;
* BOOL redraw = TRUE;
*
*
* wParam = (WPARAM)pos;
* lParam = (LPARAM)redraw;
* SendMessage (hwnd_scrollbar, SBM_SETPOS, wParam, lParam);
* \endcode
*
* \param pos The new positon of the thumb to set.
* \param pos The new positon of the thumb to set.
* \param redraw Whether to repaint the control, TRUE for repaint, FALSE for not.
*
* \return the old postion of the thumb.
@@ -233,15 +233,15 @@ extern "C" {
* \def SBM_GETRANGE
* \brief Get the range of the scrollbar.
*
* An application sends a SBM_GETRANGE message to get the move
* range of the scrollbar.
* An application sends a SBM_GETRANGE message to get the move
* range of the scrollbar.
*
* \code
* SBM_GETRANGE
* int range;
*
*
* range = SendMessage (hwnd_scrollbar, SBM_GETRANGE, 0, 0);
* \endcode
* \endcode
*
* \return the range of the scrollbar.
*/
@@ -251,14 +251,14 @@ extern "C" {
* \def SBM_SETRANGE
* \brief Set the range of the scrollbar.
*
* An application sends a SBM_SETRANGE message to set the move
* range of the scrollbar.
* An application sends a SBM_SETRANGE message to set the move
* range of the scrollbar.
*
* \code
* SBM_SETRANGE
* int min = 0;
* int max = 100;
*
*
* wParam = (WPARAM)min;
* lParam = (LPARAM)max;
* SendMessage (hwnd_scrollbar, SBM_SETRANGE, wParam, lParam);
@@ -275,14 +275,14 @@ extern "C" {
* \def SBM_SETRANGEREDRAW
* \brief Set the range of the scrollbar.
*
* An application sends a SBM_SETRANGEREDRAW message to set the move
* range of the scrollbar and redraw the control.
* An application sends a SBM_SETRANGEREDRAW message to set the move
* range of the scrollbar and redraw the control.
*
* \code
* SBM_SETRANGEREDRAW
* int min = 0;
* int max = 100;
*
*
* wParam = (WPARAM)min;
* lParam = (LPARAM)max;
* SendMessage (hwnd_scrollbar, SBM_SETRANGEREDRAW, wParam, lParam);
@@ -300,13 +300,13 @@ extern "C" {
* \brief Enable or disable the arrow of the scrollbar.
*
* An application sends a SBM_ENABLE_ARROW message to enable or disable
* the arrow button of the scrollbar.
* the arrow button of the scrollbar.
*
* \code
* SBM_ENABLE_ARROW
* int which = SB_ARROW_LTUP;
* BOOL is_active;
*
*
* wParam = (WPARAM)which;
* lParam = (LPARAM)is_active;
* SendMessage (hwnd_scrollbar, SBM_ENABLE_ARROW, wParam, lParam);
File diff suppressed because it is too large Load Diff
+16 -16
View File
@@ -14,10 +14,10 @@
* \file spinbox.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: spinbox.h 10690 2008-08-18 09:32:47Z 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.
*/
@@ -100,9 +100,9 @@ typedef SPININFO *PSPININFO;
/**
* \fn void GetSpinBoxSize (DWORD dwStyle, int* w, int* h)
* \brief Get size of a vertical spin box control.
* \brief Gets size of a vertical spin box control.
*
* The spin box control in MiniGUI has fixed size.
* The spin box control in MiniGUI has fixed size.
* This function gets the size of a spin box control.
*
* \param dwStyle The style of the spin box.
@@ -118,7 +118,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPS_AUTOSCROLL
* \brief The spinbox control can automatically scroll,
* \brief The spinbox control can automatically scroll,
* and disable itself when reach maximal or minimal value.
*/
#define SPS_AUTOSCROLL 0x00000001L
@@ -131,26 +131,26 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPS_TYPE_NORMAL
* \brief The spinbox control contains the up and left arrows.
* \brief The spinbox control contains the up and left arrows.
*/
#define SPS_TYPE_NORMAL 0x00000000L
/**
* \def SPS_TYPE_UPARROW
* \brief The spinbox control contains only the up/left arrow.
* \brief The spinbox control contains only the up/left arrow.
*/
#define SPS_TYPE_UPARROW 0x00000100L
/**
* \def SPS_TYPE_DOWNARROW
* \brief The spinbox control contains only the down/right arrow.
* \brief The spinbox control contains only the down/right arrow.
*/
#define SPS_TYPE_DOWNARROW 0x00000200L
/**
* \def SPS_TYPE_MASK
* \brief The mask code of spinbox control.
*/
*/
#define SPS_TYPE_MASK 0x00000F00L
/** @} end of mgext_ctrl_spinbox_styles */
@@ -167,7 +167,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_SETTARGET
* \brief Set the target window of the spinbox.
* \brief Sets the target window of the spinbox.
*
* When the user click the up/left or down/right arrow of the spin box, it will
* emulate the down and up of the key SCANCODE_CURSORBLOCKUP or
@@ -190,7 +190,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_GETTARGET
* \brief Get the target window of the spinbox.
* \brief Gets the target window of the spinbox.
*
* \code
* SPM_GETTARGET
@@ -205,7 +205,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_SETINFO
* \brief Set the parameter information of the spinbox.
* \brief Sets the parameter information of the spinbox.
*
* \code
* SPM_SETINFO
@@ -225,7 +225,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_GETINFO
* \brief Get the parameter infos of the spinbox.
* \brief Gets the parameter infos of the spinbox.
*
* \code
* SPM_GETINFO
@@ -305,7 +305,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_SETCUR
* \brief Set the current position in the range of the spinbox.
* \brief Sets the current position in the range of the spinbox.
*
* \code
* SPM_SETCUR
@@ -323,7 +323,7 @@ void GetSpinBoxSize (DWORD dwStyle, int* w, int* h);
/**
* \def SPM_GETCUR
* \brief Get the current position in the range of the spinbox.
* \brief Gets the current position in the range of the spinbox.
*
* \code
* SPM_GETCUR
+27 -27
View File
@@ -14,10 +14,10 @@
* \file static.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: static.h 12453 2010-01-12 03:51:55Z dongkai $
*
* 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 _MGUI_CTRL_STATIC_H
#define _MGUI_CTRL_STATIC_H
#ifdef __cplusplus
extern "C" {
@@ -90,7 +90,7 @@ extern "C" {
/**
* \def SS_SIMPLE
* \brief Designates a simple rectangle and displays a single line
* \brief Designates a simple rectangle and displays a single line
* of text flush-left in the rectangle.
*/
#define SS_SIMPLE 0x00000000L
@@ -155,10 +155,10 @@ extern "C" {
/* Reserved */
#define SS_ENHMETAFILE 0x0000000BL
/**
/**
* \def SS_TYPEMASK
* \brief The mask code of the static control.
*/
*/
#define SS_TYPEMASK 0x0000000FL
/**
@@ -169,7 +169,7 @@ extern "C" {
/**
* \def SS_CENTER
* \brief Displays the given text centered in the rectangle.
* \brief Displays the given text centered in the rectangle.
*/
#define SS_CENTER 0x00000020L
@@ -179,16 +179,16 @@ extern "C" {
*/
#define SS_RIGHT 0x00000030L
/**
/**
* \def SS_ALIGNMASK
* \brief The mask code of the static control.
*/
*/
#define SS_ALIGNMASK 0x000000F0L
/**
* \def SS_NOPREFIX
* \brief Prevents interpretation of any ampersand (&) characters in
* \brief Prevents interpretation of any ampersand (&) characters in
* the control's text as accelerator prefix characters.
*
* \note Not implemented so far.
@@ -204,10 +204,10 @@ extern "C" {
/**
* \def SS_NOWORDWRAP
* \brief Designates a simple rectangle and displays the given text
* in single line in the rectangle.
* \brief Designates a simple rectangle and displays the given text
* in single line in the rectangle.
*
* Tabs are expanded, but words are not wrapped.
* Tabs are expanded, but words are not wrapped.
* Text that extends past the rectagnel is clipped.
*/
#define SS_NOWORDWRAP 0x00000400L
@@ -228,40 +228,40 @@ extern "C" {
/**
* \def SS_NOTIFY
* \brief Sends the parent window notification messages when the user
* \brief Sends the parent window notification messages when the user
* clicks or double-clicks the control.
*/
#define SS_NOTIFY 0x00001000L
/** @} end of ctrl_static_styles */
/**
* \defgroup ctrl_static_msgs Messages of static control
* @{
*/
/* Reserved */
#define STM_SETICON 0xF170
/* Reserved */
/* Reserved */
#define STM_GETICON 0xF171
/**
* \def STM_SETIMAGE
* \brief Associates a new image (icon or bitmap) with a static control.
*
* An application sends an STM_SETIMAGE message to
* An application sends an STM_SETIMAGE message to
* associate a new image (icon or bitmap) with a static control.
*
* \code
* STM_SETIMAGE
* HICON image;
* or
* or
* BITMAP* image;
*
* wParam = (WPARAM)image;
* lParam = 0;
* \endcode
*
* \param image The handle to an icon if the type of static control type
*
* \param image The handle to an icon if the type of static control type
* is SS_ICON, or the pointer to a BITMAP object if the type is SS_BITMAP.
*
* \return The old image (handle or pointer).
@@ -270,9 +270,9 @@ extern "C" {
/**
* \def STM_GETIMAGE
* \brief Retrieve a handle to the image.
* \brief Retrieves a handle to the image.
*
* An application sends an STM_GETIMAGE message to retrieve a handle
* An application sends an STM_GETIMAGE message to retrieve a handle
* to the image associated with a static control.
*
* \code
@@ -281,7 +281,7 @@ extern "C" {
* lParam = 0;
* \endcode
*
* \return The handle to the icon if the type of static control type is SS_ICON,
* \return The handle to the icon if the type of static control type is SS_ICON,
* or the pointer to the BITMAP object if the type is SS_BITMAP.
*/
#define STM_GETIMAGE 0xF173
@@ -299,21 +299,21 @@ extern "C" {
* \def STN_DBLCLK
* \brief Notifies a double-click.
*
* The STN_DBLCLK notification message is sent when
* The STN_DBLCLK notification message is sent when
* the user double-clicks a static control that has the SS_NOTIFY style.
*/
#define STN_DBLCLK 1
/* Not use */
#define STN_ENABLE 2
/* Not use */
/* Not use */
#define STN_DISABLE 3
/**
* \def STN_CLICKED
* \brief Notifies that a static control is clicked.
*
* The STN_CLICKED notification message is sent
* The STN_CLICKED notification message is sent
* when the user clicks a static control that has the SS_NOTIFY style.
*/
#define STN_CLICKED 4
+5 -5
View File
@@ -14,10 +14,10 @@
* \file textedit.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: textedit.h 12871 2010-05-07 06:13:42Z wanzheng $
*
* 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 _MGUI_CTRL_TEXTEDIT_H
#define _MGUI_CTRL_TEXTEDIT_H
#ifdef __cplusplus
extern "C" {
@@ -84,7 +84,7 @@ extern "C" {
#define CTRL_TEXTEDIT ("textedit")
/**
/**
* \var typedef GHANDLE HTEXTDOC
* \brief Text document/buffer object
*/
+29 -29
View File
@@ -14,10 +14,10 @@
* \file trackbar.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2001/12/29
*
*
\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.
@@ -55,13 +55,13 @@
/*
* $Id: trackbar.h 10690 2008-08-18 09:32:47Z 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 _MGUI_CTRL_TRACKBAR
#define _MGUI_CTRL_TRACKBAR
#ifdef __cplusplus
extern "C" {
@@ -96,7 +96,7 @@ extern "C" {
/**
* \def TBS_NOTIFY
* \brief Causes the trackbar to notify the parent window with a notification message
* \brief Causes the trackbar to notify the parent window with a notification message
* when the user clicks or doubleclicks the trackbar.
*/
#define TBS_NOTIFY 0x0001L
@@ -137,7 +137,7 @@ extern "C" {
/**
* \def TBM_SETRANGE
* \brief Set the range of minimum and maximum logical positions for the
* \brief Sets the range of minimum and maximum logical positions for the
* slider in a trackbar.
*
* \code
@@ -158,7 +158,7 @@ extern "C" {
/**
* \def TBM_GETMIN
* \brief Get the minimum logical position for the slider.
* \brief Gets the minimum logical position for the slider.
*
* \code
* TBM_GETMIN
@@ -173,7 +173,7 @@ extern "C" {
/**
* \def TBM_SETPOS
* \brief Set the current logical position of the slider.
* \brief Sets the current logical position of the slider.
*
* \code
* TBM_SETPOS
@@ -191,7 +191,7 @@ extern "C" {
/**
* \def TBM_GETPOS
* \brief Get the current logical position of the slider.
* \brief Gets the current logical position of the slider.
*
* \code
* TBM_GETPOS
@@ -206,10 +206,10 @@ extern "C" {
/**
* \def TBM_SETLINESIZE
* \brief Set the number of logical positions moved in response to keyboard
* \brief Sets the number of logical positions moved in response to keyboard
* input from the arrow keys.
*
* Set the number of logical positions the trackbar's slider moves in response
* Sets the number of logical positions the trackbar's slider moves in response
* to keyboard input from the arrow keys. The logical positions are the integer
* increments in the trackbar's range of minimum to maximum slider positions.
*
@@ -229,10 +229,10 @@ extern "C" {
/**
* \def TBM_GETLINESIZE
* \brief Get the number of logical positions moved in response to keyboard
* \brief Gets the number of logical positions moved in response to keyboard
* input from the arrow keys.
*
* Get the number of logical positions the trackbar's slider moves in response
* Gets the number of logical positions the trackbar's slider moves in response
* to keyboard input from the arrow keys. The logical positions are the integer
* increments in the trackbar's range of minimum to maximum slider positions.
*
@@ -249,12 +249,12 @@ extern "C" {
/**
* \def TBM_SETPAGESIZE
* \brief Set the number of logical positions moved in response to keyboard
* \brief Sets the number of logical positions moved in response to keyboard
* input from page keys..
*
* Set the number of logical positions the trackbar's slider moves in response
* to keyboard input form page keys, such as PAGE DOWN or PAGE UP keys. The
* logical positions are the integer increments in the trackbar's range of
* Sets the number of logical positions the trackbar's slider moves in response
* to keyboard input form page keys, such as PAGE DOWN or PAGE UP keys. The
* logical positions are the integer increments in the trackbar's range of
* minimum to maximum slider positions.
*
* \code
@@ -273,12 +273,12 @@ extern "C" {
/**
* \def TBM_GETPAGESIZE
* \brief Get the number of logical positions moved in response to keyboard
* \brief Gets the number of logical positions moved in response to keyboard
* input from page keys..
*
* Get the number of logical positions the trackbar's slider moves in response
* to keyboard input form page keys, such as PAGE DOWN or PAGE UP keys. The
* logical positions are the integer increments in the trackbar's range of
* Gets the number of logical positions the trackbar's slider moves in response
* to keyboard input form page keys, such as PAGE DOWN or PAGE UP keys. The
* logical positions are the integer increments in the trackbar's range of
* minimum to maximum slider positions.
*
* \code
@@ -294,7 +294,7 @@ extern "C" {
/**
* \def TBM_SETTIP
* \brief Set the start and end tip strings.
* \brief Sets the start and end tip strings.
*
* \code
* TBM_SETTIP
@@ -314,7 +314,7 @@ extern "C" {
/**
* \def TBM_GETTIP
* \brief Get the start and end tip strings.
* \brief Gets the start and end tip strings.
*
* \code
* TBM_GETTIP
@@ -336,7 +336,7 @@ extern "C" {
/**
* \def TBM_SETTICKFREQ
* \brief Set the interval frequency for tick marks in a trackbar.
* \brief Sets the interval frequency for tick marks in a trackbar.
*
* \code
* TBM_SETTICKFREQ
@@ -354,7 +354,7 @@ extern "C" {
/**
* \def TBM_GETTICKFREQ
* \brief Get the interval frequency for tick marks in a trackbar.
* \brief Gets the interval frequency for tick marks in a trackbar.
*
* \code
* TBM_GETTICKFREQ
@@ -369,7 +369,7 @@ extern "C" {
/**
* \def TBM_SETMIN
* \brief Set the minimum logical position for the slider in a trackbar.
* \brief Sets the minimum logical position for the slider in a trackbar.
*
* \code
* TBM_SETMIN
@@ -387,7 +387,7 @@ extern "C" {
/**
* \def TBM_SETMAX
* \brief Set the maximum logical position for the slider in a trackbar.
* \brief Sets the maximum logical position for the slider in a trackbar.
*
* \code
* TBM_SETMAX
@@ -405,7 +405,7 @@ extern "C" {
/**
* \def TBM_GETMAX
* \brief Get the maximum logical position for the slider in a trackbar.
* \brief Gets the maximum logical position for the slider in a trackbar.
*
* \code
* TBM_GETMAX
@@ -466,7 +466,7 @@ extern "C" {
/**
* \def LFRDR_TBS_PRESSED
* \brief indicate left button down
*/
*/
#define LFRDR_TBS_PRESSED 0x0100L
/**
+22 -22
View File
@@ -14,10 +14,10 @@
* \file treeview.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
\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.
@@ -55,7 +55,7 @@
/*
* $Id: treeview.h 13674 2010-12-06 06:45:01Z wanzheng $
*
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* pSOS, ThreadX, NuCleus, OSE, and Win32.
*/
@@ -76,7 +76,7 @@ extern "C" {
* \defgroup mgext_ctrl_treeview TreeView control
*
* \note You can pass the root item information through \a dwAddData
* argument of CreateWindowEx function.
* argument of CreateWindowEx function.
*
* \code
* HICON folded, unfolded;
@@ -84,7 +84,7 @@ extern "C" {
*
* CreateWindowEx (CTRL_TREEVIEW, ..., (DWORD)&tvii);
* \endcode
*
*
* @{
*/
@@ -141,7 +141,7 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVS_NOTIFY
* \brief Sends the parent window notification messages when the user
* \brief Sends the parent window notification messages when the user
* clicks or double-clicks the control.
*/
#define TVS_NOTIFY 0x0001L
@@ -194,7 +194,7 @@ typedef TVITEMINFO *PTVITEMINFO;
* \endcode
*
* \param parent Handle to the item who is the parent of the new item.
* \param newIteminfo Pointer to the item info structure of the new item
* \param newIteminfo Pointer to the item info structure of the new item
* to be added.
*
* \return The handle to the new item on success, otherwise return 0.
@@ -209,7 +209,7 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVM_GETROOT
* \brief Get the root item of a treeview control.
* \brief Gets the root item of a treeview control.
*
* \code
* TVM_GETROOT
@@ -285,7 +285,7 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVM_GETSELITEM
* \brief Get the selected item.
* \brief Gets the selected item.
*
* \code
* TVM_GETSELITEM
@@ -300,7 +300,7 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVM_SETSELITEM
* \brief Set the selected item.
* \brief Sets the selected item.
*
* \code
* TVM_SETSELITEM
@@ -372,7 +372,7 @@ typedef TVITEMINFO *PTVITEMINFO;
*
* \param item The handle to the item which we want to retrive.
* \param tvii A pointer to a TVITEMINFO structure to receive the item information.
* Note that the \a text field of this structure should be large enough to
* Note that the \a text field of this structure should be large enough to
* get the item text.
*
* \return Zero on success, otherwise -1.
@@ -420,7 +420,7 @@ typedef TVITEMINFO *PTVITEMINFO;
* lParam = (LPARAM)item;
* \endcode
*
* \param related A integer which indicates the relationship between
* \param related A integer which indicates the relationship between
* the item to retrive and the specified item, can be one of the following values:
* - TVIR_PARENT\n
* To retrive the parent item of the specified item.
@@ -439,12 +439,12 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVM_SETSTRCMPFUNC
* \brief Set the STRCMP function used to sort items.
* \brief Sets the STRCMP function used to sort items.
*
* An application sends a TVM_SETSTRCMPFUNC message to set a
* An application sends a TVM_SETSTRCMPFUNC message to set a
* new STRCMP function to sort items in the TreeView control.
*
* Note that you should send this message before adding
* Note that you should send this message before adding
* any item to the TreeView control.
*
* \code
@@ -480,8 +480,8 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVN_ERRSPACE
* \brief Indicates that memory is not enough.
*
* A list box sends an TVN_ERRSPACE notification message to its parent window
*
* A list box sends an TVN_ERRSPACE notification message to its parent window
* when it cannot allocate enough memory to complete the current operation.
*/
#define TVN_ERRSPACE 255
@@ -501,8 +501,8 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVN_SETFOCUS
* \brief Indicates gain of input focus.
*
* A TreeView control sends an TVN_SETFOCUS notification message to its parent window
*
* A TreeView control sends an TVN_SETFOCUS notification message to its parent window
* when the list box gains the input focus.
*/
#define TVN_SETFOCUS 4
@@ -510,8 +510,8 @@ typedef TVITEMINFO *PTVITEMINFO;
/**
* \def TVN_KILLFOCUS
* \brief Indicates loss of input focus.
*
* A TreeView control sends an TVN_KILLFOCUS notification message to its parent window
*
* A TreeView control sends an TVN_KILLFOCUS notification message to its parent window
* when the list box loses the input focus.
*/
#define TVN_KILLFOCUS 5
@@ -551,7 +551,7 @@ typedef TVITEMINFO *PTVITEMINFO;
* \a add_data argument of \a NotifyParentEx function. You should define and
* set Notificaton Callback Procedure for the control in order to
* get the handle to the unfolded item.
*
*
* \sa SetNotificationCallback, NotifyParentEx
*/
#define TVN_UNFOLDED 10
+29 -27
View File
@@ -23,7 +23,7 @@
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
Copyright (C) 2007~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -131,31 +131,7 @@
#define IAL_EVENT_GESTURE_PINCH_UPDATE 0x0084
#define IAL_EVENT_GESTURE_PINCH_END 0x0085
#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)
#ifndef TABLET_TOOL_X
#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
#define TABLET_TOOL_PROXIMITY_STATE_INVALID 0
#define TABLET_TOOL_PROXIMITY_STATE_OUT 1
#define TABLET_TOOL_PROXIMITY_STATE_IN 2
@@ -173,6 +149,31 @@
#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
@@ -234,8 +235,8 @@ typedef struct tagINPUT {
int (*wait_event_ex) (int maxfd, fd_set *in, fd_set *out,
fd_set *except, struct timeval *timeout, EXTRA_INPUT_EVENT* extra);
// since 5.0.0, save the mouse device
char* mdev;
/* BUGFIXING (VM 2020-03-12): merged from 5.0.0 */
char* mdev;
} INPUT;
#ifdef __cplusplus
@@ -253,3 +254,4 @@ extern void TermCustomInput (void);
#endif /* GUI_IAL_CUSTOM_H */
+1 -1
View File
@@ -53,7 +53,7 @@
*/
/*
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* MiniGUI for Linux/uClinux, eCos, uC/OS-II, VxWorks,
* pSOS, ThreadX, NuCleus, OSE, and Win32.
*
*/
+48 -47
View File
File diff suppressed because it is too large Load Diff
+237 -64
View File
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -23,7 +23,7 @@
and Graphics User Interface (GUI) support system for embedded systems
and smart IoT devices.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
+336 -1516
View File
File diff suppressed because it is too large Load Diff
+382 -1608
View File
File diff suppressed because it is too large Load Diff
+15 -15
View File
@@ -15,7 +15,7 @@
* \author Wei Yongming <vincent@minigui.org>
* \date 2005/01/11
*
* \brief This is the POSIX PThreads implementation in order to run
* \brief This is the POSIX PThreads implementation in order to run
* MiniGUI on Nucleus.
*
\verbatim
@@ -25,11 +25,11 @@
standard or equivalent documentation for details of the
functionality contained herein.
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.
Copyright (C) 2005~2020, Beijing FMSoft Technologies Co., Ltd.
Copyright (C) 2005~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
@@ -62,7 +62,7 @@
/*
* $Id: nucleus_pthread.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.
*/
@@ -123,8 +123,8 @@ typedef struct pthread_attr_t
} pthread_attr_t;
/* Values for detachstate */
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
/* Values for scope */
#define PTHREAD_SCOPE_SYSTEM 1
@@ -196,7 +196,7 @@ int pthread_detach (pthread_t thread);
** schedparam == unset
** stackaddr == unset
** stacksize == 0
*/
*/
int pthread_attr_init (pthread_attr_t *attr);
/* Destroy thread attributes object */
@@ -234,7 +234,7 @@ int pthread_attr_getschedpolicy (const pthread_attr_t *attr,
/* Set scheduling parameters */
int pthread_attr_setschedparam (pthread_attr_t *attr,
const struct sched_param *param);
const struct sched_param *param);
/* Get scheduling parameters */
int pthread_attr_getschedparam (const pthread_attr_t *attr,
@@ -319,8 +319,8 @@ void *pthread_getspecific (pthread_key_t key);
struct pthread_cleanup_buffer
{
struct pthread_cleanup_buffer *prev; /* Chain cleanup buffers */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
};
/*-----------------------------------------------------------------------------
@@ -396,16 +396,16 @@ void pthread_cleanup_pop_inner (struct pthread_cleanup_buffer *buffer,
**pthread_mutex_t
*/
typedef struct _pthread_mutex_t
typedef struct _pthread_mutex_t
{
NU_SEMAPHORE nu_mutex;
char name [NUPTH_LEN_NAME];
NU_SEMAPHORE nu_mutex;
char name [NUPTH_LEN_NAME];
} pthread_mutex_t;
/*define pthread_mutexattr_t */
typedef struct _pthread_mutexattr_t
typedef struct _pthread_mutexattr_t
{
unsigned int protocol;
unsigned int protocol;
} pthread_mutexattr_t;
/*-----------------------------------------------------------------------------
+10 -10
View File
@@ -14,8 +14,8 @@
* \file nucleus_semaphore.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2005/01/11
*
* \brief This is the POSIX semaphore implementation in order to run
*
* \brief This is the POSIX semaphore implementation in order to run
* MiniGUI on Nucleus.
*
\verbatim
@@ -24,14 +24,14 @@
POSIX semaphore under Nucleus. The reader is referred to the POSIX
standard or equivalent documentation for details of the
functionality contained herein.
We do this work in order to run MiniGUI on Nucleus.
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.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -65,7 +65,7 @@
/*
* $Id: nucleus_semaphore.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.
*/
@@ -87,11 +87,11 @@ extern "C" {
typedef struct _sem_t
{
NU_SEMAPHORE nu_sem;
char name [NUPTH_LEN_NAME];
NU_SEMAPHORE nu_sem;
char name [NUPTH_LEN_NAME];
} sem_t;
#define SEM_VALUE_MAX UINT_MAX
#define SEM_VALUE_MAX UINT_MAX
/*-----------------------------------------------------------------------------
** Semaphore functions
+7 -7
View File
@@ -14,8 +14,8 @@
* \file ose_semaphore.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2006/05/19
*
* \brief This is the Semaphore implementation in order to run
*
* \brief This is the Semaphore implementation in order to run
* MiniGUI on OSE.
*
\verbatim
@@ -27,11 +27,11 @@
We do this work in order to run MiniGUI on OSE.
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.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -65,7 +65,7 @@
/*
* $Id: ose_semaphore.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.
*/
@@ -78,7 +78,7 @@
extern "C" {
#endif /* __cplusplus */
#define OSEPTH_LEN_NAME 256
#define OSEPTH_LEN_NAME 256
/**
* @\type SEMAPHORE
@@ -94,7 +94,7 @@ typedef struct _sem_t
char name [OSEPTH_LEN_NAME];
} sem_t;
#define SEM_VALUE_MAX UINT_MAX
#define SEM_VALUE_MAX UINT_MAX
/*-----------------------------------------------------------------------------
** Semaphore functions
+36 -36
View File
@@ -16,13 +16,13 @@
this code without permission or acknowledgement in any way you wish.
Send questions, comments, complaints, performance data, etc to
dl@cs.oswego.edu.
last update: Sun Feb 25 18:38:11 2001 Doug Lea (dl at gee)
This header is for ANSI C/C++ only. You can set either of
the following #defines before including:
* If USE_DL_PREFIX is defined, it is assumed that malloc.c
* If USE_DL_PREFIX is defined, it is assumed that malloc.c
was also compiled with this option, so all routines
have names starting with "dl".
@@ -105,7 +105,7 @@ void* dlcalloc(size_t, size_t);
prefers extending p when possible, otherwise it employs the
equivalent of a malloc-copy-free sequence.
If p is null, realloc is equivalent to malloc.
If p is null, realloc is equivalent to malloc.
If space is not available, realloc returns null, errno is set (if on
ANSI) and p is NOT freed.
@@ -193,7 +193,7 @@ void* dlvalloc(size_t);
should instead use regular calloc and assign pointers into this
space to represent elements. (In this case though, you cannot
independently free elements.)
independent_calloc simplifies and speeds up implementations of many
kinds of pools. It may also be useful when constructing large data
structures that initially have a fixed number of fixed-sized nodes,
@@ -201,16 +201,16 @@ void* dlvalloc(size_t);
may later need to be freed. For example:
struct Node { int item; struct Node* next; };
struct Node* build_list() {
struct Node** pool;
int n = read_number_of_nodes_needed();
if (n <= 0) return 0;
pool = (struct Node**)(independent_calloc(n, sizeof(struct Node), 0);
if (pool == 0) return 0; // failure
// organize into a linked list...
// organize into a linked list...
struct Node* first = pool[0];
for (i = 0; i < n-1; ++i)
for (i = 0; i < n-1; ++i)
pool[i]->next = pool[i+1];
free(pool); // Can now free the array (or not, if it is needed later)
return first;
@@ -244,11 +244,11 @@ void** dlindependent_calloc(size_t, size_t, void**);
null if the allocation failed. If n_elements is zero and chunks is
null, it returns a chunk representing an array with zero elements
(which should be freed if not wanted).
Each element must be individually freed when it is no longer
needed. If you'd like to instead be able to free all at once, you
should instead use a single regular malloc, and assign pointers at
particular offsets in the aggregate space. (In this case though, you
particular offsets in the aggregate space. (In this case though, you
cannot independently free elements.)
independent_comallac differs from independent_calloc in that each
@@ -307,7 +307,7 @@ void* dlpvalloc(size_t);
Equivalent to free(p).
cfree is needed/defined on some systems that pair it with calloc,
for odd historical reasons (such as: cfree is used in example
for odd historical reasons (such as: cfree is used in example
code in the first edition of K&R).
*/
@@ -329,7 +329,7 @@ void dlcfree(void*);
some allocation patterns, some large free blocks of memory will be
locked between two used chunks, so they cannot be given back to
the system.
The `pad' argument to malloc_trim represents the amount of free
trailing space to leave untrimmed. If this argument is zero,
only the minimum amount of memory to maintain internal data
@@ -337,7 +337,7 @@ void dlcfree(void*);
can be supplied to maintain enough trailing space to service
future expected allocations without having to re-obtain memory
from the system.
Malloc_trim returns 1 if it actually released any memory, else 0.
On systems that do not support "negative sbrks", it will always
return 0.
@@ -402,17 +402,17 @@ void dlmalloc_stats();
mallinfo()
Returns (by copy) a struct containing various summary statistics:
arena: current total non-mmapped bytes allocated from system
ordblks: the number of free chunks
arena: current total non-mmapped bytes allocated from system
ordblks: the number of free chunks
smblks: the number of fastbin blocks (i.e., small chunks that
have been freed but not use resused or consolidated)
hblks: current number of mmapped regions
hblkhd: total bytes held in mmapped regions
hblks: current number of mmapped regions
hblkhd: total bytes held in mmapped regions
usmblks: the maximum total allocated space. This will be greater
than current total if trimming has occurred.
fsmblks: total bytes held in fastbin blocks
fsmblks: total bytes held in fastbin blocks
uordblks: current total allocated space (normal or mmapped)
fordblks: total free space
fordblks: total free space
keepcost: the maximum number of bytes that could ideally be released
back to system via malloc_trim. ("ideally" means that
it ignores page restrictions etc.)
@@ -420,7 +420,7 @@ void dlmalloc_stats();
The names of some of these fields don't bear much relation with
their contents because this struct was defined as standard in
SVID/XPG so reflects the malloc implementation that was then used
in SystemV Unix.
in SystemV Unix.
The original SVID version of this struct, defined on most systems
with mallinfo, declares all fields as ints. But some others define
@@ -439,16 +439,16 @@ void dlmalloc_stats();
#ifndef HAVE_USR_INCLUDE_MALLOC_H
#ifndef _MALLOC_H
struct mallinfo {
int arena;
int ordblks;
int smblks;
int hblks;
int hblkhd;
int usmblks;
int fsmblks;
int uordblks;
int fordblks;
int keepcost;
int arena;
int ordblks;
int smblks;
int hblks;
int hblkhd;
int usmblks;
int fsmblks;
int uordblks;
int fordblks;
int keepcost;
};
#endif
#endif
@@ -461,7 +461,7 @@ struct mallinfo mallinfo(void);
/*
mallopt(int parameter_number, int parameter_value)
Set tunable parameters The format is to provide a
Sets tunable parameters The format is to provide a
(parameter-number, parameter-value) pair. mallopt then sets the
corresponding parameter to the argument value if it can (i.e., so
long as the value is meaningful), and returns 1 if successful else
@@ -476,7 +476,7 @@ struct mallinfo mallinfo(void);
Symbol param # default allowed param values
M_MXFAST 1 64 0-80 (0 disables fastbins)
M_TRIM_THRESHOLD -1 128*1024 any (-1U disables trimming)
M_TOP_PAD -2 0 any
M_TOP_PAD -2 0 any
M_MMAP_THRESHOLD -3 128*1024 any (or 0 if no MMAP support)
M_MMAP_MAX -4 65536 any (0 disables use of mmap)
*/
@@ -560,7 +560,7 @@ int dlmallopt(int, int);
safeguards.
The trim value It must be greater than page size to have any useful
effect. To disable trimming completely, you can set to
effect. To disable trimming completely, you can set to
(unsigned long)(-1)
Trim settings interact with fastbin (MXFAST) settings: Unless
@@ -625,9 +625,9 @@ int dlmallopt(int, int);
Segregating space in this way has the benefits that:
1. Mmapped space can ALWAYS be individually released back
to the system, which helps keep the system level memory
demands of a long-lived program low.
1. Mmapped space can ALWAYS be individually released back
to the system, which helps keep the system level memory
demands of a long-lived program low.
2. Mapped memory can never become `locked' between
other chunks, as can happen with normally allocated chunks, which
means that even trimming via malloc_trim would not release them.
@@ -679,7 +679,7 @@ int dlmallopt(int, int);
#define M_KEEP 4 /* UNUSED in this malloc */
#endif
/*
/*
Some malloc.h's declare alloca, even though it is not part of malloc.
*/
+4 -4
View File
@@ -14,16 +14,16 @@
* \file own_stdio.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2002/01/06
*
*
* \brief ISO C standard I/O routines - with some POSIX 1003.1 extensions
*
\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.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -57,7 +57,7 @@
/*
* $Id: own_stdio.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.
*/
+217 -217
View File
File diff suppressed because it is too large Load Diff
+19 -19
View File
@@ -14,8 +14,8 @@
* \file psos_pthread.h
* \author Wei Yongming <ymwei@minigui.org>
* \date 2007/05/16
*
* \brief This is the POSIX PThreads implementation in order to
*
* \brief This is the POSIX PThreads implementation in order to
* run MiniGUI on pSOS.
*
*
@@ -28,11 +28,11 @@
We do this work in order to run MiniGUI on pSOS.
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.
Copyright (C) 2005~2020, Beijing FMSoft Technologies Co., Ltd.
Copyright (C) 2005~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
@@ -66,7 +66,7 @@
* $Id: psos_pthread.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.
*/
@@ -134,8 +134,8 @@ typedef struct pthread_attr_t
} pthread_attr_t;
/* Values for detachstate */
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
#if 0
/* Values for scope */
@@ -214,7 +214,7 @@ int pthread_detach (pthread_t thread);
** schedpolicy = SCHED_PREEMPT
** schedparam = PTHREAD_DEFAULT_PRIOR
** stacksize = PTHREAD_STACK_MIN
*/
*/
int pthread_attr_init (pthread_attr_t *attr);
/* Destroy thread attributes object */
@@ -257,7 +257,7 @@ int pthread_attr_getschedpolicy (const pthread_attr_t *attr,
/* Set scheduling parameters */
int pthread_attr_setschedparam (pthread_attr_t *attr,
const struct sched_param *param);
const struct sched_param *param);
/* Get scheduling parameters */
int pthread_attr_getschedparam (const pthread_attr_t *attr,
@@ -344,8 +344,8 @@ void *pthread_getspecific (pthread_key_t key);
struct pthread_cleanup_buffer
{
struct pthread_cleanup_buffer *prev; /* Chain cleanup buffers */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
};
/*-----------------------------------------------------------------------------
@@ -434,9 +434,9 @@ typedef unsigned long pthread_mutex_t;
#define PTHREAD_PRIO_PROTECT 4 /* MU_PRIOR | MU_PRIO_PROTECT */
/*define pthread_mutexattr_t */
typedef struct _pthread_mutexattr_t
typedef struct _pthread_mutexattr_t
{
int type;
int type;
int protocol;
unsigned long prio_ceiling;
} pthread_mutexattr_t;
@@ -453,8 +453,8 @@ int pthread_mutexattr_destroy ( pthread_mutexattr_t *attr);
/*
* Set mutex type: one of PTHREAD_MUTEX_NORMAL,
* PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_ERRORCHECK, or
* Set mutex type: one of PTHREAD_MUTEX_NORMAL,
* PTHREAD_MUTEX_RECURSIVE, PTHREAD_MUTEX_ERRORCHECK, or
* PTHREAD_MUTEX_DEFAULT.
*/
int pthread_mutexattr_settype (pthread_mutexattr_t *attr, int type);
@@ -464,7 +464,7 @@ int pthread_mutexattr_gettype (pthread_mutexattr_t *attr, int* type);
/*
* Set mutex protocol: one of PTHREAD_PRIO_FIFO, PTHREAD_PRIO_NONE,
* Set mutex protocol: one of PTHREAD_PRIO_FIFO, PTHREAD_PRIO_NONE,
* PTHREAD_PRIO_INHERIT, or PTHREAD_PRIO_PROTECT.
*/
int pthread_mutexattr_setprotocol (pthread_mutexattr_t *attr, int protocol);
@@ -499,11 +499,11 @@ int pthread_mutex_trylock (pthread_mutex_t *mutex);
/* Unlock mutex. */
int pthread_mutex_unlock (pthread_mutex_t *mutex);
/*
* Set the priority ceiling of MUTEX to CEILING, return
/*
* Set the priority ceiling of MUTEX to CEILING, return
* old priority ceiling value in *OLD_CEILING
*/
int pthread_mutex_setprioceiling (pthread_mutex_t *mutex, int ceiling,
int pthread_mutex_setprioceiling (pthread_mutex_t *mutex, int ceiling,
int* old_ceiling);
/* Get the priority ceiling of MUTEX. */
+6 -6
View File
@@ -14,8 +14,8 @@
* \file psos_semaphore.h
* \author Wei Yongming <vincent@minigui.org>
* \date 2007/05/16
*
* \brief This is the POSIX semaphore implementation in order to
*
* \brief This is the POSIX semaphore implementation in order to
run MiniGUI on pSOS.
*
\verbatim
@@ -27,11 +27,11 @@
We do this work in order to run MiniGUI on pSOS.
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.
Copyright (C) 2002~2020, Beijing FMSoft Technologies Co., Ltd.
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
@@ -65,7 +65,7 @@
/*
* $Id: psos_semaphore.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.
*/
@@ -80,7 +80,7 @@ extern "C" {
typedef unsigned long sem_t;
#define SEM_VALUE_MAX UINT_MAX
#define SEM_VALUE_MAX UINT_MAX
/*-----------------------------------------------------------------------------
** Semaphore functions
+17 -17
View File
@@ -14,8 +14,8 @@
* \file threadx_pthread.h
* \author Wei Yongming <ymwei@minigui.org>
* \date 2005/01/11
*
* \brief This is the POSIX PThreads implementation in order to
*
* \brief This is the POSIX PThreads implementation in order to
* run MiniGUI on ThreadX.
*
\verbatim
@@ -24,14 +24,14 @@
pthreads under ThreadX. The reader is referred to the POSIX
standard or equivalent documentation for details of the
functionality contained herein.
We do this work in order to run MiniGUI on ThreadX.
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.
Copyright (C) 2005~2020, Beijing FMSoft Technologies Co., Ltd.
Copyright (C) 2005~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
@@ -64,7 +64,7 @@
/*
* $Id: threadx_pthread.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.
*/
@@ -127,8 +127,8 @@ typedef struct pthread_attr_t
} pthread_attr_t;
/* Values for detachstate */
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
#define PTHREAD_CREATE_JOINABLE 1
#define PTHREAD_CREATE_DETACHED 2
/* Values for scope */
#define PTHREAD_SCOPE_SYSTEM 1
@@ -200,7 +200,7 @@ int pthread_detach (pthread_t thread);
** schedparam == unset
** stackaddr == unset
** stacksize == 0
*/
*/
int pthread_attr_init (pthread_attr_t *attr);
/* Destroy thread attributes object */
@@ -241,7 +241,7 @@ int pthread_attr_getschedpolicy (const pthread_attr_t *attr,
/* Set scheduling parameters */
int pthread_attr_setschedparam (pthread_attr_t *attr,
const struct sched_param *param);
const struct sched_param *param);
/* Get scheduling parameters */
int pthread_attr_getschedparam (const pthread_attr_t *attr,
@@ -328,8 +328,8 @@ void *pthread_getspecific (pthread_key_t key);
struct pthread_cleanup_buffer
{
struct pthread_cleanup_buffer *prev; /* Chain cleanup buffers */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
void (*routine) (void *); /* Function to call */
void *arg; /* Arg to pass */
};
/*-----------------------------------------------------------------------------
@@ -420,16 +420,16 @@ typedef struct TXPTH_MUTEX_STRUCT
void *tx_mutex_created_previous;
} TXPTH_MUTEX;
typedef struct _pthread_mutex_t
typedef struct _pthread_mutex_t
{
TXPTH_MUTEX tx_mutex;
char name [TXPTH_LEN_NAME];
TXPTH_MUTEX tx_mutex;
char name [TXPTH_LEN_NAME];
} pthread_mutex_t;
/*define pthread_mutexattr_t */
typedef struct _pthread_mutexattr_t
typedef struct _pthread_mutexattr_t
{
unsigned int protocol;
unsigned int protocol;
} pthread_mutexattr_t;
/*-----------------------------------------------------------------------------

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