Change Log of JFormDesigner 5

See also: What's New in JFormDesigner 5

5.0.4.1 (IntelliJ IDEA plug-in only)

  • IntelliJ IDEA plug-in: JFormDesigner help was not available in IntelliJ IDEA 11.1 Ultimate Edition.

5.0.4

Bugs fixed

  • Fixed NullPointerException in Java code generator if no PropertyEditor is available (since 5.0.3).
  • JBuilder plug-in: Fixed NullPointerException in code generation when converting a form that contains menu separators.

Other Changes

  • Updated JRE 6 in Windows setup to JRE 6 Update 31.

5.0.3

Bugs fixed

  • Fixed failure of JIDE extensions initialization when JIDE library path contains spaces.
  • Catch NoClassDefFoundError when getting BeanInfo to fix strange behavior of Binding dialog if a referenced class is not found in classpath.
  • Minor bugs fixed.

Other Changes

  • IntelliJ IDEA plug-in: Support for IntelliJ IDEA 11.1.
  • Invoke method "public String getJavaPostInitializationString(String componentName, String propertyName)" in java.beans.PropertyEditor implementations to get property post initialization Java code.

5.0.2.3 (IntelliJ IDEA plug-in only)

  • IntelliJ IDEA plug-in: Support for IntelliJ IDEA 11.1 EAP build 114.55.

5.0.2.2 (IntelliJ IDEA plug-in only)

  • IntelliJ IDEA plug-in: Project specific JFormDesigner settings were not reloaded on startup (throws ClassCastException: java.lang.Object cannot be cast to org.jdom.Element).

5.0.2.1 (IntelliJ IDEA plug-in only)

  • IntelliJ IDEA plug-in: Editing Java custom code properties displayed empty dialogs under special circumstances in IntelliJ IDEA 10.5 (and later) on Mac OS X.

5.0.2

Bugs fixed

  • Fixed NullPointerException when opening Binding dialog and using a property that has a custom property editor.
  • I18n: JTabbedPane tab titles were not always auto-externalized.
  • Eclipse plug-in: Look and Feels or Locales combobox drop-down list (in Designer toolbar) occasional closed immediately after popping up.
  • IntelliJ IDEA plug-in: Creating new form with OK/Cancel/Help buttons and i18n enabled did not add the OK/Cancel/Help texts to the resource bundle.
  • Mac OS X: Binding dialog was too small (Edit and Remove column buttons on "Table Binding" tab were hidden).
  • ListModel: Added @Override annotation to implemented interface methods if source compatibility is Java 6.
  • Color editor: Fixed issue with selecting System or Swing palette colors when running JFormDesigner in Java 7 VM.
  • Java code generator: Fixed generation of invalid code if "Custom Create" and "Use Local Variable" properties are set to true.
  • Java code generator: Fixed generation of invalid code if "Type Parameters" and "Nested Class Name" properties are set.
  • Java code generator: Update type parameters in extends clause of form/nested class when changing "Type Parameters" property.
  • NetBeans forms converter: Support conversion of TreeModel and String[] property values.
  • NetBeans forms converter: Fixed missing trailing ';' in "Custom Creation Code" property.
  • NetBeans forms converter: Fixed NullPointerException when converting default LineBorder.
  • NetBeans forms converter: Fixed invalid generated code if an event has more than one handler method.
  • "Unknown property" dialog were shown for inactive forms.

Other Changes

  • IntelliJ IDEA plug-in: Support for IntelliJ IDEA 11.
  • MatteBorder(Icon) without insets is now supported.
  • Warning when trying to open a JFDML form file, which requires JFormDesigner 5.1 or later.
  • Updated JRE 6 in Windows setup to JRE 6 Update 29.

5.0.1

Bugs fixed

  • Wildcards did not work in "Choose Bean" dialog when pattern starts with uppercase letter.
  • Properties view: Used localized decimal separator (e.g. ',' on German OS) for editing double and float values, but always '.' for displaying them.
  • Properties view: Clicking on number value did not position the caret at the mouse location.
  • Fixed NullPointerException when using TitledBorder and running JFormDesigner in a Java 7 VM.
  • Fixed StackOverflowError when having a GridBagLayout panel within an IntelliJ IDEA GridLayout panel and disabled layout animation.
  • Fixed occasional NullPointerException when having a JTabbedPane within an IntelliJ IDEA GridLayout panel and using Nimbus look and feel.
  • Eclipse plug-in: Test form window occasional moved behind Eclipse window.
  • IntelliJ IDEA plug-in: "Go to form/java" toolbar command always opened file in same tab group even if file was already open in another tab group (IntelliJ IDEA 10 or later only).
  • IntelliJ IDEA plug-in: "Convert to JFormDesigner Form" progress window blocked other dialogs.
  • IntelliJ IDEA plug-in: Raw HTML were shown in Binding dialog tab title "Table Binding" when using IDEA 4.5 Look and Feel.
  • Java code generator: Avoid duplicate ButtonGroup instantiation when using non-local button group variable.
  • Windows 7: Fixed window decorations used in Designer when designing dialogs or frames.

Other Changes

  • Windows Stand-alone: Added x64 executables.
  • Updated GroupLayout (swing-layout.jar) to 1.0.4.
  • Updated JRE 6 in Windows setup to JRE 6 Update 26.

5.0.0.1 (IntelliJ IDEA plug-in only)

Bugs fixed

  • IntelliJ IDEA plug-in: IntelliJ IDEA 10 and 10.5 sometimes did no longer respond to mouse clicks after using source/target path combobox in Bindings dialog (throws NullPointerException in com.intellij.ui.BalloonImpl).

5

