1 Preface
MiniGUI is a cross operating system and lightweight GUI support system for real-time embedded systems, and is especially suitable for embedded systems based on Linux/uClinux,
VxWorks, pSOS, eCos, uC/OS-II,
ThreadX, OSE, and Nucleus. Launched at the end of 1998, the software has, over nine years of development, become a stable and reliable one securing widespread applications in a variety of products and projects. At present, the latest stable version of
MiniGUI is 3.0. This handbook is the programming guide for the
MiniGUI version 3.0, which describes how to develop applications based on
MiniGUI.
This handbook is a complete guide on
MiniGUI 3.0 programming, which describes the foundation knowledge of
MiniGUI 3.0 programming and various programming methods and skills, and detailed describes the main API functions. Though the handbook tries to detailed describe various aspects of
MiniGUI programming, it is not a complete reference manual about
MiniGUI APIs; please refer to
MiniGUI API Reference for relevant information.
1.1 Relevant Documents
The documents related with this guide:
Please visit
http://www.minigui.com/index.php?id=techproducts to get the complete products and purchase information.
1.2 Organization of this Guide
Except this preface, this text is divided into four parts with thirty-nine chapters in total:
- Part One: Foundation of MiniGUI Programming, from Chapter 2 to Chapter 12. We describe the foundation concepts for using MiniGUI programming in this part.
- Part Two: MiniGUI Graphics Programming, from Chapter 13 to Chapter 15. We describe the use and concepts of MiniGUI graphics related APIs in this part.
- Part Three: MiniGUI Advanced Programming Topics, from Chapter 16 to Chapter 18. We describe the concepts of MiniGUI-Processes related advanced programming and the development of customizing GAL and IAL engine in this part.
- Part Four: MiniGUI Control programming, from Chapter 19 to Chapter 39 We describe the use of various controls provided by MiniGUI in this part.
1.3 Obtaining Samples of the Guide
We organize the sample programs in this guide into a complete Autoconf/Automake project package called mg-samples, and save the package in the product CD-ROM. For
MiniGUI 3.0 (all editions), the source packages are located in the directory minigui of the product CD-ROM. The packages are listed as follow:
- mg-samples-3.0.x-tar.gz:The sample program package for MiniGUI Programming Guide.
- minigui-res-3.0.x.tar.gz:Runtime resources required by MiniGUI 3.0 including fonts, icons, bitmaps, and cursors.
- adp/:For MiniGUI 3.0 productions, this directory stores MiniGUI adp which is for special development board (operating system and hardware platform).
1.4 Compiling and Running Environment of Samples
This guide assumes that you run
MiniGUI 3.0 standard/professional edtion on Linux operating system. Therefore, some samples are described on the assumption that you are using Linux and GNU toolchain. However, most of the samples in this guide can run on other operating systems. For more information to compile the samples for an operating system other than Linux, please refer to
MiniGUI User Manual in minigui/docs, the directory of product CD-ROM (
MiniGUI-USER-MANUAL*.pdf ).
We recommend the following PC computer configuration for running Linux:
- Pentium III or above CPU;
- 256MB or above memory;
- At least 15GB free disk space;
- Mouse using USB/PS2 interface (PS2 or IMPS2 mouse protocol);
- VESA2-compatible video card, ensure achieve to 1024x768 resolution, 16-bit color;
- Choose Red Hat Linux 9 as the development platform, and install all the software packages (need at least 5GB disk space for /usr file system); Fedora 3 or Debian is also good for the development platform.
- Partition your hard disk reasonably, mount /usr, /usr/local, /home, /var, /opt etc. on different disk partition and make sure 3GB space for /usr/local and /opt file system separately.
1.5 Copyright and Licensing
Feynman Software releases the sample code (mde and mg-samples) under GPL. The original text of GPL license can be obtained by following means:
--
XiaodongLi - 26 Oct 2009