Installer - Configuring Screens

## Installer - Configuring Screens |

| Screens are configured on the screens & and actions tab. Please see the list of available screens that come with install4j.

| A screen is a single step in an installer application. It displays information to the user or gathers user input. If a screen has attached actions, there will be an expand control to the left of the screen icon that allows you to show the associated actions.

| Common properties of screens are: Condition expression [Control Flow] This expression is evaluated to decide whether the screen is displayed. If the expression or script returns false, the current screen will be skipped. This expression or script should not have any side-effects, it will be called while another screen is still being displayed. Rollback barrier [Control Flow] If the screen should be a rollback barrier. When a rollback barrier is completed, none of the preceding actions will be rolled back. You can use this property to prevent an incomplete rollback of complex changes or to protect actions from rollback when the user hits "Cancel" in the post-install phase. Validation expression [Control Flow] This expression or script is called when the user clicks the next button. If it returns false, the current screen will be displayed again. You can use this to validate user input. Error messages are not displayed automatically, you can use the Util.showErrorMessage(String errorMessage) method in your script. Quit after screen [Control Flow] If the screen should have a "Finish" button instead of a "Next" button. The installer or uninstaller will quit after this screen. The "Cancel" button will not be visible if this option is checked. Back button [Control Flow] Allowing the user to go back to previous screens can be problematic if the previous screen has actions attached that cannot be executed multiple times. By default, every action is just executed once, all actions have a property to allow multiple execution. The default behavior is the "Safe back button", where the back button is hidden if the previous screen has actions attached that cannot be executed multiple times. Wizard index [Screen activation] Every screen can set or change the current wizard index. The wizard index is an optional panel on the left side of the wizard that shows overall installation progress. You can leave the index unchanged as it was set by a previous screen, change the step in the current wizard index, removed the current wizard index ot configure a new wizard index. For conditional construction of a wizard index, please use the `com.install4j.api.context.WizardIndex` class in the "Pre-activation" script. Step key The key for the step in the wizard index that should be activated. Note: This property is only visible if "Wizard index" is set to "Activate another step". Steps The steps that are displayed by the wizard index. Each step has a key that you can use to switch to that step later on by setting the wizard index property to "Activate another step" and specifying that key. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Initial key The key of the step in the wizard index that should be initially selected. Leave empty to select the first step. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Partially defined If selected, the list of wizard index steps will be partially defined. This means that a "..." entry will be appended at the bottom. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Numbered If selected, the steps in the wizard index are numbered. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Maximum width The maximum width of the wizard index in pixels. The preferred with is determined by the longest step name, the maximum width is an upper bound for the actual width. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Minimum width The minimum width of the wizard index in pixels. The preferred with is determined by the longest step name, the minimum width is a lower bound for the actual width. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Background color The background color for the index panel. Set to "None" to restore the default color. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Foreground color The foreground color for the index panel. Set to "None" to restore the default color. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Background image The image file for the background of the wizard index panel. Leave empty if no background image is required. Note: This property is only visible if "Wizard index" is set to "Set a new wizard index". Image anchor The anchor for the background image. The default value is "North". Pre-activation script [Screen activation] This script is called each time just before the screen is displayed. Post-activation script [Screen activation] This script is called each time just after the screen has been displayed. It is not invoked in console or unattended mode.

| Some screens only make sense when corresponding actions are used later on in the installer or uninstaller. For example, the "Services" screen will only be displayed at runtime if there are "Install a service" actions present on a subsequent screen. If such a dependency is not fulfilled after adding a screen, a corresponding notification is displayed.