For those who don't know RADi, here comes a short description:
RADi is based on the concept of a design grid, using the design grid you can: - Position components accurate to a pixel. - Interactively specify the layout's resizing behaviour (very fine-grained if you wish). - Create almost any layout you can think of. - Easily re-order components with drag and drop. - Easily change the grid by adding or removing columns respective rows.
Other highlights are: - WYSIWYG editor - Renderers for combo boxes, lists, trees and tables let you create a GUI demo very precisely and in short time. - You can define popup menus, including the necessary wireing to be triggered. - RADi panels can display background images and implement Scrollable (by means of a Scrollable definition). - Support for null-layout-manager (JLayeredPane, JDesktopPane). - A CardPanel component (a JPanel using CardLayout) where you can define controllers to switch cards. - Components able to display text can also display antialiased text (by means of a textAntialiased property). - Support for custom components (Beans). - Easy GUI internationalization using RADi-generated properties files. - Any container can be defined as an inner class with its own namespace (this also structures your source code). - Look and feel switching (TinyLaF (developed by me) is included). - Virtually unlimited undo/redo. - You can define the FocusTraversalPolicy for frames and dialogs with a few mouse clicks. - Some useful editors, for example: + Menu editor + TabbedPane editor + Border editor + LabelTable editor + Spinner model editors + FormattedTextField editors + Action editor + StyledDocument editor - The RADi Tutorial and the online help should answer most of the questions arising in daily work.
Unfortunately RADi isn't for free but by purchasing a commercial annual license you get an hour of development for less than 3 Euro-Cent (plus free updates and free email support for one year). To check out RADi, download the free and fully functional demo version which you can evaluate for an unlimited period of time.