Dialog Box resource

A Dialog Box resource acts as a parent window for one or more controls. Dialog boxes are used to implement the installer's user interface sequence; a typical installer's user interface consists of a series of dialog boxes with Next and Back buttons that take the user through the installation steps. In addition to the main installation sequence, there may be additional dialog boxes that are used for secondary purposes, such as confirmation messages or special warnings.

Modal versus modeless dialog boxes

Dialog boxes may be modal (the user must close the dialog box before continuing with the next action) or modeless (the user and the installer may perform additional actions while the dialog box is open). A InstallMate dialog box can be used in either capacity; the modal or modeless behavior is determined by the Run Dialog action that opens the dialog box.

Order of dialog boxes

The order of the dialog boxes in the user interface is determined by the action sequence that the installer executes. Each dialog box contains one or more PushButton controls that close the dialog box and return control to the action sequence that opened the dialog box. Depending on the Control ID of the PushButton that closed the dialog box, either the next or the previous action from the parent sequence is executed, thus stepping forward or backward through the installation sequence.

Separating the dialog box execution sequence from the actual dialog boxes allows a dialog box to be used in different contexts, for example both during the initial installation sequence and during subsequent repair or modify sequences.

Attributes

The following attributes and options are available.

Attribute Description
Dialog name

Enter the internal name for the dialog box. This name is for use in InstallMate only; it is not used in the installer. All dialog names must be unique within the InstallMate section of project.

Caption Enter the text for the dialog box caption.
Localized Check this box to localize the Caption field and use different captions for different languages.
Border style

Select the desired border style for the dialog box from the drop-down list. The following choices are available:

Border style Description
None No border. This style is useful for panel-like secondary dialog boxes, for example to create a billboard.
Thin Thin border that does not respond to resizing messages (i.e., the mouse cursor does not change to a sizing cursor when the mouse points to one of the edges).
Resizing Thick border that responds to resizing messages. With this border style, the user can resize the dialog box. However, the controls in the dialog box remain where they are, so this style is not recommended. (We plan to support control resizing in a future release of InstallMate.)
Dialog Thin border that does not respond to resizing messages (i.e., the mouse cursor does not change to a sizing cursor when the mouse points to one of the edges).

The Thin and Dialog styles are visually identical, but Microsoft recommends using the Dialog style for modal dialog boxes, and the Thin style for modeless ones.

Font style

Select the font style for the text in the dialog box by clicking ... (browse) to open the Select Font Style dialog. If no font style is selected, the system's default font for dialog boxes is used. You can remove the font style by clicking X (clear).

Note: Because InstallMate dialog boxes are implemented as Windows dialog resources, the dialog box and all its controls scale with the dialog font size and aspect ratio. However, controls that use a different font still scale with the dialog font, not with their own font. You must therefore take care to avoid text clipping if a control uses a substantially larger font than its dialog box.

Position

Check this box to specify the initial screen position for the dialog box; clear it to let the installer determine the position.

  • If you check this box, you can set the dialog box' position as a relative screen position from 0 to 100, horizontally and vertically. 0 corresponds to the left or top edge of the (primary) monitor; 100 to the right or bottom edge. Other values are used in proportion, so (50, 50) corresponds to the center of the (primary) monitor. The user can still move the dialog box from its initial position, but if the dialog box is closed and then reopened, it will again appear in its initial position.
  • If you clear this box, the first installer dialog box is placed at the center of the (primary) monitor; subsequent dialog boxes that do not have their Position attribute checked are placed wherever the previous dialog box was. As a result, if the user moves a dialog box, then subsequent dialog boxes will also appear in the new position, as most users would expect.

In general, you should not check this option for the main installer dialog boxes. This allows the user to move an installer dialog box out of the way if necessary, with any subsequent dialog boxes staying out of the way as well. You should only use this option if there is a strong reason to do so, for example if you want a billboard or progress dialog box to appear in one of the corners of the screen.

Title bar

Check this box to display a title bar in the dialog box; clear it to omit the title bar.

Note: Without a title bar, the user cannot move the dialog box. Therefore, you should check this box unless there is a very strong reason not to do so.

System menu Check this box to display a system menu and X close button in the dialog box' title bar; clear it to omit them.
Minimize button

Check this box to display a minimize button in the dialog box' title bar; clear it to omit the button. This option is only available if you also check System menu.

Note: If you check this box, then a maximize button will also appear. That button will be disabled unless you also check Maximize button.

Maximize button

Check this box to display a maximize button in the dialog box' title bar; clear it to omit the button. This option is only available if you also check System menu. A maximize button allows the user to maximize the dialog box at installation time. However, the controls in the dialog box remain where they are, so this option is not recommended. (We plan to support control resizing in a future release of InstallMate.)

Note: If you check this box, then a minimize button will also appear. That button will be disabled unless you also check Minimize button.

Don't mirror

Setting this style keeps the dialog box' orientation as it is and does not mirror it for languages that use a right-to-left (RTL) reading order; clearing it mirrors the dialog box for RTL languages. This option only has effect for languages that use an RTL reading order, such as Arabic and Hebrew; for other languages it is ignored.

Note: If a dialog box is mirrored, all its controls are also mirrored unless you set their Don't mirror attributes separately.

Related topics

Dialogs, Working with attribute panes