JavaFX Scene Builder 1.1 Release Notes

JavaFX Scene Builder 1.1, hereinafter also referred to as Scene Builder, is a design tool for the JavaFX platform. It can assist you with quickly prototyping an application with interactive user interface that is linked to the application logic. You simply drag and drop graphical user interface (GUI) components onto a JavaFX scene and the FXML source code for your layout is automatically generated.

What's New in This Release

JavaFX Scene Builder 1.1 has the following new or modified features:

  • Scene Builder is now available on the Linux platform supported by the JavaFX 2.2 SDK. A Debian (.deb) package is provided, which when double-clicked brings up the Ubuntu Software Center application. See JavaFX 2 Certified System Configurations for the list of all supported platforms.

  • Several usability improvements have been made throughout the user interface, especially in the area of GridPane manipulation. The selection and manipulation of the GridPane rows and columns are easier, even when using contextual menu commands.

  • Scene Builder is now delivered as a self contained application package and no longer has the pre-requisite of a JRE installation.

  • The CSS analyzer feature is now available. Choose View and then Show CSS Analyzer from the main menu to display the CSS Analyzer panel. The feature is described in Skinning with CSS and the CSS Analyzer of the User Guide.

  • TableColumns objects can now be selected in the Content Panel and the header text can be edited inline.

  • The Inspector panel allows you to edit the accelerators associated with a Menu Item object.

  • The inline editing feature has changed as follows:

    • A double-click gesture on a UI element in either the Content panel or the Hierarchy panel places the element in an inline editing mode.

    • Double-clicking on a UI element that can contain other UI elements, such as a Menu Button, in the Content panel no longer isolates that element.

    • When a UI element with a Text property is selected in either the Content panel or the Hierarchy panel, pressing Return places the element in an inline editing mode. Press Ctrl-Return (on Windows and Linux platforms) or Cmd-Return (on the Mac OS X platform) to commit the changes made to the Text property.

  • The Paste Into command has been added to the Edit menu. It replaces the Isolate + Paste command actions that were previously introduced in earlier developer preview builds of Scene Builder 1.1.

  • The View Mode drop-down menu, located next to the Search textfield at the top of the Inspector panel, allows you to view and filter the properties displayed for the currently selected UI element. The default mode has the Show All and View Sections options chosen. When you choose Show Edited, the Inspector panel displays only the properties whose default values have been modified. Choosing the View by property name or View by property type option displays the list of properties sorted by their names or type, respectively.

  • From the Menu bar, choose File and then New From Template to create a new document based on a template. The templates currently provided are as follows:

    • Alert Dialog layout

    • Simple Application window layout

    • (more) Complex Application window layout

    The new documents can be optionally created with a companion CSS file and a resource file for localization purposes. See the downloadable Scene Builder samples bundle for examples of how to use CSS and resource files.

  • The fx:id property has been moved from the Properties section to the Code section of the Inspector panel.

  • The new Unlock sample application is now available. This sample application features an unlock screen with a keypad that allows the user to enter a password. The sample illustrates the use of a GridPane based layout and a controller code that animates some of the UI elements. Two variants of this sample application are also available. In the UnlockInclude sample application, the UI of the keypad is based on an included FXML file. The UnlockCustom sample uses a keypad UI and logic that is implemented using a custom type. Download the javafx_scenebuilder_samples-1_1.zip file using the Samples link on the JavaFX Scene Builder Download page.

System Requirements and Installation

See the JavaFX Scene Builder Installation Guide for information about the system prerequisites and also instructions on installing JavaFX Scene Builder.

Getting Started

To get started with Scene Builder, read through the following documentation that can be found at http://docs.oracle.com/javafx/.

You may also view the Getting Started with JavaFX Scene Builder video tutorial, which shows the steps to create the same FXML file for the simple issue tracking application sample.

Known Bugs and Issues

