GUI Toolkit Comparison

Revision as of 13:25, 28 April 2013 by Julius22 (talk | contribs) (Comparison of most well known Toolkits: Correction of the Enlightenment spelling)
Jump to: navigation, search


Since we're evaluating the possibility of moving to another GUI toolkit, we did some research on this issue. To help other developers and save their time, here is some information about the comparison of the most well known toolkits we've evaluated so far. Of course, choosing one's favorite toolkit is often a matter of taste and a little bit subjective. Here we tried to make a relatively objective feature comparison to help people choose what they need.

Comparison of most well known Toolkits

The table is not complete and can give you some idea quickly. To really "feel" how good a toolkit is, just try it yourself.

Feature GTK+ Qt wxWidgets EFL FLTK Fox toolkit
Basic information
Programming language C C++ C++ C C++ C
License LGPL LGPL or prorietary LGPL BSD LGPL with exceptions LGPL
Desktop environments Gnome, XFCE, LXDE KDE No Enlightenment 17 EDE No
Supporter RedHat Digia  ? Sponsored by Samsung  ?  ?
Theme support Yes Yes Yes (GTK+) Yes Very limited No support Yes Partial Partial Yes No No
GLib mainloop integration Yes Yes Yes Yes No No
GUI designer Glade Qt Designer wxGlade (free) / wxDesigner(commercial) No Fluid No
Cross platform support
Windows Yes Yes Yes No Yes Yes
UNIX-like Yes Yes Yes Yes Yes Yes
Mac Yes Yes Yes (partial) No Yes Yes
Native look Partial (looks bad on Mac) Yes Yes No No No
Unicode and i18n support
Translation GNU gettext QTranslator GNU gettext-like  ?  ?  ?
Display unicode text Yes Yes Yes Yes Yes Yes
RTL support Yes Yes Yes  ? partial partial
Complicated text layout Yes (Pango) Yes Yes No No No
String encoding UTF-8 UTF-16 UTF-8 or UTF-16  ? UTF-8 UTF-8
Input method GTK+ input module or xinput Qt input module or xinput same as GTK+  ?  ? ?
Signa/slot support Yes Yes Yes Yes No No
Model/View support Yes Yes No No No No
Icon view Yes Yes Yes very limited  ?  ?
List view Yes Yes Yes very limited  ?  ?
Tree view Yes Yes Yes No No Yes
Language bindings
C++ gtkmm - - ? - -
C# Gtk Sharp Qyoto wx.NET No No No
Java Yes Yes  ? No No No
Python Yes Yes Yes  ?  ?  ?
Perl Yes Yes Yes  ?  ?  ?
Comment  ?  ?  ?  ?  ?  ?