New Features and Improvements

  • Beans Binding (JSR 295) support.
  • BeanInfo annotations.
  • Properties view: Ability to filter properties added.
  • Properties view: "Group by Category", "Group by Defining Type" and "Alphabetical" commands introduced to allow grouping of bean properties into categories (normal, expert, read-only and custom categories specified in BeanInfo); into defining types (e.g. JTextField, JTextComponent, JComponent, Container, Component); or alphabetically.
  • Properties view: Support for property categories specified in PropertyDescriptor of BeanInfo.
  • Properties view: Show changed properties even if containing category is collapsed.
  • Properties view: Moved "Code Generation" properties from own tab to category into properties table.
  • Properties view: Added "Force Value" command to property context menu. If checked, it forces setting of property value even if it is equal to the default property value.
  • GroupLayout: "Duplicate" command added.
  • GroupLayout: Added layout constraints properties for space around component.
  • JGoodies Forms 1.3 support.
  • FormLayout: Auto-detect version of used JGoodies Forms library and generate appropriate Java code.
  • FormLayout: Added option "Make anonymous PanelBuilder JPanel transparent" to "Java Code Generator > Layout Managers" preferences page.
  • BorderLayout: Support relative positioning (with PAGE_START, PAGE_END, LINE_START and LINE_END constraints).
  • Support for using non-public JavaBeans and interfaces in Design view. Non-public JavaBeans must be in the same package as the form or a nested static class of the form class. Interfaces are not initialized in the generated Java code. You have to do this yourself before invoking initComponents().
  • "Choose Bean" dialog now displays additional information about matching classes: modifiers (as icon), class hierarchy (in tooltip), number of matching classes and used filter.
  • "Choose Bean" dialog now supports camel-case search.
  • "Choose Bean" dialog now highlights characters that match the filter pattern.
  • "Classpath Info" link added to "Choose Bean" dialog, which shows the resolved classpath used by JFormDesigner.
  • Clicking on a JScrollPane in Design view now selects its child.
  • Simplified handling of JScrollPanes: now you can select the child of a JScrollPane and change layout properties of the JScrollPane in the Properties view and using the context popup menu.
  • Automatically reload custom components when changed.
  • Automatically refresh designers on project classpath changes.
  • Added "Events" property to Properties view. No longer display events in Structure view.
  • "Add Event Handler" popup menu improved.
  • Eclipse plug-in: The Java code generator can now use the Eclipse code formatter to format generated code. Enable option "Use Eclipse code formatter" in "Java Code Generator" preferences.
  • Eclipse plug-in: Support creation of forms in non-Java projects (e.g. in a Pydev project).
  • Eclipse plug-in preferences: Improved filter for JFormDesigner preference pages.
  • Java code generator: Better support for custom creation of components (e.g. using factories) with new property "Custom Create" (category "Code Generation"). When checked for a component, you can write your own component creation code into the method createUIComponents().
  • IntelliJ IDEA forms converter now supports nested forms and the "Custom Create" flag. The new option "Form class extends top-level container" changes the extends clause of the converted form to extend the top-level container, which is necessary for nested forms.
  • NetBeans forms converter now supports forms that use Swing Application Framework resource management.
  • Palette: Remembers expanded categories per form.
  • Project specific settings.
  • Added property editor for string arrays.
  • I18n: Support localization of string arrays.
  • I18n: Externalization of forms from command-line.
  • Look and Feels: Added option "Enable Look and Feel switching" to "Look and Feels" preferences page, which allows you to disable Look and Feel switching if it causes problems.
  • Preferences: Support definition of client properties for multiple component classes.
  • Runtime library: Automatically use javax.swing.GroupLayout if running in Java 6 VM.
  • Stand-alone: Show file paths in "Reopen Project" and "Reopen Form" submenus.
  • Stand-alone: Improved startup script for Unix/Linux based systems.
  • Added "Tab Background" and "Tab Foreground" properties for JTabbedPane components.
  • Added "Help" button to dialogs.
  • Automatically check for available updates and new versions of JFormDesigner.
  • Unified look of Palette view for all platforms.
  • Support for using custom beans compiled for Java 6+ while running JFormDesigner in a Java 5 VM (when the custom beans does not use Java 6+ API).
  • Updated JGoodies Looks to 2.3.1.

Bugs fixed

  • JARs on the project classpath were locked after loading custom beans.
  • I18n: Some properties were not included in the Externalize Strings dialog.
  • I18n: Avoid overwriting existing messages on message key conflicts.
  • Changes to properties of javax.swing.Action objects did not update connected components in Design view (e.g. JButton) if running JFormDesigner in a Java 6 VM.
  • NetBeans form converter: Fixed occasional error when converting NetBeans 6.9+ forms.
  • Stand-alone on Mac OS X: JFormDesigner canceled Log Out and Shut Down even when there were no unsaved forms.
  • Eclipse plug-in: Fixed occasionally empty file view in file chooser dialogs.
  • Eclipse plug-in: Editing some properties (e.g. icon) set the property value to null under special circumstances.
  • IntelliJ IDEA plug-in: Fixed dead-lock on start-up of IntelliJ IDEA 10 with installed Clover plug-in and enabled Clover auto-update checking.
  • IntelliJ IDEA plug-in: Fixed occasional NullPointerException in com.jformdesigner.KS.getState().
  • Windows: Fixed painting of JRadioButtonMenuItem and JCheckBoxMenuItem on Windows Vista/7.
  • Windows: Fixed invisible texts (of labels, buttons, etc.) in Design view on Windows XP and Java 6.

Other Changes

  • System Requirements: Sun/Oracle Java 5 or later; Eclipse 3.2 - 3.6; IntelliJ IDEA 8 - 10; JBuilder 2006.
  • Updated JRE 6 in Windows setup to JRE 6 Update 24.