SWT and Swing, Two Peas in a Pod
This morning I woke up to see a very interesting tidbit of
information in my inbox: EOS (Eclipse on Swing). It looks
like Christopher Decker's long time attempt at getting SWT running on top
of Swing ( SWTSwing) has had a new kick in the
pants. Christopher is being joined by Dieter Krachtus on the EOS
project in order to port Eclipse ontop of the SWTSwing library and it
looks like they are making some serious headway:
Who ever thought that you would see Eclipse running with the Napkin
LAF? The installation process of using EOS is very straight
forward, you just replace your SWT libraries in your Eclipse 3.2
install with the EOS versions and viola, you are running on Swing.
I haven't dug through the code to see how this was done, but given
all the platforms SWT runs on and all the different ports that exist
for it, I imagine creating this implementation of SWT on top of Swing
must have been at least somewhat straight forward for one developer in
his spare time to do. It's also a fairly attractive thing that this
major change to SWT and Eclipse is simply realized by replacing
a plugin in your Eclipse install (the beauty
of OSGi).
How would Sun feel about SWT if Christopher and Dieter are
successful? Sun's dislike
for SWT stems from the fact that it's a fundamentally different
windowing toolkit to the "standard" Swing toolkit included in the JDK.
But if SWT is built on top of Swing then I suppose it would just be another
3rd party windowing toolkit somewhat like LwVCL wouldn't it? Likely not that simple I suppose.
I would have loved to see more collaboration between Sun and IBM in
the early days, but understand why it didn't happen. With continous changes
and advancements in both the Sun camp and the IBM/Eclipse/Other camp
with respect to Java, it's hard for me to see where, in the near or
distant future, those paths will meet.
In the short term or long term I don't see how any of this divide of
considerable effort is helping the health of Java in the face of
competition. I look at the amazing work the GCJ/Classpath group has
done and while technically fantastic, it is not a drop in replacement
for the Sun JDK yet, neither will Harmony be when it makes it's first
few releases. This landscape continues to get bumpier and more spread
out as time goes on and let's hope out of frustration the Java developer
space doesn't inadvertantly make Ruby the next big thing for 10 years.
Until Next Time,
Riyad Kalla
riyad@eclipsezone.com
|