Hide Checkbox Example | Qt Installer Framework Documentation

- Qt Installer Framework Documentation
- Tutorials and Examples
- Hide Checkbox Example

# Hide Checkbox Example

Using components' package.xml files to hide checkboxes for items.

Hide Checkbox illustrates how to hide the checkbox for an item.

## Configuring the Example Installer

The installer configuration file, config.xml, in the `config` directory specifies the text and default values used in the installer:

- The `<Name>` element sets the application name and adds it to the page name and introduction text.
- The `<Version>` element sets the application version number.
- The `<Title>` element sets the installer name and displays it on the title bar.
- The `<Publisher>` element sets the publisher of the software (as shown in the Windows Control Panel, for example).
- The `<StartMenuDir>` element sets the name of the default program group for the product in the Windows Start menu.
- The `<TargetDir>` element sets the default target directory location to be within the `IfwExamples` directory in the home directory of the current user (because it uses the pre-existing variable `,` @HomeDir@, as part of the value). For more information, see Predefined Variables.

     <?xml version="1.0" encoding="UTF-8"?>
     <Installer>
         <Name>Hide item checkbox</Name>
         <Version>1.0.0</Version>
         <Title>Hide checkbox</Title>
         <Publisher>The Qt Company</Publisher>
         <StartMenuDir>Qt IFW Examples</StartMenuDir>
         <TargetDir>@HomeDir@/IfwExamples/hidecheckbox</TargetDir>
     </Installer>

## Creating the Example Package Information File

The installer package information file, package.xml, in the `meta` directory specifies the components that are available for installation:

- The `<DisplayName>` element sets the human-readable name of the component.
- The `<Description>` element sets the human-readable description of the component.
- The `<Version>` element sets the version number of the component.
- The `<ReleaseDate>` element sets the date of release for this component version.

- The `<Checkable>` element specifies whether a checkbox is displayed next to an item. Set to `false` to hide the checkbox for the item.

This example attempts to install three components, so we create a package.xml file in each component directory: componentF, componentF.subcomponent1, and componentF.subcomponent1.subcomponent1. We also specify the component name and description in each of them. The top level item, componentF, has `<Checkable>` set to `false`, so it cannot be selected.

     <?xml version="1.0"?>
     <Package>
         <DisplayName>Uncheckable component</DisplayName>
         <Description>This component is uncheckable.</Description>
         <Version>1.0.0</Version>
         <ReleaseDate>2015-12-01</ReleaseDate>
         <SortingPriority>40</SortingPriority>
         <Checkable>false</Checkable>
     </Package>

## Generating the Example Installer

To create the example installer, switch to the example source directory on the command line and enter the following command:

- On Windows:

       ..\..\bin\binarycreator.exe -c config\config.xml -p packages installer.exe

- On Linux or macOS:

       ../../bin/binarycreator -c config/config.xml -p packages installer

This creates the installer to the current directory.

Files:

- hidecheckbox/config/config.xml
- hidecheckbox/hidecheckbox.pro
- hidecheckbox/packages/componentF.subcomponent1.subsubcomponent1/data/testF_sub1_sub1.txt
- hidecheckbox/packages/componentF.subcomponent1.subsubcomponent1/meta/package.xml
- hidecheckbox/packages/componentF.subcomponent1/data/testF_sub1.txt
- hidecheckbox/packages/componentF.subcomponent1/meta/package.xml
- hidecheckbox/packages/componentF/data/testF.txt
- hidecheckbox/packages/componentF/meta/package.xml