标签:
User interfaces occupy an important part of software development. This page provides a comprehensive reference on toolkits for building graphical user interfaces (GUIs), with emphasis on resources for Free Software (Open Source). This page focuses on personal computers but also references some offerings for embedded products.
Note to people using the geocities.com site: if you see the site down due to bandwidth limit being exceeded, please consider using the other site listed below
GUI Toolkit developers: please let me know of news/changes to your projects/products so I can update this page accordingly.
This page resides in http://www.geocities.com/SiliconValley/Vista/7184/guitool.html and
http://www.atai.org/guitool/
Page created April 17, 1997 (86). recent changes
Free toolkits: C/C++ Java other languages | commercial toolkits: C/C++ Java | Related links |copyright
GPL: GNU General Public License
LGPL:GNU Library/Lesser General Public License
PD: Public Domain
BSD: BSD or X11-like license (commonly allowing you todo whatever you want provided the original copyright notice is kept and credit given)
Art: The Perl Artistic License
MPL: Mozilla Public License
(unless explicit stated with "C API", all toolkits in this table provide APIs in C++)
Name | Comments | license | Unix X11+ | UnixX11+Motif | MS Win 95/98 | MS Win NT/2000/ XP/Vista | MS Win 3.1 | OS/2 PM | MacOS | NextStepOpenStep MacOS X | other platforms |
---|---|---|---|---|---|---|---|---|---|---|---|
in C++ see interesting development methodology for more info Unix version built on gtk+ |
y | ||||||||||
aedGUI |
a cross-plataform, easy-to-use, non-intrusive C++ GUI library that runs on top ofSDL |
LGPL | (via SDL) | (viaSDL) | (via SDL) | (via SDL) | (viaSDL) | (via SDL) | (via SDL) | (via SDL) | (via SDL) |
Agar |
a high-level graphical C application framework aimed primarly at 2D/3D games and simulations. Agar applications are portable to a variety of platforms thanks to theSDL.support for SDL 2D andOpenGL rendering. Thread safe | BSD |
y (via SDL) | (viaSDL) | y (via SDL) | y (via SDL) | (viaSDL) | (via SDL) | y (viaSDL) | y (via SDL) | other platforms supported bySDL |
OpenAmulet( discounted?) |
|||||||||||
Gtk--. |
|||||||||||
Fresco (new) |
Berlin renamed to Fresco in 2002, taking on the name of the old GUI toolkit Fresco |
||||||||||
CLX | (Component Library for Cross-platform) Cross-platform library for, and part of, Delphi, Kylix and CBuilder - Based on top of Qt, Linux only |
GPL | y | ||||||||
C++/Tk, cpptk |
C++ interface to the Tklibrary tries to provide not only the Tk functionality, but also its way of writing code, based on the syntax used in Tcl/Tk. | BSD | y | y | y | y(?) | |||||
CroPL |
a C++ application framework and utility library for single-source Mac/Windows applications |
non-profit use only |
|
|
y |
y |
|
|
y |
y |
|
y | y |
Microwindows/NanoGUI/Nano-X |
|||||||||
also see Berlinas the new Fresco |
( another info page) development stopped, succeeded by Berlin |
||||||||||
(ftp) (mailing list) ( gtk--,a C++ wrapper)( GtkkitandGtoolkit , ObjectC wrappers) (wxGTK, WxWindows port to gtk+ (C++ API)) ( gtkv,Vport to gtk+ (C++ API)) (VDK , SDPGTK, Inti, other C++ wrappers) glade, grad, epingle,UI builders for gtk+ and gtk-- libglade , a library for gtk/ GNOME allowing GUI built at run time from specifications in configuration files in XML format, without the need to recompile program |
in progress | ||||||||||
gnomemm (gnome--) |
related: gnomemm, c++ bindings for GNOME |
||||||||||
GuiToolkit |
"a class set which allow You to build applications with new Microsoft interface style .It includes more than 50 of MFC classes" |
no cost use |
|
|
y |
y |
|
|
|
|
|
ivtools |
Interviews (ftp) was an early advanced toolkit whose development stopped around 1993. conceptual successor is Fresco. |
||||||||||
JAVA and C, provides the JAVA AWT Toolkit to non object oriented Languages like C, Fortran, Pascal, Ada and even Basic |
|||||||||||
JUCE | an all-encompassing C++ class library for developing cross-platform applications | GPL | y | y | y | ||||||
"a small enough library that one person can understand it all." |
|||||||||||
libgx |
a lightweight, non-intrusive, public-domain C++ widget library for writing X11 applications | public domain |
y |
||||||||
Art(?) |
|||||||||||
MacZoop |
C++ API. Framework on top of Carbon API. |
MacZoop license |
y |
y |
|||||||
OpenMotif |
|||||||||||
NGL, NUI | LGPL |
||||||||||
PicoGUI |
"a new Graphical User Interface architecture designed with embedded systems in mind. ... includes low-level graphics and input, widgets, themeing, layout, font rendering, network transparency, and debugging features." Also can be an alternative windowing system (when running on framebuffers) | GPL/LGPL |
y | y | |
Linux frame buffer, numerous embedded devices (see this list) |
|||||
KDevelop , EBuilder, Qt Architect , QtDesigner andQtEZ, UI buildersfor Qt Qwt, additional GUI components for Qt for scientific appl (see this link for info on integration with Motif) |
QPL( Qt 2.x series, X11 version) QPL and GPL(Qt 2.2 and later, X11 version) (Windows and MacOS X) (GPLed) |
y(GPLed) | |||||||||
SmartWin | a small sized, extremely type safe, no overhead what so ever, fully template based C++ GUI library for Windows API (formerly known as Win 32 API). | GPL plus additional permissions | y (?) | y | |||||||
Taronja |
information in Spanish... no English info available. |
BSD |
y (?) |
? |
|||||||
y | |||||||||||
Trixul |
Trixul is an XML and JavaScript GUI toolkit that supports MacOS X, Linux, and Windows environments directly via Cocoa, Gtk+, and .NET native implementations. JavaScript code can call C++ directly. | BSD |
y (on top of gtk+) |
|
|
y (on top of .Net Forms) |
|
|
|
y |
|
Willows Toolkit |
|||||||||||
Ultimate++ | C++ toolkit that "achieves significant reduction of code complexity for most applications when compared to other development platforms" | BSD | y | y | y | ||||||
VCF |
Visual Component Framework, "a simple to use cross platform GUI framework, with many of the advanced design features of Java and Java‘s Swing, and Borland‘s Visual Component Library.Also provides advanced RTTI/Introspection features common in languages like Object Pascal, Objective C, Smalltalk, and Java, but not typically found in C++" | BSD |
in development |
|
y |
y |
|
|
|
in development |
|
The Virtual X Class Library. API strongly linked to the Win32 API. | LGPL | y | |||||||||
wGui |
a simple, platform independent dialog manager library usingSDL |
LGPL | (via SDL) | (viaSDL) | (via SDL) | (via SDL) | (viaSDL) | (via SDL) | (via SDL) | (via SDL) | (via SDL) |
is a modern framework that takes advantage of templates, multiple inheritance, STL, and exceptions. is designed around the notionof |
|||||||||||
y | |||||||||||
( WxGTK, gtk+ port) |
LGPL (wxxt1.6x only) WxWidgets license(version 3.0, actually LGPL plus exceptions) |
also on top of MicroWindows, and MGL |
|||||||||
note another toolkit has the samename |
|||||||||||
note another toolkit has the samename |
|||||||||||
"Xmt++ is to provide a C++ Model-View-Controller framework implementation based on Xmt. This framework makes it easier to integrate a Motif GUI to an application and maintain design integrity." |
|||||||||||
standards (e.g., XML, RDF, HTML, CSS, DOM, JavaScript) and technologies (e.g., Gecko, XPConnect) to minimize platform-specific code." May built on top of gtk+ and Xt for X11 |
y | BeOS | |||||||||
framework. supports 24 platforms (including MS DOS and Unix text mode) |
|||||||||||
y | |||||||||||
XP/Vista |
MacOS X |
(+X11 has been ported to OS/2 so theoretically X-based toolkits work in OS/2 X11 as well. see Xfree86/OS2)
to top
- GtkAda , Ada binding for gtk+,for X11 and Windows ( GPLed plus exceptions )
- X11Ada ,X11 and Motif bindings forAda
- VisualAda Developer, RAD environment for Ada
- GWindows , GUI framework for Ada on Windows (GPL/LGPLplus exceptions )
- Windex, Ada wrapper for the Win32 API ( GPLplus exceptions)
- JEWL, Simple GUI framework for rapid development of GUI programs ( GPL)
- Claw, Ada framework for the Windows API, demo version
- JAPI,binding for Java AWT (LGPLed)
- Dialog Machine and RAMSES (Research Aids for Modeling and Simulation of Environment Systems) "providesthe basis for highly portable programming of interactive applications,since it makes a minimum of assumptions on the properties of the underlyingoperating system and the hardware", available for MacOS, Atari ST (GEM),PC (GEM, MS Windows, Windows NT) and Unix (SUN and IBM RISC). RAMSES is Mac only. Both no cost freeware.
- XPCE (GPLed ), for SWI-Prolog
to top
Name | XP/Vista |
MacOS X |
||||||||
CLX | (Component Library for Cross-platform) Cross-platform library for Delphi , Kylixand CBuilder - Based on top of Qt, works on Win32 and GNU/Linux (x86) | y |
y |
y |
||||||
CroPL |
a C++ application framework and utility library for single-source Mac/Windows applications |
|
|
y |
y |
|
|
y |
y |
|
Framework | rich DOS-based business application development environment, orginated from Ashton-Tate‘s Framework product, with FRED. Object-Function-Based, Text-Aware, rapid application development Language | |||||||||
( companyout of business) |
||||||||||
JX | a full-featured C++ application framework and widget library (SDK) for use with the X Window System | y | ||||||||
y
|
||||||||||
included with Metrowerk‘s Mac OS compilers. | ||||||||||
developing and deploying scientific and engineering applications without writing any GUI code. Support Visual C++ and Compaq Visual Fortran. |
||||||||||
y | ||||||||||
- WinForm, the standard C# GUI class library/framework.
LISP
- VCL(Visual Component Library), the GUI foundation for Inprise/Borland‘spopular RAD tool Delphi, forWin 3.1/95/98/NT, "object-oriented component framework delivers the only truecomponent architecture with over 200 visual and non-visual components thatare completely reusable and extendable"
- O2, OO framework for Delphi, including user interface layer
- SancsGUI, for Compaq Visual Fortran, An object-oriented modeling and simulation environment for developing and deploying scientific and engineering applications without writing any GUI code. For 32-bit Windows.
to top
- Mono, an effort to create an Open Source implementation of the .NET Development Framework. Includes: a compiler for the C# language, a runtime for the Common Language Infrastructure and a set of class libraries (GPLed plus exceptions for linking)
- DotGNU, including Portable.NET, an effort to create an alternative to Microsoft .NET, including C# compiler and run-time libraries. (GPLed plus exceptions for linking)
- libsigc++,"a library implements a full callback system for use in widget libraries,abstract interfaces, and general programming." (LGPLed)
to top
If you think anything is incorrect orwant to provide more information for inclusion in this page, please contact(via e-mail)
© Copyright 1997-2003, 2005, 2007 AD ( ROC Years 86-92, 94, 96), by Li-Cheng (Andy) Tai, All rights reserved.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by theFree Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
All trademarks are the property of their respective owners.
page created Apr 19, 1997 (86)
http://www.atai.org/guitool/
标签:
原文地址:http://www.cnblogs.com/findumars/p/5045143.html