Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[albireo-dev] status of the ILOG contribution

ILOG's contribution will soon be checked in. A few remarks about its status:
It has been in development for two years, and is used in some ILOG products
and projects.

Part 1: The merger of the two event threads, IlvEventThreadUtil.

This started out as a fairly simple hack that forwarded events from the AWT
thread to the SWT thread. Over time, fixing deadlocks that occurred, it
became more complex. The current status is that:
  1) The use of this class imposes some limitations (documented),
  2) It still has one known deadlock - that occurs when a Swing tooltip
     disappears at the same time as the user requests a focus change -.
     All other known deadlocks are fixed.

This complexity leads me to think that we should also investigate other
approaches.

Part 2: The Swing-inside-SWT control, IlvSwingControl.

This comes with an emulation of the SWT_AWT bridge for platforms where
this is necessary to work around bugs (Linux/gtk, Unix/motif, MacOS X).
But this emulation is slow: its performance is acceptable for 300x500 pixel
windows, but not acceptable any more for 1000x800 pixel windows. In
Albireo, we don't want such an emulation; we will work on getting SWT_AWT
working better. The code without this emulation is essentially restricted
to the IlvSwingControl class itself; most of the ilog.views.util.swt.internal
package deals with the emulation.

Bruno


Back to the top