mirror of
https://github.com/VincentWei/MiniGUI.git
synced 2026-09-24 00:54:18 +08:00
Compare commits
331
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
b4b18828b2 | ||
|
|
36167be7e6 | ||
|
|
4b633c801d | ||
|
|
33fd8a8668 | ||
|
|
94f44890a5 | ||
|
|
cc7441c4dd | ||
|
|
6fdc0281ba | ||
|
|
136a51d9b8 | ||
|
|
5e871c486b | ||
|
|
fdd69bf470 | ||
|
|
10e55b0d4f | ||
|
|
682c81d636 | ||
|
|
9eb4e54b75 | ||
|
|
e43bc07a63 | ||
|
|
508130afdc | ||
|
|
d60c057dc4 | ||
|
|
8f5a741af6 | ||
|
|
bee1bc87c4 | ||
|
|
3a9274e9a0 | ||
|
|
44ee735cd6 | ||
|
|
2c010cdbeb | ||
|
|
a04ae43bdb | ||
|
|
5c333445c5 | ||
|
|
dd93e67a3d | ||
|
|
d886268eee | ||
|
|
090824cb91 | ||
|
|
00eb4e363f | ||
|
|
f73f0786ee | ||
|
|
dacc81cf2a | ||
|
|
97c6249af5 | ||
|
|
7ce1fe47ff | ||
|
|
8e66bb366e | ||
|
|
ce7fd6e776 | ||
|
|
957f9cbb47 | ||
|
|
2a7e3003bd | ||
|
|
19cd208a6e | ||
|
|
6a44111a35 | ||
|
|
fd5d55942b | ||
|
|
d4e7f048f0 | ||
|
|
d90c4d5842 | ||
|
|
0f562cd39f | ||
|
|
fb01003c45 | ||
|
|
9bcea02975 | ||
|
|
c51ae8d1c1 | ||
|
|
b8a5ad2d73 | ||
|
|
39b8c88d1b | ||
|
|
1e73f6713a | ||
|
|
97babaa4e2 | ||
|
|
c6c486f306 | ||
|
|
338f10b896 | ||
|
|
2353a873a8 | ||
|
|
52c539e870 | ||
|
|
64d63a84c5 | ||
|
|
3d80d73450 | ||
|
|
2e04898fbe | ||
|
|
f390e1a091 | ||
|
|
848c1d7ce1 | ||
|
|
0c0becc780 | ||
|
|
0e918da2a4 | ||
|
|
7f36c339b7 | ||
|
|
871486daab | ||
|
|
0cffc8798f | ||
|
|
4d4a3901eb | ||
|
|
50e95cb461 | ||
|
|
d223edf0ba | ||
|
|
8e88082f07 | ||
|
|
5b1762b637 | ||
|
|
6c83ea4ceb | ||
|
|
5aa5e75813 | ||
|
|
1ba35dcbf6 | ||
|
|
8828824b23 | ||
|
|
e3f2cc22ec | ||
|
|
93aae6782e | ||
|
|
b746d2927e | ||
|
|
79e3be705c | ||
|
|
a052b7bf55 | ||
|
|
74a84362ca | ||
|
|
d673008f5a | ||
|
|
09c9438de8 | ||
|
|
0734180d70 | ||
|
|
8ca8deb02d | ||
|
|
9aa719aeb3 | ||
|
|
447eebbafc | ||
|
|
19f8689a20 | ||
|
|
60902f83d5 | ||
|
|
a725acfd5e | ||
|
|
0191772111 | ||
|
|
a11cef5f2e | ||
|
|
cf4c75bcbc | ||
|
|
f85801dcbe | ||
|
|
4e67f8c56b | ||
|
|
1cfd2fe324 | ||
|
|
5ef2e0fa42 | ||
|
|
57b71e985c | ||
|
|
d9d76ec59b | ||
|
|
7935883267 | ||
|
|
0385def7b2 | ||
|
|
565f4b34e5 | ||
|
|
70ba8a0420 | ||
|
|
4bdbe4a002 | ||
|
|
2c98ef96da | ||
|
|
6663c98787 | ||
|
|
bbf2376f7a | ||
|
|
21ac9f2def | ||
|
|
a10d28dd11 | ||
|
|
856126c72e | ||
|
|
547fc0059c | ||
|
|
195363dc82 | ||
|
|
54288e5687 | ||
|
|
9d46406a95 | ||
|
|
d365feca5d | ||
|
|
f34ac9d0fe | ||
|
|
3a02b056ca | ||
|
|
1a1e8cf652 | ||
|
|
94feb0ae44 | ||
|
|
1e1a5edd13 | ||
|
|
ae9b14201b | ||
|
|
742150d4f1 | ||
|
|
03eac03c8c | ||
|
|
8cd6b037ec | ||
|
|
b35e38bdff | ||
|
|
58275c88e9 | ||
|
|
31b43521d0 | ||
|
|
e68ee00b85 | ||
|
|
6e54d4a7d7 | ||
|
|
69b1d63569 | ||
|
|
817f4063a1 | ||
|
|
c9ec23dc70 | ||
|
|
972085fa56 | ||
|
|
c2e24b61e3 | ||
|
|
bd1fb67930 | ||
|
|
0fcedfca08 | ||
|
|
c39ce7c0b8 | ||
|
|
97014ccdc8 | ||
|
|
48e7f6e928 | ||
|
|
473f9f98ff | ||
|
|
95d09a7673 | ||
|
|
53253ed101 | ||
|
|
4bd7c0eef4 | ||
|
|
9af71438dd | ||
|
|
747894247b | ||
|
|
1ed5b44926 | ||
|
|
16287af2a6 | ||
|
|
82033a44dd | ||
|
|
1c9537fc63 | ||
|
|
612c395c06 | ||
|
|
8dc0ee2ade | ||
|
|
caefd7355a | ||
|
|
9ea0e15dba | ||
|
|
83c8984c74 | ||
|
|
c975fe5b8d | ||
|
|
b4569adbd5 | ||
|
|
4761333a1a | ||
|
|
715a44beeb | ||
|
|
e6bb4fa05f | ||
|
|
c436af69bb | ||
|
|
8538f29f70 | ||
|
|
b658413961 | ||
|
|
bb187f1ee3 | ||
|
|
ea8ab93bad | ||
|
|
9226fcff26 | ||
|
|
05cf370155 | ||
|
|
0d2352884a | ||
|
|
b18cd49398 | ||
|
|
1c2b4a893a | ||
|
|
5ef6e45848 | ||
|
|
088ef49c83 | ||
|
|
dbbd0f4da2 | ||
|
|
e4a2294ded | ||
|
|
f145f409e5 | ||
|
|
c44a64c95e | ||
|
|
2afb27a89d | ||
|
|
c643b10bbc | ||
|
|
c04c44eefb | ||
|
|
98baad2755 | ||
|
|
e9e7c43029 | ||
|
|
7805a3f5c3 | ||
|
|
0abc9c4aa6 | ||
|
|
2a97f34534 | ||
|
|
6de3db1482 | ||
|
|
019bc4deef | ||
|
|
9e17f428fe | ||
|
|
120705742e | ||
|
|
6e5407f42d | ||
|
|
2237be6721 | ||
|
|
faa7a2636e | ||
|
|
ce442b5e96 | ||
|
|
69050f7a5c | ||
|
|
fcbcc86c6f | ||
|
|
07a51b22ae | ||
|
|
1297ba836d | ||
|
|
09e83b6a8b | ||
|
|
ae532f03fa | ||
|
|
9945cd25a5 | ||
|
|
4f515a0359 | ||
|
|
808718bdb4 | ||
|
|
e7924ebd51 | ||
|
|
1935734df1 | ||
|
|
5ff06823e4 | ||
|
|
1bc43f6580 | ||
|
|
be27e8cb7c | ||
|
|
4597cbbc28 | ||
|
|
cde8a653b4 | ||
|
|
8b73fe0022 | ||
|
|
4db2aa093c | ||
|
|
d9da4d6e3a | ||
|
|
318dee8fd5 | ||
|
|
dcc50d45ce | ||
|
|
96a4e917d9 | ||
|
|
a507af807c | ||
|
|
9189fa4efe | ||
|
|
ac8e230207 | ||
|
|
2aa6794636 | ||
|
|
25d5b03154 | ||
|
|
ab8ce45ab0 | ||
|
|
2036a8592c | ||
|
|
dd0445689e | ||
|
|
0d49ed794e | ||
|
|
df627ee3b1 | ||
|
|
0599227023 | ||
|
|
66769dee51 | ||
|
|
1cfd032718 | ||
|
|
a45ee0b3f4 | ||
|
|
8b72783a12 | ||
|
|
378f7e1986 | ||
|
|
0b9c425b84 | ||
|
|
5e0dda0421 | ||
|
|
c0addda03b | ||
|
|
977ac1ec9b | ||
|
|
36d2ea8158 | ||
|
|
c1889bd927 | ||
|
|
6388d8049f | ||
|
|
8315dbb217 | ||
|
|
c0dd8d1bcd | ||
|
|
028bfd149f | ||
|
|
d101233a3a | ||
|
|
7960577981 | ||
|
|
69705646cc | ||
|
|
7c798483c4 | ||
|
|
bf69d0308a | ||
|
|
990b9eabc9 | ||
|
|
92fa47663a | ||
|
|
dbe75d3ea1 | ||
|
|
f4486140bc | ||
|
|
0b21445fd1 | ||
|
|
5e8cdc8cea | ||
|
|
1527a164da | ||
|
|
7f0f59bbe0 | ||
|
|
130780bf01 | ||
|
|
f3e40b9d51 | ||
|
|
f7dfca5482 | ||
|
|
f9135d7652 | ||
|
|
dc30cfc816 | ||
|
|
6fd1fdf39f | ||
|
|
24746c5ef6 | ||
|
|
2269c998e3 | ||
|
|
37b91e9482 | ||
|
|
0c8d08ed74 | ||
|
|
8ee505ddc8 | ||
|
|
cd888ca270 | ||
|
|
b5e197deeb | ||
|
|
8de5d45a6d | ||
|
|
87360df98d | ||
|
|
7c157d60ac | ||
|
|
73032f98a9 | ||
|
|
6e98d52d45 | ||
|
|
62efa8b29a | ||
|
|
5665bbb94b | ||
|
|
79c8048f83 | ||
|
|
0bec004433 | ||
|
|
e2c2ac0704 | ||
|
|
7c9fb6e4f7 | ||
|
|
c6c60b862b | ||
|
|
f4ccf7ee1c | ||
|
|
d9c95e1900 | ||
|
|
61ada7b217 | ||
|
|
655aabe2d0 | ||
|
|
4a29921154 | ||
|
|
242423951d | ||
|
|
41aa192d41 | ||
|
|
fad33d69f6 | ||
|
|
92b58d3114 | ||
|
|
60bc975fd9 | ||
|
|
1f5d3bff3a | ||
|
|
d8b8139ca1 | ||
|
|
2f3b486873 | ||
|
|
3380dd13d6 | ||
|
|
58050c7896 | ||
|
|
73d914293c | ||
|
|
9b9b912eb7 | ||
|
|
d5c8e15cb9 | ||
|
|
a3cd475ad0 | ||
|
|
d977609170 | ||
|
|
30ef378100 | ||
|
|
b1184d5358 | ||
|
|
8891a726a0 | ||
|
|
8b4334f969 | ||
|
|
8b01a29397 | ||
|
|
4b80497ee9 | ||
|
|
55a4566a33 | ||
|
|
78672276af | ||
|
|
8ddeb9806b | ||
|
|
9df26d14bf | ||
|
|
451c0cfca0 | ||
|
|
200855ddef | ||
|
|
708d8097eb | ||
|
|
71b769416e | ||
|
|
acda11e59e | ||
|
|
333ff9c83b | ||
|
|
a41c96fdbf | ||
|
|
78668dbdfc | ||
|
|
6290779a02 | ||
|
|
75764eecb4 | ||
|
|
dbcc408ad3 | ||
|
|
ea1c7b27ab | ||
|
|
62ac274c27 | ||
|
|
599c985146 | ||
|
|
ec35c3552a | ||
|
|
c1071cde84 | ||
|
|
4bbcc76f82 | ||
|
|
56f55fad9b | ||
|
|
766ddb5555 | ||
|
|
01bc3d7c42 | ||
|
|
a2a5dcbc2a | ||
|
|
b4e43c3514 | ||
|
|
786bb5f770 | ||
|
|
8b6731d706 | ||
|
|
b59f0b6a93 | ||
|
|
2fbff87cb4 | ||
|
|
060e483872 | ||
|
|
73ace78078 |
+25
@@ -0,0 +1,25 @@
|
||||
*.lo
|
||||
*.o
|
||||
*.la
|
||||
*.al
|
||||
*.a
|
||||
*.so
|
||||
Makefile
|
||||
Makefile.in
|
||||
.deps/
|
||||
.libs/
|
||||
/acinclude.m4
|
||||
/aclocal.m4
|
||||
/autom4te.cache
|
||||
/compile
|
||||
/missing
|
||||
/stamp-h1
|
||||
/config.*
|
||||
/configure
|
||||
/depcomp
|
||||
/install-sh
|
||||
/libtool
|
||||
/*.pc
|
||||
/*config.h
|
||||
/*config.h.in
|
||||
|
||||
+16
@@ -0,0 +1,16 @@
|
||||
The current main maintainers and/or developers:
|
||||
|
||||
* WEI Yongming
|
||||
|
||||
As employed engineers of [Beijing FMSoft Technologies Co., Ltd.],
|
||||
the following people have participated in the development of MiniGUI Core:
|
||||
|
||||
* HOU Huihua
|
||||
* WAN Zheng
|
||||
* DONG Kai
|
||||
* DONG Junjie
|
||||
* YAN Xiaowei
|
||||
|
||||
For community contributors, please see RELASENOTES.md documentation.
|
||||
|
||||
[Beijing FMSoft Technologies Co., Ltd.]: http://www.fmsoft.cn
|
||||
@@ -3216,7 +3216,7 @@ alExtra.(xwyan)
|
||||
* src/gui/lf_flat.c
|
||||
* src/gui/lf_skin.c
|
||||
|
||||
08/24: ENHANCEMENT #1: Add a new method for FONTOPS: get_glyph_type to return
|
||||
08/24: ENHANCEMENT #1: Add a new method for FONTOPS: get_char_type to return
|
||||
the glyph type the devfont can give us.
|
||||
* src/include/devfont.h
|
||||
* src/font/*.c
|
||||
@@ -4761,7 +4761,7 @@ create_skin_main_window_ex:
|
||||
* ext/skin/skin.c
|
||||
|
||||
05/16. ENHANCEMENT #8: Support for UTF-16LE and UTF-16BE charsets/encodings.
|
||||
* Change the definition of UChar32 to 'int'.
|
||||
* Change the definition of Uchar32 to 'int'.
|
||||
* include/gdi.h
|
||||
|
||||
05/16. ENHANCEMENT #11: Support for FreeType2.
|
||||
|
||||
@@ -1,273 +0,0 @@
|
||||
# Doxyfile 1.4.2
|
||||
|
||||
#---------------------------------------------------------------------------
|
||||
# Project related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
PROJECT_NAME = "MiniGUI V3.0.2 API Reference"
|
||||
PROJECT_NUMBER =
|
||||
OUTPUT_DIRECTORY = doc
|
||||
CREATE_SUBDIRS = NO
|
||||
OUTPUT_LANGUAGE = English
|
||||
USE_WINDOWS_ENCODING = NO
|
||||
BRIEF_MEMBER_DESC = YES
|
||||
REPEAT_BRIEF = YES
|
||||
ABBREVIATE_BRIEF = "The $name class" \
|
||||
"The $name widget" \
|
||||
"The $name file" \
|
||||
is \
|
||||
provides \
|
||||
specifies \
|
||||
contains \
|
||||
represents \
|
||||
a \
|
||||
an \
|
||||
the
|
||||
ALWAYS_DETAILED_SEC = YES
|
||||
INLINE_INHERITED_MEMB = NO
|
||||
FULL_PATH_NAMES = NO
|
||||
STRIP_FROM_PATH =
|
||||
STRIP_FROM_INC_PATH =
|
||||
SHORT_NAMES = NO
|
||||
JAVADOC_AUTOBRIEF = NO
|
||||
MULTILINE_CPP_IS_BRIEF = NO
|
||||
DETAILS_AT_TOP = NO
|
||||
INHERIT_DOCS = YES
|
||||
DISTRIBUTE_GROUP_DOC = NO
|
||||
TAB_SIZE = 8
|
||||
ALIASES =
|
||||
OPTIMIZE_OUTPUT_FOR_C = YES
|
||||
OPTIMIZE_OUTPUT_JAVA = NO
|
||||
SUBGROUPING = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Build related configuration options
|
||||
#---------------------------------------------------------------------------
|
||||
EXTRACT_ALL = NO
|
||||
EXTRACT_PRIVATE = NO
|
||||
EXTRACT_STATIC = YES
|
||||
EXTRACT_LOCAL_CLASSES = YES
|
||||
EXTRACT_LOCAL_METHODS = NO
|
||||
HIDE_UNDOC_MEMBERS = YES
|
||||
HIDE_UNDOC_CLASSES = YES
|
||||
HIDE_FRIEND_COMPOUNDS = NO
|
||||
HIDE_IN_BODY_DOCS = NO
|
||||
INTERNAL_DOCS = NO
|
||||
CASE_SENSE_NAMES = YES
|
||||
HIDE_SCOPE_NAMES = YES
|
||||
SHOW_INCLUDE_FILES = YES
|
||||
INLINE_INFO = YES
|
||||
SORT_MEMBER_DOCS = YES
|
||||
SORT_BRIEF_DOCS = NO
|
||||
SORT_BY_SCOPE_NAME = NO
|
||||
GENERATE_TODOLIST = YES
|
||||
GENERATE_TESTLIST = YES
|
||||
GENERATE_BUGLIST = YES
|
||||
GENERATE_DEPRECATEDLIST= YES
|
||||
ENABLED_SECTIONS =
|
||||
MAX_INITIALIZER_LINES = 30
|
||||
SHOW_USED_FILES = YES
|
||||
SHOW_DIRECTORIES = YES
|
||||
FILE_VERSION_FILTER =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to warning and progress messages
|
||||
#---------------------------------------------------------------------------
|
||||
QUIET = NO
|
||||
WARNINGS = YES
|
||||
WARN_IF_UNDOCUMENTED = YES
|
||||
WARN_IF_DOC_ERROR = YES
|
||||
WARN_NO_PARAMDOC = NO
|
||||
WARN_FORMAT = "$file:$line: $text"
|
||||
WARN_LOGFILE =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the input files
|
||||
#---------------------------------------------------------------------------
|
||||
INPUT = ./include
|
||||
FILE_PATTERNS = *.h
|
||||
RECURSIVE = YES
|
||||
EXCLUDE = YES
|
||||
EXCLUDE_SYMLINKS = NO
|
||||
EXCLUDE_PATTERNS = vcongui.h own_*.h psos.h psos_*.h threadx_*.h ucos2_*.h nucleus_*.h vxworks_*.h ose_*.h win32_*.h
|
||||
EXAMPLE_PATH = ./examples
|
||||
EXAMPLE_PATTERNS = *.c
|
||||
EXAMPLE_RECURSIVE = NO
|
||||
IMAGE_PATH =
|
||||
INPUT_FILTER =
|
||||
FILTER_PATTERNS =
|
||||
FILTER_SOURCE_FILES = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to source browsing
|
||||
#---------------------------------------------------------------------------
|
||||
SOURCE_BROWSER = YES
|
||||
INLINE_SOURCES = NO
|
||||
STRIP_CODE_COMMENTS = YES
|
||||
REFERENCED_BY_RELATION = YES
|
||||
REFERENCES_RELATION = YES
|
||||
VERBATIM_HEADERS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the alphabetical class index
|
||||
#---------------------------------------------------------------------------
|
||||
ALPHABETICAL_INDEX = YES
|
||||
COLS_IN_ALPHA_INDEX = 5
|
||||
IGNORE_PREFIX =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the HTML output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_HTML = YES
|
||||
HTML_OUTPUT = MiniGUI-API-REF-E.html
|
||||
HTML_FILE_EXTENSION = .html
|
||||
HTML_HEADER =
|
||||
HTML_FOOTER =
|
||||
HTML_STYLESHEET =
|
||||
HTML_ALIGN_MEMBERS = NO
|
||||
GENERATE_HTMLHELP = YES
|
||||
CHM_FILE = MiniGUI-API-REF-V2.0.4-E.chm
|
||||
HHC_LOCATION =
|
||||
GENERATE_CHI = YES
|
||||
BINARY_TOC = YES
|
||||
TOC_EXPAND = YES
|
||||
DISABLE_INDEX = NO
|
||||
ENUM_VALUES_PER_LINE = 4
|
||||
GENERATE_TREEVIEW = NO
|
||||
TREEVIEW_WIDTH = 250
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the LaTeX output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_LATEX = YES
|
||||
LATEX_OUTPUT = latex
|
||||
LATEX_CMD_NAME = latex
|
||||
MAKEINDEX_CMD_NAME = makeindex
|
||||
COMPACT_LATEX = NO
|
||||
PAPER_TYPE = a4wide
|
||||
EXTRA_PACKAGES =
|
||||
LATEX_HEADER =
|
||||
PDF_HYPERLINKS = YES
|
||||
USE_PDFLATEX = YES
|
||||
LATEX_BATCHMODE = YES
|
||||
LATEX_HIDE_INDICES = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the RTF output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_RTF = YES
|
||||
RTF_OUTPUT = rtf
|
||||
COMPACT_RTF = YES
|
||||
RTF_HYPERLINKS = YES
|
||||
RTF_STYLESHEET_FILE =
|
||||
RTF_EXTENSIONS_FILE =
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the man page output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_MAN = YES
|
||||
MAN_OUTPUT = man
|
||||
MAN_EXTENSION = .3
|
||||
MAN_LINKS = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the XML output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_XML = NO
|
||||
XML_OUTPUT = xml
|
||||
XML_SCHEMA =
|
||||
XML_DTD =
|
||||
XML_PROGRAMLISTING = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options for the AutoGen Definitions output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_AUTOGEN_DEF = NO
|
||||
#---------------------------------------------------------------------------
|
||||
# configuration options related to the Perl module output
|
||||
#---------------------------------------------------------------------------
|
||||
GENERATE_PERLMOD = NO
|
||||
PERLMOD_LATEX = NO
|
||||
PERLMOD_PRETTY = YES
|
||||
PERLMOD_MAKEVAR_PREFIX =
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the preprocessor
|
||||
#---------------------------------------------------------------------------
|
||||
ENABLE_PREPROCESSING = YES
|
||||
MACRO_EXPANSION = YES
|
||||
EXPAND_ONLY_PREDEF = YES
|
||||
SEARCH_INCLUDES = NO
|
||||
INCLUDE_PATH =
|
||||
INCLUDE_FILE_PATTERNS =
|
||||
PREDEFINED = _MGRM_PROCESSES \
|
||||
__GNUC__ \
|
||||
__LITTLE_ENDIAN__ \
|
||||
MINIGUI_MAJOR_VERSION \
|
||||
MINIGUI_MICRO_VERSION \
|
||||
MINIGUI_MINOR_VERSION \
|
||||
HAVE_SYS_TYPES_H \
|
||||
_MGHAVE_FIXED_MATH \
|
||||
_MGHAVE_MENU \
|
||||
_MGHAVE_CLIPBOARD \
|
||||
_MGHAVE_ADV_2DAPI \
|
||||
_MGHAVE_MOUSECALIBRATE \
|
||||
_MGMISC_ABOUTDLG \
|
||||
_MGMISC_SAVESCREEN \
|
||||
_MGMISC_SAVEBITMAP \
|
||||
_MGHAVE_CURSOR \
|
||||
_MGCHARSET_UNICODE \
|
||||
_MGCTRL_STATIC \
|
||||
_MGCTRL_SIMEDIT \
|
||||
_MGCTRL_SLEDIT \
|
||||
_MGCTRL_BIDISLEDIT \
|
||||
_MGCTRL_MLEDIT \
|
||||
_MGCTRL_PROGRESSBAR \
|
||||
_MGCTRL_LISTBOX \
|
||||
_MGCTRL_PROPSHEET \
|
||||
_MGCTRL_COMBOBOX \
|
||||
_MGCTRL_TOOLBAR \
|
||||
_MGCTRL_NEWTOOLBAR \
|
||||
_MGCTRL_MENUBUTTON \
|
||||
_MGCTRL_SCROLLVIEW \
|
||||
_MGCTRL_SCROLLBAR \
|
||||
_MGCTRL_TEXTEDIT \
|
||||
_MGCTRL_TRACKBAR \
|
||||
_MGCTRL_TREEVIEW \
|
||||
_MGCTRL_MONTHCAL \
|
||||
_MGCTRL_SPINBOX \
|
||||
_MGCTRL_COOLBAR \
|
||||
_MGCTRL_LISTVIEW \
|
||||
_MGCTRL_ICONVIEW \
|
||||
_MGCTRL_GRIDVIEW \
|
||||
_MGCTRL_BUTTON \
|
||||
_MGCTRL_ANIMATION \
|
||||
_MGFONT_FT2 \
|
||||
_MGFONT_BMPF
|
||||
EXPAND_AS_DEFINED = MGUI_HAS_64BIT_TYPE
|
||||
SKIP_FUNCTION_MACROS = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::additions related to external references
|
||||
#---------------------------------------------------------------------------
|
||||
TAGFILES =
|
||||
GENERATE_TAGFILE =
|
||||
ALLEXTERNALS = NO
|
||||
EXTERNAL_GROUPS = YES
|
||||
PERL_PATH = /usr/bin/perl
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration options related to the dot tool
|
||||
#---------------------------------------------------------------------------
|
||||
CLASS_DIAGRAMS = NO
|
||||
HIDE_UNDOC_RELATIONS = YES
|
||||
HAVE_DOT = NO
|
||||
CLASS_GRAPH = YES
|
||||
COLLABORATION_GRAPH = YES
|
||||
GROUP_GRAPHS = YES
|
||||
UML_LOOK = NO
|
||||
TEMPLATE_RELATIONS = NO
|
||||
INCLUDE_GRAPH = YES
|
||||
INCLUDED_BY_GRAPH = YES
|
||||
CALL_GRAPH = NO
|
||||
GRAPHICAL_HIERARCHY = YES
|
||||
DIRECTORY_GRAPH = YES
|
||||
DOT_IMAGE_FORMAT = png
|
||||
DOT_PATH =
|
||||
DOTFILE_DIRS =
|
||||
MAX_DOT_GRAPH_WIDTH = 1024
|
||||
MAX_DOT_GRAPH_HEIGHT = 1024
|
||||
MAX_DOT_GRAPH_DEPTH = 1000
|
||||
DOT_TRANSPARENT = NO
|
||||
DOT_MULTI_TARGETS = NO
|
||||
GENERATE_LEGEND = YES
|
||||
DOT_CLEANUP = YES
|
||||
#---------------------------------------------------------------------------
|
||||
# Configuration::additions related to the search engine
|
||||
#---------------------------------------------------------------------------
|
||||
SEARCHENGINE = NO
|
||||
+2489
File diff suppressed because it is too large
Load Diff
+2489
File diff suppressed because it is too large
Load Diff
+2489
File diff suppressed because it is too large
Load Diff
@@ -631,8 +631,8 @@ to attach them to the start of each source file to most effectively
|
||||
state the exclusion of warranty; and each file should have at least
|
||||
the "copyright" line and a pointer to where the full notice is found.
|
||||
|
||||
{one line to give the program's name and a brief idea of what it does.}
|
||||
Copyright (C) {year} {name of author}
|
||||
<one line to give the program's name and a brief idea of what it does.>
|
||||
Copyright (C) <year> <name of author>
|
||||
|
||||
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
|
||||
@@ -652,7 +652,7 @@ Also add information on how to contact you by electronic and paper mail.
|
||||
If the program does terminal interaction, make it output a short
|
||||
notice like this when it starts in an interactive mode:
|
||||
|
||||
{project} Copyright (C) {year} {fullname}
|
||||
<program> Copyright (C) <year> <name of author>
|
||||
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
||||
This is free software, and you are welcome to redistribute it
|
||||
under certain conditions; type `show c' for details.
|
||||
|
||||
@@ -1,30 +1,32 @@
|
||||
Licensing Policy for GPL'd MiniGUI versions
|
||||
# Licensing Policy for GPLed MiniGUI versions
|
||||
|
||||
By now, FMSoft releases some MiniGUI versions under
|
||||
GPL license. This is the licensing policy for the GPL'd MiniGUI
|
||||
versions.
|
||||
By now, FMSoft releases MiniGUI versions under GPLv3 license.
|
||||
This is the licensing policy for the GPLed MiniGUI versions.
|
||||
|
||||
In Brief
|
||||
========
|
||||
Note that in this file, "MiniGUI" means MiniGUI core, mGi,
|
||||
mGp, mG3d, mGPlus, mGEff, mGNCS, mGNCS4Touch, and other
|
||||
MiniGUI components and/or tools which will be released
|
||||
under GPL in the future.
|
||||
|
||||
## In Brief
|
||||
|
||||
This is our licensing policy in brief: Our software is 100% GPL,
|
||||
and if yours is also 100% GPL, then you never have to pay us
|
||||
for the licences. In all other instances, you are better served
|
||||
by our commercial licence. Read the details below!
|
||||
|
||||
Licensing
|
||||
=========
|
||||
## Licensing
|
||||
|
||||
MiniGUI software is licensed under the GPL license. The formal terms
|
||||
of the GPL license can be found in the GNU General Public License
|
||||
section of the MiniGUI User Manual, or the file named "COPYING".
|
||||
section of the MiniGUI User Manual, or the file named "LICENSE" or
|
||||
"COPYING".
|
||||
|
||||
MiniGUI is also available under commercial non-GPL license. For pricing
|
||||
and ordering information, visit our web page:
|
||||
|
||||
http://www.fmsoft.cn/
|
||||
|
||||
|
||||
1. Free use for those who are 100% GPL
|
||||
|
||||
If your application is licensed under GPL, you are free and welcome
|
||||
@@ -43,13 +45,13 @@ irrespective of whether your application is under GPL license or not.
|
||||
|
||||
More specifically:
|
||||
|
||||
* Modifying - You are allowed to modify MiniGUI source code any way
|
||||
you like. If you distribute the modified version, all
|
||||
changes, all interface code and all code that connects
|
||||
directly or indirectly to the interface code fall under GPL.
|
||||
* Modifying - You are allowed to modify MiniGUI source code any way
|
||||
you like. If you distribute the modified version, all
|
||||
changes, all interface code and all code that connects
|
||||
directly or indirectly to the interface code fall under GPL.
|
||||
|
||||
* Copying - You are allowed to copy MiniGUI binaries and source code,
|
||||
but when you do so, the copies will fall under the GPL.
|
||||
* Copying - You are allowed to copy MiniGUI binaries and source code,
|
||||
but when you do so, the copies will fall under the GPL.
|
||||
|
||||
|
||||
3. Commercial use for everyone else
|
||||
@@ -60,24 +62,24 @@ a commercial license to the MiniGUI software in question.
|
||||
|
||||
More specifically:
|
||||
|
||||
a) If you want to use MiniGUI on an operating system which is not
|
||||
compatible with GPL (most commercial RTOSes, such as VxWorks and
|
||||
ThreadX), you need a commercial license for the MiniGUI library.
|
||||
* If you want to use MiniGUI on an operating system which is not
|
||||
compatible with GPL (most commercial RTOSes, such as VxWorks and
|
||||
ThreadX), you need a commercial license for the MiniGUI library.
|
||||
|
||||
b) If you link MiniGUI in your non-GPL application, you need a commercial
|
||||
licence for the MiniGUI library. Using MiniGUI with non-GPL operating
|
||||
systems (proprietary OSes, like VxWorks, ThreadX, uC/OS-II) falls into
|
||||
this situation. Linking MiniGUI with your non-GPL application and
|
||||
proprietary libarires also falls into this situation.
|
||||
* If you link MiniGUI in your non-GPL application, you need a commercial
|
||||
licence for the MiniGUI library. Using MiniGUI with non-GPL operating
|
||||
systems (proprietary OSes, like VxWorks, ThreadX, uC/OS-II) falls into
|
||||
this situation. Linking MiniGUI with your non-GPL application and
|
||||
proprietary libarires also falls into this situation.
|
||||
|
||||
c) If you use MiniGUI library within your organisation and you don't want
|
||||
to risk it falling under the GPL license, you are welcome to purchase
|
||||
a commercial license.
|
||||
* If you use MiniGUI library within your organisation and you don't want
|
||||
to risk it falling under the GPL license, you are welcome to purchase
|
||||
a commercial license.
|
||||
|
||||
d) Many users opt for the commercial licence simply because under it
|
||||
FMSoft takes responsibility for its products. Under the GPL licence,
|
||||
there are no warranties or representations from the
|
||||
developer (i.e. from FMSoft).
|
||||
* Many users opt for the commercial licence simply because under it
|
||||
FMSoft takes responsibility for its products. Under the GPL licence,
|
||||
there are no warranties or representations from the
|
||||
developer (i.e. from FMSoft).
|
||||
|
||||
|
||||
4. Exceptions and free commercial licences
|
||||
@@ -114,28 +116,22 @@ sell our commercial licences at prices well under the industry average,
|
||||
and this is without compromising our own profitability.
|
||||
|
||||
|
||||
Older Versions
|
||||
==============
|
||||
## Older Versions
|
||||
|
||||
Note that older versions of the MiniGUI are using the lesser GPL license
|
||||
(LGPL). See the documentation for the specific version for more
|
||||
information.
|
||||
|
||||
|
||||
When in doubt
|
||||
=============
|
||||
## When in doubt
|
||||
|
||||
If you have any questions on MiniGUI licensing, feel free to contact us:
|
||||
|
||||
mailto: sales@minigui.com
|
||||
|
||||
Patents
|
||||
=======
|
||||
----
|
||||
|
||||
MiniGUI is also protected by patents (200810111336.X and so on).
|
||||
The owner of these patents is Beijing FMSoft technologies Co., Ltd..
|
||||
|
||||
GPL = Gnu General Public License, http://www.gnu.org/copyleft/gpl.html
|
||||
LGPL = GNU General Public License, http://www.gnu.org/copyleft/lgpl.html
|
||||
FMSoft = Beijing FMSoft technologies Co., Ltd., http://www.fmsoft.cn
|
||||
* GPL = Gnu General Public License, http://www.gnu.org/copyleft/gpl.html
|
||||
* LGPL = GNU General Public License, http://www.gnu.org/copyleft/lgpl.html
|
||||
* FMSoft = Beijing FMSoft technologies Co., Ltd., http://www.fmsoft.cn
|
||||
|
||||
@@ -0,0 +1,179 @@
|
||||
# MiniGUI GPL 版本的授权策略
|
||||
|
||||
目前,飞漫软件遵循 GPL 条款发布 MiniGUI 及其组件。本文档描述飞漫软件针对
|
||||
商业用户的 MiniGUI 及其组件授权策略。
|
||||
|
||||
注:本文所指 MiniGUI,包含了 MiniGUI 核心库以及 mGi、mGp、mG3d、mGEff、
|
||||
mGPlus、mGNCS、mGNCS4Touch 以及其他在未来可能以 GPL 条款发布的 MiniGUI
|
||||
组件或工具。
|
||||
|
||||
## 简介
|
||||
|
||||
简而言之,飞漫软件针对 MiniGUI 的授权策略是:MiniGUI 是 100% 按照 GPL 条款
|
||||
发布的自由软件,如果您能 100% 遵守 GPL 许可证条款,则无需支付任何授权费用。
|
||||
在其他任何情况下,都需要获得我们的商业授权。
|
||||
|
||||
老版本 MiniGUI(1.3.0 版本之前)遵循 LGPL 条款发布,因为嵌入式系统无法
|
||||
保障用户获得修改 MiniGUI 函数库并进行调试的自由,从而无法确保 LGPL 在
|
||||
嵌入式产品中的实施,因此,如果要在嵌入式产品中使用老版本的 MiniGUI, 也必须
|
||||
首先购买商业授权。
|
||||
|
||||
|
||||
## 授权详解
|
||||
|
||||
自 MiniGUI V1.3.0 起,我们遵循 GNU General Public License 许可证(简称 GPL)
|
||||
发布 MiniGUI。该条款的原文可见和 MiniGUI 源代码一同发布的 COPYING 或者
|
||||
LICENSE 文件。相比早期版本使用的 LGPL(GNU Lesser General Public License)
|
||||
许可证, GPL 所定义的条款要严格的多,更能有效维护自由软件的权益,避免自由
|
||||
软件成为专有系统的一部分。有关 GPL 许可证的解释及适用,可参阅 GNU 官方网站上的
|
||||
相关网页:
|
||||
|
||||
http://www.gnu.org/licenses/licenses.html
|
||||
|
||||
同时,我们为无法或者不愿 100% 遵循 GPL 条款使用 MiniGUI 的用户提供商业授权。
|
||||
具体价格及购买方法,请访问:
|
||||
|
||||
http://www.minigui.com/product/cindex.shtml
|
||||
|
||||
|
||||
1. 如果您 100% 遵循 GPL,无需获得商业授权
|
||||
|
||||
如果您使用 MiniGUI 的应用程序以 GPL 发布,则无需获得我们的商业授权。
|
||||
我们非常欢迎任何人在遵循 GPL 条款的基础上复制、修改和发布 MiniGUI。
|
||||
在这种情况下,您无需获得飞漫软件的任何形式的(包括口头或书面)使用授权,
|
||||
因为 GPL 条款本身就足够确保您的权益。但需要注意的是,飞漫软件不对这种
|
||||
形式下的使用提供任何形式的担保或技术支持。
|
||||
|
||||
|
||||
2. 如果您从不复制、修改和发布 MiniGUI,无需获得商业授权
|
||||
|
||||
只要您从不复制、修改和发布 MiniGUI,则您可以在您的应用程序中使用 MiniGUI,而无需
|
||||
获得商业授权。举个例子,您在完成一篇学位论文,并因此在您的程序中使用了 MiniGUI,
|
||||
您的程序仅仅用来说明您论文中试验的可行性或者结果,而且您没有修改 MiniGUI,并且
|
||||
该程序不以任何方式被复制和发布,则您无需获得商业授权。飞漫软件也不对这种形式下的
|
||||
使用提供任何担保。
|
||||
|
||||
但需要特别指出:
|
||||
|
||||
* 修改。我们欢迎您对 MiniGUI 进行任意的修改。如果你发布该修改版本,则您
|
||||
对 MiniGUI 所做的任何修改、所有的接口代码以及直接和间接地与接口相关联的
|
||||
代码将遵循 GPL 许可证。
|
||||
|
||||
* 复制。我们允许您复制 MiniGUI 二进制代码和/或源代码,但一旦这么做了,所有的
|
||||
副本应遵循 GPL 许可证。
|
||||
|
||||
|
||||
3. 其他情况均需获得商业授权
|
||||
|
||||
如果您使用 MiniGUI 的应用程序并不以 GPL 条款发布,却打算在内部或外部发布
|
||||
使用 MiniGUI 的应用程序或者函数库,则您必须首先获得飞漫软件的商业授权。
|
||||
|
||||
特别是:
|
||||
|
||||
* 如果您使用的嵌入式操作系统不采用 GPL 授权条款(比如 uC/OS-II、ThreadX、
|
||||
VxWorks 等操作系统),则必须购买 MiniGUI 商业授权。
|
||||
|
||||
* 您的非 GPL 应用程序连接了 MiniGUI,不管静态还是动态连接,您需要为每一个
|
||||
MiniGUI 函数库副本购买商业授权。尤其在您使用传统嵌入式操作系统时,操作
|
||||
系统、函数库、MiniGUI 和您的应用程序需要编译链接成完整的可执行映像,这时,
|
||||
必须购买 MiniGUI 商业授权。
|
||||
|
||||
* 如果您在自己的单位使用 MiniGUI 函数库,但又不希望将其置于 GPL 许可证
|
||||
之下,则需要购买商业授权。
|
||||
|
||||
* 当然,更多的人购买 MiniGUI 的商业授权,其目的非常简单,他们希望获得
|
||||
来自飞漫软件的技术支持和软件质量担保。
|
||||
|
||||
|
||||
4. 建议
|
||||
|
||||
对商业用户,我们建议购买 MiniGUI 的商业授权。这不仅仅能帮助您避免为满足 GPL
|
||||
条款而付出太多的硬件和软件开发费用,从而保护自己专有系统的商业利益,也可以从
|
||||
飞漫软件获得质量担保——GPL 软件不含任何形式的、间接或直接的担保。
|
||||
|
||||
对自由软件社区的用户,或者经费不足的科研院校,我们建议您在开发基于 MiniGUI 的
|
||||
应用程序时,采用 GPL 或者其他的开放源码许可证条款。这样,能在最大程度上满足
|
||||
GPL 许可证条款,您也不必购买 MiniGUI 的商业授权。
|
||||
|
||||
如果您不知道自己的产品能否 100% 满足 LGPL 条款,则建议您选择商业授权,因为对
|
||||
飞漫软件来讲,我们会保护商业客户的利益,并通过优秀的技术支持和产品担保来确保
|
||||
您的产品能够顺利开发并良好运行。
|
||||
|
||||
|
||||
## 老的版本
|
||||
|
||||
在版本 1.3.0 之前,MiniGUI 使用 LGPL 条款发布。这种条款为非自由软件使用自由
|
||||
函数库而提供了非常宽松的条件。但是,LGPL 条款仍然为复制、修改和发布 LGPL 软件
|
||||
定义了一些约束性的条款,以避免 LGPL 软件变成专有系统事实上的一部分,或者
|
||||
通过一些技术障碍来阻止用户获得 LGPL 条款定义的自由。这些条款包括以下几个方面:
|
||||
|
||||
* 对 MiniGUI 本身的复制、修改和发布行为,均应在确保 MiniGUI 仍然为函数库、
|
||||
仍然遵循 LGPL 或者 GPL 许可证的前提下进行。
|
||||
|
||||
* 使用 MiniGUI 必然要生成可执行文件。根据 LGPL 条款的定义,该可执行文件
|
||||
是 MiniGUI 的“衍生作品”,并且应该按照 LGPL 许可证之第 6 条发布该可
|
||||
执行文件。该条款的核心思想是,确保用户知悉在该“衍生作品”中使用了
|
||||
遵循 LGPL 条款发布的 MiniGUI 函数库,用户因此将得到修改 MiniGUI 的权利;
|
||||
在用户修改了 MiniGUI 函数库的情况下,只要修改后的版本和原先的版本在接口
|
||||
上是兼容的,则应确保用户仍能够生成“衍生作品”(静态连接的情况),或者
|
||||
“衍生作品”仍然能够正常工作(动态连接的情况)。因此,“衍生作品”的发布
|
||||
必须以确保用户获得上述自由为前提和条件。
|
||||
|
||||
飞漫软件认为,MiniGUI 在大多数嵌入式系统中的应用,会因为某些技术上的障碍而不可
|
||||
避免地阻碍用户获得上述自由:
|
||||
|
||||
* 某些嵌入式系统根本不存在任何硬件上的条件或机制(比如程序上载接口),以
|
||||
帮助用户运行和调试修改后的 MiniGUI 函数库。
|
||||
|
||||
* 某些嵌入式系统采用了其他非开放源码的专有操作系统,用户根本无法免费获得
|
||||
用于编译、连接和调试修改后 MiniGUI 函数库的工具。
|
||||
|
||||
* 某些嵌入式系统,因为专利或技术保密等原因,禁止用户对程序采用反向工程和
|
||||
反汇编,从而禁止用户调试修改后的 MiniGUI 函数库。
|
||||
|
||||
如果您剥夺了用户获得修改 MiniGUI 的权利,即使您遵循了 LGPL 许可证的其他条款发布
|
||||
了修改后的 MiniGUI 源代码,则仍不属于 100% 遵循 LGPL 条款。这时,您需要获得飞漫
|
||||
的商业授权。那么,嵌入式系统需要完成哪些工作才算 100% 遵循 LGPL 条款呢?
|
||||
|
||||
* 确保按照 LGPL 条款复制、修改和发布 MiniGUI 函数库本身。
|
||||
|
||||
* 如果您采用静态连接方式生成使用 MiniGUI 函数库的可执行程序,则应确保提供
|
||||
用于生成最终可执行程序的全部目标代码和/或源代码。
|
||||
|
||||
* 如果您采用动态连接方式使用 MiniGUI 函数库,则应确保在达到接口兼容性的情况
|
||||
下,使用 MiniGUI 函数库的可执行程序仍然能够正常工作。
|
||||
|
||||
* 您必须允许用户对您的程序进行反向工程,以便用户调试修改后的 MiniGUI 函数库。
|
||||
|
||||
* 如果您采用了非开放源码的专有嵌入式操作系统,则请确保和您的产品一同提供用于
|
||||
编译、连接和调试程序的工具,或者您的用户可免费获得这些工具。
|
||||
|
||||
* 您的产品还应该在硬件和软件上提供替换原先 MiniGUI 函数库和/或使用 MiniGUI
|
||||
的可执行程序的机制和条件,以便用户在您的嵌入式产品中调试和运行修改之后
|
||||
的 MiniGUI 函数库。
|
||||
|
||||
* 其他为确保用户具有修改 MiniGUI 函数库的自由而应该提供的法律许可及软硬件条件。
|
||||
|
||||
|
||||
因此,我们认为在嵌入式系统中使用老版本 MiniGUI,也必须购买商业授权。
|
||||
|
||||
|
||||
## MiniGUI 商业授权
|
||||
|
||||
有关 MiniGUI 产品及商业授权的方式及价格,请访问
|
||||
|
||||
http://www.minigui.com/
|
||||
|
||||
|
||||
## 如有疑问
|
||||
|
||||
如果您对上述授权策略有任何疑问,请联系我们:
|
||||
|
||||
mailto: sales@minigui.com
|
||||
|
||||
----
|
||||
|
||||
* GPL = GNU General Public License, http://www.gnu.org/copyleft/gpl.html
|
||||
* LGPL = GNU General Public License, http://www.gnu.org/copyleft/lgpl.html
|
||||
* FMSoft = FMSoft, http://www.fmsoft.cn
|
||||
|
||||
@@ -1,180 +0,0 @@
|
||||
|
||||
MiniGUI GPL 版 本 的 授 权 策 略
|
||||
|
||||
目前,飞漫软件遵循 GPL 授权条款发布某些 MiniGUI 版本。本文档描述
|
||||
用户使用这些 GPL 版本时应该遵循的授权策略。
|
||||
|
||||
简介
|
||||
====
|
||||
|
||||
简而言之,飞漫软件针对 MiniGUI 的授权策略是:MiniGUI 是 100% 按照 GPL 条款
|
||||
发布的自由软件,如果您能 100% 遵守 GPL 许可证条款,则无需支付任何授权费用。
|
||||
在其他任何情况下,都需要获得我们的商业授权。
|
||||
|
||||
老版本 MiniGUI(1.3.0 版本之前)遵循 LGPL 条款发布,因为嵌入式系统无法
|
||||
保障用户获得修改 MiniGUI 函数库并进行调试的自由,从而无法确保 LGPL 在
|
||||
嵌入式产品中的实施,因此,如果要在嵌入式产品中使用老版本的 MiniGUI, 也必须
|
||||
首先购买商业授权。
|
||||
|
||||
|
||||
授权详解
|
||||
========
|
||||
|
||||
自 MiniGUI V1.3.0 起,我们遵循 GNU General Public License 许可证(简称 GPL)
|
||||
发布 MiniGUI。该条款的原文可见和 MiniGUI 源代码一同发布的 COPYING 文件。
|
||||
相比早期版本使用的 LGPL(GNU Lesser General Public License)许可证,
|
||||
GPL 所定义的条款要严格的多,更能有效维护自由软件的权益,避免自由软件成为
|
||||
专有系统的一部分。有关 GPL 许可证的解释及适用,可参阅 GNU 官方网站上的
|
||||
相关网页:
|
||||
|
||||
http://www.gnu.org/licenses/licenses.html
|
||||
|
||||
同时,我们为无法或者不愿 100% 遵循 GPL 条款使用 MiniGUI 的用户提供商业授权。
|
||||
具体价格及购买方法,请访问:
|
||||
|
||||
http://www.minigui.com/product/cindex.shtml
|
||||
|
||||
|
||||
1. 如果您 100% 遵循 GPL,无需获得商业授权
|
||||
|
||||
如果您使用 MiniGUI 的应用程序以 GPL 发布,则无需获得我们的商业授权。
|
||||
我们非常欢迎任何人在遵循 GPL 条款的基础上复制、修改和发布 MiniGUI。
|
||||
在这种情况下,您无需获得飞漫软件的任何形式的(包括口头或书面)使用授权,
|
||||
因为 GPL 条款本身就足够确保您的权益。但需要注意的是,飞漫软件不对这种
|
||||
形式下的使用提供任何形式的担保或技术支持。
|
||||
|
||||
|
||||
2. 如果您从不复制、修改和发布 MiniGUI,无需获得商业授权
|
||||
|
||||
只要您从不复制、修改和发布 MiniGUI,则您可以在您的应用程序中使用 MiniGUI,而无需
|
||||
获得商业授权。举个例子,您在完成一篇学位论文,并因此在您的程序中使用了 MiniGUI,
|
||||
您的程序仅仅用来说明您论文中试验的可行性或者结果,而且您没有修改 MiniGUI,并且
|
||||
该程序不以任何方式被复制和发布,则您无需获得商业授权。飞漫软件也不对这种形式下的
|
||||
使用提供任何担保。
|
||||
|
||||
但需要特别指出:
|
||||
|
||||
* 修改。我们欢迎您对 MiniGUI 进行任意的修改。如果你发布该修改版本,则您
|
||||
对 MiniGUI 所做的任何修改、所有的接口代码以及直接和间接地与接口相关联的
|
||||
代码将遵循 GPL 许可证。
|
||||
|
||||
* 复制。我们允许您复制 MiniGUI 二进制代码和/或源代码,但一旦这么做了,所有的
|
||||
副本应遵循 GPL 许可证。
|
||||
|
||||
|
||||
3. 其他情况均需获得商业授权
|
||||
|
||||
如果您使用 MiniGUI 的应用程序并不以 GPL 条款发布,却打算在内部或外部发布
|
||||
使用 MiniGUI 的应用程序或者函数库,则您必须首先获得飞漫软件的商业授权。
|
||||
|
||||
特别是:
|
||||
|
||||
* 如果您使用的嵌入式操作系统不采用 GPL 授权条款(比如 uC/OS-II、ThreadX、
|
||||
VxWorks 等操作系统),则必须购买 MiniGUI 商业授权。
|
||||
|
||||
* 您的非 GPL 应用程序连接了 MiniGUI,不管静态还是动态连接,您需要为每一个
|
||||
MiniGUI 函数库副本购买商业授权。尤其在您使用传统嵌入式操作系统时,操作
|
||||
系统、函数库、MiniGUI 和您的应用程序需要编译链接成完整的可执行映像,这时,
|
||||
必须购买 MiniGUI 商业授权。
|
||||
|
||||
* 如果您在自己的单位使用 MiniGUI 函数库,但又不希望将其置于 GPL 许可证
|
||||
之下,则需要购买商业授权。
|
||||
|
||||
* 当然,更多的人购买 MiniGUI 的商业授权,其目的非常简单,他们希望获得
|
||||
来自飞漫软件的技术支持和软件质量担保。
|
||||
|
||||
|
||||
4. 建议
|
||||
|
||||
对商业用户,我们建议购买 MiniGUI 的商业授权。这不仅仅能帮助您避免为满足 GPL
|
||||
条款而付出太多的硬件和软件开发费用,从而保护自己专有系统的商业利益,也可以从
|
||||
飞漫软件获得质量担保——GPL 软件不含任何形式的、间接或直接的担保。
|
||||
|
||||
对自由软件社区的用户,或者经费不足的科研院校,我们建议您在开发基于 MiniGUI 的
|
||||
应用程序时,采用 GPL 或者其他的开放源码许可证条款。这样,能在最大程度上满足
|
||||
GPL 许可证条款,您也不必购买 MiniGUI 的商业授权。
|
||||
|
||||
如果您不知道自己的产品能否 100% 满足 LGPL 条款,则建议您选择商业授权,因为对
|
||||
飞漫软件来讲,我们会保护商业客户的利益,并通过优秀的技术支持和产品担保来确保
|
||||
您的产品能够顺利开发并良好运行。
|
||||
|
||||
|
||||
老的版本
|
||||
========
|
||||
|
||||
在版本 1.3.0 之前,MiniGUI 使用 LGPL 条款发布。这种条款为非自由软件使用自由
|
||||
函数库而提供了非常宽松的条件。但是,LGPL 条款仍然为复制、修改和发布 LGPL 软件
|
||||
定义了一些约束性的条款,以避免 LGPL 软件变成专有系统事实上的一部分,或者
|
||||
通过一些技术障碍来阻止用户获得 LGPL 条款定义的自由。这些条款包括以下几个方面:
|
||||
|
||||
* 对 MiniGUI 本身的复制、修改和发布行为,均应在确保 MiniGUI 仍然为函数库、
|
||||
仍然遵循 LGPL 或者 GPL 许可证的前提下进行。
|
||||
|
||||
* 使用 MiniGUI 必然要生成可执行文件。根据 LGPL 条款的定义,该可执行文件
|
||||
是 MiniGUI 的“衍生作品”,并且应该按照 LGPL 许可证之第 6 条发布该可
|
||||
执行文件。该条款的核心思想是,确保用户知悉在该“衍生作品”中使用了
|
||||
遵循 LGPL 条款发布的 MiniGUI 函数库,用户因此将得到修改 MiniGUI 的权利;
|
||||
在用户修改了 MiniGUI 函数库的情况下,只要修改后的版本和原先的版本在接口
|
||||
上是兼容的,则应确保用户仍能够生成“衍生作品”(静态连接的情况),或者
|
||||
“衍生作品”仍然能够正常工作(动态连接的情况)。因此,“衍生作品”的发布
|
||||
必须以确保用户获得上述自由为前提和条件。
|
||||
|
||||
飞漫软件认为,MiniGUI 在大多数嵌入式系统中的应用,会因为某些技术上的障碍而不可
|
||||
避免地阻碍用户获得上述自由:
|
||||
|
||||
* 某些嵌入式系统根本不存在任何硬件上的条件或机制(比如程序上载接口),以
|
||||
帮助用户运行和调试修改后的 MiniGUI 函数库。
|
||||
|
||||
* 某些嵌入式系统采用了其他非开放源码的专有操作系统,用户根本无法免费获得
|
||||
用于编译、连接和调试修改后 MiniGUI 函数库的工具。
|
||||
|
||||
* 某些嵌入式系统,因为专利或技术保密等原因,禁止用户对程序采用反向工程和
|
||||
反汇编,从而禁止用户调试修改后的 MiniGUI 函数库。
|
||||
|
||||
如果您剥夺了用户获得修改 MiniGUI 的权利,即使您遵循了 LGPL 许可证的其他条款发布
|
||||
了修改后的 MiniGUI 源代码,则仍不属于 100% 遵循 LGPL 条款。这时,您需要获得飞漫
|
||||
的商业授权。那么,嵌入式系统需要完成哪些工作才算 100% 遵循 LGPL 条款呢?
|
||||
|
||||
* 确保按照 LGPL 条款复制、修改和发布 MiniGUI 函数库本身。
|
||||
|
||||
* 如果您采用静态连接方式生成使用 MiniGUI 函数库的可执行程序,则应确保提供
|
||||
用于生成最终可执行程序的全部目标代码和/或源代码。
|
||||
|
||||
* 如果您采用动态连接方式使用 MiniGUI 函数库,则应确保在达到接口兼容性的情况
|
||||
下,使用 MiniGUI 函数库的可执行程序仍然能够正常工作。
|
||||
|
||||
* 您必须允许用户对您的程序进行反向工程,以便用户调试修改后的 MiniGUI 函数库。
|
||||
|
||||
* 如果您采用了非开放源码的专有嵌入式操作系统,则请确保和您的产品一同提供用于
|
||||
编译、连接和调试程序的工具,或者您的用户可免费获得这些工具。
|
||||
|
||||
* 您的产品还应该在硬件和软件上提供替换原先 MiniGUI 函数库和/或使用 MiniGUI
|
||||
的可执行程序的机制和条件,以便用户在您的嵌入式产品中调试和运行修改之后
|
||||
的 MiniGUI 函数库。
|
||||
|
||||
* 其他为确保用户具有修改 MiniGUI 函数库的自由而应该提供的法律许可及软硬件条件。
|
||||
|
||||
|
||||
因此,我们认为在嵌入式系统中使用老版本 MiniGUI,也必须购买商业授权。
|
||||
|
||||
|
||||
MiniGUI 商业授权
|
||||
================
|
||||
|
||||
有关 MiniGUI 产品及商业授权的方式及价格,请访问
|
||||
|
||||
http://www.minigui.com/
|
||||
|
||||
|
||||
如有疑问
|
||||
========
|
||||
|
||||
如果您对上述授权策略有任何疑问,请联系我们:
|
||||
|
||||
mailto: sales@minigui.com
|
||||
|
||||
|
||||
GPL = GNU General Public License, http://www.gnu.org/copyleft/gpl.html
|
||||
LGPL = GNU General Public License, http://www.gnu.org/copyleft/lgpl.html
|
||||
FMSoft = FMSoft, http://www.fmsoft.cn
|
||||
|
||||
+4
-3
@@ -1,10 +1,11 @@
|
||||
SUBDIRS = src 3rd-party include rtos etc m4 cmake build
|
||||
|
||||
EXTRA_DIST = \
|
||||
minigui.pc.in \
|
||||
GNUmakefile makefile.ng makefile.msvc rules.make \
|
||||
Version INSTALL LICENSE \
|
||||
README.md RELEASE-NOTES.md LICENSE.POLICY
|
||||
minigui.pc.in
|
||||
README.md RELEASE-NOTES.md \
|
||||
LICENSE-POLICY-en.md LICENSE-POLICY-zh.md
|
||||
|
||||
# The directory where the include files will be installed
|
||||
libminiguiincludedir = $(includedir)/minigui
|
||||
@@ -13,7 +14,7 @@ libminiguiincludedir = $(includedir)/minigui
|
||||
libminiguiinclude_HEADERS = mgconfig.h
|
||||
|
||||
docs:
|
||||
doxygen Doxyfile
|
||||
doxygen Doxyfile.procs Doxyfile.ths Doxyfile.sa
|
||||
|
||||
dist-nolicense: dist
|
||||
./clean_license.sh $(DIST_ARCHIVES)
|
||||
|
||||
@@ -1,59 +1,68 @@
|
||||
# MiniGUI
|
||||
|
||||
A mature cross-platform windowing system and GUI system for embedded and IoT devices.
|
||||
A mature and proven cross-platform GUI system for embedded and smart IoT devices.
|
||||
|
||||
|
||||
## TABLE OF CONTENTS
|
||||
|
||||
1. Introduction
|
||||
1. A brief building instruction
|
||||
1. New features in version 3.4.x
|
||||
1. New features in version 3.2.x
|
||||
1. The runtime modes of MiniGUI
|
||||
1. History
|
||||
1. About the authors
|
||||
1. If you have a problem
|
||||
1. A little FAQ
|
||||
1. Copying
|
||||
1. Not free for commercial use
|
||||
1. Copying
|
||||
|
||||
|
||||
## INTRODUCTION
|
||||
|
||||
MiniGUI is a mature cross-platform windowing system and GUI (Graphics
|
||||
User Interface) support system for embedded systems and IoT devices. This
|
||||
is the mainline release of MiniGUI maintained by WEI Yongming.
|
||||
|
||||
MiniGUI is a mature cross-platform windowing system and a GUI (Graphics
|
||||
User Interface) support system for embedded systems and smart IoT devices.
|
||||
This is the version 3.2.x of MiniGUI maintained by WEI Yongming
|
||||
(Vincent Wei, https://github.com/VincentWei).
|
||||
|
||||
MiniGUI is released under GPLv3 and the dual-licensing applies to commercial
|
||||
use.
|
||||
|
||||
MiniGUI aims to provide a fast, stable, full-featured, and cross-platform
|
||||
windowing and GUI support system, which is especially fit for
|
||||
embedded systems or IoT devices based-on Linux/uClinux, eCos, and other
|
||||
traditional RTOSes, such as VxWorks, ThreadX, Nucleus, pSOS, uC/OS-II,
|
||||
windowing and GUI support system, which is especially fit for
|
||||
embedded systems or smart IoT devices based-on Linux/uClinux, eCos, and other
|
||||
traditional RTOSes, such as VxWorks, ThreadX, Nucleus, pSOS, uC/OS-II,
|
||||
and OSE.
|
||||
|
||||
This is the MiniGUI core source tarball, which provides windowing
|
||||
and graphics interfaces as well as a lot of standard controls.
|
||||
This is the MiniGUI core source tree, which provides windowing
|
||||
and graphics interfaces as well as a lot of standard controls (tookit).
|
||||
|
||||
Besides MiniGUI core, FMSoft also provides some components
|
||||
for the developers to develop app much easier:
|
||||
|
||||
* mGPlus: A MiniGUI component which provides support for advanced graphics
|
||||
* mGUtils: A MiniGUI component which contains miscellaneous utilities
|
||||
like ColorSelectionDialogBox, FileOpenDialogBox, and so on.
|
||||
|
||||
* mGPlus: A MiniGUI component which provides support for advanced graphics
|
||||
functions like path, gradient, anti-aliase stretch, and color combination.
|
||||
|
||||
* mGNCS: This component provides a new control set for MiniGUI app.
|
||||
By using mGNCS, you can use miniStudio to develop MiniGUI app in
|
||||
WYSIWYG way.
|
||||
|
||||
* mGEff: mGEff provides an animation framework for MiniGUI app.
|
||||
* mGEff: mGEff provides an animation framework for MiniGUI app.
|
||||
It also provides some popular UI/UE special effects.
|
||||
|
||||
* mGNCS: This component provides a new control set for MiniGUI app.
|
||||
By using mGNCS, you can use miniStudio to develop MiniGUI app in
|
||||
WYSIWYG way.
|
||||
|
||||
* mGNCS4Touch: This component provides some new controls, which are
|
||||
compliant to the new control API spec of mGNCS, for devices with
|
||||
a touch screen.
|
||||
|
||||
There are also some legacy MiniGUI components. We will not maintain these
|
||||
components for MiniGUI core v3.2:
|
||||
|
||||
* mGi: An input method component for MiniGUI. This component provides
|
||||
some typical input methods (such as softkey, hand-writing, and predict
|
||||
text input for mobile phone) for MiniGUI apps.
|
||||
|
||||
* mGUtils: A MiniGUI component which contains miscellaneous utilities
|
||||
like ColorSelectionDialogBox, FileOpenDialogBox, and so on.
|
||||
|
||||
There are also some legacy MiniGUI components:
|
||||
text input for mobile phone) for MiniGUI apps.
|
||||
|
||||
* mGp: A printing component for MiniGUI. By using mGp, you can print
|
||||
out the graphics created by MiniGUI app to general-purpose printers.
|
||||
@@ -62,11 +71,11 @@ There are also some legacy MiniGUI components:
|
||||
provides a simple 3D API for app. You can use mG3d to create simple
|
||||
3D UI.
|
||||
|
||||
MiniGUI is a free software project. In December 1998, the initiator of
|
||||
FMSoft, Wei Yongming, began to develop MiniGUI under the GNU General Public
|
||||
License (GPL). In September 2002, the core developers of
|
||||
MiniGUI founded FMSoft and started the commercial marketing with
|
||||
the free software. By now, FMSoft still continues to release MiniGUI
|
||||
MiniGUI is a free software project. In December 1998, the initiator of
|
||||
FMSoft, Wei Yongming, began to develop MiniGUI under the GNU General Public
|
||||
License (GPL). In September 2002, the core developers of
|
||||
MiniGUI founded FMSoft and started the commercial marketing with
|
||||
the free software. By now, FMSoft still continues to release MiniGUI
|
||||
as a free software project.
|
||||
|
||||
You can download the source code tarball of MiniGUI and the dependent libraries
|
||||
@@ -74,31 +83,89 @@ from the download zone of the site:
|
||||
|
||||
http://www.minigui.com
|
||||
|
||||
FMSoft also releases some open source apps for MiniGUI on the site above,
|
||||
FMSoft also releases some open source apps for MiniGUI on the site above,
|
||||
for examples:
|
||||
|
||||
* mDolphin, licensed under Apache 2.0, is a full-featured
|
||||
WEB/WAP browser, which is developed based on the open source browser
|
||||
* mDolphin, licensed under Apache 2.0, is a full-featured
|
||||
WEB/WAP browser, which is developed based on the open source browser
|
||||
core WebKit and uses MiniGUI as its underlying graphics support system.
|
||||
|
||||
* mGallery, licensed under Apache 2.0, intends to
|
||||
provide a total solution for PMP (Portable Multimedia Player),
|
||||
* mGallery, licensed under Apache 2.0, intends to
|
||||
provide a total solution for PMP (Portable Multimedia Player),
|
||||
which uses MiniGUI as the graphics platform.
|
||||
|
||||
* mSpider, licensed under GPL 3.0, intends to provide a
|
||||
* mSpider, licensed under GPL 3.0, intends to provide a
|
||||
light-weight MiniGUI-based web browser (HTML 3.2 and part JavaScript)
|
||||
|
||||
* mEagle, licensed under GPL 3.0, is an embedded GIS development platform
|
||||
* mEagle, licensed under GPL 3.0, is an embedded GIS development platform
|
||||
which addresses the needs of map browse, query, analysis, etc
|
||||
|
||||
FMSoft had created the public repositories for MiniGUI core, MiniGUI
|
||||
FMSoft had created the public repositories for MiniGUI core, MiniGUI
|
||||
components, and other open source apps on GitHub. You can visit them on:
|
||||
|
||||
https://github.com/VincentWei
|
||||
https://github.com/VincentWei
|
||||
|
||||
FMSoft releases miniStudio, which is a WYSIWYG IDE for MiniGUI, as a shareware.
|
||||
FMSoft also releases miniStudio, which is a WYSIWYG IDE for MiniGUI, as a shareware.
|
||||
You can also download it from the official site of MiniGUI.
|
||||
|
||||
http://www.minigui.com/en/download
|
||||
|
||||
|
||||
## A BRIEF BUILDING INSTRUCTION
|
||||
|
||||
This instruction assumes that you are using Ubuntu Linux.
|
||||
|
||||
### Prerequisites
|
||||
|
||||
You can run `apt install <package_name>` to install the software on Ubuntu Linux.
|
||||
|
||||
* Building tools:
|
||||
* autoconf
|
||||
* Dependent libraries (all are optional):
|
||||
* libjpeg64-dev
|
||||
* libpng12-dev
|
||||
* libfreetype6-dev
|
||||
|
||||
### Building
|
||||
|
||||
MiniGUI core uses GNU autoconf/automake scripts to configure and build the project.
|
||||
|
||||
Run
|
||||
|
||||
$ ./configure; make; sudo make install
|
||||
|
||||
to configure, make, and install the headers and the libraries. If there is not
|
||||
`configure` file, please run
|
||||
|
||||
$ ./autogen.sh
|
||||
|
||||
to generate the script.
|
||||
|
||||
MiniGUI core also provides some configuration options to customize the features.
|
||||
For more information, please run
|
||||
|
||||
$ ./configure --help
|
||||
|
||||
|
||||
## NEW FEATURES IN VERSION 3.4.x
|
||||
|
||||
We introduce some new features in MiniGUI Version 3.4.x:
|
||||
|
||||
* The font and UNICODE related APIs are tuned or enhanced,
|
||||
in order to support HybridOS Foundation C++ Library.
|
||||
|
||||
For more information, please refer to RELEASENOTES.md file.
|
||||
|
||||
## NEW FEATURES IN VERSION 3.2.x
|
||||
|
||||
We introduce some new features in MiniGUI Version 3.2.x:
|
||||
|
||||
* The support for 64-bit platform. Note that some APIs have changed
|
||||
to support 64-bit platform. For more information, please refer to
|
||||
RELEASE-NOTES.md file.
|
||||
|
||||
Because of the changes of some APIs, we recommended strongly that you
|
||||
use this version for new projects.
|
||||
|
||||
## THE RUNTIME MODES OF MINIGUI
|
||||
|
||||
@@ -107,64 +174,64 @@ You can configure and compile MiniGUI as one of three runtime modes:
|
||||
* 'MiniGUI-Threads': A program running on MiniGUI-Threads can create
|
||||
multiple cascaded windows in different threads, and all the windows
|
||||
belong to a single process. MiniGUI-Threads is fit for some real-time
|
||||
systems on Linux/uClinux, eCos, uC/OS-II, VxWorks, pSOS, ThreadX,
|
||||
systems on Linux/uClinux, eCos, uC/OS-II, VxWorks, pSOS, ThreadX,
|
||||
and OSE.
|
||||
|
||||
* 'MiniGUI-Processes': A program running on MiniGUI-Processes is
|
||||
an independent process, which can also create multiple windows.
|
||||
MiniGUI-Processes is fit for some complex embedded systems, such as
|
||||
PDAs, Thin-Clients or STBs. This mode is only useful for full-featured
|
||||
* 'MiniGUI-Processes': A program running on MiniGUI-Processes is
|
||||
an independent process, which can also create multiple windows.
|
||||
MiniGUI-Processes is fit for some complex embedded systems, such as
|
||||
PDAs, Thin-Clients or STBs. This mode is only useful for full-featured
|
||||
UNIX-like operating systems, like Linux.
|
||||
|
||||
* 'MiniGUI-Standalone': A single process version of MiniGUI. This mode
|
||||
is useful for some small systems, like uClinux or RTOSes.
|
||||
|
||||
The original MiniGUI (version 1.0) run in MiniGUI-Threads mode.
|
||||
It is based on POSIX-compliant thread library. And this thread-based
|
||||
architecture of MiniGUI is very fit for most traditional embedded
|
||||
operating systems, such as eCos, uC/OS-II, and VxWorks. However,
|
||||
if you use embedded Linux, the architecture like X Window will have
|
||||
better stability and scalability, because of the independent memory
|
||||
It is based on POSIX-compliant thread library. And this thread-based
|
||||
architecture of MiniGUI is very fit for most traditional embedded
|
||||
operating systems, such as eCos, uC/OS-II, and VxWorks. However,
|
||||
if you use embedded Linux, the architecture like X Window will have
|
||||
better stability and scalability, because of the independent memory
|
||||
address space of every process.
|
||||
|
||||
Since version 2.0, we provides a new runtime mode called MiniGUI-Processes.
|
||||
You can use MiniGUI-Processes to run more than one MiniGUI-based
|
||||
program in the form of UNIX process at the same time. MiniGUI-Processes
|
||||
is a full-featured multi-process version of original MiniGUI -- You
|
||||
can run a program based on MiniGUI-Processes from a program called
|
||||
'mginit'. Just like X Window, the former process is called a client,
|
||||
and the latter the server.
|
||||
You can use MiniGUI-Processes to run more than one MiniGUI-based
|
||||
program in the form of UNIX process at the same time. MiniGUI-Processes
|
||||
is a full-featured multi-process version of original MiniGUI -- You
|
||||
can run a program based on MiniGUI-Processes from a program called
|
||||
'mginit'. Just like X Window, the former process is called a client,
|
||||
and the latter the server.
|
||||
|
||||
Clients connect to the server via UNIX domain socket, and the server
|
||||
receives and responses requests from clients. The server provides shared
|
||||
resources for clients, manage window objects, and sends mouse
|
||||
(or touch screen) and keyboard events to the active top-most client.
|
||||
If a client exits or dies for some reasons, it will not damage other
|
||||
Clients connect to the server via UNIX domain socket, and the server
|
||||
receives and responses requests from clients. The server provides shared
|
||||
resources for clients, manage window objects, and sends mouse
|
||||
(or touch screen) and keyboard events to the active top-most client.
|
||||
If a client exits or dies for some reasons, it will not damage other
|
||||
clients and the server.
|
||||
|
||||
|
||||
## HISTORY
|
||||
|
||||
About ten years have pasted since MiniGUI was initially created at
|
||||
the end of 1998, and now it becomes much reliable and stable.
|
||||
During the past years, many remarkable changes have taken place in
|
||||
21 years have pasted since MiniGUI was initially created at
|
||||
the end of 1998, and now it becomes much reliable and stable.
|
||||
During the past years, many remarkable changes have taken place in
|
||||
the MiniGUI project.
|
||||
|
||||
At the original, the version 0.2.xx was based on SVGALib and PThread
|
||||
(LinuxThreads). Then the version 0.3.xx had many enhanced features
|
||||
including Graphics Abstract Layer (GAL), Input Abstract Layer (IAL),
|
||||
and the support for multiple charsets and multiple fonts.
|
||||
At the original, the version 0.2.xx was based on SVGALib and PThread
|
||||
(LinuxThreads). Then the version 0.3.xx had many enhanced features
|
||||
including Graphics Abstract Layer (GAL), Input Abstract Layer (IAL),
|
||||
and the support for multiple charsets and multiple fonts.
|
||||
|
||||
In version 1.0.00, we designed MiniGUI-Lite, which was more fit for
|
||||
some complex embedded systems, such as PDAs, Thin-Clients, or STBs.
|
||||
MiniGUI-Lite made the embedded systems more stable and efficient.
|
||||
The version 1.0.00 provided the native fbcon engine based on Linux
|
||||
frame buffer device directly as well.
|
||||
In version 1.0.00, we designed MiniGUI-Lite, which was more fit for
|
||||
some complex embedded systems, such as PDAs, Thin-Clients, or STBs.
|
||||
MiniGUI-Lite made the embedded systems more stable and efficient.
|
||||
The version 1.0.00 provided the native fbcon engine based on Linux
|
||||
frame buffer device directly as well.
|
||||
|
||||
In the development of version 1.1.00, we re-wrote the GAL and GDI
|
||||
interfaces, and provided some advanced video features, such as raster
|
||||
operation, transparent blitting, alpha blending, and video hardware
|
||||
acceleration. We also provided some important GDI functions, such as
|
||||
In the development of version 1.1.00, we re-wrote the GAL and GDI
|
||||
interfaces, and provided some advanced video features, such as raster
|
||||
operation, transparent blitting, alpha blending, and video hardware
|
||||
acceleration. We also provided some important GDI functions, such as
|
||||
Ellipse, Arc, Polygon, and FloodFill.
|
||||
|
||||
In the development of version 1.6.0, we added advanced 2D graphics
|
||||
@@ -181,8 +248,8 @@ A brief history description of the development progress lay below:
|
||||
|
||||
0) 1994 ~ 1996: MiniGUI DOS version.
|
||||
1) Dec, 1998: Began to write.
|
||||
2) Apr, 1999: The skeleton of MiniGUI, windowing sub-system
|
||||
and basic graphics device interfaces.
|
||||
2) Apr, 1999: The skeleton of MiniGUI, windowing sub-system
|
||||
and basic graphics device interfaces.
|
||||
3) May, 1999: Timer, menu, and the skeleton of control sub-system.
|
||||
4) Jun, 1999: Chinese input method (by Kang Xiaoning).
|
||||
5) July, 1999: GIF and JPG loading support (by LI Zhuo).
|
||||
@@ -190,44 +257,34 @@ A brief history description of the development progress lay below:
|
||||
7) Sep, 1999: Dialog boxes and message boxes.
|
||||
8) Sep, 1999: Snapshot of screen or window.
|
||||
9) Jan., 2000: VCOnGUI (Virtual Console on MiniGUI) version 0.2.02.
|
||||
10) Mar., 2000: Linux distribution installer based-on MiniGUI for
|
||||
HappyLinux 1.0.
|
||||
10) Mar., 2000: Linux distribution installer based-on MiniGUI for
|
||||
HappyLinux 1.0.
|
||||
11) Jun., 2000: Began to develop version 1.0.xx.
|
||||
12) Sep., 2000: MiniGUI version 0.3.06 released.
|
||||
13) Oct., 2000: MiniGUI version 0.9.00 released.
|
||||
14) Nov., 2000: MiniGUI version 0.9.96 released.
|
||||
15) Jan., 2001: MiniGUI version 0.9.98 released. You can build
|
||||
MiniGUI-Lite from this version.
|
||||
13) Oct., 2000: MiniGUI version 0.9.00 released.
|
||||
14) Nov., 2000: MiniGUI version 0.9.96 released.
|
||||
15) Jan., 2001: MiniGUI version 0.9.98 released. You can build
|
||||
MiniGUI-Lite from this version.
|
||||
16) Jan., 2001: MiniGUI version 1.0.00Beta1 released.
|
||||
17) Feb., 2001: MiniGUI version 1.0.00Pre1 released.
|
||||
18) Apr., 2001: MiniGUI version 1.0.00 released (2001/04/16).
|
||||
18) Sep., 2001: MiniGUI version 1.1.0Pre1 released (2001/09/12).
|
||||
19) Sep., 2001: MiniGUI version 1.0.9 released (2001/09/17),
|
||||
this will be the last version of
|
||||
source branch 1.0.x.
|
||||
20) Oct., 2001: MiniGUI version 1.1.0Pre4 released (2001/10/22).
|
||||
This version have new GAL and GDI interfaces.
|
||||
21) Mar., 2002: MiniGUI official version 1.1.0 released
|
||||
(2002/03/08).
|
||||
MiniGUI API Reference documentation
|
||||
version 0.9 released.
|
||||
22) Mar., 2002: MiniGUI API Reference documentation
|
||||
version 1.0 released.
|
||||
23) Apr., 2002: MiniGUI the new stable version 1.2.0 released
|
||||
(2002/04/11).
|
||||
24) Sep., 2002: The main developers of MiniGUI founded a
|
||||
new software corporation: Beijing FMSoft
|
||||
Technology Co., Ltd.. And the development and
|
||||
maintenance of MiniGUI changes from
|
||||
loosely-knit team to business organization.
|
||||
25) Mar., 2003: MiniGUI official version 1.2.5 released
|
||||
(2003/03/23).
|
||||
25) May., 2003: MiniGUI official version 1.2.6 released
|
||||
(2003/05/18).
|
||||
26) Sep., 2003: MiniGUI official version 1.3.1 released
|
||||
(2003/09/11).
|
||||
27) Jan., 2004: MiniGUI official version 1.5.1 released
|
||||
(2004/01/18).
|
||||
19) Sep., 2001: MiniGUI version 1.0.9 released (2001/09/17),
|
||||
this will be the last version of source branch 1.0.x.
|
||||
20) Oct., 2001: MiniGUI version 1.1.0Pre4 released (2001/10/22).
|
||||
This version have new GAL and GDI interfaces.
|
||||
21) Mar., 2002: MiniGUI official version 1.1.0 released (2002/03/08).
|
||||
MiniGUI API Reference documentation version 0.9 released.
|
||||
22) Mar., 2002: MiniGUI API Reference documentation version 1.0 released.
|
||||
23) Apr., 2002: MiniGUI the new stable version 1.2.0 released (2002/04/11).
|
||||
24) Sep., 2002: The main developers of MiniGUI founded a
|
||||
new software corporation: Beijing FMSoft Technology Co., Ltd..
|
||||
And the development and maintenance of MiniGUI changes from
|
||||
loosely-knit team to business organization.
|
||||
25) Mar., 2003: MiniGUI official version 1.2.5 released (2003/03/23).
|
||||
25) May., 2003: MiniGUI official version 1.2.6 released (2003/05/18).
|
||||
26) Sep., 2003: MiniGUI official version 1.3.1 released (2003/09/11).
|
||||
27) Jan., 2004: MiniGUI official version 1.5.1 released (2004/01/18).
|
||||
28) Feb., 2004: MiniGUI tested on eCos and uC/OS-II.
|
||||
29) Jun., 2004: MiniGUI tested on VxWorks.
|
||||
30) Jan., 2005: MiniGUI tested on ThreadX and pSOS.
|
||||
@@ -247,18 +304,20 @@ A brief history description of the development progress lay below:
|
||||
44) Aug., 2017: FMSoft released the latest source code of MiniGUI under GPL 3.0.
|
||||
45) Aug., 2017: FMSoft released the latest source code of mDolphin under Apache 2.0.
|
||||
46) Dec., 2017: FMSoft updated MiniGUI and miniStudio for latest Linux distributions.
|
||||
47) Feb., 2018: FMSoft released MiniGUI version 3.2.
|
||||
47) Jun., 2019: FMSoft released MiniGUI version 3.4.
|
||||
|
||||
|
||||
## ABOUT THE AUTHORS
|
||||
|
||||
The original author of MiniGUI is WEI Yongming, and now MiniGUI is
|
||||
maintained by FMSoft. For more information, please browse
|
||||
The original author of MiniGUI is WEI Yongming, and now MiniGUI is
|
||||
maintained by FMSoft. For more information, please browse
|
||||
our home page: http://www.fmsoft.cn.
|
||||
|
||||
|
||||
## IF YOU HAVE A PROBLEM
|
||||
|
||||
If you have any technical problem, advice or comment, please send
|
||||
If you have any technical problem, advice or comment, please send
|
||||
messages to consult@minigui.com.
|
||||
|
||||
|
||||
@@ -266,42 +325,66 @@ messages to consult@minigui.com.
|
||||
|
||||
Q: Is GPL'd MiniGUI free for commercial use?
|
||||
|
||||
A: Simply no. FMSoft releases MiniGUI under GPLv3 license.
|
||||
It is free for those who are 100% GPL and those who
|
||||
never copy, modify and distribute MiniGUI. But if you want to use
|
||||
these GPL'd versions for commerce, you should get the commercial
|
||||
license from FMSoft first.
|
||||
A: Simply no. FMSoft releases MiniGUI under GPLv3 license.
|
||||
It is free for those who are 100% GPL and those who never copy, modify
|
||||
and distribute MiniGUI. But if you want to use these GPL'd versions
|
||||
for commerce, you should get the commercial license from FMSoft first.
|
||||
|
||||
Q: Which operating system does MiniGUI support?
|
||||
|
||||
A: MiniGUI can run on Linux/uClinux, uC/OS-II, eCos, ThreadX, pSOS,
|
||||
VxWorks, ThreadX, OSE, and even Win32. Any other real-time OSes can
|
||||
A: MiniGUI can run on Linux/uClinux, uC/OS-II, eCos, ThreadX, pSOS,
|
||||
VxWorks, ThreadX, OSE, and even Win32. Any other real-time OSes can
|
||||
be supported theoretically.
|
||||
|
||||
Q: Which architecture does MiniGUI support?
|
||||
|
||||
A: Intel x86, ARM (ARM7/AMR9/StrongARM/xScale), PowerPC, MIPS,
|
||||
DragonBall, ColdFire, Blackfin, and so on.
|
||||
A: x86 32/64-bit, ARM 32/64-bit (e.g., ARMv7 and ARM Cortex-A7),
|
||||
PowerPC, MIPS, DragonBall, ColdFire, Blackfin, and so on.
|
||||
|
||||
Q: Does MiniGUI offer the support for grey LCD with 4bpp (bits per pixel)?
|
||||
|
||||
A: Yes, it offers. It even offers the support for 1bpp and 2bpp LCD.
|
||||
A: Yes, it offers. It even offers the support for 1bpp and 2bpp LCD.
|
||||
|
||||
|
||||
## NOT FREE FOR COMMERCIAL USE
|
||||
|
||||
MiniGUI and its components are licensed under the GPL license.
|
||||
So any links about MiniGUI must follow GPL. If you cannot accept GPL,
|
||||
you need to be licensed from FMSoft. If you wonder that if you need
|
||||
the commercial license of MiniGUI, please refer to the LICENSE-POLICY file.
|
||||
|
||||
We provide you the commercial license of MiniGUI according to the number
|
||||
of the run-time binary copies of MiniGUI. If you are interested in
|
||||
the commercial license of MiniGUI, please write to sales@minigui.com.
|
||||
|
||||
|
||||
## COPYING
|
||||
|
||||
Copyright (C) 2002~2017, Beijing FMSoft Technologies Co., Ltd.
|
||||
Copyright (C) 2002~2018, Beijing FMSoft Technologies Co., Ltd.
|
||||
Copyright (C) 1998~2002, WEI Yongming
|
||||
|
||||
Copyright (C) 1998~2002, WEI Yongming
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
## NOT FREE FOR COMMERCIAL USE
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
MiniGUI and its components are licensed under the GPL license.
|
||||
So any links about MiniGUI must follow GPL. If you cannot accept GPL,
|
||||
you need to be licensed from FMSoft. If you wonder that if you need
|
||||
the commercial license of MiniGUI, please refer to the LICENSE.POLICY file.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
We provide you the commercial license of MiniGUI according to the number
|
||||
of the run-time binary copies of MiniGUI. If you are interested in
|
||||
the commercial license of MiniGUI, please write to sales@minigui.com.
|
||||
Or,
|
||||
|
||||
As this program is a library, any link to this program must follow
|
||||
GNU General Public License version 3 (GPLv3). If you cannot accept
|
||||
GPLv3, you need to be licensed from FMSoft.
|
||||
|
||||
If you have got a commercial license of this program, please use it
|
||||
under the terms and conditions of the commercial license.
|
||||
|
||||
For more information about the commercial license, please refer to
|
||||
<http://www.minigui.com/en/about/licensing-policy/>.
|
||||
|
||||
|
||||
+474
-8
File diff suppressed because it is too large
Load Diff
@@ -1,9 +1,9 @@
|
||||
Version 3.0.13 (2017/12/06)
|
||||
Version 3.4.0 (2019/06/30)
|
||||
|
||||
This release needs the following resource packages:
|
||||
|
||||
* minigui-res-3.0.13.tar.gz
|
||||
* minigui-res-3.4.0.tar.gz
|
||||
|
||||
The latest samples package is:
|
||||
|
||||
* mg-samples-3.0.13.tar.gz
|
||||
* mg-samples-3.4.0.tar.gz
|
||||
|
||||
@@ -25,4 +25,29 @@ rm config.cache config.status -f
|
||||
--disable-savescreen \
|
||||
--disable-splash \
|
||||
--disable-screensaver \
|
||||
--with-runmode=ths \
|
||||
--enable-ctrlstatic \
|
||||
--enable-ctrlbutton \
|
||||
--enable-ctrlsledit \
|
||||
--enable-ctrlbidisledit \
|
||||
--enable-ctrlnewtextedit \
|
||||
--enable-ctrllistbox \
|
||||
--enable-ctrlpgbar \
|
||||
--enable-ctrlcombobox \
|
||||
--enable-ctrlpropsheet \
|
||||
--enable-ctrltrackbar \
|
||||
--enable-ctrlscrollbar \
|
||||
--enable-ctrlnewtoolbar \
|
||||
--enable-ctrlmenubtn \
|
||||
--enable-ctrlscrollview \
|
||||
--enable-ctrltextedit \
|
||||
--enable-ctrlmonthcal \
|
||||
--enable-ctrltreeview \
|
||||
--enable-ctrltreeview-rdr \
|
||||
--enable-ctrlspinbox \
|
||||
--enable-ctrlcoolbar \
|
||||
--enable-ctrllistview \
|
||||
--enable-ctrliconview \
|
||||
--enable-ctrlgridview \
|
||||
--enable-ctrlanimation \
|
||||
--disable-watermark
|
||||
|
||||
+217
-126
File diff suppressed because it is too large
Load Diff
@@ -239,9 +239,9 @@ int GUIAPI GetFirstWord (PLOGFONT log_font, const char* mstr, int len,
|
||||
496 static int euckr_is_this_charset (const unsigned char* charset)
|
||||
497 {
|
||||
498 int i;
|
||||
499 char name [LEN_FONT_NAME + 1];
|
||||
499 char name [LEN_LOGFONT_NAME_FIELD + 1];
|
||||
500
|
||||
501 for (i = 0; i < LEN_FONT_NAME + 1; i++) {
|
||||
501 for (i = 0; i < LEN_LOGFONT_NAME_FIELD + 1; i++) {
|
||||
502 if (charset [i] == '\0')
|
||||
503 break;
|
||||
504 name [i] = toupper (charset [i]);
|
||||
@@ -388,9 +388,9 @@ int GUIAPI GetFirstWord (PLOGFONT log_font, const char* mstr, int len,
|
||||
|
||||
<table border="0" cellpadding="0" class="code-sample" width="100%"><tr><td> <pre>
|
||||
228 typedef struct _LOGFONT {
|
||||
229 char type [LEN_FONT_NAME + 1];
|
||||
230 char family [LEN_FONT_NAME + 1];
|
||||
231 char charset [LEN_FONT_NAME + 1];
|
||||
229 char type [LEN_LOGFONT_NAME_FIELD + 1];
|
||||
230 char family [LEN_LOGFONT_NAME_FIELD + 1];
|
||||
231 char charset [LEN_LOGFONT_NAME_FIELD + 1];
|
||||
232 DWORD style;
|
||||
233 int size;
|
||||
234 int rotation;
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
*.css
|
||||
*.png
|
||||
*.html
|
||||
@@ -1,2 +0,0 @@
|
||||
SUBDIRS = man3 man5
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
*.3
|
||||
@@ -1,249 +0,0 @@
|
||||
EXTRA_DIST = \
|
||||
about_dlg.3 \
|
||||
accel_fns.3 \
|
||||
_ARC.3 \
|
||||
basic_types.3 \
|
||||
_BITMAP.3 \
|
||||
_BLOCKHEAP.3 \
|
||||
block_heap_fns.3 \
|
||||
bmp_fns.3 \
|
||||
bmp_load_fns.3 \
|
||||
bmp_struct.3 \
|
||||
bug.3 \
|
||||
caret_fns.3 \
|
||||
_CHILDINFO.3 \
|
||||
class_fns.3 \
|
||||
clipboard_fns.3 \
|
||||
clip_fns.3 \
|
||||
_CLIPRECT.3 \
|
||||
_CLIPRGN.3 \
|
||||
color_vars.3 \
|
||||
common.h.3 \
|
||||
_CONTAINERINFO.3 \
|
||||
control_fns.3 \
|
||||
control.h.3 \
|
||||
controls.3 \
|
||||
_COOLBARITEMINFO.3 \
|
||||
creation_msgs.3 \
|
||||
ctrl_button.3 \
|
||||
ctrl_button_msgs.3 \
|
||||
ctrl_button_ncs.3 \
|
||||
ctrl_button_states.3 \
|
||||
ctrl_button_styles.3 \
|
||||
ctrl_combobox.3 \
|
||||
ctrl_combobox_msgs.3 \
|
||||
ctrl_combobox_ncs.3 \
|
||||
ctrl_combobox_styles.3 \
|
||||
_CTRLDATA.3 \
|
||||
ctrl_edit.3 \
|
||||
ctrl_edit_msgs.3 \
|
||||
ctrl_edit_ncs.3 \
|
||||
ctrl_edit_styles.3 \
|
||||
ctrl_listbox.3 \
|
||||
ctrl_listbox_msgs.3 \
|
||||
ctrl_listbox_ncs.3 \
|
||||
ctrl_listbox_styles.3 \
|
||||
ctrl_menubutton.3 \
|
||||
ctrl_menubutton_msgs.3 \
|
||||
ctrl_menubutton_ncs.3 \
|
||||
ctrl_menubutton_styles.3 \
|
||||
ctrl_msgs.3 \
|
||||
ctrl_newtoolbar.3 \
|
||||
ctrl_newtoolbar_msgs.3 \
|
||||
ctrl_newtoolbar_styles.3 \
|
||||
ctrl_progbar.3 \
|
||||
ctrl_progbar_msgs.3 \
|
||||
ctrl_progbar_ncs.3 \
|
||||
ctrl_progbar_styles.3 \
|
||||
ctrl_propsheet.3 \
|
||||
ctrl_propsheet_msgs.3 \
|
||||
ctrl_propsheet_ncs.3 \
|
||||
ctrl_propsheet_styles.3 \
|
||||
ctrl_scrollview.3 \
|
||||
ctrl_scrollview_msgs.3 \
|
||||
ctrl_scrollview_ncs.3 \
|
||||
ctrl_scrollview_styles.3 \
|
||||
ctrl_static.3 \
|
||||
ctrl_static_msgs.3 \
|
||||
ctrl_static_ncs.3 \
|
||||
ctrl_static_styles.3 \
|
||||
ctrl_textedit.3 \
|
||||
ctrl_textedit_msgs.3 \
|
||||
ctrl_textedit_ncs.3 \
|
||||
ctrl_textedit_styles.3 \
|
||||
ctrl_toolbar.3 \
|
||||
ctrl_toolbar_msgs.3 \
|
||||
ctrl_trackbar.3 \
|
||||
ctrl_trackbar_msgs.3 \
|
||||
ctrl_trackbar_ncs.3 \
|
||||
ctrl_trackbar_styles.3 \
|
||||
cursor_fns.3 \
|
||||
dc_attrs.3 \
|
||||
dc_fns.3 \
|
||||
desktop_msgs.3 \
|
||||
dialog_fns.3 \
|
||||
_DLGTEMPLATE.3 \
|
||||
draw_adv_2d_fns.3 \
|
||||
draw_fns.3 \
|
||||
endian_info.3 \
|
||||
endian_rw_fns.3 \
|
||||
endianrw.h.3 \
|
||||
err_codes.3 \
|
||||
etc_fns.3 \
|
||||
_FILEDLGDATA.3 \
|
||||
filedlg.h.3 \
|
||||
fixed_math_fns.3 \
|
||||
fixedmath.h.3 \
|
||||
fixed_str.3 \
|
||||
fns.3 \
|
||||
font_fns.3 \
|
||||
_FONTMETRICS.3 \
|
||||
GAL_Color.3 \
|
||||
GAL_Overlay.3 \
|
||||
GAL_Palette.3 \
|
||||
GAL_Rect.3 \
|
||||
gamma_fns.3 \
|
||||
gdi_fns.3 \
|
||||
gdi.h.3 \
|
||||
gdi_types.3 \
|
||||
general_rw_fns.3 \
|
||||
global_fns.3 \
|
||||
global_vars.3 \
|
||||
_GLYPHBITMAP.3 \
|
||||
_GRIDCELL.3 \
|
||||
_GRIDCOLHEADER.3 \
|
||||
_GRIDNM_NORMAL.3 \
|
||||
_GRIDROWHEADER.3 \
|
||||
handles.3 \
|
||||
_HOOKINFO.3 \
|
||||
icon_fns.3 \
|
||||
ime_fns.3 \
|
||||
init_fns.3 \
|
||||
key_defs.3 \
|
||||
key_msgs.3 \
|
||||
key_status.3 \
|
||||
_LISTBOXITEMINFO.3 \
|
||||
lite_fns.3 \
|
||||
lite_layer_fns.3 \
|
||||
lite_listenfd_fns.3 \
|
||||
lite_request_fns.3 \
|
||||
lite_server_fns.3 \
|
||||
lite_socket_fns.3 \
|
||||
lite_vars.3 \
|
||||
_LOGFONT.3 \
|
||||
_LVCOLUMN.3 \
|
||||
_LVFINDINFO.3 \
|
||||
_LVITEM.3 \
|
||||
_LVNM_NORMAL.3 \
|
||||
_LVSORTDATA.3 \
|
||||
_LVSUBITEM.3 \
|
||||
macros_types.3 \
|
||||
_MAINWINCREATE.3 \
|
||||
map_fns.3 \
|
||||
_MCCOLORINFO.3 \
|
||||
_MENUBUTTONITEM.3 \
|
||||
menu_fns.3 \
|
||||
_MENUITEMINFO.3 \
|
||||
menu_msgs.3 \
|
||||
MG_Client.3 \
|
||||
mgext_control_grid_msgs.3 \
|
||||
mgext_controls.3 \
|
||||
mgext_ctrl_coolbar.3 \
|
||||
mgext_ctrl_coolbar_msgs.3 \
|
||||
mgext_ctrl_coolbar_styles.3 \
|
||||
mgext_ctrl_grid.3 \
|
||||
mgext_ctrl_grid_ncs.3 \
|
||||
mgext_ctrl_listview.3 \
|
||||
mgext_ctrl_listview_msgs.3 \
|
||||
mgext_ctrl_listview_ncs.3 \
|
||||
mgext_ctrl_listview_styles.3 \
|
||||
mgext_ctrl_monthcal.3 \
|
||||
mgext_ctrl_monthcal_msgs.3 \
|
||||
mgext_ctrl_monthcal_ncs.3 \
|
||||
mgext_ctrl_monthcal_styles.3 \
|
||||
mgext_ctrl_spinbox.3 \
|
||||
mgext_ctrl_spinbox_msgs.3 \
|
||||
mgext_ctrl_spinbox_ncs.3 \
|
||||
mgext_ctrl_spinbox_styles.3 \
|
||||
mgext_ctrl_treeview.3 \
|
||||
mgext_ctrl_treeview_msgs.3 \
|
||||
mgext_ctrl_treeview_ncs.3 \
|
||||
mgext_ctrl_treeview_styles.3 \
|
||||
mgext_fns.3 \
|
||||
mgext_gif_fns.3 \
|
||||
mgext.h.3 \
|
||||
mgext_skin_fns.3 \
|
||||
MG_Layer.3 \
|
||||
MG_RWops.3 \
|
||||
minigui.h.3 \
|
||||
misc_fns.3 \
|
||||
misc_macros.3 \
|
||||
mouse_msgs.3 \
|
||||
_MSG.3 \
|
||||
msgbox_fns.3 \
|
||||
msg_fns.3 \
|
||||
msg_hook_fns.3 \
|
||||
msg_pass_fns.3 \
|
||||
msgs.3 \
|
||||
_MYBITMAP.3 \
|
||||
_myWinButton.3 \
|
||||
mywindows.h.3 \
|
||||
_myWinEntry.3 \
|
||||
mywins_filedlg.3 \
|
||||
mywins_fns.3 \
|
||||
mywins_helpers.3 \
|
||||
_NTBINFO.3 \
|
||||
_NTBITEMINFO.3 \
|
||||
own_stdio.h.3 \
|
||||
paint_msgs.3 \
|
||||
pal_fns.3 \
|
||||
_POINT.3 \
|
||||
post_event_msgs.3 \
|
||||
_RECT.3 \
|
||||
rect_fns.3 \
|
||||
rect_vars.3 \
|
||||
region_fns.3 \
|
||||
_REQUEST.3 \
|
||||
_RGB.3 \
|
||||
scrollbar_fns.3 \
|
||||
_SCROLLINFO.3 \
|
||||
_SCROLLVIEWITEMINFO.3 \
|
||||
si_bmplabel_s.3 \
|
||||
sie_slider_s.3 \
|
||||
simple_types.3 \
|
||||
si_nrmlabel_s.3 \
|
||||
si_nrmslider_s.3 \
|
||||
si_rotslider_s.3 \
|
||||
_SIZE.3 \
|
||||
skin.h.3 \
|
||||
skin_head_s.3 \
|
||||
skin_item_s.3 \
|
||||
skin_set_s.3 \
|
||||
_SPININFO.3 \
|
||||
_STIPPLE.3 \
|
||||
str_helpers.3 \
|
||||
styles.3 \
|
||||
_svitem_operations.3 \
|
||||
sys_bmps.3 \
|
||||
system_font.3 \
|
||||
system_msgs.3 \
|
||||
_SYSTEMTIME.3 \
|
||||
sys_text.3 \
|
||||
text_output_fns.3 \
|
||||
text_parse_fns.3 \
|
||||
timer_fns.3 \
|
||||
_TOOLBARITEMINFO.3 \
|
||||
_TVITEMINFO.3 \
|
||||
user_msgs.3 \
|
||||
vcongui_fns.3 \
|
||||
vcongui.h.3 \
|
||||
version_info.3 \
|
||||
win32_types.3 \
|
||||
window_create_fns.3 \
|
||||
window_fns.3 \
|
||||
window_general_fns.3 \
|
||||
window.h.3 \
|
||||
window_msgs.3 \
|
||||
_WNDCLASS.3 \
|
||||
_WORDINFO.3 \
|
||||
yuv_fns.3
|
||||
@@ -1 +0,0 @@
|
||||
*.5
|
||||
@@ -1,3 +0,0 @@
|
||||
man_MANS=MiniGUI.cfg.5
|
||||
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
@@ -1,109 +0,0 @@
|
||||
.TH MiniGUI.cfg 5 "August 2000" "libminigui" "MiniGUI User Documentation"
|
||||
|
||||
.SH NAME
|
||||
MiniGUI.cfg \- The configuration file of MiniGUI.
|
||||
|
||||
.SH DESCRIPTION
|
||||
.PP
|
||||
In MiniGUI, you can get specific values from \fBetc\fP files using \fBGetValueFromEtcFile\fP and \fBGetIntValueFromEtcFile\fP. Etc files are text configuration files with same format as Windows INI files. A etc file has following simple format:
|
||||
.PP
|
||||
.nf
|
||||
[section0]
|
||||
key0=value0
|
||||
key1=value1
|
||||
|
||||
[section1]
|
||||
key0=value0
|
||||
key1=value1
|
||||
.fi
|
||||
.PP
|
||||
As you have seen, etc files are composed by \fBsections\fP. Every \fBvalue\fP in etc file is refrenced by \fBkey\fP. You should specify section name and key name to find a specific value.
|
||||
.PP
|
||||
MiniGUI uses a ETC file to store some system configuration data. This file is named MiniGUI.cfg. By default, this file will be installed in /etc directory. However, if there is a MiniGUI.cfg file in /usr/local/etc or in your home directory (saved as .MiniGUI.cfg), MiniGUI will use the latter MiniGUI.cfg file to get configuration data, so can override your system /etc/MiniGUI.cfg file.
|
||||
.PP
|
||||
This manpage describes the sections in MiniGUI.cfg file.
|
||||
|
||||
.SH "SECTIONS"
|
||||
.SS
|
||||
o system
|
||||
.PP
|
||||
\fBsystem\fP section defines system information of MiniGUI, including graphics engine, mouse type and mouse device. \fBengine\fP key specifies the graphics engine and \fBmdev\fP specifies the mouse device and \fBmtype\fP the mouse type.
|
||||
.PP
|
||||
If your graphics engine needs some other configuration data, these data will go into a section named by the engine name. For example, if your graphics engine is \fBSVGALib\fP, \fBSVGALib\fP section will define the configuration data for SVGALib.
|
||||
.SS
|
||||
o systemfont
|
||||
.PP
|
||||
\fBsystemfont\fP section defines system fonts for MiniGUI. \fBfont_number\fP key specifies the number of fonts, and \fBname?\fP key and \fBfontfile?\fP key define the font name and the path of the font file respectively. \fBname0\fP and \fBfontfile0\fP for the first font, \fBname1\fP and \fBfontfile1\fP for the second font, and so forth.
|
||||
.PP
|
||||
Generally, system fonts have identical size (height of font), but each belongs to a different charset. The first font should belong to a single-byte character charset.
|
||||
.SS
|
||||
o rawbitmapfonts
|
||||
.PP
|
||||
\fBrawbitmapfonts\fP section defines \fBRaw Bitmap Fonts\fP can be used by MiniGUI. The pattern of this section is similiar with \fBsystemfont\fP section.
|
||||
.SS
|
||||
o varbitmapfonts
|
||||
.PP
|
||||
\fBvarbitmapfonts\fP section defines \fBVar Bitmap Fonts\fP can be used by MiniGUI. The pattern of this section is similiar with \fBsystemfont\fP section.
|
||||
.SS
|
||||
o truetypefonts
|
||||
.PP
|
||||
\fBtruetypefonts\fP section defines \fBTrue Type Fonts\fP can be used by MiniGUI. The pattern of this section is similiar with \fBsystemfont\fP section.
|
||||
o type1fonts
|
||||
.PP
|
||||
\fBtype1fonts\fP section defines \fBAdobe Type1 Fonts\fP can be used by MiniGUI. The pattern of this section is similiar with \fBsystemfont\fP section.
|
||||
.SS
|
||||
o bgpicture
|
||||
.PP
|
||||
\fBbgpicture\fP section defines the position of the background picture in MiniGUI.
|
||||
.SS
|
||||
o mouse
|
||||
.PP
|
||||
\fBmouse\fP section defines the mouse configuration data. No need to change this section.
|
||||
.SS
|
||||
o event
|
||||
.PP
|
||||
\fBevent\fP section defines the event handling configuration data. No need to change this section.
|
||||
.SS
|
||||
o cursorinfo
|
||||
.PP
|
||||
\fBcursorinfo\fP section defines the cursors can be used by MiniGUI. \fBcursorpath\fP key specifies the path of cursor files, and \fBcursornumber\fP key specifies the number of cursor should be loaded at startup of MiniGUI. \fBcursor0, cursor1, cursor2, ...\fP keys specify the name of each cursor file. If you define \fBcursornumber\fP as zero, there will be no mouse cursor displayed in MiniGUI application.
|
||||
.SS
|
||||
o iconinfo
|
||||
.PP
|
||||
\fBiconinfo\fP section defines the icons can be used by MiniGUI. \fBiconpath\fP key specifies the path of icon files, and \fBiconnumber\fP key specifies the number of icon should be loaded at startup of MiniGUI. \fBicon0, icon1, icon2, ...\fP keys specify the name of each icon file.
|
||||
.SS
|
||||
o bitmapinfo
|
||||
.PP
|
||||
\fBbitmapinfo\fP section defines the bitmaps used by MiniGUI. \fBbitmappath\fP key specifies the path of bitmap files, and other keys specify the bitmap file names. You can change the value of \fBbgpicture\fP key to specify a different background picture, or change the value of \fBlogo\fP key to specify a different logo picture. No need to change other values.
|
||||
.SS
|
||||
o mainwinmetrics
|
||||
.PP
|
||||
\fBmainwinmetrics\fP section defines the metrics of main windows.
|
||||
.SS
|
||||
o windowelementcolors
|
||||
.PP
|
||||
\fBwindowelementcolors\fP section defines colors of window elements in RGB.
|
||||
.SS
|
||||
o imeinfo
|
||||
.PP
|
||||
\fBimeinfo\fP section defines the Hanzi Input Methods can be used by MiniGUI. \fBimepath\fP key specifies the path of files used by IME, and \fBimenumber\fP key specifies the number of IME should be loaded at startup of IME window. \fBime0, ime1, ...\fP keys specify the name of each IME.
|
||||
.SS
|
||||
o appinfo
|
||||
.PP
|
||||
\fBappinfo\fP section defines the applications information of MiniGUI. So far, MiniGUI only uses this section to define the path storing application resource files.
|
||||
|
||||
.SH COPYING
|
||||
.PP
|
||||
Copyright (C) 2002 ~ 2004, Beijing Feynman Software Technology Co., Ltd.
|
||||
.BR
|
||||
Copyright (C) 1998 ~ 2002, Wei Yongming.
|
||||
.BR
|
||||
Portion copyright (C) 2000, Song Lixin, Zheng Xiang and othres..
|
||||
|
||||
.PP
|
||||
MiniGUI is free woftware; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
|
||||
.PP
|
||||
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
|
||||
.PP
|
||||
You should have received a copy of the GNU General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
man_MANS=libminigui.7
|
||||
|
||||
EXTRA_DIST = $(man_MANS)
|
||||
@@ -1,99 +0,0 @@
|
||||
.TH libminigui 7 "Jan 2004" "libminigui" "Introduction to libminigui"
|
||||
|
||||
.SH NAME
|
||||
libminigui \- A compact Graphics User Interface support system for real-time embedded systems based-on Linux.
|
||||
.SH DESCRIPTION
|
||||
|
||||
.PP
|
||||
MiniGUI is a LGPLed free software project.
|
||||
Its goal is providing a lightweight Graphics User Interface support system;
|
||||
especially fit for real-time embedded systems based on Linux. We have released
|
||||
MiniGUI version 1.0.00Pre1 so far, and the official release version will be born
|
||||
in the near future.
|
||||
|
||||
.PP
|
||||
MiniGUI defines some Win32-like APIs for the applications. By using the
|
||||
MiniGUI, one application can create multiple windows, and can draw in
|
||||
these windows without interfering each other.
|
||||
|
||||
.PP
|
||||
You can find latest information about MiniGUI at our home page:
|
||||
|
||||
.PP
|
||||
http://www.minigui.org
|
||||
|
||||
.SH WHAT IS MINIGUI-LITE
|
||||
|
||||
.PP
|
||||
You know that MiniGUI before version 0.9.98 is based on LinuxThreads.
|
||||
Therefore, if you want to start a program based on MiniGUI, you have to
|
||||
quit current one and start another one, or you can dynamically load the
|
||||
program via 'dlopen'. Although the latter can extend your application
|
||||
in some degrees, but it is not a good way because one thread in a MiniGUI-based
|
||||
process may damage the whole process.
|
||||
|
||||
.PP
|
||||
Now you can use MiniGUI-Lite to run more than one MiniGUI-based program
|
||||
in the form of Linux processes at the same time. MiniGUI-Lite is a lightweight
|
||||
version of original MiniGUI -- because LinuxThreads is not needed any more.
|
||||
You can run a programm based on MiniGUI-Lite from a program called 'mginit'.
|
||||
Just like X Window, the former process is called a client, and the latter a server.
|
||||
|
||||
.PP
|
||||
The clients connect to the server via UNIX domain socket, and the server accepts
|
||||
the request from clients. The server provides the shared resource for the clients,
|
||||
and sends mouse (touch screen) and keyboard events to the topmost client.
|
||||
If a client exit or die for a reason, the server will run as normal.
|
||||
|
||||
.PP
|
||||
In our release, there is a package called 'mglite-exec'. In this package,
|
||||
there is a 'mginit' program which creates a virtual console window. You can start
|
||||
a program in this package from the command line of the virtual console.
|
||||
You can even debug this program by using 'gbd'.
|
||||
|
||||
.PP
|
||||
You can create many windows in a program based on MiniGUI-Lite, but you can not
|
||||
start a new thread to create a window. So some functions in original MiniGUI can
|
||||
not be used in MiniGUI-Lite, but most of APIs of MiniGUI-Lite are compatible with
|
||||
original MiniGUI. Porting from original MiniGUI to MiniGUI-Lite is simple.
|
||||
Please see the programs in 'mglite-exec' package, all programs are porting
|
||||
from 'miniguiexec' package.
|
||||
|
||||
.PP
|
||||
The source of MiniGUI is configured as MiniGUI-Lite by default.
|
||||
When you run `./configure' to configure MiniGUI, you can use the command:
|
||||
|
||||
.PP
|
||||
$ ./configure --disable-lite
|
||||
|
||||
.PP
|
||||
to disable MiniGUI-Lite. You will get the original MiniGUI libraries which
|
||||
run on PThread.
|
||||
|
||||
.PP
|
||||
For clear distinguish, we will call MiniGUI based-on PThread as `MiniGUI-Threads'.
|
||||
|
||||
.SH AUTHOR
|
||||
.PP
|
||||
The original author of MiniGUI is WEI Yongming (ymwei@minigui.org), but many others added some features to MiniGUI, and some code of MiniGUI comes from other free software. For instance, the Chinses input method comes from CCE (Console Chinese Environment)
|
||||
by He Rui and others, and ported it to MiniGUI by KANG Xiaoning and Zheng Xiang.
|
||||
.PP
|
||||
For other authors and contributors to see CREDITS.
|
||||
|
||||
.SH COPYING
|
||||
.PP
|
||||
Copyright (C) 1998, 1999, 2000, 2001, WEI Yongming.
|
||||
.br
|
||||
Copyright (C) 2000, 2001, BluePoint Software.
|
||||
.br
|
||||
Portion copyright (C) 2000, Song Lixin.
|
||||
.br
|
||||
Portion copyright (C) 2000, Zheng Xiang.
|
||||
.PP
|
||||
MiniGUI is free woftware; you can redistribute it and/or modify it under the terms of the GNU Library General Public
|
||||
License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
|
||||
.PP
|
||||
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public License for more details.
|
||||
.PP
|
||||
You should have received a copy of the GNU Library General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
man_MANS = minigui.3 miniguiFunctions.3 miniguiAccelerator.3 miniguiAsyncKey.3 miniguiBitmap.3 \
|
||||
miniguiCaretHandler.3 miniguiClipRectHeap.3 miniguiCreateWindow.3 \
|
||||
miniguiCursor.3 miniguiDC.3 miniguiDCAttr.3 miniguiDCClipping.3 \
|
||||
miniguiDTI.3 miniguiDialogBox.3 miniguiDrawing.3 miniguiEtcFile.3 \
|
||||
miniguiFixStr.3 miniguiHook.3 miniguiIME.3 miniguiIcon.3 miniguiInit.3 \
|
||||
miniguiLogFont.3 miniguiMain.3 miniguiMainWindow.3 miniguiMapTransf.3 \
|
||||
miniguiMapping.3 miniguiMenu.3 miniguiMessage.3 miniguiMisc.3 \
|
||||
miniguiPenBrush.3 miniguiRect.3 miniguiRegion.3 miniguiScreen.3 \
|
||||
miniguiString.3 miniguiSysChar.3 miniguiTextOutput.3 miniguiTextParse.3 \
|
||||
miniguiTimer.3 miniguiWindowClass.3 miniguiGetSysText.3 \
|
||||
miniguiMessages.3 miniguiStructures.3 miniguiControls.3 \
|
||||
miniguiLite.3
|
||||
|
||||
EXTRA_DIST = $(man_MANS) docmaker functions.txt
|
||||
@@ -1,84 +0,0 @@
|
||||
#! /usr/bin/perl -w
|
||||
|
||||
use POSIX;
|
||||
|
||||
if ($#ARGV < 0) {
|
||||
print "Usage: ./docmaker functions.txt\n";
|
||||
exit -1;
|
||||
}
|
||||
|
||||
open FUNCHANDLE, "<$ARGV[0]" || die;
|
||||
$i = 0;
|
||||
while (<FUNCHANDLE>) {
|
||||
next if /^\n/;
|
||||
chop;
|
||||
if (/^(\D.+?) \\-.+$/){
|
||||
$docfile = "minigui$1.3";
|
||||
open DOC, ">$docfile" || die;
|
||||
print DOC ".\\\" This manpage is Copyright (C) 2000, 2001 Wei Yongming\n";
|
||||
print DOC ".\\\" 2000, 2001 BluePoint Software\n";
|
||||
print DOC ".\\\"\n";
|
||||
print DOC ".\\\" Permission is granted to make and distribute verbatim copies of this\n";
|
||||
print DOC ".\\\" manual provided the copyright notice and this permission notice are\n";
|
||||
print DOC ".\\\" preserved on all copies.\n";
|
||||
print DOC ".\\\"\n";
|
||||
print DOC ".\\\" Permission is granted to copy and distribute modified versions of this\n";
|
||||
print DOC ".\\\" manual under the conditions for verbatim copying, provided that the\n";
|
||||
print DOC ".\\\" entire resulting derived work is distributed under the terms of a\n";
|
||||
print DOC ".\\\" permission notice identical to this one.\n";
|
||||
print DOC ".\\\"\n";
|
||||
print DOC ".\\\" Since MiniGUI is constantly changing, this\n";
|
||||
print DOC ".\\\" manual page may be incorrect or out-of-date. The author(s) assume no\n";
|
||||
print DOC ".\\\" responsibility for errors or omissions, or for damages resulting from\n";
|
||||
print DOC ".\\\" the use of the information contained herein. The author(s) may not\n";
|
||||
print DOC ".\\\" have taken the same level of care in the production of this manual,\n";
|
||||
print DOC ".\\\" which is licensed free of charge, as they might when working\n";
|
||||
print DOC ".\\\" professionally.\n";
|
||||
print DOC ".\\\"\n";
|
||||
print DOC ".\\\" Formatted or processed versions of this manual, if unaccompanied by\n";
|
||||
print DOC ".\\\" the source, must acknowledge the copyright and authors of this work.\n";
|
||||
|
||||
print DOC ".TH \"$1\" ";
|
||||
print DOC "\"3\" \"August 2000\" \"MiniGUI\"\n\n";
|
||||
print DOC ".SH \"NAME\"\n";
|
||||
print DOC "$_\n\n";
|
||||
print DOC ".SH \"SYNOPSIS\"\n";
|
||||
}
|
||||
elsif (/^#.+?/){
|
||||
print DOC ".B $_\n";
|
||||
print DOC ".br\n";
|
||||
}
|
||||
else{
|
||||
$funcname[$i++]=$_;
|
||||
}
|
||||
}
|
||||
|
||||
print DOC "\n.PP\n";
|
||||
for ($j = 0; $j < $i; $j++){
|
||||
$funcname[$j] =~ /(.+?) *(\(.+?\);)/;
|
||||
$funcname[$j] = $1;
|
||||
print DOC ".BI \"$1\" \"$2\"\n";
|
||||
print DOC ".br\n" if ($j != $i - 1);
|
||||
}
|
||||
print DOC ".SH \"DESCRIPTION\"\n";
|
||||
print DOC ".PP\n";
|
||||
for ($j = 0; $j < $i; $j++){
|
||||
$funcname[$j] =~ /.+ (.+?)$/;
|
||||
print DOC "\\fB$1\\fP function description goes here\n";
|
||||
print DOC ".PP\n" if ($j != $i - 1);
|
||||
# open FUNCDOC, ">$1.3" || die;
|
||||
# print FUNCDOC ".so man3/$docfile\n";
|
||||
# close FUNCDOC;
|
||||
}
|
||||
print DOC ".SH \"RETURN VALUE\"\n";
|
||||
print DOC ".PP\n\n";
|
||||
print DOC ".SH \"NOTE\"\n";
|
||||
print DOC ".PP\n\n";
|
||||
print DOC ".SH \"SEE ALSO\"\n\n";
|
||||
print DOC ".SH \"AUTHOR\"\n";
|
||||
print DOC ".PP\n";
|
||||
print DOC "This manual page was edited by <yourname> <yourid\@minigui.org>.\n";
|
||||
print DOC "If you have any problems, comments or found some bugs, please send messages to me.\n";
|
||||
|
||||
close FUNCHANDLE;
|
||||
close DOC;
|
||||
@@ -1,19 +0,0 @@
|
||||
New \- MiniGUI-Lite version specified functions.
|
||||
|
||||
#include <minigui/minigui.h>
|
||||
|
||||
BOOL GUIAPI SetDesktopRect (int lx, int ty, int rx, int by);
|
||||
void GUIAPI GetDesktopRect (int* lx, int* ty, int* rx, int* by);
|
||||
BOOL GUIAPI ServerStartup (void);
|
||||
BOOL GUIAPI SetClientScreen (int lx, int ty, int rx, int by);
|
||||
BOOL GUIAPI OnlyMeCanDraw (void);
|
||||
BOOL GUIAPI ClientCanDrawNowEx (BOOL bRepaint);
|
||||
BOOL GUIAPI SetTopMostClient (int cli);
|
||||
int GUIAPI GetClientByPID (int pid);
|
||||
int cli_request (PREQUEST request, void* result, int len_rslt);
|
||||
BOOL GUIAPI RegisterRequestHandler (int req_id, REQ_HANDLER your_handler);
|
||||
REQ_HANDLER GUIAPI GetRequestHandler (int req_id);
|
||||
int get_sock_fd2srv (void);
|
||||
int sock_write (int fd, const void* buff, int count);
|
||||
int sock_read (int fd, void* buff, int count);
|
||||
BOOL GUIAPI Send2TopMostClient (int iMsg, WPARAM wParam, LPARAM lParam);
|
||||
@@ -1,48 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.\" Modified 2000/11/30 by Wei Yongming.
|
||||
|
||||
.TH "minigui" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
minigui \- Guide for manpages of MiniGUI version 1.x.
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.TP
|
||||
.BR miniguiFunctions (3)
|
||||
Function list of MiniGUI version 1.x. Gives the brief description for functions of MiniGUI.
|
||||
.TP
|
||||
.BR miniguiMessages (3)
|
||||
Message list of MiniGUI version 1.x. Gives the brief description for messages of MiniGUI.
|
||||
.TP
|
||||
.BR miniguiStructures (3)
|
||||
Structure list of MiniGUI version 1.x. Gives the brief description for structures of MiniGUI.
|
||||
.TP
|
||||
.BR miniguiControls (3)
|
||||
Brief description of usage of MiniGUI built-in controls.
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Wei Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.\" Modified 2000/11/30 by Wei Yongming.
|
||||
|
||||
.TH "Accelerator" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
Accelerator \- Accelerator support functions
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/window.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "HACCEL GUIAPI CopyAcceleratorTable" "(HACCEL hacc);"
|
||||
.br
|
||||
.BI "int GUIAPI DeleteAccelerators" "(HACCEL hacc, int key, DWORD keymask);"
|
||||
.br
|
||||
.BI "int GUIAPI AddAccelerators" "(HACCEL hacc,int key, DWORD keymask, WPARAM wParam, LPARAM lParam);"
|
||||
.br
|
||||
.BI "int GUIAPI DestroyAcceleratorTable" "(HACCEL hacc);"
|
||||
.br
|
||||
.BI "HACCEL GUIAPI CreateAcceleratorTable" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "HACCEL GUIAPI LoadAccelerators" "(const char* filename, int id);"
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCopyAcceleratorTable\fP function copies the specified accelerator table. This function is used to obtain the accelerator-table data that corresponds to an accelerator-table handle, or to determine the size of the accelerator-table data.
|
||||
.PP
|
||||
\fBDeleteAccelerators\fP function deletes an accelerator from the accelerator table.
|
||||
.PP
|
||||
\fBAddAccelerators\fP function adds an accelerator to the accelerator table. It's called after you call \fBCreateAcceleratorTable\fP function.
|
||||
.PP
|
||||
\fBDestroyAcceleratorTable\fP function destroys an accelerator table. Before closing a window, you must call this function to destroy each accelerator table that is created by using the \fBCreateAcceleratorTable\fP function.
|
||||
.PP
|
||||
\fBCreateAcceleratorTable\fP function creates an accelerator table.
|
||||
.PP
|
||||
\fBLoadAccelerators\fP function loads the specified accelerator table. This function has not been implemented.
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Song Lixin <zjujoe@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,86 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "AsyncKey" "3" "July 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
AsyncKey \- Gets asynchronize key status in MiniGUI.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/minigui.h>
|
||||
.PP
|
||||
.BI "BOOL GUIAPI GetKeyStatus" "(UINT uKey);"
|
||||
.br
|
||||
.BI "DWORD GUIAPI GetShiftKeyStatus" "(void);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBGetKeyStatus\fP gets a key or a mouse button status, return TRUE when pressed, or FALSE when released. \fBuKey\fP indicates the key or mouse button. For keys on keyboard, \fBuKey\fP should be the scancode of the key, for mouse button, \fBuKey\fP should be one value of the following:
|
||||
.PP
|
||||
.IP \fBSCANCODE_LEFTBUTTON\fP
|
||||
Left mouse button.
|
||||
.IP \fBSCANCODE_MIDDLBUTTON\fP
|
||||
Middle mouse button.
|
||||
.IP \fBSCANCODE_RIGHTBUTTON\fP
|
||||
Right mouse button.
|
||||
.PP
|
||||
The above constants and the scancodes of keys are defined in \fB<minigui/common.h>\fP.
|
||||
.PP
|
||||
\fBGetShiftKeyStatus\fP gets status of shift keys, the returned value indicates the status of shift keys -- \fBCapsLock, ScrollLock, NumLock, Left Shift, Right Shift, Left Ctrl, Right Ctrl, Left Alt, and Right Alt\fP. You can use KS_* with OR operation to determine one shift key's status:
|
||||
.PP
|
||||
.IP \fBKS_CAPSLOCK\fP
|
||||
Indicates that CapsLock is locked.
|
||||
.IP \fBKS_NUMLOCK\fP
|
||||
Indicates that NumLock is locked.
|
||||
.IP \fBKS_SCROLLLOCK\fP
|
||||
Indicates that ScrollLock is locked.
|
||||
.IP \fBKS_LEFTCTRL\fP
|
||||
Indicates that left Ctrl is pressed.
|
||||
.IP \fBKS_RIGHTCTRL\fP
|
||||
Indicates that right Ctrl is pressed.
|
||||
.IP \fBKS_CTRL\fP
|
||||
Indicates that one Ctrl is pressed.
|
||||
.IP \fBKS_LEFTALT\fP
|
||||
Indicates that left Alt is pressed.
|
||||
.IP \fBKS_RIGHTALT\fP
|
||||
Indicates that right Alt is pressed.
|
||||
.IP \fBKS_ALT\fP
|
||||
Indicates that one Alt is pressed.
|
||||
.IP \fBKS_LEFTSHIFT\fP
|
||||
Indicates that left Shift is pressed.
|
||||
.IP \fBKS_RIGHTSHIFT\fP
|
||||
Indicates that right Shift is pressed.
|
||||
.IP \fBKS_SHIFT\fP
|
||||
Indicates that one Shift is pressed.
|
||||
.PP
|
||||
The above constants are defined in \fB<minigui/common.h>\fP.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR MSG_KEYDOWN (3),
|
||||
.BR MSG_KEYUP (3),
|
||||
.BR MSG_CHAR (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,100 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "Bitmap" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
Bitmap \- bitmap operations in MiniGUI.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.PP
|
||||
.BI "int GUIAPI LoadBitmap" "(HDC hdc, PBITMAP pBitmap, const char* spFileName);"
|
||||
.br
|
||||
.BI "int GUIAPI CreateBitmapFromGIFFile" "(HDC hdc, PBITMAP pBitmap, const char* spFileName);"
|
||||
.br
|
||||
.BI "int GUIAPI CreateBitmapFromGIFMemory" "(HDC hdc, PBITMAP pBitmap, void* GIFBuff, int nSize);"
|
||||
.br
|
||||
.BI "int GUIAPI CreateBitmapFromJPGFile" "(HDC hdc, PBITMAP pBitmap, const char* spFileName);"
|
||||
.br
|
||||
.BI "int GUIAPI CreateBitmapFromJPGMemory" "(HDC hdc, PBITMAP pBitmap, void* JPGBuff, int nSize);"
|
||||
.br
|
||||
.BI "void GUIAPI UnloadBitmap" "(PBITMAP pBitmap);"
|
||||
.PP
|
||||
.BI "void GUIAPI ReplaceBitmapColor" "(HDC hdc, PBITMAP pBitmap, int iOColor, int iNColor);"
|
||||
.PP
|
||||
.BI "void GUIAPI FillBox" "(HDC hdc, int x, int y, int w, int h);"
|
||||
.br
|
||||
.BI "void GUIAPI FillBoxWithBitmap" "(HDC hdc, int x, int y, int w, int h, PBITMAP pBitmap);"
|
||||
.br
|
||||
.BI "void GUIAPI FillBoxWithBitmapPart" "(HDC hdc, int x, int y, int w, int h, int bw, int bh, PBITMAP pBitmap, int xo, int yo);"
|
||||
.br
|
||||
.BI "void GUIAPI BitBlt" "(HDC hsdc, int sx, int sy, int sw, int sh, HDC hddc, int dx, int dy, DWORD dwRop);"
|
||||
.br
|
||||
.BI "void GUIAPI StretchBlt" "(HDC hsdc, int sx, int sy, int sw, int sh, HDC hddc, int dx, int dy, int dw, int dh, DWORD dwRop);"
|
||||
.br
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBLoadBitmap\fP function loads a bitmap from a bitmap file named \fBspFileName\fP into a BITMAP struct pointed to by \fBpBitmap\fP. This function will create a compiled bitmap compatible with the DC \fBhdc\fP. You can load BMP, PCX, TGA, GIF, JPG, PNG bitmap files by using this function. Note that you should specify correct extenstion name of the file.
|
||||
.PP
|
||||
\fBCreateBitmapFromGIFFile\fP function create a bitmap from a GIF image file named \fBspFileName\fP. This function will create a compiled bitmap compatible with the DC \fBhdc\fP. This function is the old interface to load GIF file, and reserved only for compatibility. New application should use \fBLoadBitmap\fP to load GIF file.
|
||||
.PP
|
||||
\fBCreateBitmapFromGIFMemory\fP function create a bitmap from a buffer filled with data from a GIF image file. \fBnSize\fP specifies the size of the buffer pointed to by \fBGIFBuf\fP. This function will create a compiled bitmap compatible with the DC \fBhdc\fP. This function is the old interface to load JPG file, and reserved only for compatibility. New application should use \fBLoadBitmap\fP to load JPG file.
|
||||
.PP
|
||||
\fBCreateBitmapFromJPGFile\fP function is similar with \fBCreateBitmapFromGIFFile\fP, but this function used to create bitmap from a JPG image file. This function is a obsoleted one, new application should use \fBLoadBitmap\fP instead.
|
||||
.PP
|
||||
\fBCreateBitmapFromJPGMemory\fP function is similar with \fBCreateBitmapFromGIFMemory\fP, but the buffer is filled with data from a JPG image file. This function is a obsoleted one, new application should use \fBLoadBitmap\fP instead.
|
||||
.PP
|
||||
\fBUnloadBitmap\fP function frees the memory used by the bitmap object pointed to by \fBpBitmap\fP.
|
||||
.PP
|
||||
\fBReplaceBitmapColor\fP function replaces a color \fB(nOColor)\fP with a new color \fB(nNColor)\fP in the bitmap object pointed to by \fBpBitmap\fP.
|
||||
.PP
|
||||
\fBFillBox\fP function fills a box with the current brush in the DC \fBhdc\fP. Note that MiniGUI only defined the color property for the brush objects.
|
||||
.PP
|
||||
\fBFillBoxWithBitmap\fP function fills a box with a bitmap object pointed to by \fBpBitmap\fP. \fB(x, y)\fP is the upper-left corner of the box, and \fBw, h\fP are the width and the height of the box respectively. This function will scale the bitmap when necessary; that is, the width or the height of the box are not equal to the with or the height of the bitmap object.
|
||||
.PP
|
||||
\fBFillBoxWithBitmapPart\fP function fills a box with a part of a bitmap oject pointed to by \fBpBitmap\fP. \fB(x, y)\fP is the upper-left corner of the box, and \fBw, h\fP are the width and the height of the box respectively. \fB(xo, yo)\fP is the start position of the part box in the bitmap relative to upper-left corner of the bitmap, and \fBbw, bh\fP are the width and the height of the full bitmap you want. If \fBbw\fP or \fBbh\fP is less than or equal to zero, this function will use the original width and height of the bitmap, else it will scale the bitmap first when necessary.
|
||||
.PP
|
||||
\fBBitBlt\fP function performs a bit-block transfer of the color data cooresponding to a rectangle of pixels from the specfied source dispaly context \fBhsdc\fP into a destination display context \fBhddc\fP. \fB(sx, sy, sw, sh)\fP specifies the rectangle in the source DC, and \fB(dx, dy)\fP specifies the position of the rectangle in the destination DC. Note that the size of the two rectangles are identical.
|
||||
.PP
|
||||
\fBStretchBlt\fP function copies a bitmap from a source rectangle into a destination rectangle, streching or compressing the bitmap to fit the dimension of the destination rectangle, if necessary. This function is similar with \fBBitBlt\fP function except the former scaling the bitmap. \fB(dw, dh)\fP specifies the size of the destination rectangle.
|
||||
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
For the functions creating bitmap objects, they will return non-zero values to indicate errors.
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
\fBLoadBitmap\fP function only supports bitmap files with less than 256 colors, and without RLE encoding. The GIF and JPG functions only support some formats, and the GIF functions can not support the GIF animation.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR SetBrushColor (3)
|
||||
|
||||
.SH "TODO"
|
||||
.PP
|
||||
A \fBMaskBlt\fP function which combines the color data for the source and destination bitmaps using the specified mask is needed.
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "CaretHandler" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
CaretHandler \- Caret support in MiniGUI.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/window.h>
|
||||
|
||||
.PP
|
||||
.BI "BOOL GUIAPI CreateCaret" "(HWND hWnd, PBITMAP pBitmap, int nWidth, int nHeight);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI ChangeCaretSize" "(HWND hWnd, int newWidth, int newHeight);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI ActiveCaret" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "UINT GUIAPI GetCaretBlinkTime" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI SetCaretBlinkTime" "(HWND hWnd, UINT uTime);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI DestroyCaret" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI HideCaret" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI ShowCaret" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI SetCaretPos" "(HWND hWnd, int x, int y);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI GetCaretPos" "(HWND hWnd, PPOINT pPt);"
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCreateCaret\fP function creates a new shape for the system caret and assigns ownership of the caret to the specified window. The caret shape can be a line, a block, or a bitmap.
|
||||
.PP
|
||||
\fBChangeCaretSize\fP function changes the size(width and height) of the caret owned by the specified window.
|
||||
.PP
|
||||
\fBActiveCaret\fP function activates the caret owned by specified window.
|
||||
.PP
|
||||
\fBGetCaretBlinkTime\fP function returns the elapsed time, in milliseconds, required to invert the caret's pixels.
|
||||
.PP
|
||||
\fBSetCaretBlinkTime\fP function sets the caret blink time to the specified number of milliseconds. The blink time is the elapsed time, in milliseconds, required to invert the caret's pixels.
|
||||
.PP
|
||||
\fBDestroyCaret\fP function destroys the caret's current shape, frees the caret from the window, and removes the caret from the screen.
|
||||
.PP
|
||||
\fBHideCaret\fP function removes the caret from the screen. Hiding a caret does not destroy its current shape or invalidate the insertion point.
|
||||
.PP
|
||||
\fBShowCaret\fP function makes the caret visible on the screen at the caret's current position. When the caret becomes visible, it begins flashing automatically.
|
||||
.PP
|
||||
\fBSetCaretPos\fP function moves the caret to the specified coordinates.
|
||||
.PP
|
||||
\fBGetCaretPos\fP function copies the caret's position, in client coordinates, to the specified \fBPOINT\fP structure
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Song Lixin <zjujoe@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,90 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "ClipRectHeap" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
ClipRectHeap \- Management of private clip rect heap.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.PP
|
||||
.BI "BOOL GUIAPI InitFreeClipRectList" "(PFREECLIPRECTLIST pList, size_t size);"
|
||||
.br
|
||||
.BI "PCLIPRECT GUIAPI ClipRectAlloc" "(PFREECLIPRECTLIST pList);"
|
||||
.br
|
||||
.BI "void GUIAPI FreeClipRect" "(PFREECLIPRECTLIST pList, CLIPRECT* pRect);"
|
||||
.br
|
||||
.BI "void GUIAPI EmptyFreeClipRectList" "(PFREECLIPRECTLIST pList);"
|
||||
.br
|
||||
.BI "void GUIAPI DestroyFreeClipRectList" "(PFREECLIPRECTLIST pList);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP MiniGUI uses internal rect heap to allocate and free clip rect for region efficiently. When define a region, which was composed with many clip rects, you must specify a free clip rect list as the heap of the region to allocate and free clip rects. The functions describing here can help you initialize a clip rect heap, and allocate and free clip rect from it.
|
||||
.PP
|
||||
\fBInitFreeClipRectList\fP function allocates memory from system heap for free clip rect list, and initializes the list specified by \fBpList\fP. The number of clip rects in the list is \fBsize\fP.
|
||||
.PP
|
||||
Clip rect and free clip rect list in MiniGUI are defined as follows:
|
||||
.sp
|
||||
.nf
|
||||
typedef struct tagCLIPRECT
|
||||
{
|
||||
.in +8
|
||||
RECT rc;
|
||||
BOOL fromheap;
|
||||
struct tagCLIPRECT* next;
|
||||
.in -8
|
||||
}CLIPRECT;
|
||||
typedef CLIPRECT* PCLIPRECT;
|
||||
|
||||
typedef struct tagFREECLIPRECTLIST
|
||||
{
|
||||
.in +8
|
||||
pthread_mutex_t lock;
|
||||
PCLIPRECT head;
|
||||
PCLIPRECT tail;
|
||||
int size;
|
||||
PCLIPRECT heap;
|
||||
int free;
|
||||
.in -8
|
||||
}FREECLIPRECTLIST;
|
||||
typedef FREECLIPRECTLIST* PFREECLIPRECTLIST;
|
||||
.fi
|
||||
.PP
|
||||
\fBClipRectAlloc\fP function allocates a clip rect from the initialized list \fBpList\fP. If there is no left item in the heap, it will try to allocate the clip rect from system heap. This function returns a pointer to the allocated clip rect, \fBNULL\fP when an error occurred.
|
||||
.PP
|
||||
\fBFreeClipRect\fP function frees the clip rect \fBpRect\fP allocated by \fBClipRectAlloc\fP.
|
||||
.PP
|
||||
\fBEmptyFreeClipRectList\fP function resets the heap used by \fBpList\fP. If there is any clip rect allocated from the system heap, this function will free it using \fBfree\fP.
|
||||
.PP
|
||||
\fBDestroyFreeClipRectList\fP function destroys the free clip list \fBpList\fP by empting the list and freeing the heap.
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
Although you can use these function to allocate and free clip rect, you should avoid using this function directly. Functions of region will use these function to manipulate the clip rect.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR InitClipRgn (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,34 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "Controls" "3" "Nov. 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
Controls \- Brief discription of usage of built-in controls.
|
||||
|
||||
.PP
|
||||
This page is under construction.
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Wei Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,56 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "CreateDestroyWindow" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
CreateDestroyWindow \- Create and Destroy Window
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/window.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "HWND GUIAPI CreateWindow" "(const char* spClassName, const char* spCaption, DWORD dwStyle, int id, int x, int y, int w, int h, HWND hParentWnd, DWORD dwAddData);"
|
||||
.br
|
||||
.BI "HWND GUIAPI CreateWindowEx" "(const char* spClassName, const char* spCaption, DWORD dwStyle, DWORD dwExStyle, int id, int x, int y, int w, int h, HWND hParentWnd, DWORD dwAddData);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI DestroyWindow" "(HWND hWnd);"
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCreateWindow\fP function creates a child window. It specifies the window class, window title, window style, and the initial position and size of the window. The function also specifies the window's parent or owner, if any.
|
||||
.PP
|
||||
\fBCreateWindowEx\fP function creates a child window with extended styles. It specifies the window class, window title, window style, windows extended styles, and the initial position and size of the window. The function also specifies the window's parent or owner, if any.
|
||||
.PP
|
||||
\fBDestroyWindow\fP function destroys the specified window. The function sends \fBWM_DESTROY\fP and \fBWM_NCDESTROY\fP messages to the window to deactivate it and remove the keyboard focus from it.
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Song Lixin <zjujoe@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,113 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "Cursor" "3" "July 2000" "MiniGUI"
|
||||
.SH NAME
|
||||
Cursor \- the functions handling cursor in MiniGUI
|
||||
.SH SYNOPSIS
|
||||
.B #include <minigui/minigui.h>
|
||||
.PP
|
||||
.BI "HCURSOR GUIAPI LoadCursorFromFile" "(const char* filename);"
|
||||
.br
|
||||
.BI "HCURSOR GUIAPI CreateCursor" "(int xhotspot, int yhotspot, int w, int h, const BYTE* pANDBits, const BYTE* pXORBits, int colornum);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI DestroyCursor" "(HCURSOR hcsr);"
|
||||
.br
|
||||
.BI "HCURSOR GUIAPI GetSystemCursor" "(int csrid);"
|
||||
.br
|
||||
.BI "HCURSOR GUIAPI GetCurrentCursor" "(void);"
|
||||
.br
|
||||
.BI "void GUIAPI ClipCursor" "(const RECT* prc);"
|
||||
.br
|
||||
.BI "void GUIAPI GetClipCursor" "(RECT* prc);"
|
||||
.br
|
||||
.BI "void GUIAPI GetCursorPos" "(POINT* ppt);"
|
||||
.br
|
||||
.BI "void GUIAPI SetCursorPos" "(int x, int y);"
|
||||
.br
|
||||
.BI "HCURSOR GUIAPI SetCursor" "(HCURSOR hcsr);"
|
||||
.br
|
||||
.BI "int GUIAPI ShowCursor" "(BOOL fShow);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI RefreshCursor" "(int* x, int* y, int* button);"
|
||||
.br
|
||||
.SH DESCRIPTION
|
||||
.PP
|
||||
\fBLoadCursorFromFile\fP function loads a cursor from Windows *.cur file named \fBfilename\fP and returns the handle of loaded cursor. The returned handle can be used by \fBSetCursor\fP to set new mouse cursor.
|
||||
.PP
|
||||
\fBCreateCursor\fP function creates a cursor from memory data rather than cursor file. \fBxhotspot\fP and \fByhotspot\fP specify hotpot of the cursor, \fBw\fP and \fBh\fP are the width and the height of the cursor respectively. \fBfANDBits\fP and \fBfXORBits\fP are AND bitmask and XOR bitmask of the cursor. MiniGUI currently support mono-color cursor and 16-color cursor, \fBcolornum\fP specifies the cursor's color number. For mono-color, it should be 1, and for 16-color cursor, it should be 4.
|
||||
.PP
|
||||
\fBDestroyCursor\fP function destroys a cursor object specified by \fBhcsr\fP.
|
||||
.PP
|
||||
\fBGetSystemCursor\fP function gets a system default cursor object. When startup, MiniGUI loads system cursors according to MiniGUI.cfg file. There are 14 system cursors by default, and can be refered with the following IDs:
|
||||
.SH Cursor IDs
|
||||
.IP \fBIDC_ARROW\fR
|
||||
Normal arrow cursor
|
||||
.IP \fBIDC_IBEAM\fR
|
||||
I-shape cursor, indicate an input field
|
||||
.IP \fBIDC_PENCIL\fR
|
||||
Pencil-shape cursor
|
||||
.IP \fBIDC_CROSS\fR
|
||||
Cross cursor
|
||||
.IP \fBIDC_MOVE\fR
|
||||
Moving cursor
|
||||
.IP \fBIDC_SIZENWSE\fR
|
||||
Sizing cursor, along north-west and south-east
|
||||
.IP \fBIDC_SIZENESW\fR
|
||||
Sizing cursor, along north-east and south-west
|
||||
.IP \fBIDC_SIZEWE\fR
|
||||
Sizing cursor, along west and east
|
||||
.IP \fBIDC_SIZENS\fR
|
||||
Sizing cursor, along north and south
|
||||
.IP \fBIDC_UPARROW\fR
|
||||
Up arrow cursor
|
||||
.IP \fBIDC_NONE\fR
|
||||
None cursor
|
||||
.IP \fBIDC_HELP\fR
|
||||
Arrow with question
|
||||
.IP \fBIDC_BUSY\fR
|
||||
Busy cursor
|
||||
.IP \fBIDC_WAIT\fR
|
||||
Wait cursor
|
||||
.PP
|
||||
Returned cursor handle can be used by \fBSetCursor\fP to set new mouse cursor. Note that you should not destroy any system cursor.
|
||||
.PP
|
||||
\fBGetCurrentCursor\fP function gets the handle of current cursor.
|
||||
.PP
|
||||
\fBClipCursor\fP function sets cursor's clipping rectangle. \fBprc\fP is the new clipping rectangle in screen coordinates. If \fBprc\fP is NULL, \fBClipCursor\fP will disable cursor clipping.
|
||||
.PP
|
||||
\fBGetClipCursor\fP function copies current clipping rectangle to a RECT pointed to by \fBprc\fP.
|
||||
.PP
|
||||
\fBGetCursorPos\fP function copies current mouse postion to a POINT pointed to by \fBppt\fP.
|
||||
.PP
|
||||
\fBSetCursorPos\fP function sets mouse position with given parameter \fBx,y\fP.
|
||||
.PP
|
||||
\fBSetCursor\fP function sets cursor to given cursor handle. \fBhcsr\fP can be a handle returned by \fBLoadCursor\fP, \fBCreateCursor\fP, and \fBGetSystemCursor\fP. This function will return the previous cursor handle.
|
||||
.PP
|
||||
\fBShowCursor\fP function shows or hides cursor according to parameter \fBfShow\fP. Show cursor when \fBfShow\fP is TRUE, and hide cursor when \fBfShow\fP is FALSE.
|
||||
.PP
|
||||
\fBRefreshCursor\fP function updates cursor position and status, and return new position in \fBx, y\fP, new buttion status in \fBbutton\fP. The returned value indicates whether mouse has moved, \fBTRUE\fP for moved.
|
||||
.SH AUTHOR
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,84 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "DC" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
DC \- get and release display context.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.PP
|
||||
.BI "HDC GUIAPI GetDC" "(HWND hwnd);"
|
||||
.br
|
||||
.BI "HDC GUIAPI GetClientDC" "(HWND hwnd);"
|
||||
.br
|
||||
.BI "void GUIAPI ReleaseDC" "(HDC hdc);"
|
||||
.PP
|
||||
.BI "HDC GUIAPI CreateCompatibleDC" "(HDC hdc);"
|
||||
.br
|
||||
.BI "void GUIAPI DeleteCompatibleDC" "(HDC hdc);"
|
||||
.PP
|
||||
.BI "HDC GUIAPI CreatePrivateDC" "(HWND hwnd);"
|
||||
.br
|
||||
.BI "HDC GUIAPI CreatePrivateClientDC" "(HWND hwnd);"
|
||||
.br
|
||||
.BI "HDC GUIAPI GetPrivateClientDC" "(HWND hwnd);"
|
||||
.br
|
||||
.BI "void GUIAPI DeletePrivateDC" "(HDC hdc);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBGetDC\fP function gets a window DC of the specified \fBhwnd\fP, and returns the handle of the DC.
|
||||
.PP
|
||||
\fBGetClientDC\fP function gets a client DC of the specified \fBhwnd\fP, and returns the handle of the DC.
|
||||
.PP
|
||||
\fBReleaseDC\fP function releases the DC returned by \fBGetDC\fP or \fBGetClientDC\fP.
|
||||
.PP
|
||||
\fBCreateCompatibleDC\fP function creates a DC which is compatible with specified \fBhdc\fP, and returns the handle of the DC.
|
||||
.PP
|
||||
\fBDeleteCompatibleDC\fP function deletes the DC created by \fBCreateCompatibleDC\fP.
|
||||
.PP
|
||||
\fBCreatePrivateDC\fP function creates a private window DC of the window \fBhwnd\fP and returns the handle of the DC. This DC is created in system heap, rather than allocated from DC pool.
|
||||
.PP
|
||||
\fBCreatePrivateClientDC\fP function creates a private client DC of the window \fBhwnd\fP and returns the handle of the DC. This DC is created in system heap, rather than allocated from DC pool.
|
||||
.PP
|
||||
\fBGetPrivateClientDC\fP function returns the private client DC of the window \fBhwnd\fP with style WS_EX_USEPRIVATECDC.
|
||||
.PP
|
||||
\fBDeletePrivateDC\fP function deletes the DC returned by \fBCreatePrivateDC\fP or \fBCreatePrivateClientDC\fP.
|
||||
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
For the \fBCreate...\fP or \fBGet...\fP functions, the functions will return the handle of the DC. The functions will return HDC_INVALID when an error occurred.
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
MiniGUI uses \fBCreatePrivateDC\fP and \fBCreatePrivateClientDC\fP to create private DC for the window with style WS_EX_USEPRIVATECDC. You can create a private DC to avoid invorking \fBGetDC\fP or \fBGetClientDC\fP to get DC when you receive a MSG_CREATE message. Note that you should call \fBDeletePrivateDC\fP to delete the private DC.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR BeginPaint (3),
|
||||
.BR EndPaint (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,106 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "DCAttr" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
DCAttr \- get/set the general attributes of DC.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "int GUIAPI GetGDCapability" "(HDC hdc, int iItem);"
|
||||
.PP
|
||||
.BI "int GUIAPI SetBkMode" "(HDC hdc, int bkmode);"
|
||||
.br
|
||||
.BI "int GUIAPI GetBkMode" "(HDC hdc);"
|
||||
.PP
|
||||
.BI "gal_pixel GUIAPI GetBkColor" "(HDC hdc);"
|
||||
.br
|
||||
.BI "gal_pixel GUIAPI SetBkColor" "(HDC hdc, gal_pixel color);"
|
||||
.PP
|
||||
.BI "gal_pixel GUIAPI GetTextColor" "(HDC hdc);"
|
||||
.br
|
||||
.BI "gal_pixel GUIAPI SetTextColor" "(HDC hdc, gal_pixel color);"
|
||||
.PP
|
||||
.BI "int GUIAPI GetTabStop" "(HDC hdc);"
|
||||
.br
|
||||
.BI "int GUIAPI SetTabStop" "(HDC hdc, int new_value);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBGetGDCapability\fP function returns a capability specified by \fBiItem\fP of the DC \fBhdc\fP. \fBiItem\fP can be one of the following values:
|
||||
.PP
|
||||
.IP \fBGDCAP_COLORNUM\fP
|
||||
Tell \fBGetDCCapability\fP to return the colors number of the DC.
|
||||
.IP \fBGDCAP_HPIXEL\fP
|
||||
Tell \fBGetDCCapability\fP to return the horizontal resolution of the DC.
|
||||
.IP \fBGDCAP_VPIXEL\fP
|
||||
Tell \fBGetDCCapability\fP to return the vertical resolution of the DC.
|
||||
.IP \fBGDCAP_MAXX\fP
|
||||
Tell \fBGetDCCapability\fP to return the maximal visible x value of the DC.
|
||||
.IP \fBGDCAP_MAXY\fP
|
||||
Tell \fBGetDCCapability\fP to return the maximal visible y value of the DC.
|
||||
.IP \fBGDCAP_DEPTH\fP
|
||||
Tell \fBGetDCCapability\fP to return the color depth of the DC. The returned value can be 1, 4, 8, 15, 16, 24, or 32.
|
||||
.IP \fBGDCAP_BPP\fP
|
||||
Tell \fBGetDCCapability\fP to return the bytes number for storing a pixle in the DC.
|
||||
.PP
|
||||
\fBGetBkColor\fP function gets the background color of the DC.
|
||||
.PP
|
||||
\fBSetBkColor\fP function sets the background color of the DC to the color specified by \fBcolor\fP.
|
||||
.PP
|
||||
\fBGetBkMode\fP function gets the background mode of the DC.
|
||||
.PP
|
||||
\fBSetBkMode\fP function sets the background mode of the DC. Background modes in MiniGUI are:
|
||||
.PP
|
||||
.IP \fBBM_TRANSPARENT\fP
|
||||
Indicate that reserve the background untouched when draw text.
|
||||
.IP \fBBM_OPAQUE\fP
|
||||
Indicate that erase the background with background color when draw text.
|
||||
.PP
|
||||
\fBGetTextColor\fP function gets the text color of the DC.
|
||||
.PP
|
||||
\fBSetTextColor\fP function sets the text color to the color specified by \fBcolor\fP.
|
||||
.PP
|
||||
\fBGetTabStop\fP function gets the tab stops of the DC.
|
||||
.PP
|
||||
\fBSetTabStop\fP function sets the tab stops of the DC to the new value specified by \fBnew_value\fP.
|
||||
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
The \fBGet...\fP functions return the value wanted. The \fBSet...\fP functions return the old value.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR RGB2Pixel (3),
|
||||
.BR TextOut (3),
|
||||
.BR TabbedTextOutLen (3),
|
||||
.BR TabbedTextOutEx (3),
|
||||
.BR DrawText (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,78 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "DCClipping" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
DCClipping \- Clipping support in MiniGUI.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "void GUIAPI ExcludeClipRect" "(HDC hdc, int left, int top, int right, int bottom);"
|
||||
.br
|
||||
.BI "void GUIAPI IncludeClipRect" "(HDC hdc, int left, int top, int right, int bottom);"
|
||||
.br
|
||||
.BI "void GUIAPI ClipRectIntersect" "(HDC hdc, const RECT* prc);"
|
||||
.br
|
||||
.BI "void GUIAPI SelectClipRect" "(HDC hdc, const RECT* prc);"
|
||||
.br
|
||||
.BI "void GUIAPI SelectClipRegion" "(HDC hdc, const CLIPRGN* pRgn);"
|
||||
.br
|
||||
.BI "void GUIAPI GetBoundsRect" "(HDC hdc, RECT* pRect);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI PtVisible" "(HDC hdc, const POINT* pPt);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI RectVisible" "(HDC hdc, const RECT* pRect);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBExcludeClipRect\fP function excludes the specified rect \fB(left, top, right, bottom)\fP from the local clipping region of the DC.
|
||||
.PP
|
||||
\fBIncludeClipRect\fP function includes the specified rect \fB(left, top, right, bottom)\fP into the local clipping region of the DC.
|
||||
.PP
|
||||
\fBClipRectIntersect\fP function intersects the specified rect \fBprc\fP with the local clipping region of the DC.
|
||||
.PP
|
||||
\fBSelectClipRect\fP function sets the local clipping region of the DC to the rect pointed to by \fBprc\fP.
|
||||
.PP
|
||||
\fBSelectClipRegion\fP function sets the local clipping region of the DC to the region pointed to by \fBpRgn\fP.
|
||||
.PP
|
||||
\fBGetBoundsRect\fP function retrives the bounding rect of the current local clipping region of the DC. The struct pointed to by \fBpRect\fP will receive the bounding rect.
|
||||
.PP
|
||||
\fBPtVisible\fP function checks whether the point specified by \fBpPt\fP is visible, i.e. it is within the current local clipping region of the DC.
|
||||
.PP
|
||||
\fBRectVisible\fP function checks whether the rect specified by \fBpRect\fP is visible, i.e. it is intersected with the current local clipping region of the DC.
|
||||
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
\fBPtVisible\fP and \fBRectVisible\fP functions return \fBTRUE\fP when the point or rect is visible, else return \fBFALSE\fP.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR ClipRgnIntersect (3),
|
||||
.BR SetClipRgn (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,118 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "DTI" "3" "July 2000" "MiniGUI"
|
||||
.SH "NAME"
|
||||
DTI \- the desktop interfaces of MiniGUI
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/minigui.h>
|
||||
.PP
|
||||
.BI "void GUIAPI CustomizeDesktopMenu" "(HMENU hDesktopMenu, int iPos);"
|
||||
.br
|
||||
.BI "int GUIAPI CustomDesktopCommand" "(int id);"
|
||||
.br
|
||||
.BI "void GUIAPI OpenAboutDialog" "(void);"
|
||||
.br
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCustomizeDesktopMenu\fP function will be called automatically by MiniGUI when you click right button on MiniGUI's desktop.
|
||||
.PP
|
||||
\fBCustomDesktopCommand\fP function will be called automatically by MiniGUI when you choose command on MiniGUI's desktop menu.
|
||||
.PP
|
||||
\fBOpenAboutDialog\fP function tells desktop to open an \fBAbout MiniGUI...\fP dialog.
|
||||
.SH "NOTES"
|
||||
You should implemented \fBCustomizeDesktopMenu, CustumDesktopCommand\fP functions by yourself.
|
||||
However, there is a \fBdti.c\fP file, which defines above functions as default actions. You can use these functions in your own \fBdti.c\fP by including this file in your \fBdti.c\fP file, as follows:
|
||||
.PP
|
||||
.nf
|
||||
#include <minigui/dti.c>
|
||||
.fi
|
||||
.PP
|
||||
Or you can use macros to disable the default functions and define your own instances:
|
||||
.PP
|
||||
.nf
|
||||
// Use macro to disable system defined
|
||||
// CustomizeDesktopMenu and CustomDesktopCommand functions
|
||||
|
||||
#define DONT_USE_SYS_CUSTOMIZEDESKTOPMENU
|
||||
#include <minigui/dti.c>
|
||||
|
||||
// Define your own instance here.
|
||||
void CustomizeDesktopMenu (HMENU hmnu, int iPos)
|
||||
{
|
||||
...
|
||||
}
|
||||
|
||||
int CustomDesktopCommand (int id)
|
||||
{
|
||||
...
|
||||
return 0;
|
||||
}
|
||||
.fi
|
||||
|
||||
.SH "SAMPLE"
|
||||
This sample uses \fBCustomizeDesktopMenu\fP function to append a menu item at the desktop menu, and then uses \fBCustomDesktopCommand\fP to response the select of the appended menu item and open a Virtual Console window:
|
||||
.PP
|
||||
.nf
|
||||
#define DONT_USE_SYS_CUSTOMIZEDESKTOPMENU
|
||||
#include <minigui/dti.c>
|
||||
|
||||
#define IDC_DTI_ABOUT (IDM_DTI_FIRST + 1)
|
||||
#define IDC_DTI_NEWVC (IDM_DTI_FIRST + 2)
|
||||
|
||||
void CustomizeDesktopMenu (HMENU hmnu, int iPos)
|
||||
{
|
||||
MENUITEMINFO mii;
|
||||
|
||||
memset (&mii, 0, sizeof(MENUITEMINFO));
|
||||
mii.type = MFT_STRING;
|
||||
mii.id = IDC_DTI_ABOUT;
|
||||
mii.typedata = (DWORD)"About MiniGUI...";
|
||||
mii.hsubmenu = 0;
|
||||
InsertMenuItem (hmnu, iPos, TRUE, &mii);
|
||||
|
||||
mii.type = MFT_STRING;
|
||||
mii.id = IDC_DTI_NEWVC;
|
||||
mii.typedata = (DWORD)"New Virtual Console";
|
||||
mii.hsubmenu = 0;
|
||||
InsertMenuItem (hmnu, iPos + 1, TRUE, &mii);
|
||||
}
|
||||
|
||||
int CustomDesktopCommand (int id)
|
||||
{
|
||||
if (id == IDC_DTI_ABOUT)
|
||||
OpenAboutDialog ();
|
||||
else if (id == IDC_DTI_NEWVC)
|
||||
NewVirtualConsole (NULL);
|
||||
|
||||
return 0;
|
||||
}
|
||||
.fi
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR miniguiInit "(3), " miniguiMain (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,124 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "DialogBox" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
DialogBox \- DialogBox Support Functions.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/window.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "HWND GUIAPI CreateMainWindowIndirect" "(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC WndProc);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI DestroyMainWindowIndirect" "(HWND hMainWin);"
|
||||
.br
|
||||
.BI "int GUIAPI DialogBoxIndirectParam" "(PDLGTEMPLATE pDlgTemplate, HWND hOwner, WNDPROC DlgProc, LPARAM lParam);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI EndDialog" "(HWND hDlg, int endCode);"
|
||||
.br
|
||||
.BI "void GUIAPI DestroyAllControls" "(HWND hDlg);"
|
||||
.br
|
||||
.BI "int GUIAPI DefaultDialogProc" "(HWND hWnd, int message, WPARAM wParam, LPARAM lParam);"
|
||||
.br
|
||||
.BI "HWND GUIAPI GetDlgDefPushButton" "(HWND hWnd);"
|
||||
.br
|
||||
.BI "int GUIAPI GetDlgCtrlID" "(HWND hwndCtl);"
|
||||
.br
|
||||
.BI "HWND GUIAPI GetDlgItem" "(HWND hDlg, int nIDDlgItem);"
|
||||
.br
|
||||
.BI "UINT GUIAPI GetDlgItemInt" "(HWND hDlg, int nIDDlgItem, BOOL *lpTranslated, BOOL bSigned);"
|
||||
.br
|
||||
.BI "int GUIAPI GetDlgItemText" "(HWND hDlg, int nIDDlgItem, char* lpString, int nMaxCount);"
|
||||
.br
|
||||
.BI "char* GUIAPI GetDlgItemText2" "(HWND hDlg, int id, int* lenPtr);"
|
||||
.br
|
||||
.BI "HWND GUIAPI GetNextDlgGroupItem" "(HWND hDlg, HWND hCtl, BOOL bPrevious);"
|
||||
.br
|
||||
.BI "HWND GUIAPI GetNextDlgTabItem" "(HWND hDlg, HWND hCtl, BOOL bPrevious);"
|
||||
.br
|
||||
.BI "int GUIAPI SendDlgItemMessage" "( HWND hDlg, int nIDDlgItem, int message, WPARAM wParam, LPARAM lParam);"
|
||||
.br
|
||||
.BI "BOOL GUIAPI SetDlgItemInt" "(HWND hDlg, int nIDDlgItem, UINT uValue, BOOL bSigned);"
|
||||
.br
|
||||
.BI " BOOL GUIAPI SetDlgItemText" "(HWND hDlg, int nIDDlgItem, const char* lpString);"
|
||||
.br
|
||||
.BI "void GUIAPI CheckDlgButton" "(HWND hDlg, int nIDDlgItem, int nCheck);"
|
||||
.br
|
||||
.BI "void GUIAPI CheckRadioButton" "(HWND hDlg, int idFirstButton, int idLastButton, int idCheckButton);"
|
||||
.br
|
||||
.BI "int GUIAPI IsDlgButtonChecked" "(HWND hDlg, int idButton);"
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCreateMainWindowIndirect\fP function creates a dialog window specified by \fBpDlgTemplate\fP.
|
||||
.PP
|
||||
\fBDestroyMainWindowIndirect\fP function destroys the window created by \fBCreateMainWindowIndirect\fP.
|
||||
.PP
|
||||
\fBDialogBoxIndirectParam\fP function creates a modal dialog box from a dialog box template in memory. Before displaying the dialog box, the function passes an application-defined value to the dialog box procedure as the \fBlParam\fP parameter of the \fBWM_INITDIALOG\fP message. An application can use this value to initialize dialog box controls.
|
||||
.PP
|
||||
\fBEndDialog\fP function destroys a modal dialog box, causing the system to end any processing for the dialog box.
|
||||
.PP
|
||||
\fBDestroyAllControls\fP function destroys all the controls in the dialog box.
|
||||
.PP
|
||||
\fBDefaultDialogProc\fP function is the default dialog box message handler.
|
||||
.PP
|
||||
\fBGetDlgDefPushButton\fP function gets the default push button in the window specified by hWnd.
|
||||
.PP
|
||||
\fBGetDlgCtrlID\fP function returns the identifier of the specified control.
|
||||
.PP
|
||||
\fBGetDlgItem\fP function retrieves the handle of a control in the specified dialog box.
|
||||
.PP
|
||||
\fBGetDlgItemInt\fP function translates the text of a specified control in a dialog box into an integer value.
|
||||
.PP
|
||||
\fBGetDlgItemText\fP function retrieves the title or text associated with a control in a dialog box.
|
||||
.PP
|
||||
\fBGetDlgItemText2\fP function is similiar to \fBGetDlgItemText\fP function.But it allocates memory for the text.
|
||||
.PP
|
||||
\fBGetNextDlgGroupItem\fP function retrieves the handle of the first control in a group of controls that precedes (or follows) the specified control in a dialog box.
|
||||
.PP
|
||||
\fBGetNextDlgTabItem\fP function retrieves the handle of the first control that has the \fBWS_TABSTOP\fP style that precedes (or follows) the specified control.
|
||||
.PP
|
||||
\fBSendDlgItemMessage\fP function sends a message to the specified control in a dialog box.
|
||||
.PP
|
||||
\fBSetDlgItemInt\fP function sets the text of a control in a dialog box to the string representation of a specified integer value.
|
||||
.PP
|
||||
\fBSetDlgItemText\fP function sets the title or text of a control in a dialog box.
|
||||
.PP
|
||||
\fBCheckDlgButton\fP function changes the check status of a button control.
|
||||
.PP
|
||||
\fBCheckRadioButton\fP function adds a check mark to (checks) a specified radio button in a group and removes a check mark from (clears) all other radio buttons in the group.
|
||||
.PP
|
||||
\fBIsDlgButtonChecked\fP function determines whether a button control has a check mark next to it or whether a three-state button control is grayed, checked, or neither.
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by Song Lixin <zjujoe@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,141 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one.
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "Drawing" "3" "August 2000" "MiniGUI"
|
||||
|
||||
.SH "NAME"
|
||||
Drawing \- general drawing functions.
|
||||
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/gdi.h>
|
||||
.br
|
||||
|
||||
.PP
|
||||
.BI "gal_pixel GUIAPI GetPixel" "(HDC hdc, int x, int y);"
|
||||
.br
|
||||
.BI "void GUIAPI SetPixel" "(HDC hdc, int x, int y, gal_pixel c);"
|
||||
.br
|
||||
.BI "void GUIAPI GetPixelRGB" "(HDC hdc, int x, int y, int* r, int* g, int* b);"
|
||||
.br
|
||||
.BI "void GUIAPI SetPixelRGB" "(HDC hdc, int x, int y, int r, int g, int b);"
|
||||
.br
|
||||
.BI "gal_pixel GUIAPI RGB2Pixel" "(HDC hdc, int r, int g, int b);"
|
||||
.br
|
||||
.BI "void GUIAPI MoveTo" "(HDC hdc, int x, int y);"
|
||||
.br
|
||||
.BI "void GUIAPI LineTo" "(HDC hdc, int x, int y);"
|
||||
.br
|
||||
.BI "void GUIAPI Circle" "(HDC hdc, int x, int y, int r);"
|
||||
.br
|
||||
.BI "void GUIAPI Rectangle" "(HDC hdc, int x0, int y0, int x1, int y1);"
|
||||
.br
|
||||
.BI "void GUIAPI FocusRect" "(HDC hdc, int x0, int y0, int x1, int y1);"
|
||||
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBGetPixel\fP function gets pixel at the position \fB(x, y)\fP on the DC \fBhdc\fP.
|
||||
.PP
|
||||
\fBSetPixel\fP function sets pixel at the position \fB(x, y)\fP on the DC. You can use pre-defined standard pixel values:
|
||||
.PP
|
||||
.I PIXEL_black
|
||||
black
|
||||
.br
|
||||
.I PIXEL_darkred
|
||||
dark red
|
||||
.br
|
||||
.I PIXEL_darkgreen
|
||||
dark green
|
||||
.br
|
||||
.I PIXEL_darkyellow
|
||||
dark yellow
|
||||
.br
|
||||
.I PIXEL_darkblue
|
||||
dark blue
|
||||
.br
|
||||
.I PIXEL_darkmagenta
|
||||
dark magenta
|
||||
.br
|
||||
.I PIXEL_darkcyan
|
||||
dark cyan
|
||||
.br
|
||||
.I PIXEL_lightgray
|
||||
light gray
|
||||
.br
|
||||
.I PIXEL_darkgray
|
||||
dark gray
|
||||
.br
|
||||
.I PIXEL_red
|
||||
red
|
||||
.br
|
||||
.I PIXEL_green
|
||||
green
|
||||
.br
|
||||
.I PIXEL_yellow
|
||||
yellow
|
||||
.br
|
||||
.I PIXEL_blue
|
||||
blue
|
||||
.br
|
||||
.I PIXEL_magenta
|
||||
magenta
|
||||
.br
|
||||
.I PIXEL_cyan
|
||||
cyan
|
||||
.br
|
||||
.I PIXEL_lightwhite
|
||||
light white
|
||||
.PP
|
||||
\fBGetPixelRGB\fP function gets pixel's RGB values at the position \fB(x, y)\fP on the DC.
|
||||
.PP
|
||||
\fBSetPixelRGB\fP function sets pixle at the position \fB(x, y)\fP with RGB value on the DC.
|
||||
.PP
|
||||
\fBRGB2Pixel\fP function converts RGB value to pixel value. Note that the range of a RGB value is 0~0xFF.
|
||||
.PP
|
||||
\fBMoveTo\fP function moves the current position to \fB(x, y)\fP.
|
||||
.PP
|
||||
\fBLineTo\fP function draws a line from the current position to \fB(x, y)\fP with current pen color. You can use \fBMoveTo\fP tochange the current position.
|
||||
.PP
|
||||
\fBCircle\fP function draws a circle with current pen color. The center of the circle is at \fB(x, y)\fP, and the radius is \fBr\fP.
|
||||
.PP
|
||||
\fBRectangle\fP function draws a rectangle with current pen color. The upper-left corner of the rectangle is \fB(x0, y0)\fP, and the lower-right corner of the rectangle is \fB(x1, y1)\fP.
|
||||
.PP
|
||||
\fBFocusRect\fP function draws a focus rectanglt with current pen color. The upper-left corner of the rectangle is \fB(x0, y0)\fP, and the lower-right corner of the rectangle is \fB(x1, y1)\fP. Focus rectangle is composed with dashed lines.
|
||||
.PP
|
||||
All coordinates are in logical units.
|
||||
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
The \fBGet...\fP functions return the value you want.
|
||||
|
||||
.SH "NOTE"
|
||||
.PP
|
||||
Internally, MiniGUI uses pixel value to present a point in DC. You can use \fBRGB2Pixel\fP to convert RGB value to pixel value. Note that the range of a RGB value is 0~0xFF in MiniGUI.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
.BR SetMapMode (3)
|
||||
.BR SetPenColor (3)
|
||||
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
|
||||
@@ -1,83 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "EtcFile" "3" "July 2000" "MiniGUI"
|
||||
.SH "NAME"
|
||||
EtcFile \- get/set values from/to MiniGUI configuration (etc) file.
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/minigui.h>
|
||||
.PP
|
||||
.BI "extern char ETCFILEPATH [];"
|
||||
.PP
|
||||
.BI "int GUIAPI GetValueFromEtcFile" "(const char* pEtcFile, const char* pSection, const char* pKey, char* pValue, int iLen);"
|
||||
.br
|
||||
.BI "int GUIAPI GetIntValueFromEtcFile" "(const char* pEtcFile, const char* pSection, const char* pKey, int* value);"
|
||||
.br
|
||||
.BI "int GUIAPI SetValueToEtcFile" "(const char* pEtcFile, const char* pSection, const char* pKey, char* pValue);"
|
||||
.br
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
In MiniGUI, you can get specific values from \fBetc\fP files using \fBGetValueFromEtcFile\fP and \fBGetIntValueFromEtcFile\fP. Etc files are text configuration files with same format as Windows INI files. A etc file has following simple format:
|
||||
.PP
|
||||
.nf
|
||||
[section0]
|
||||
key0=value0
|
||||
key1=value1
|
||||
|
||||
[section1]
|
||||
key0=value0
|
||||
key1=value1
|
||||
.fi
|
||||
.PP
|
||||
As you have seen, etc files are composed by \fBsections\fP. Every \fBvalue\fP in etc file is refrenced by \fBkey\fP. You should specify section name and key name to find a specific value.
|
||||
.PP
|
||||
\fBGetValueFromEtcFile\fP function gets a value (a string) with \fBpKey\fP key from \fBpSection\fP section in \fBpEtcFile\fP file, and store the value in buffer \fBpValue\fP with \fBiLen\fP length.
|
||||
.PP
|
||||
\fBGetIntValueFromEtcFile\fP function gets a integer with \fBpKey\fP key from \fBpSection\fP section in \fBpEtcFile\fP file, and store the value in the buffer \fBvalue\fP.
|
||||
.PP
|
||||
\fBSetValueToEtcFile\fP function sets the value of \fBpKey\fP key in \fBpSection\fP section in \fBpEtcFile\fP file as \fBpValue\fP. This function will create etc file, section or key when missing the specified file, section or key.
|
||||
.PP
|
||||
The two functions return zero if suceess, or else will return nonzero.
|
||||
.SH "RETURN VALUE"
|
||||
.PP
|
||||
If the return value is less than zero, there is an error occured. The returned value indicates the error type:
|
||||
.IP \fBETC_FILENOTFOUND\fP
|
||||
The specified etc file not found or file open error.
|
||||
.IP \fBETC_SECTIONNOTFOUND\fP
|
||||
The specified section not found in the etc file.
|
||||
.IP \fBETC_KEYNOTFOUND\fP
|
||||
The specified key not found in the section.
|
||||
.IP \fBETC_TMPFILEFAILED\fP
|
||||
Temporary file operations error when setting value to etc file.
|
||||
.IP \fBETC_FILEIOFAILED\fP
|
||||
Error in file I/O.
|
||||
.SH "NOTES"
|
||||
.PP
|
||||
MiniGUI use /etc/MiniGUI.cfg as its configuration file. However, you can put your own configuration in /usr/local/etc/MiniGUI.cfg or ~/.MiniGUI.cfg to override the configurations in /etc/MiniGUI.cfg. The global variable \fBETCFILEPATH\fP store the actual MiniGUI.cfg file path used by MiniGUI.
|
||||
.PP
|
||||
The maximal length of line in etc file are \fBETC_MAXLINE\fP, which is definded 1024 as default.
|
||||
.SH "SEE ALSO"
|
||||
.BR MiniGUI.cfg "(5)"
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
@@ -1,48 +0,0 @@
|
||||
.\" This manpage is Copyright (C) 2000 Wei Yongming
|
||||
.\" 2000 BluePoint Software
|
||||
.\"
|
||||
.\" Permission is granted to make and distribute verbatim copies of this
|
||||
.\" manual provided the copyright notice and this permission notice are
|
||||
.\" preserved on all copies.
|
||||
.\"
|
||||
.\" Permission is granted to copy and distribute modified versions of this
|
||||
.\" manual under the conditions for verbatim copying, provided that the
|
||||
.\" entire resulting derived work is distributed under the terms of a
|
||||
.\" permission notice identical to this one
|
||||
.\"
|
||||
.\" Since MiniGUI is constantly changing, this
|
||||
.\" manual page may be incorrect or out-of-date. The author(s) assume no
|
||||
.\" responsibility for errors or omissions, or for damages resulting from
|
||||
.\" the use of the information contained herein. The author(s) may not
|
||||
.\" have taken the same level of care in the production of this manual,
|
||||
.\" which is licensed free of charge, as they might when working
|
||||
.\" professionally.
|
||||
.\"
|
||||
.\" Formatted or processed versions of this manual, if unaccompanied by
|
||||
.\" the source, must acknowledge the copyright and authors of this work.
|
||||
.TH "FixStr" "3" "July 2000" "MiniGUI"
|
||||
.SH "NAME"
|
||||
FixStr \- the functions allocating/freeing length-fixed string in MiniGUI.
|
||||
.SH "SYNOPSIS"
|
||||
.B #include <minigui/minigui.h>
|
||||
.PP
|
||||
.BI "char* GUIAPI FixStrAlloc" "(int len);"
|
||||
.br
|
||||
.BI "void GUIAPI FreeFixStr" "(char* str);"
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBFixStrAlloc\fP function allocates memory in MiniGUI's length-fixed string heap. The result memory should accommondate a null-terminated string with length of \fBlen\fP, that is, the memory is with \fB(len + 1)\fP long.
|
||||
.PP
|
||||
\fBFreeFixStr\fP function frees the memory allocated by \fBFixStrAlloc\fP.
|
||||
.SH "RETURN VALUE"
|
||||
\fBFixStrAlloc\fP function returns the pointer to the memory allocated. When error occurred, this function will return NULL.
|
||||
.SH "NOTES"
|
||||
There are many length-fixed strings in MiniGUI, such as captions of windows. MiniGUI has an internal heap for allocating/freeing length-fixed strings efficiently. You can allocate memory from this heap by using \fBFixStrAlloc\fP. However, you should avoid doing \fBstrcat\fP on the memory allocated by \fBFixStrAlloc\fP.
|
||||
.PP
|
||||
When there is no free space in MiniGUI's internal heap, MiniGUI will try to allocate memory from system heap by using \fBmalloc\fP. You can safely free the memory actually returned by \fBmalloc\fP with \fBFreeFixStr\fP.
|
||||
.SH "SEE ALSO"
|
||||
.BR strcat "(3), " malloc "(3), " free (3)
|
||||
.SH "AUTHOR"
|
||||
.PP
|
||||
This manual page was edited by WEI Yongming <ymwei@minigui.org>.
|
||||
If you have any problems, comments or found some bugs, please send messages to me.
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user