The following issues are known to exist. The numbers leading each item refer to reports in the JavaFX Scene Builder issues dashboard in JIRA. To see a complete list of open issues, log in to the JIRA project for JavaFX Scene Builder at http://javafx-jira.kenai.com/browse/DTL. You must be a registered JIRA user to access the reports.

  • Issue DTL-5834: The Scene Builder 1.1 integration with all versions of NetBeans IDE up to and including the NetBeans IDE 7.4 is broken.

    Description: The version info, /1, which is added to the end of the xmlns:fx statement, breaks the Scene Builder integration with all versions of NetBeans IDE up to NetBeans IDE 7.4, inclusive. See NetBeans Bugzilla issues 236508, 236559, 236620,236621, and 236624.

    Workaround: Until the first NetBeans IDE 7.4 patch becomes available, download the latest build of NetBeans IDE Development version from http://bits.netbeans.org/download/trunk/nightly/latest/.

  • Issue DTL-5794: On the Linux platform, there is no warning message displayed when trying to save a modified layout to an already existing FXML file if the file extension is not specified in the filename.

    Description: When you try to save a modified layout to an existing FXML file by choosing the same destination folder, but only typing the name of the file without the .fxml extension, you will not receive a warning that the file exists and Scene Builder will proceed with rewriting over the existing FXML file.

    Workaround: Type the full file name, including the .fxml extension, when saving the modified file to ensure that you want to overwrite the existing FXML file.

  • Issue DTL-5791: The Wrap In command does not work on a child element of a CustomMenuItem component.

    Description: The Wrap In command does not work as expected when invoked (from either the Arrange menu or from the contextual menu) on a child element of a CustomMenuItem component.

    Workaround: Re-parent the child element so that its new parent is not an instance of the CustomMenuItem component. Use the Wrap In command on that child element in order to place it in the desired GUI layout. Re-parent that “wrapped” child element back to its original CustomMenuItem parent component.

  • Issue DTL-5726: While installing JavaFX Scene Builder on an Ubuntu 13.04 platform, a disturbing pop-up message may appear.

    Description: When the Scene Builder package is installed on Ubuntu (.deb file), a pop-up dialog may appear, with a message explaining that the package “violates the quality standards”.

    Workaround: Click the Ignore and install button to continue with the installation of the product.

  • Issue DTL-5271: There are limitations with FXML support in JavaFX Scene Builder.

    Description: Certain advanced features of the FXML format are not supported in JavaFX Scene Builder 1.1 release.
    - An FXML file that contains fx:script elements will not properly load in the FXML document if variables created by the scripts are referred to by objects in the scene graph.
    - File and URL paths must be either absolute or relative to the FXML file
    - Scene Builder only supports editing an FXML file whose root object is an instance of Node or Tab class.
    - Scene Builder will load files that contain fx:copy elements, but will not be able to preserve them.
    - Scene Builder will not be able to load FXML files that define event handlers on FXCollections elements, as implemented by RT-17714.
    Details of the FXML support limitations are listed in DTL-5271.

    Workaround: None.

  • Issue DTL-5029: The path to an imported image is incorrectly calculated when the image's file path name contains white spaces or special characters.

    Description: If the file path name to an imported image contains white spaces or other special characters, then clicking in the Image text field in the Properties section of the Inspector panel corrupts the URL value and causes the image to disappear from the Content panel. The white spaces and special characters in the path name are encoded twice and results in an invalid file path name.

    Workaround: Click on the browse (...) button next to the Image text field and open the image file again from the Image files dialog box. After the file path name has been added back in the text field, do not click in the Image text field because the issue will be triggered again.

  • Issue DTL-4477: Dragging and dropping multiple images from the local file system onto Scene Builder does not work correctly.

    Description: When you drag and drop multiple images from the file system onto Scene Builder's Content panel, only one of the images is successfully imported.

    Workaround: Drag and drop each image individually.

  • Issue DTL-4188: A UI component becomes unselectable when the Disabled and Mouse Transparency flags are set.

    Description: When you check the Disabled or Mouse Transparency property of a UI component, that component becomes unselectable in the Content panel.

    Workaround: Use the Hierarchy panel to select the UI component.

  • Issue RT-19435: ContextMenu and Tooltip elements associated with a UI component do not inherit styles from the parent container's style sheet nor from any inline styles set on the parent container.

    Description: If you assign a CSS file to the style sheets property of a parent container (e.g: root Anchor Pane), the rules in that CSS file are not applied to the Popup Control elements that are associated with the container's children elements. Inline styled declarations inherited from the parent container are also not applied to the Popup Control elements of the children objects. Popup Control objects are Context Menu and Tooltip.

    Workaround: Directly work with the Style property of the Context Menu and Tooltip to set the CSS styling rules.