Projects / MiniGUI


MiniGUI is a mini graphical user interface (GUI) support system for Linux that provides an event-driven API for applications. It makes it possible for an application to create multiple windows in multiple threads, and can draw in these windows without interfering with each other. A Graphics Abstract Layer (GAL) and an Input Abstract Layer (IAL) are provided for compatibility with many graphics engines, including SVGALib, LibGGI, and X. It provides native support for many image types including GIF, JPG, PCX, LBM/PBM, and BMP, TrueType and Adobe Type1 fonts, and GB2312 and BIG5 charsets.


Recent releases

  •  19 Sep 2004 05:53

    Release Notes: Lots of optimizations and bugfixes were made and several key new features were added.

    •  12 Oct 2003 13:45

      No changes have been submitted for this release.

      •  16 Apr 2001 13:42

        Release Notes: Some small bugs were fixed. MEDIT control was enhanced with the addition of ES_AUTOWRAP style and ES_BASELINE style. LISTBOX control was enhanced with the addition of the LBN_CLICKED notification message. MiniGUI-Lite's drawing semaphore operations were enhanced. Some bugs in the underlay drivers of Native Engine were fixed. FLAT_WINDOW_STYLE was enhanced to support PDA-like screens. RegisterListenFD/UnregisterListenFD functions were added to use MiniGUI's underlay select system call to listen to certain file descriptors. SPINBOX control was added in the MiniGUI-ext library. MiniGUI-Lite's resource sharing was enhanced. Some general socket I/O functions were exported. RegisterRequestHandler was added to allow the server of MiniGUI-Lite to extend its functionality. Some styles were added to MessageBox to control alignment. Two MiniGUI.cfg files are now provided to support 3D window style and flat window style. vcongui was enhanced to use RegisterListenFD (in the MiniGUI-Lite version).

        •  04 Mar 2001 19:04

          Release Notes: The White Paper was updated and some articles about MiniGUI were added. The README and some manpages were updated. SIGSTOP and SIGCONT are now used to help virtual console switching. A function called get_sock_fd2srv was added for clients to return the socket fd connected to the server (MiniGUI-Lite). The default handling of message MSG_SIZECHANGED was changed. The values of KS_* macros were changed, and some bugs about the status of shift keys and mouse button were fixed. Moving child windows when handling message MSG_PAINT of the parent is now possible. The MiniGUIExt library was added (see ext/README for more information). EUCKR and UJIS charsets support was merged. MiniGUI now reads window metrics and element colors from MiniGUI.cfg. Flat style is now enabled for main windows and some other controls. Transparent bitmap support was added. The appearances of some window elements were changed.

          •  18 Jan 2001 20:18

            Release Notes: The APIs are now stable. Some new controls and bugfixes have been added. The most important change is that you can now build the light version of MiniGUI, "MiniGUI-Lite". MiniGUI-Lite is a lightweight version of the original MiniGUI created because LinuxThreads is not needed anymore. You can run a program based on MiniGUI-Lite from a program called "mginit". Just like in X, the former process is called a client, and the latter a server. The clients connect to the server via a UNIX domain socket, and the server accept 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. Note that most APIs of MiniGUI-Lite are compatible with original MiniGUI.


            Project Spotlight


            A Fluent OpenStack client API for Java.


            Project Spotlight

            TurnKey TWiki Appliance

            A TWiki appliance that is easy to use and lightweight.