Ribs 1.0 review
DownloadRibs project is a powerful Java Web Start layout application with a full palette of all common Swing controls and components
|
|
Ribs project is a powerful Java Web Start layout application with a full palette of all common Swing controls and components. Developers simply drag and drop controls, like buttons and sliders, into new panel windows.
Ribs uses absolute placement and sizing, which takes the guesswork out of Swing's normally complex layout mechanism - creating beautifully portable applications.
Here are some key features of "Ribs":
Simple to Draw
Simple to Load
Simple to Bind
Simple to Integrate
Unified Accessor Model
Side Effect Protection
Image and resource management
Dedicated control inspectors
Simple XML Format
Custom Component Integration
Common Component Subclass Integration
Embeddable Font & Color Panels
Simple to Load
Ribs saves it's user interface descriptions as very simple XML files. These can be loaded and bound to a Java application with a single line of code:
// Load Swing UI panel for a controller class
RJPanel ui = Ribs.getUI(this);
This seemingly simple snippet automatically finds the rib file named after anOwner's class (anOwner.getClass() + ".rib") and re-hydrates an entire hierarchy of Swing components, all of whom are configured to send the simple action "respondUI(me)" to anOwner when clicked, selected, edited or otherwise changed.
Simple to Bind
Ribs is more than a UI builder, it also automatically configures controls to call the controller class.
With all controls sending the simple respondUI(me) action, it's obviously easy to respond to controls, but it's even easier to configure them. Ribs introduces a name based "unified accessor model" for all controls with a single point of entry - the top level JPanel (myUI) returned from getRib(). To set the value of any control in the hierarchy, you simply call myUI.setValue("SomeControl", aValue). Ribs provides all of the necessary type conversions automatically, so developers are free to work with the types native to their model without tedious explicit conversions, typical in Swing GUI programming. You can call myUI.setValue("SomeText", aFloat) or myUI.setValue("SomeText", aString) - at your discretion.
Simple to Integrate
Ribs is a simple, small jar file (less than 100k packed). Simply add the ribs.jar to your application and the world of visual UI design is available to you.
Unified Accessor Model
Ribs updates any UI control, by name, with a single consistent, "unified accessor" method.
Side Effect Protection
Ribs update model also provides unique side effect protection, so controls can be updated without causing them to unnecessarily trigger their action.
Image and resource management
Ribs provides easy binding of images to controls like labels and buttons.
Dedicated control inspectors
Instead of "one-size-fits-all" property lists, Ribs has custom designed inspectors for every Swing control.
Simple XML Format
Ribs archives Swing components as a simple and concise XML file.
Custom Component Integration
Ribs provides an easy way to incorporate completely new Swing controls into a UI simply by dragging in a "Custom View" placeholder and setting its class name in the inspector.
Common Component Subclass Substitution
Ribs provides an easy way to edit standard Swing controls, but substitute custom subclasses at runtime, simply by specifying the subclass name in an inspector field.
Embeddable Font, Color Panels
Ribs provides greatly improved font and color panels.
Requirements:
Java 1.4.2 or later
Ribs 1.0 keywords