I'm not sure who exactly would want to sponsor this project and which teams would be involved. Since AWT, 2D, and Swing are so closely related they would likely all be involved. I can speak, however, to the practical need for this project. There are many use cases for a completely virtualized toolkit.

* www.glossitope.org
This is a project I started which lets you write widgets that run on your desktop in Java. The version I prepared for JavaOne has lots of cool effects that involve scaling, shearing, and otherwise animating the widgets in weird ways. Since the widgets are just Swing panels I draw them into buffered images and then blit those to the screen. This has lots of odd problems that are hard to fix properly, such as dealing with focus, handling combobox popups, and keyboard events. These problems are difficult (if not impossible) to solve outside of core.

* Project Looking Glass
Paul Byrne and I have discussed this extensively and he even had another researcher start building a headless AWT that could be projected into the Java3D scene graph. They got pretty far but ran into a few places where AWT assumes it has a real windowing system with access to X11 window handles. These are also impossible to fix without changes to core. Solveing this would let them put Swing applications directly into the 3d environment

* JOGL Minimal Scene Graph
Ken Russell and others would like to project Swing components directly into the JOGL scene graph that they are building. This would let you have a Swing panel that appears normal but can then slide into the background to be replaced by other panel.

* full screen video games
We would like to let people use Swing components as the heads up display in full screen video games. This means running in an environment where there is no windowing system at all. This would also be useful for kiosks and other semi-embedded environments.


So you can see, there is a great need for a virtualized Toolkit. I think that most of the work could be done at the AWT level (and hopefully let me scrap most of my Swing level hacks) but undoubtedly it will affect many areas in core. This is something that is vitally needed to let us take Java SE into new environments.

thx,
        Josh

Allow me to clarify, as well, that the purpose of this project
is experimental and for prototyping.  Think of this as a KSL [2]
style Project that should be associated with the appropriate
Group (i.e. 2D or AWT).  Obviously such a Project, if approved, would
need a VCS "sandbox" as described in [1]: "Projects that are not
tightly related to the development of JDK 7 will, for now, also be
given a regular java.net project within the java.net OpenJDK Community."

Can we get a Group sponsor?


I don't think we have a clue what sponsorship means. It certainly can't mean in this case any work from Sun engineers ( wish we had time for such ideas ourselves), or taking it back into openjdk
in any time in the forseeable future.

It just seems like an interesting expt this time, with unproven practical applications.



- Blasting forth in three part harmony!


Reply via email to