186 lines
4.6 KiB
HTML
186 lines
4.6 KiB
HTML
<HTML
|
|
><HEAD
|
|
><TITLE
|
|
>Widget Libraries or toolkits</TITLE
|
|
><META
|
|
NAME="GENERATOR"
|
|
CONTENT="Modular DocBook HTML Stylesheet Version 1.63
|
|
"><LINK
|
|
REL="HOME"
|
|
TITLE="X Window System Architecture Overview HOWTO"
|
|
HREF="index.html"><LINK
|
|
REL="PREVIOUS"
|
|
TITLE="Client Applications"
|
|
HREF="client-applications.html"><LINK
|
|
REL="NEXT"
|
|
TITLE="What we have so far"
|
|
HREF="so-far.html"></HEAD
|
|
><BODY
|
|
CLASS="SECT1"
|
|
BGCOLOR="#FFFFFF"
|
|
TEXT="#000000"
|
|
LINK="#0000FF"
|
|
VLINK="#840084"
|
|
ALINK="#0000FF"
|
|
><DIV
|
|
CLASS="NAVHEADER"
|
|
><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TH
|
|
COLSPAN="3"
|
|
ALIGN="center"
|
|
>X Window System Architecture Overview HOWTO</TH
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="left"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="client-applications.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="80%"
|
|
ALIGN="center"
|
|
VALIGN="bottom"
|
|
></TD
|
|
><TD
|
|
WIDTH="10%"
|
|
ALIGN="right"
|
|
VALIGN="bottom"
|
|
><A
|
|
HREF="so-far.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
></TABLE
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"></DIV
|
|
><DIV
|
|
CLASS="SECT1"
|
|
><H1
|
|
CLASS="SECT1"
|
|
><A
|
|
NAME="TOOLKITS"
|
|
>6. Widget Libraries or toolkits</A
|
|
></H1
|
|
><P
|
|
>The original widget library, developed for the Athena Project,
|
|
is of course the Athena widget library, also known as Athena
|
|
Widgets. It's very basic, very ugly, and the usage is not intuitive by
|
|
today's standards (for instance, to move a scrollbar or slider
|
|
control, you don't drag it; instead, you click the right button to
|
|
scroll up and the left button to scroll down). As such, it's pretty
|
|
much not used a lot these days.</P
|
|
><P
|
|
>Just as it happens with window managers, there are a lot of
|
|
toolkits, with different design goals in mind. One of the earliest
|
|
toolkits is the well-known Motif, which was part of the Open Software
|
|
Foundation's Motif graphical environment, consisting of a window
|
|
manager and a matching toolkit. The OSF's history is beyond the scope
|
|
of this document. the Motif toolkit, being superior to the Athena
|
|
widgets, became widely used in the 1980's and early 1990's.</P
|
|
><P
|
|
>These days, Motif is not a popular toolkit choice. It's not free
|
|
(speech), and OSF Motif costs money if you want a developer license
|
|
(i.e. to compile your own programs with it), altough it's OK to
|
|
distribute a binary linked against Motif. Perhaps the best-known Motif
|
|
application, for Linux users at least, is Netscape
|
|
Navigator/Communicator (prior to Mozilla).</P
|
|
><P
|
|
>For a while Motif was the only decent toolkit available, and
|
|
there's a lot of Motif software around. Of course people started
|
|
developing alternatives, and there are plenty of toolkits, such as
|
|
XForms, FLTK and a few others.</P
|
|
><P
|
|
>Motif is not heard of much these days, specially in the free
|
|
software world. The reason is that there are now better alternatives,
|
|
in terms of licensing, performance (Motif is widely regarded as quite
|
|
a pig) and features.</P
|
|
><P
|
|
>One such toolkit, the widely known and used Gtk, was
|
|
specifically created to replace Motif in the GIMP project (one
|
|
possible meaning of Gtk is "GIMP ToolKit, altough, with its widespread
|
|
use, it could be interpreted as the GNU ToolKit). Gtk is now very
|
|
popular because it's relatively lightweight, feature-rich, extensible
|
|
and totally free (speech). The 0.6 release of the GIMP included
|
|
"Bloatif has been zorched" in the changelog. This sentence is a
|
|
testament to Motif's bloatedness.</P
|
|
><P
|
|
>Another very popular toolkit these days is Qt. It was not too
|
|
well-known until the advent of the KDE project, which utilizes Qt for
|
|
all its GUI elements. We certainly won't get into Qt's licensing
|
|
issues and the KDE/GNOME disjunctive. Gtk gets a lengthy mention
|
|
because its history as a Motif replacement is interesting; Qt gets a
|
|
brief mention because it's really popular.</P
|
|
><P
|
|
>Finally, another alternative worth mentioning is LessTif. The
|
|
name is a pun on Motif, and LessTif aims to be a free, API-compatible
|
|
replacement for Motif. It's not clear to what extent LessTif aims to
|
|
be used in new development, rather than just helping those with Motif
|
|
code use a free alternative while they (conceivably) port their apps
|
|
to some other toolkit.</P
|
|
></DIV
|
|
><DIV
|
|
CLASS="NAVFOOTER"
|
|
><HR
|
|
ALIGN="LEFT"
|
|
WIDTH="100%"><TABLE
|
|
WIDTH="100%"
|
|
BORDER="0"
|
|
CELLPADDING="0"
|
|
CELLSPACING="0"
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="client-applications.html"
|
|
>Prev</A
|
|
></TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="index.html"
|
|
>Home</A
|
|
></TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
><A
|
|
HREF="so-far.html"
|
|
>Next</A
|
|
></TD
|
|
></TR
|
|
><TR
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="left"
|
|
VALIGN="top"
|
|
>Client Applications</TD
|
|
><TD
|
|
WIDTH="34%"
|
|
ALIGN="center"
|
|
VALIGN="top"
|
|
> </TD
|
|
><TD
|
|
WIDTH="33%"
|
|
ALIGN="right"
|
|
VALIGN="top"
|
|
>What we have so far</TD
|
|
></TR
|
|
></TABLE
|
|
></DIV
|
|
></BODY
|
|
></HTML
|
|
> |