Enhanced User Interface
The Enhanced User Interface allows you to design a great interface for your installation packages.
Starting with v21.0 Advanced Installer provides you with two options to enable the Enhanced UI dialog controls:
WinUI rendering can be enabled for packages with any of the above options enabled.
Benefits
Below is a list of improvements available.
- Controls Transparency
- Large Icons
- Enhanced Check-Box & Radio Buttons
- Image Button
- Command Link Control
- Image Check Box
- Image
- Quick Feature Selection Tree with Check-Boxes
- Quick Feature Selection List with Icons
- Check List Control
- Prerequisite Selector Control
- Styled Progress
- Hyperlink Control
- HTML Host Control
- Tab Host
- Vertical Line Control
- Multiple Selection Lists
- Native (OS) Browse Folder Dialog
- Enforced "License Agreement" Lecture
- Highly UAC Compliant
- Installation Overall Progress
- Installation Summary
- WinUI Rendering
You can check out the advantages of Enhanced UI by having a look over the predefined themes we offer.
Controls Transparency
When using the regular Windows Installer UI only text controls can be placed onto a image. When using Enhanced UI all other controls like icon, check-box or radio-button are also transparent. This will allow you to design any background image for you pages.
Enhanced Check-Box & Radio Buttons
Only when using Enhanced UI, the check-box & radio button controls are rendered with colored text, as specified by their text-styles.
Command Link Control
A command link is composed of three parts:
- Icon, which usually is an arrow but it can be a custom icon too. Please check the Attributes page to see how you can customize the icon.
- Name (or maybe a short description of what it does).
- Long explanatory description of the action.
Their interface is similar to regular links, they don't have a frame which offers a clean UI appearance.
They are usually used to move on to the next step in a task (wizards and pages flows) or to close a window (dialog box).
Their format is similar to the radio buttons, but in the same time quite different. A radio button group always has a commit button attached compared to the Command Links where the choice and actions are included in the same button. This is why a Next button will not be required. Because they are similar to the radio buttons, they should always be used in sets and not individually.
When you use Command Links, focus your description on the exact action that button does. That way, the user will know exactly what to choose.
It is not recommended to use the command link as a cancellation button.
Image Check Box
Displays a check box that uses images to display its state. Overall there are eight states available. Because of this, the image used by this check box is composed of eight smaller images.
The eight states of the check box are:
- Normal unchecked
- The normal unchecked state of the check box
- Over unchecked
- The mouse over unchecked state of the check box
- Pressed unchecked
- The pressed unchecked state of the check box
- Disabled unchecked
- The disabled unchecked state of the check box
- Normal checked
- The normal checked state of the check box
- Over checked
- The mouse over checked state of the check box
- Pressed checked
- The pressed checked state of the check box
- Disabled checked
- The disabled checked state of the check box
Image
The Enhanced UI version of this control can also display animated .GIF or transparent .PNG files.
To control an animated .GIF you should set the AiGifCommand property to one or more of the following command values:
- <your_image_name>.Play (plays <your_image_name> animated .GIF)
- <your_image_name>.Pause (pauses <your_image_name> animated .GIF)
- <your_image_name>.Stop (stops <your_image_name> animated .GIF)
- <your_image_name>.Rewind (rewinds <your_image_name> animated .GIF)
For example you can have a dialog with three image controls which point to animated .GIF files. On the same dialog, a button can have a Set installer property value published event that sets the AiGifCommand property to:
Image_1.Play;Image_2.Pause;Image_3.Stop
In this example scenario when the installing user will press the button, every image control will comply with the given command (Image_1 will play, Image_2 will pause and Image_3 will stop).
Quick Feature Selection Tree with Check-Boxes
This feature selection tree control uses check-boxes instead of menu items to install/remove a feature.
Each feature has a check-box associated with it, which will control the installation state of a feature. If the check-box attached to a feature is checked that means the feature will be installed, otherwise, that feature will not be available after the installation. A check-box comes with intuitive icons for the installation state. If you choose to install a feature you will see the icon of a drive with an arrow and if you choose not to install that feature you will get an “X” icon.
The Quick Selection Tree provides a quicker and more efficient way for the end-users to install a product. It also offers a more attractive way for the novice users to manage an installation.
Another UI option is that you can choose whether or not it will have a border - as well as for any other tree or list. Choosing not to have a border, your control will look like it is somehow integrated in that dialog and will provide more eye candy appearance to your product installation.
Quick Feature Selection List with Icons
This new feature selection list control prepends an icon for each listed feature.
The Install Mode extended attribute's value determines which features are displayed into the list:
- Install - lists only top level features that can be installed, excluding the mandatory ones
- Uninstall - lists only already installed features that can be removed
- Show Installed - lists only already installed features without checkboxes
- Combined - all features will be listed
Check List Control
This control is a regular list box with check-boxes, that enables the user to make a multiple selection from a list of predetermined values. When multiple items are selected, their comma separated values will be stored in the property specified in the "Property Name" field. You can customize the separator token to be used for multiple selected values.
Prerequisite Selector Control
The Prerequisite Selector displays the feature-based prerequisites states. It also allows the user to select which prerequisite to install.
Prerequisites are displayed together with additional information like: required versions, versions found on target computer and action that will be performed.
Styled Progress
A styled bar that changes its length as it receives progress messages.
The image used by this control is composed of three smaller images aligned from left to right as follows:
- Unfilled
- The unfilled style of the progress bar
- Indeterminate
- The indeterminate (marquee) style of the progress bar
- Filled
- The filled state of the progress bar
This control requires a "Display installation progress" subscribed event with the "Progress" attribute.
Hyperlink Control
The Hyperlink control displays an HTML link to an address, which opens in the default browser on the target computer. Links are not supported for protocols other than HTTP. When using the Hyperlink control with Enhanced UI your package will be able to run on all OS and Windows Installer versions, as opposed to the standard Windows Installer UI, that limits its usage to version 5.0 or higher. Also, using Enhanced UI allows better transparency rendering for this control type.
HTML Host Control
The HTML Host control displays an HTML page from a given URL or a local file. The associated HTML page can be static or dynamic by using JavaScript (embedded or external).
For more information about using the HTML Host control and its APIs read this article.
Tab Host
The Tab Host control includes a list of child dialogs. The child dialogs' titles represent the tab's name in the control, whereas each dialog's content will be displayed when the user selects its corresponding tab.
With this control the user can choose to navigate to the dialog's tab inside the Tab Host control, only if he wishes to customize its associated settings.
The tabs content and visibility inside the Tab Host control can be defined and conditioned from the "Child Dialogs" Dialog. This dialog can be accesed from the Tab Host control's "Child Dialogs..." context menu or by double clicking it in the dialog editor.
Multiple Selection Lists
Allows more than one item at a time to be selected from a List Box or List View control. When multiple items are selected, their comma separated values will be stored in the property specified in the "Property Name" field. You can customize the separator token to be used for multiple selected values.
Native (OS) Browse Folder Dialog
The Browse Folder dialog is now displayed using the operating system predefined dialogs so the user can select the install location in a very familiar and easy to use dialog.
Enforced "License Agreement" Lecture
The scrollable text that usually displays the license agreement will now set the attached property when it will be scrolled to the last line. A control condition based on the scrollable text property can be used to enable the agree control. This is a good way to make sure that the users have read your licensing terms.
Installation Overall Progress
The standard installation progress resets itself several times during an installation. When using Enhanced UI the installation progress can be displayed as accurate as possible using the AiGlobalProgress event.
Installation Summary
The main actions performed during installation may be displayed into a log-like fashion. The standard ActionText and ActionData messages are filtred and improved to create a user friendly installation log using the Installation Summary or Installation Details events. For more details follow the installation summary tutorial.
WinUI Rendering
When installing on Windows 10 - 1809 and above, the controls can be rendered using WinUI modern controls, if EXE External UI option is selected. For MSI Embedded UI option, WinUI controls can be used only on Windows 11.
WinUI is the native UI layer in Windows, embodies Fluent Design and gives your installation the polished feel that customers expect. Key benefits:
- Modern controls
- WinUI controls come with a modern look and improved functionality.
- SVG Images Support
- You can use SVG images for improved rendering on high DPI monitors.
- Transitions
- Controls will be animated when their visibility is changed.
- Native Performance
- Blistering performance and responsive interactivity, no dependencies, powered by a highly optimized core built into the OS.
- Customization
- The overall look of the UI can be easier customized using XAML files
You can optionally enable WinUI rendering from the Themes > Settings page.