Download
Swing Swing JavaDoc APIs JDK 1.1.4 Documentation
JDK 1.1.4 Download JFC
Web Site README


 Welcome to the final pre-beta edition
of FAQ Forum, where the Swing design team answers the questions that developers
aske most frequently in the thousands of e-mail messages that we receive
on our feedback hotline.
With this release, our experts answer some important questions on
topics ranging from how long it will be before you can start using Swing
to write releasable applications (the answer: You can do it right now) to
the debut of common dialog boxes in this release (Version 0.5) of Swing.
We've enjoyed answering your questions in this column, and happy coding.
Start Coding Now: Swing Is Ready When
You Are
Is it me, or is Swing getting faster? In early releases, everything
seemed really S - L - O W. Now most operations seem to
have gotten a lot speeder. I guess that's a statement rather than a question,
but I'm glad to see the improvement.
You're right. Swing has gotten a lot faster, and it will get faster still
after the beta cycle begins. For the early pre-beta releases of Swing, our
main goal was just to get the API out to the public for review, in an implementation
that was good enough to use for writing experimental programs. (You may
recall that we warned everybody over and over in these pages that Swing
was not nearly stable enough yet to be used for developing finished commercial
products.)
That has all changed now. As we mention in the Introduction
page of this document, Swing is now ready to be used in applications that
you plan to ship; unless major unforeseen disasters occur, nothing more
will be added to Swing that will break applications whose development began
with this release (Version 0.5.) So you can now start using Swing to develop
real-world applications.
As Swing's beta release date nears, an all-out final push to improve
performance is under way. In fact, improving Swing's performance has now
become our top priority, and early findings are looking very good. For example,
when just one engineer worked on this project for one day recently, he improved
the Swing set's performance by 2.7 times.
Where Has All the Source Code Gone?
In the FAQ Forum that you published for Version 0.4 of Swing, you
mentioned that source code was included. Where is it?
We thought that the source code would be included, but for a number of
confusing and boring legal reasons, it didn't get included after all. Sorry
about that. Developers will now get access to source code beginning with
the beta release.
Common Dialogs Arrive
Swing looks real nice and useful, but I see one thing missing: common
dialog boxes. Many GUIs come with standard boxes for at least a few common
operations, such as Abort/Retry, Yes/No, OK/Cancel, and the like. It would
be very useful for Swing to have classes for all these kinds of dialog boxes.
This is a warmed-over question from the Version 0.4 issue of FAQ Forum,
but the answer has changed. As we promised, several new common dialog classes,
are being released with this version of Swing (Version 0.5). They include
classes that can be used to create Option (message-box) dialogs and color,
font, and file-chooser dialog boxes. When the beta version of Swing is released,
you'll find that it includes even more common dialog classes.
Configuring Swing for Windows 95
When I tried to configure Swing for Windows 95 using the procedures
outlined in the README.txt file that you provided, they didn't work. What's
the story?
In Version 0.4 of Swing, a couple of lines were reversed in the section
of the README file that explains how to set up environment variables for
Windows 95. Updated instructions are provided in the README.txt
file that accompanies this version of Swing.
The Latest News on JFC and JDK
Will the Java Foundation Classes be released in final form this year?
And will the JFC, if released with Java Developer's Kit 1.2 (or later),
be compatible with JDK 1.1?
JFC will be available in its final form in the fourth quarter of this
year. The JFC components in that release will be fully compatible with JDK
1.1. Some special features and services -- such as Java2D, accessibility
support, and a few others -- will require the next version of the JDK since
the implementation of these services will require native code.
What's in a Name
Why were the class names used in Swing all changed in Version 0.4?
We devoted a lot of attention to that topic in the Version 0.4 edition
of this document, but in case anyone missed it, we'll go over it again.
With the advent of Swing, many applications have to import both the old
java.awt package and the new java.swing package:
import java.awt.*;
import java.swing.*;
We first tried naming components without the initial "J" --
which stands for Java, if you like -- but we ran into name clashes when
importing both the old and new packages. Worse, the name clash caused the
javac compiler to spew out some really
confusing messages that completely obscured that fact that just a simple
name clash was all that was occurring.
With Version 0.4 of Swing, which was released last month, we introduced
a new method for fixing this problem. Many class names were changed, and
many other classes were moved to new locations. Because of these changes,
both Version 0.4 and Version 0.5 of Swing (this one) are effectively incompatible
with Swing 0.3 and all other previous releases.
To simplify the job of updating existing classes to Swing's new naming
conventions, Release 0.4 included a "ClassRenamer" utility that
can be used to convert Swing 0.3 source code to Swing 0.4. That ClassRenamer
tool is also included in this release. For more details, see the "What's New" section on the Introduction page.
Where Has All the (IFC) Technology
Gone?
Looking at Swing, it is hard to see where the IFC technology is. How
does Swing make use of the Internet Foundation Classes technology which
Netscape pioneered and which JavaSoft and Netscape have reportedly worked
together on as IFC has been incorporated into Swing?
These are a few areas in which IFC technology is used:
- JInternalFrame
- Keyboard UI
- The Repaint Manager
- Autoscrolling
- Icons
- DebugGraphics
- JSpringLayout
- The Timer
- Rose L&F
- The Target Manager
- EventQueue.
Version 0.5. Last modified 10/1/97.
Copyright © 1995-97 Sun
Microsystems, Inc. All Rights Reserved.
 |