We need you!

Icon

The IzPack documentation needs work, and you are invited to edit it!

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

With the dynamicinstallerrequirements element, you can check a certain set of conditions on each panel change, using a panel data validator to check if the required conditions are met.

Code Block
titleCommon Example
languagehtml/xml
<dynamicinstallerrequirements>
  <installerrequirement severity="error"
                        condition="this.condition.must.not.happen"
                        messageid="this.condition.must.not.happen.translation.id"/>
  <installerrequirement severity="error"
                        condition="this.condition.may.happen"
                        messageid="this.condition.may.happen.translation.id"/>
  ...
</dynamicinstallerrequirements>

If a condition applies, a messagebox is shown with the appropriate content from translation. Depending on the value of severity attribute the installation might be continued or is aborted:

  • "error"
    The messagebox is shown and the installation aborts.
  • "warning"
    The messagebox is shown and the installation can continue after the OK button is pressed.

A more detailed example:

Code Block
languagehtml/xml
<condition type="variable" id="isNew">
  <name>previous.version</name>
  <value>XX.XX.XX</value>
</condition>
<condition type="not" id="isUpgrade">
  <condition type="ref" refid="isNew"/>
</condition>
...
<dynamicinstallerrequirements>
  <installerrequirement condition="isUpgrade" severity="warning" messageid="not.an.upgrade.warning.message"/>
</dynamicinstallerrequirements>
...
<panels>
  <panel classname="HelloPanel"/>
  <panel classname="TargetPanel">
    <validator classname="DynamicInstallerRequirementValidator"/>
  </panel>
  <panel classname="PacksPanel"/>
  <panel classname="InstallPanel"/>
  <panel classname="FinishPanel"/>
</panels>

On each panel with a DynamicInstallerRequirementValidator assigned will be evaluated according to the requirements given as nested elements in <dynamicinstallerrequirements>.

installerrequirement attributes:

...

<installerrequirement> - Attributes

AttributeDescriptionDefaultRequired
severity

The severity the validator should apply in case of the condition gets true.

Possible values: "warning" | "error"

  •  "warning"
    Shows a warning message but does not abort

...

  • .
  • "error"

...


  • Shows a message and aborts the installation

...

  • .
noneyes
condition
A valid condition ID defined within the <conditions/> element.noneyes
messageid
A valid message ID from the appropriate translation file. If it can't be found the mentioned ID itself is displayed instead of the translated text.noneyes