Grouping together related components helps organize a user interface and make it easier to learn and use. Java provides several border styles for outlining groups, but none of them match the Mac's recessed style. This article shows how to create a recessed border using special UI defaults available to Mac Java applications.
Windows automatically adds a window frame to all Java windows, but there is more that you can do to make sure Java windows look and feel right on Windows XP, Vista, 7, and beyond. This article discusses Swing settings to control the appearance of window decorations on a PC.
The Mac automatically adds a Mac-style window frame to all Java windows, but there is more that you can do to make sure Java windows look and feel right on a Mac. This article discusses Swing settings and Mac-specific client properties to control the appearance of window decorations on a Mac.
File and folder icons are an important part of the look and feel of the Mac. These icons are available to Java applications through several different classes in Swing and sometimes as UI defaults for Apple's "Mac OS X" look and feel. This article shows to how to get at these icons using Java on a Mac.
Part of the Mac look and feel is the use of standard icons across many applications, like the color wheel for the color picker, or the gear for advanced settings. To promote uniformity across Mac applications, Apple provides these icons via their NSImage class in the AppKit toolkit for Objective C. This article shows how to get at these same standard icons using Java on a Mac.
Java's Swing has just one generic notion of a button and just one look for that button. However, Apple's Aqua user interface for the Mac has about a dozen different button types to build stand-alone buttons and bars of adjacent segmented buttons. Each Aqua button type has a specific use, from the purple ? button for help, to glossy OK/Cancel/Open/Save buttons, and recessed scope buttons used to modify search operations. This article shows how to use Apple's "Mac OS X" look and feel for Java to access these hidden button types using Java on a Mac.
The default size of Java's Swing components feels large and clunky when building tightly-packed user interfaces for Mac tool palettes, inspectors, ribbons, and info windows. Beneath Swing, however, Apple's Aqua user interface for the Mac includes predefined smaller component sizes designed explicitly for tightly-packed control panels. This article shows how to use Apple's "Mac OS X" look and feel for Java to create these hidden smaller components using Java on a Mac.
Each Swing look and feel has a long list of User Interface Defaults (UI defaults) used to initialize Java components with default fonts, colors, icons, borders, and more. You can get and set these defaults to tune your application's overall appearance. This article shows how to use these defaults and surveys the principal look and feels for Java on Windows, Mac OS X, and Linux, to create a long list of the names and data types for their many UI defaults.
Journal papers and polished computer animations on TV and in the movies make the process of scientific visualization look easy. Just click a few buttons and a beautiful, well-lit, and instantly informative animation pops out. Unfortunately, this is rarely the case. This case study looks at the steps and problems involved in a large data volume visualization of star and emission nebula evolution for a planetarium show at the Hayden Planetarium at the American Museum of Natural History. The visualization involved four simulations, three sites, two supercomputers, 30,000 data files, 116,000 rendered images, 1,152 processors, 8.5 CPU years of rendering, and 7 terabytes of data.
Tree and graph structures are often visualized as 2D linear tree diagrams with labeled dots and connecting lines. But when the data grows beyond several dozen nodes, these diagrams become large and awkward. This article looks at a 3D Cone Tree scheme for visualizing trees and graphs with several thousand nodes. I outline the layout algorithm, show examples, and discuss strengths and weaknesses for the approach.