old-www/HOWTO/Programming-Languages-3.html

88 lines
3.2 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML>
<HEAD>
<META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.9">
<TITLE>Programming Languages mini-HOWTO: GUI Toolkits</TITLE>
<LINK HREF="Programming-Languages-2.html" REL=previous>
<LINK HREF="Programming-Languages.html#toc3" REL=contents>
</HEAD>
<BODY>
Next
<A HREF="Programming-Languages-2.html">Previous</A>
<A HREF="Programming-Languages.html#toc3">Contents</A>
<HR>
<H2><A NAME="s3">3. GUI Toolkits</A></H2>
<P>The standard graphical subsystem for UNIX and Linux, called X,
has its own libraries for GUI development. They provide a
low-level programming interface to X, but tend to be hard to
use. Old end-user applications and other toolkits of course make
good use of them. Nowadays the Linux GUI scene is dominated by
GTK+ and Qt, since two popular, complete user environments - GNOME
and KDE - are based on them.
<H2><A NAME="ss3.1">3.1 Concepts in the Table</A>
</H2>
<P>
<DL>
<P>
<DT><B>Library</B><DD><P>Common name or abbreviation of the toolkit.
<P>
<DT><B>Beginner</B><DD><P>Whether the toolkit is suitable for a newbie programmer.
<P>
<DT><B>License</B><DD><P>Different licenses for different GUI toolkits have practical
significance. GTK+, TK and GNUstep licenses allow you to develop both open
source and closed source applications without paying for a
license. Motif license requires payment, while the QT license
requires payment only if you write closed source programs.
<P>
<P>
<DT><B>Language</B><DD><P>The language that is most often used with the toolkit.
<P>
<DT><B>Bindings</B><DD><P>Other languages which can use the toolkit.
<P>
<DT><B>Examples</B><DD><P>Applications that use the toolkit.
<P>
<DT><B>Comments</B><DD><P>Additional information on the toolkit.
<P>
</DL>
<H2><A NAME="ss3.2">3.2 Major GUI Toolkits</A>
</H2>
<P>
<CENTER><TABLE BORDER><TR><TD>
<BR>
Library</TD><TD>Beginner</TD><TD>License</TD><TD>Language</TD><TD>Bindings</TD><TD>Examples</TD><TD>Comments</TD></TR><TR><TD>
TK</TD><TD>Yes</TD><TD>Free</TD><TD>TCL</TD><TD>Perl, Python, others</TD><TD>make xconfig, TKDesk</TD><TD></TD></TR><TR><TD>
GTK+</TD><TD>No</TD><TD>Free (LGPL)</TD><TD>C</TD><TD>Perl, C++, Python, many others</TD><TD>GNOME, Gimp</TD><TD>Very popular</TD></TR><TR><TD>
QT</TD><TD>No</TD><TD>Free for open source</TD><TD>C++</TD><TD>Python, Perl, C, others?</TD><TD>KDE</TD><TD>Very popular</TD></TR><TR><TD>
Motif</TD><TD>No</TD><TD>Non-free</TD><TD>C/C++</TD><TD>Python, others?</TD><TD>Netscape, Wordperfect</TD><TD>
<A HREF="http://www.lesstif.org/">Lesstif</A> isa free replacement</TD></TR><TR><TD>
GNUstep</TD><TD>No</TD><TD>Free (LGPL)</TD><TD>Objective C</TD><TD>Guile, Java?</TD><TD>None widely known, but see the
<A HREF="http://www.gnustep.org/resources/apps.html">application list</A></TD><TD>GNUstep is still under development</TD></TR><TR><TD>
</TD></TR></TABLE></CENTER>
<P>
<H2><A NAME="ss3.3">3.3 Links</A>
</H2>
<P>
<UL>
<LI>
<A HREF="http://dev.scriptics.com/">TK</A></LI>
<LI>
<A HREF="http://www.gtk.org/">GTK+</A></LI>
<LI>
<A HREF="http://www.troll.no/">QT</A></LI>
<LI>
<A HREF="http://www.metrolink.com/">Motif</A></LI>
<LI>
<A HREF="http://www.gnustep.org/">GNUstep</A></LI>
</UL>
<HR>
Next
<A HREF="Programming-Languages-2.html">Previous</A>
<A HREF="Programming-Languages.html#toc3">Contents</A>
</BODY>
</HTML>