This document presents a technical overview of the Swing component architecture. In particular, it covers the following areas in detail: Design goals Roots in MVC Separable model architecture Pluggable look-and-feel architecture
Abbot helps you test your Java UI. It comprises Abbot, which lets you programmatically drive UI components, and Costello (built on Abbot) which allows you to easily launch, explore and control an application. The framework may be used with both scripts and compiled code.
Abeille Forms Designer is a GUI builder for Java applications. Developers and designers can create complex, professional forms in minutes. Designers can drag and drop components onto a WYSIWYG editor. Full support for undo/redo and copy/paste is provided. Components can be easily customized by adding images or modifying their properties. Advanced fill effects are supported such as textures and gradients.
Abeille has intuitive layout rules and is based on the JGoodies FormLayout system (https://forms.dev.java.net). The FormLayout is a popular, open source layout manager for Java and is used by thousands of developers worldwide. Abeille comes with all the required software.
Abeille stores forms in binary files which can be loaded by your application and added to any Swing container. While the designer is licensed under the LGPL, the forms runtime has a BSD license. This allows forms created by the designer to be used freely in commercial applications.
* WYSIWYG Editor
* 3rd Party Java Bean Support
* Swing Based
* Borders, Gradients, Textures, Images, and Shadow Effects
* Undo/Redo
* Intuitive Layout Rules (based on JGoodies Form Layout)
* Open source runtime (BSD License)
* Code Generation
* Supports Windows, Linux, and Mac OS X.
Java provides a neat way to carry out long lasting jobs without have to worry about threads and hanging the application. It's called SwingWorker. It's not the latest thing on Earth (released with Java 1.6) and you may have already read about it. What I never came across was a practical example of the swing worker.
This article looks thread management in a Swing GUI. There's more to success than simply spinning up background threads for long-running operations: you need to get the results of these operations back to the user, control the sequencing of not-quite-independent operations, and provide feedback to the user while the operation is running.
aTunes is a full-featured audio player and manager, developed in Java programming language, so it can be executed on different platforms: Windows, Linux and Unix-like systems, ...
Currently plays mp3, ogg, wma, wav, flac, mp4 and radio streaming, allowing users to easily edit tags, organize music and rip Audio CDs.
Like many Eclipse.org projects, the goal of the Visual Editor project is to build a tool for building tools -- in this case, tools for building graphical user interfaces (GUIs). The Visual Editor Project has released a reference implementation. The Visual Editor release 0.5 is a GUI builder for AWT/Swing applications, a long-awaited Eclipse feature. Release 1.0, slated for delivery in mid-2004, includes support for SWT. Get an overview of Visual Editor and the technology behind it, along with a short demonstration of Visual Editor 0.5's features for building AWT/Swing applications and a preview of the SWT support in Visual Editor 1.0.
Buoy is a library for creating user interfaces in Java programs. It is built on top of Swing, but provides a completely new set of classes to represent graphical components. It offers many advantages over using Swing directly, including:
* A much simpler, cleaner, and more consistent API
* A better mechanism for laying out interface components
* A far more powerful event handling mechanism, which is based on dynamic binding of arbitrary methods as event listeners
* Built in support for serializing user interfaces as XML, then reconstructing them again
Other important features of Buoy include:
* It forms a "transparent wrapper" around Swing. It hides the complexity of Swing when you don't want to deal with it, but doesn't get in your way when you actually need that complexity.
* It is very small and efficient. The entire compiled library is only 200 K.
* It is written entirely in Java, and works on any JVM that is compatible with J2SE 1.4 or later.
* All source code is in the public domain.