SWT/Fox

A port of the Standard Widget Toolkit on top of the Free Objects for X C++ Toolkit.

SourceForge.net Logo
News
Sep 16, 2005 (NEW!) After a silence of several months, here's what's new:
  • New CVS branch: swt_fox_unstable where all the current work is done
  • This branch is Unicode-aware as it is based on Fox 1.5/1.6 which finally went UTF-8
  • Full SWT 3.1/3.2 compatibility is now targeted
  • The JNI layer is now auto-generated using SWIG
  • The Program API of SWT is finally implemented by using Gnome VFS
  • Work is underway to try to implement code-based security in SWT/Fox: sandboxed applications should not crash the JVM by calling SWT/Fox internals
  • All other items from the previous announcement (new widgets, Cairo support, SWT_AWT, WYSIWYG Printing) are done or it is being worked on them
  • Feb 22, 2005 New version is on the way, with many enhancements that bring SWT/Fox up to date with SWT 3.1M5:
  • New widgets: Spinner, Link, multi-column Tree
  • Advanced graphics support (based on Cairo)
  • SWT_AWT interoperability
  • WYSIWYG Printing support with font downloading subsetting (if fontconfig+Xft are available; falls back to Adobe Base-14 fonts otherwise)

  • Finally, SWT/Fox is moving to the new stable 1.4.X Fox release!

    While waiting, you can check the progress on these in CVS.
  • Nov 21, 2004 SWT/Fox 3.0 Beta 4 released (Check the release notes)
    Nov 20, 2004 SWT/Fox 3.0 Beta 3 released (Check the release notes)
    Oct 27, 2004 SWT/Fox 3.0 Beta 2 released (Check the release notes)
    Oct 23, 2004 SWT/Fox runs Eclipse 3.0 & 3.1M2 (in beta)
    Screenshots & Downloads
    SCREENSHOTS: Click to see the Image Gallery.

    DOWNLOADS: There are two ways you can use to download a prepackaged SWT/Fox binary & sources:
  • Using the SWT/Fox SourceForge Downloads Page.

  • How?

  • Go to the link above and download swt-fox-eclipse-autoupdate.<your-os>.<your-platform>_<latest-version>.zip,
  • Go to Help/Software Updates/Find and Install..,
  • Choose Search for new features to install..,
  • Choose New Archived Site..,
  • Pick the .zip package you just downloaded

    Finally, choose the SWT/Fox port feature. After the installation is over, restart Eclipse with eclipse -ws fox to see SWT/Fox in action.

  • Using the Eclipse Updates Manager

  • How?

  • Go to Help/Software Updates/Find and Install..,
  • Choose Search for new features to install..,
  • Choose New Remote Site..,
  • For URL, enter http://swtfox.sf.net/updates

    Finally, choose the SWT/Fox port feature that matches your operating system (currently Linux only). After the installation is over, restart Eclipse with eclipse -ws fox to see SWT/Fox in action.

  • Dependencies:

    SWT/Fox is statically linked with the Fox C++ library, so you don't need any other library, besides the standard Xorg/XFree86 available in every Linux distribution.
    XFT2 is also not a strong requirement: if XFT2 is not installed on the machine, SWT/Fox will use server-side fonts.

    NOTE: If you want to use the Browser widget, you need a GTK2 build of Mozilla 1.4 or later installed.
    You also need to have the environment variable MOZILLA_FIVE_HOME defined to point to the installation directory of Mozilla.


    Help us stabilize this port!

    Since SWT/Fox is in beta, please report any bugs you experience in the SourceForge bug tracker!

    Font Hints
    SWT/Fox uses the same configuration file as Fox: ~/.foxrc/Desktop
    you can create it manually and then enter any settings recognizable by Fox. TODO


    Enable/disable XFT2 (support for antialiased fonts):

    SWT/Fox knows one more setting, which Fox does not:
    [SETTINGS]
    loadxft=1
    (or 0)

    If you set it to 0, SWT/Fox will use server-side (non-antialiased) fonts, regardless of the fact whether XFT2 is installed or not.


    Fonts looking too big or too small:

    If you experience this (with or without font antialiasing), the reason is that your server is running with different DPI from what Fox assumes.

    To fix this, run:
    xdpyinfo | grep resolution

    Then inform Fox about the used horizontal or vertical resoltion (they should be almost equal):
    [SETTINGS]
    screenres=100
    (where 100 is the displayed horizontal or vertical resolution from above)


    Changing the default bold Helvetica font to something more visually appealing:

    [SETTINGS]
    normalfont="Bitstream Vera Sans,100"
    (where 100 is approximately 10 pixels font height; note: the quotations should be included!)
    SourceForge

    Project Summary, CVS access, forums and all release downloads.

    Reasoning

    Why SWT/Fox?

    The current state of the SWT on Posix/X11 is as follows:

    There are two official SWT ports available, SWT/GTK+ and SWT/Motif respectively.

  • SWT/GTK+
    The premiere SWT port for Linux.

    Advantages: It has all advantages of GTK+: Good support, Unicode based, theming, good integration with the Gnome desktop.
    Disatvantages: SWT/GTK+'s speed is not satisfactory.


  • SWT/Motif
    The original X11 SWT port. Available for Linux, Solaris and other Unixes.

    Advantages: The main advantage of SWT/Motif is that it is faster than GTK+.
    Disatvantages: Motif is old toolkit and its age shows here and there. Motif is not visually attractive. It lacks antialiased fonts, theming and good-looking controls.


  • SWT/Fox
    Our port is provided as a third-party plugin, that is, Eclipse.org is not involved in its development.

    Formerly there used to be a paragraph here, claiming that SWT/Fox was faster than the official SWT/GTK & SWT/Motif ports.
    We no longer want to make any bold statements!

    See for yourself!

    Download the thing, install into Eclipse and check if it "feels" better for you than the other ports!

    It will not ruin your other SWT port which Eclipse normally uses!
    You can always switch back to the standard SWT port for the platform by starting Eclipse without parameters.
    SWT/Fox will be used only if you start Eclipse with eclipse -ws fox.

  • Development Resources

    Some notes about the features, restrictions & peculiarities of SWT/Fox are available here.

    SWT

    Other ports of SWT are available from the Eclipse Project Downloads page. The official SWT home page is here.

    Other Eclipse Plugins

    The semi-official Eclipse Plugins Repository.