|
The Most Comprehensive Graphical User Interface Toolkit for 100% Pure JavaTM Applications
The JavaTM Foundation Classes (JFC) is the most compelling and complete
graphical user interface (GUI) toolkit available for 100% Pure JavaTM
applications. The JFC includes a rich set of GUI components and foundation
services which allow commercial and corporate developers to cut down on
development time, simplify software deployment, and produce more
sophisticated and reliable cross platform Java applications. Driven by an
industry initiative, the JFC brings developers a rich set of tools built by
Sun, Netscape, and IBM, and reviewed by over fifty partners. Using the
JFC, developers are able to create a new class of applications that span
client desktops, intranets, extranets, and the Internet. Now more than
ever, the Java platform delivers the tools necessary for high performance,
flexible, and mission-critical enterprise applications.
The Foundation Classes
The JFC consists of a comprehensive set of pre-built components and
foundation services for 100% Pure Java development. The JFC is a superset
of the existing Abstract Windowing Toolkit (AWT) and is fully AWT
compatible. The JFC extends the AWT component set by adding a
comprehensive set of lightweight and peerless components. These 100% Pure
Java components provide developers with enormous flexibility and the
ability to customize the logic and look
and feel of JFC-based applications. In addition, the JFC delivers
sophisticated foundation services such as Java 2D, pluggable look and feel,
cross platform capable drag and drop, accessibility features for people
with disabilities, and many other services. The JFC's rich toolkit of
components and services offers commercial and in-house developers the
industry's most robust functionality, portability,
and extensibility.
The JavaTM Development Kit (JDK) provides a host of features that enable
de-velopers to enter new markets with wide-ranging Java based solutions.
The JFC, which is core to the JDK, is a continually evolving set of
features that includes a rich suite of components and foundation services
that are fully cross-platform and offer significant performance
improvements.
The Java Foundation Classes: The GUI Toolkit for Commercial and Enterprise Development
Shorten Development Time. The JFC's compre-hensive set of pre-built
components and foundation services make it possible for developers to
create powerful and dynamic Internet, intranet, and desktop applications
with fewer lines of code and in less
time. Because all of the JFC's GUI components are JavaBeansTM, the
components can be effectively manipulated by generic application building
tools. Additionally, developers can easily add richness to applications by
incorporating JFC foundation services such a drag and drop, cut and paste,
and undo.
Platform Independence. The JFC brings commercial and in-house developers
the most advanced GUI toolkit for creating applications that run on
multiple platforms. Developers can now build applications which work
consistently across all Java platforms. Developers gain a standard and
integrated infrastructure on which to base highly portable applications.
Flexible User Interface Design. The JFC provides developers with enormous
flexibility in user interface design. Developers can create an application
that reflects the look an feel of one of many platforms on which the
application can run. In addition, the JFC enables developers to create a
custom user interface for applications. Using the JFC, developers write
applications which can be deployed with a single look and feel, which
decreases the costs of deployment, user training costs, and customer
support demands.
Open Architecture. The JFC is built on top of an open architecture. It
allows developers to avoid application framework lock-in. The JFC enables
developers to extend their applications by adding third party JavaBeans
components.
Services for Users with Disabilities. The JFC provides a foundation for
assistive technologies such as screen readers, screen magnifiers, Braille
terminals, and speech recognition. These technologies are used by people
with and without disabilities. The JFC delivers tools for ISVs and
assistive technology vendors to meet federal guidelines and to quickly make
their technologies Java savvy. Java technology in this area is driven by
the knowledge that designing to meet the needs of users with disabilities
can improve the productivity of all users and can open new markets to
developers. These technologies make possible further advances in Java
development in areas such as speech recognition and text to speech on
nomadic devices which do not rely on either touch or vision.
Sophisticated Visual Applications. Java 2D benefits virtually all Java
developers by enabling the incorporation of sophisticated graphics and
text. Java 2D brings the concept of "Write Once, Run Anywhere"TM to
applications which require enhanced 2D graphics and imaging capabilities.
As a result, Java developers can easily incorporate high-quality, scalable,
and platform-independent graphics to create a richer end-user experience.
In addition, Java 2D adds ad-vanced text handling capability including the
use of Type 1 and True Type fonts and text internationalization.
An Industry Initiative. Java Developers have demanded a single industry
standard solution for creating commercial applications which behave
precisely the same way across multiple platforms. The JFC is a
comprehensive set of GUI components and foundation services developed by
Sun, Netscape, IBM, and Java developers throughout the industry. More than
50 companies are participating in the JFC Advisory Council.
The Council is helping define the JFC, which in-corporates many of the best
features of the Netscape Internet Foundation Classes, and is an extension
of Sun's original foundation classes, the AWT.
The Java Foundation Classes
Components
Basic and High Level Components are built on top of the JFC's lightweight
UI framework. All components are pre-built, configurable, and written
completely in Java. The JFC's Basic and High Level Components are fully
compatible with JDK 1.1 and subsequent JDK releases.
Basic Components
The JFC's basic GUI components provide a standard and extensible base for
creating GUI-based applications. Basic components include border, button,
text field, list box, combo box, check box, label, menu, split
pane, icon, scroll pane, password field, progress bar, scroll bar, slider,
spinner, split pane, tool bar, viewport, and scroll pane.
High Level Components
Advanced Text Support. JFC Advanced Text support is set of components that
is highly customizable by developers and end users. Advanced Text Support
is a versatile framework for the building of programming and electronic
document environments. It enables transparency and can embed objects such
as buttons, movies and pictures into components and applications. Advanced
Text also supports RTF and HTML as readers and writers.
Choosers. The JFC provides a comprehensive set of pre-built choosers.
Choosers include color chooser, date chooser, file chooser, and font
chooser. This rich set of choosers allows developers to save time and brings application consistency to end users.
Internal Frame. Internal Frame simplifies the creation of customizable
windows for 100% Pure Java applications and applets. As in native windows,
internal frames support iconification, dragging, zooming, and other
manipulations.
Dialog Boxes. The JFC's rich set of dialog boxes include an error box, an
information box, a query box, and a warning box. The comprehensive set of
dialog boxes allows developers to use pre-built components to create
consistent look and feels across all Java platforms.
Tabbed Pane. The Tabbed Pane component displays labels that resemble the
tabs on a set of file folders. When a user clicks one of the tabs, the
child component associated with the selected tab opens so that the user can
view it. After an end user selects a particular tab, all other tabs remain
visible.
Table. Table is a sophisticated user interface component which presents data in two dimensional table format. The component
features resizable and reordable columns, a flexible row and column
selection mechanism, cells that can be displayed with arbitrary components
such as text fields or combo boxes, flexible cell editing, and support for
large data sets.
Tree. The Tree component is a user interface component that presents
arbitrary hierarchical data in a logical and easy to use outline format.
This component greatly simplifies the implementation of trees and allows a
developer to use any object that he or she chooses as a node class.
JFC Foundation Services
Java 2D. Java 2D provides a powerful and flexible framework for device and
resolution independent graphics. The API is a set of classes which extends
the capabilities of the AWT graphics model. Java 2D handles arbitrary
shapes, text, and images and provides a uniform mechanism for all of these
to be rotated, scaled, skewed, and otherwise transformed. With Java 2D,
developers can support a wide variety of presentation devices such as
displays and printers, image formats, encoding, color spaces, and rendering
techniques and effects. Java 2D also offers color support and comprehensive
text and font handling, including internationalized text handling.
Java Accessibility. Java Accessibility allows assistive technologies to
interact and to communicate with JFC and AWT components. Assistive
technologies are used by people with and without disabilities and include
screen readers, screen magnifiers, Braille terminals, and speech
recognition. Applications developed using JFC will help ISVs meet federal
regulations on accessibility. Developers can easily build accessible custom
components and assistive technology vendors can quickly make their
technologies Java savvy. The API also supports the development of
accessible looks and feels that provide direct access to applications such
as an audio look and feel. The Accessibility API's open design has been
endorsed by IBM, Netscape, the American Foundation for the Blind, the
American Council for the Blind, and other industry partners.
Application Object. The Application Object provides a simple and consistent
mechanism to manage the start up and shut down of an application.
Custom Cursor. Custom Cursor benefits developers by supporting a range of
cursors on various systems, from two colors with image transparency to 256
color cursors.
Data Transfer/Clipboard. The Data Transfer/Clipboard service enables Java applications and applets to share text and other data with native non-Java applications.
Debug Graphics. Debug Graphics is a mechanism which allows developers to test whether JFC components are being drawn
correctly. It is controlled at the component level, enabling developers to
see drawing in a component and in its children. Drawing operations can also
be logged for later review.
Delegation Event Model. This event model
makes large-scale application development possible by providing a clean
separation between the user interface and application logic. Events, such
as a mouse click on a button, can now be forwarded to separate objects for
processing.
Drag and Drop. The Drag and Drop API empowers developers to write Java
applications which will interoperate with platform native applications.
Developers no longer have to write code many times for varying platforms.
Drag and Drop functionality is specifically designed to allow users to drag
text or images between Java and native applications, enabling
interoperation with Win32, CDE/Motif, MacOS, and JavaOS.
Event Queue. The JFC uses a shared Event Queue to synchronize events from
multiple sources. The Event Queue provides several key features to
developers: automatic repaint batching, automatic layout validation
batching, and timers that fire synchronously with event dispatching.
Keyboard Navigation. The JFC supports not only menu-related keyboard
shortcuts, but other kinds of keyboard navigation as well. This service
offers fully functional support to control the user interface from the
keyboard.
Layout Managers. Layout Managers allow developers to predefine how text, images, and widgets should be positioned when
a window is resized. The Spring Layout, Box Layout, and Overlay Layout
Managers are straightforward tools which allow developers to define which
spaces should change size when a component is resized, that properly place
components from left to right and top to bottom, and that arrange
components on top of each other. Other Layout Managers include Border
Layouts, Grid Layouts, Grid Bag Layouts, Card Layouts, and Flow Layouts.
Lightweight UI Framework. Java Programs can directly extend the AWT
component and container classes to create lightweight components. These
components can be transparent and are implemented in 100% Pure Java, which
ensures consistency across platforms.
Pluggable Look and Feel. One of the JFC's most important features is its
Pluggable Look and Feel design. This design increases the reliability and
consistency of applications and applets deployed across platforms.
Additionally, Pluggable Look and Feel brings flexibility to developers
because it enables standard components to be customized to have more than
one look and feel.
Printing. Full printing capabilities enable Java programs to easily print all graphics that are rendered on the screen.
Repaint Batching. Repaint Batching offers increased performance to
developers over existing repaint methods. When a model's attribute changes,
the view part of the affected component will redisplay the smallest region
that has changed, instead of repainting the entire component.
System Colors. System Colors enables Java programs
to query user-configured desktop color schemes and to then adapt their own
GUI colors to integrate seamlessly into the user's environment.
Target Manager. Target Manager provides developers with a simple method for
dynamically determining the target of an action. Developers also gain the
ability to use off the shelf components, including JFC components, with the
assurance that actions and their targets will work together.
Tool Tips. The JFC's tool tips is a simple "bubble help" feature which
enables developers to easily add explanatory text to applications. When an
end user's mouse hovers over a component, tool tips provides extra text
information about a component's purpose and function.
Undo. The JFC Undo service facilitates a simple, one shot undo/redo
command. The undo/redo service is flexible enough to extend to all types of
applications, is simple to use and to extend, and supports JavaBeans.
JFC Home Page | Index of Related Documents
|