--- /dev/null
+import org.apache.tools.ant.filters.ReplaceTokens
+import org.gradle.internal.os.OperatingSystem
+
+
+buildscript {
+ dependencies {
+ //classpath files("$gradlePluginsDir/gradle-macappbundle-2.3.0-patched-2.3.0.jar")
+ }
+}
+
+plugins {
+ id 'java'
+ id 'application'
+ id 'com.github.johnrengelman.shadow' version '4.0.3'
+ id 'com.install4j.gradle' version '7.0.9'
+}
+
+repositories {
+ jcenter()
+ mavenCentral()
+ flatDir {
+ dirs gradlePluginsDir
+ }
+}
+
+mainClassName = launcherClass
+
+sourceSets {
+
+ main {
+ java {
+ srcDirs "$jalviewDir/$sourceDir"
+ outputDir = file("$jalviewDir/$classesDir")
+ }
+
+ resources {
+ srcDirs "$jalviewDir/$resourceDir"
+ srcDirs "$jalviewDir/$libDir"
+ }
+
+ jar.destinationDir = file("$jalviewDir/$packageDir")
+
+ compileClasspath = files(sourceSets.main.java.outputDir)
+ compileClasspath += fileTree(dir: "$jalviewDir/$libDir", include: ["*.jar"])
+ //compileClasspath += fileTree(dir: "$jalviewDir/$j11libDir", include: ["*.jar"])
+
+ runtimeClasspath = compileClasspath
+ }
+
+ test {
+ java {
+ srcDirs "$jalviewDir/$testSourceDir"
+ outputDir = file("$jalviewDir/$testOutputDir")
+ }
+
+ resources {
+ srcDirs = sourceSets.main.resources.srcDirs
+ }
+
+ compileClasspath = sourceSets.main.compileClasspath
+ compileClasspath += files( sourceSets.test.java.outputDir )
+ compileClasspath += fileTree(dir: "$jalviewDir/$utilsDir", include: ["**/*.jar"])
+
+ runtimeClasspath = compileClasspath
+ }
+
+ modules {
+ compileClasspath = fileTree(dir: "$jalviewDir/$j11libDir", include: ["*.jar"])
+
+ runtimeClasspath = compileClasspath
+ }
+
+}
+
+compileJava {
+
+ doFirst {
+ if (JAVA_VERSION.equals("1.8")) {
+ sourceCompatibility = 1.8
+ targetCompatibility = 1.8
+ } else if (JAVA_VERSION.equals("11")) {
+ sourceCompatibility = 11
+ targetCompatibility = 11
+
+ options.compilerArgs = [
+ '--module-path', sourceSets.modules.compileClasspath.asPath,
+ '--add-modules', j11modules
+ ]
+ }
+ }
+
+}
+
+clean {
+ delete sourceSets.main.java.outputDir
+}
+
+cleanTest {
+ delete sourceSets.test.java.outputDir
+}
+
+def getDate(format) {
+ def date = new Date()
+ //return date.format("dd MMMM yyyy")
+ return date.format(format)
+}
+
+def getGitHash() {
+ def stdout = new ByteArrayOutputStream()
+ exec {
+ commandLine "git", "rev-parse", "--short", "HEAD"
+ standardOutput = stdout
+ workingDir = jalviewDir
+ }
+ return stdout.toString().trim()
+}
+
+def getGitBranch() {
+ def stdout = new ByteArrayOutputStream()
+ exec {
+ commandLine "git", "rev-parse", "--abbrev-ref", "HEAD"
+ standardOutput = stdout
+ workingDir = jalviewDir
+ }
+ return stdout.toString().trim()
+}
+
+task createBuildProperties(type: WriteProperties) {
+ inputs.dir("$jalviewDir/$sourceDir")
+ inputs.dir("$jalviewDir/$resourceDir")
+ outputFile "$jalviewDir/$classesDir/$buildPropertiesFile"
+ /* taking time/date specific comment out to allow better incremental builds */
+ //comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd HH:mm:ss")
+ comment "--Jalview Build Details--\n"+getDate("yyyy-MM-dd")
+ property "BUILD_DATE", getDate("dd MMMM yyyy")
+ property "VERSION", JALVIEW_VERSION
+ property "INSTALLATION", INSTALLATION+" git-commit:"+getGitHash()+" ["+getGitBranch()+"]"
+ outputs.file(outputFile)
+ outputs.dir("$jalviewDir/$classesDir")
+}
+
+task syncDocs(type: Sync) {
+ def syncDir = "$jalviewDir/$classesDir/$docDir"
+ from fileTree("$jalviewDir/$docDir")
+ into syncDir
+
+}
+
+def helpFile = "$jalviewDir/$classesDir/$helpDir/help.jhm"
+task syncHelp(type: Sync) {
+ inputs.files("$jalviewDir/$helpDir")
+ outputs.files(helpFile)
+
+ def syncDir = "$jalviewDir/$classesDir/$helpDir"
+ from fileTree("$jalviewDir/$helpDir")
+ into syncDir
+}
+
+task copyHelp(type: Copy) {
+ def inputDir = "$jalviewDir/$helpDir"
+ def outputDir = "$jalviewDir/$classesDir/$helpDir"
+ from inputDir
+ into outputDir
+ filter(ReplaceTokens, beginToken: '$$', endToken: '$$', tokens: ['Version-Rel': "USING_FILTER"])
+ inputs.dir(inputDir)
+ outputs.files(helpFile)
+ outputs.dir(outputDir)
+}
+
+task syncLib(type: Sync) {
+ def syncDir = "$jalviewDir/$classesDir/$libDir"
+ from fileTree("$jalviewDir/$libDir")
+ into syncDir
+}
+
+task syncResources(type: Sync) {
+ from "$jalviewDir/$resourceDir"
+ include "**/*.*"
+ into "$jalviewDir/$classesDir"
+ preserve {
+ include "**"
+ }
+}
+
+task prepare {
+ dependsOn syncResources
+ dependsOn syncDocs
+ dependsOn copyHelp
+}
+
+//testReportDirName = "test-reports" // note that test workingDir will be $jalviewDir
+test {
+ dependsOn prepare
+ dependsOn compileJava
+ useTestNG {
+ includeGroups testngGroups
+ }
+ workingDir = jalviewDir
+ //systemProperties 'clover.jar' System.properties.clover.jar
+}
+
+task buildIndices(type: JavaExec) {
+ dependsOn copyHelp
+ classpath = sourceSets.main.compileClasspath
+ main = "com.sun.java.help.search.Indexer"
+ workingDir = "$jalviewDir/$classesDir/$helpDir"
+ def argDir = "html"
+ args = [ argDir ]
+ inputs.dir("$workingDir/$argDir")
+
+ outputs.dir("$jalviewDir/$classesDir/doc")
+ outputs.dir("$jalviewDir/$classesDir/help")
+ outputs.file("$workingDir/JavaHelpSearch/DOCS")
+ outputs.file("$workingDir/JavaHelpSearch/DOCS.TAB")
+ outputs.file("$workingDir/JavaHelpSearch/OFFSETS")
+ outputs.file("$workingDir/JavaHelpSearch/POSITIONS")
+ outputs.file("$workingDir/JavaHelpSearch/SCHEMA")
+ outputs.file("$workingDir/JavaHelpSearch/TMAP")
+}
+
+task compileLinkCheck(type: JavaCompile) {
+ options.fork = true
+ classpath = files("$jalviewDir/$utilsDir")
+ destinationDir = file("$jalviewDir/$utilsDir")
+ source = fileTree(dir: "$jalviewDir/$utilsDir", include: ["HelpLinksChecker.java", "BufferedLineReader.java"])
+
+ outputs.file("$jalviewDir/$utilsDir/HelpLinksChecker.class")
+ outputs.file("$jalviewDir/$utilsDir/BufferedLineReader.class")
+}
+
+task linkCheck(type: JavaExec) {
+ dependsOn prepare, compileLinkCheck
+ classpath = files("$jalviewDir/$utilsDir")
+ main = "HelpLinksChecker"
+ workingDir = "$jalviewDir"
+ args = [ "$classesDir/$helpDir", "-nointernet" ]
+
+ doFirst {
+ standardOutput new FileOutputStream("$jalviewDir/$utilsDir/HelpLinksChecker.out")
+ }
+
+ outputs.file("$jalviewDir/$utilsDir/HelpLinksChecker.out")
+}
+
+task cleanPackageDir(type: Delete) {
+ delete fileTree("$jalviewDir/$packageDir").include("*.jar")
+}
+
+jar {
+ dependsOn linkCheck
+ dependsOn buildIndices
+ dependsOn createBuildProperties
+
+ manifest {
+ attributes "Main-Class": mainClass,
+ "Permissions": "all-permissions",
+ "Application-Name": "Jalview Desktop",
+ "Codebase": application_codebase
+ }
+
+ destinationDir = file("$jalviewDir/$packageDir")
+ archiveName = rootProject.name+".jar"
+
+ exclude "cache*/**"
+ exclude "*.jar"
+ exclude "*.jar.*"
+ exclude "**/*.jar"
+ exclude "**/*.jar.*"
+
+ inputs.dir("$jalviewDir/$classesDir")
+ outputs.file("$jalviewDir/$packageDir/$archiveName")
+}
+
+task copyJars(type: Copy) {
+ from fileTree("$jalviewDir/$classesDir").include("**/*.jar").include("*.jar").files
+ into "$jalviewDir/$packageDir"
+}
+
+// doing a Sync instead of Copy as Copy doesn't deal with "outputs" very well
+task syncJars(type: Sync) {
+ from fileTree("$jalviewDir/$libDir").include("**/*.jar").include("*.jar").files
+ into "$jalviewDir/$packageDir"
+ preserve {
+ include jar.archiveName
+ }
+}
+
+task makeDist {
+ // order of "cleanPackageDir", "copyJars", "jar" important!
+ jar.mustRunAfter cleanPackageDir
+ syncJars.mustRunAfter cleanPackageDir
+ dependsOn cleanPackageDir
+ dependsOn syncJars
+ dependsOn jar
+ outputs.dir("$jalviewDir/$packageDir")
+}
+
+task cleanDist {
+ dependsOn cleanPackageDir
+ dependsOn cleanTest
+ dependsOn clean
+}
+
+shadowJar {
+ dependsOn makeDist
+ if (JAVA_VERSION.equals("11")) {
+ from ("$jalviewDir/$j11libDir") {
+ include("*.jar")
+ }
+ }
+ mainClassName = shadowJarMainClass
+ mergeServiceFiles()
+ classifier = "all"
+ minimize()
+}
+
+ext {
+ getdownWebsiteDir = jalviewDir + '/' + getdown_website_dir
+ getdownAppDir = getdownWebsiteDir + '/' + getdown_app_dir
+ getdownJ11libDir = getdownWebsiteDir + '/' + getdown_j11lib_dir
+ getdownResourceDir = getdownWebsiteDir + '/' + getdown_resource_dir
+ getdownLauncher = jalviewDir + '/' + getdown_launcher
+ getdownFilesDir = jalviewDir + '/' + getdown_files_dir
+}
+
+task getdownWebsite() {
+ dependsOn makeDist
+ def getdownWebsiteResourceFilenames = []
+ def getdownTextString = ""
+ def getdownResourceDir = project.ext.getdownResourceDir
+ def getdownAppDir = project.ext.getdownAppDir
+ def getdownResourceFilenames = []
+ doFirst {
+ // go through properties looking for getdown_txt_...
+ def props = project.properties.sort { it.key }
+ if (JAVA_VERSION.equals("11")) {
+ props.put("getdown_txt_java_min_version", getdown_alt_java11_min_version)
+ } else {
+ props.put("getdown_txt_java_min_version", getdown_alt_java8_min_version)
+ }
+ props.each{ prop, val ->
+ if (prop.startsWith("getdown_txt_") && val != null) {
+ // file values rationalised
+ if (val.indexOf('/') > -1) {
+ def r = null
+ if (val.indexOf('/') == 0) {
+ // absolute path
+ r = file(val)
+ } else if (val.indexOf('/') > 0) {
+ // relative path (relative to jalviewDir)
+ r = file( jalviewDir + '/' + val )
+ }
+ if (r.exists()) {
+ val = getdown_resource_dir + '/' + r.getName()
+ getdownWebsiteResourceFilenames += val
+ getdownResourceFilenames += r.getPath()
+ }
+ }
+ def line = prop.substring(12) + " = " + val + "\n"
+ getdownTextString += line
+ }
+ }
+
+ getdownWebsiteResourceFilenames.each{ filename ->
+ getdownTextString += "resource = "+filename+"\n"
+ }
+ getdownResourceFilenames.each{ filename ->
+ copy {
+ from filename
+ into project.ext.getdownResourceDir
+ }
+ }
+
+ def codeFiles = []
+ makeDist.outputs.files.each{ f ->
+ if (f.isDirectory()) {
+ def files = fileTree(dir: f, include: ["*"]).getFiles()
+ codeFiles += files
+ } else if (f.exists()) {
+ codeFiles += f
+ }
+ }
+ codeFiles.sort().each{f ->
+ def line = "code = " + getdown_app_dir + '/' + f.getName() + "\n"
+ getdownTextString += line
+ copy {
+ from f.getPath()
+ into project.ext.getdownAppDir
+ }
+ }
+
+ if (JAVA_VERSION.equals("11")) {
+ def j11libFiles = fileTree(dir: "$jalviewDir/$j11libDir", include: ["*.jar"]).getFiles()
+ j11libFiles.sort().each{f ->
+ def line = "code = " + getdown_j11lib_dir + '/' + f.getName() + "\n"
+ getdownTextString += line
+ copy {
+ from f.getPath()
+ into project.ext.getdownJ11libDir
+ }
+ }
+ }
+
+ getdownTextString += "code = " + file(getdownLauncher).getName() + "\n"
+ getdownTextString += "class = " + mainClass + "\n"
+
+ def getdown_txt = file(project.ext.getdownWebsiteDir + "/getdown.txt")
+ getdown_txt.write(getdownTextString)
+
+ copy {
+ from getdown_txt
+ into project.ext.getdownFilesDir
+ }
+
+ copy {
+ from getdownLauncher
+ into project.ext.getdownWebsiteDir
+ }
+
+ copy {
+ from getdownLauncher
+ into project.ext.getdownFilesDir
+ }
+
+ copy {
+ from jalviewDir + '/' + project.getProperty('getdown_txt_ui.background_image')
+ from jalviewDir + '/' + project.getProperty('getdown_txt_ui.error_background')
+ from jalviewDir + '/' + project.getProperty('getdown_txt_ui.progress_image')
+ from jalviewDir + '/' + project.getProperty('getdown_txt_ui.icon')
+ from jalviewDir + '/' + project.getProperty('getdown_txt_ui.mac_dock_icon')
+ into project.ext.getdownFilesDir + '/' + getdown_resource_dir
+ }
+ }
+
+ inputs.dir(jalviewDir + '/' + packageDir)
+ outputs.dir(project.ext.getdownWebsiteDir)
+ outputs.dir(project.ext.getdownFilesDir)
+}
+
+task getdownDigest(type: JavaExec) {
+ dependsOn getdownWebsite
+ classpath = files(jalviewDir + '/' + getdown_core)
+ main = "com.threerings.getdown.tools.Digester"
+ args project.ext.getdownWebsiteDir
+ outputs.file(project.ext.getdownWebsiteDir + '/' + "digest2.txt")
+}
+
+task getdown() {
+ dependsOn getdownDigest
+}
+
+clean {
+ delete project.ext.getdownWebsiteDir
+ delete project.ext.getdownFilesDir
+}
+
+install4j {
+ def install4jHomeDir = "/opt/install4j"
+ def hostname = "hostname".execute().text.trim()
+ if (hostname.equals("jv-bamboo")) {
+ install4jHomeDir = System.getProperty("user.home")+"/buildtools/install4j"
+ } else if (OperatingSystem.current().isMacOsX()) {
+ install4jHomeDir = '/Applications/install4j.app/Contents/Resources/app'
+ if (! file(install4jHomeDir).exists()) {
+ install4jHomeDir = System.getProperty("user.home")+install4jHomeDir
+ }
+ } else if (OperatingSystem.current().isLinux()) {
+ install4jHomeDir = System.getProperty("user.home")+"/buildtools/install4j"
+ }
+ installDir = file(install4jHomeDir)
+}
+
+task installers(type: com.install4j.gradle.Install4jTask) {
+ dependsOn getdown
+ projectFile = "$jalviewDir/$install4jResourceDir/$install4jConf"
+ variables = [majorVersion: version.substring(2, 11), build: 001]
+ destination = "$jalviewDir/$install4jBuildDir"
+ buildSelected = true
+ inputs.dir(project.ext.getdownWebsiteDir)
+ outputs.dir("$jalviewDir/$install4jBuildDir")
+}
--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<install4j version="7.0.9" transformSequenceNumber="7">
+ <directoryPresets config="../../resources/install4j" />
+ <application name="Jalview" distributionSourceDir="" applicationId="6595-2347-1923-0725" mediaDir="../../build/install4j" mediaFilePattern="${compiler:sys.shortName}_${compiler:sys.platform}_${compiler:sys.version}" compression="6" lzmaCompression="true" pack200Compression="false" excludeSignedFromPacking="true" commonExternalFiles="false" createMd5Sums="true" shrinkRuntime="true" shortName="Jalview" publisher="University of Dundee" publisherWeb="http://www.jalview.org/" version="DEVELOPMENT" allPathsRelative="true" backupOnSave="false" autoSave="false" convertDotsToUnderscores="true" macSignature="????" macVolumeId="5aac4968c304f65" javaMinVersion="11" javaMaxVersion="11" allowBetaVM="false" jdkMode="jdk" jdkName="JDK 1.8">
+ <languages skipLanguageSelection="false" languageSelectionInPrincipalLanguage="false">
+ <principalLanguage id="en" customLocalizationFile="" />
+ <additionalLanguages />
+ </languages>
+ <searchSequence>
+ <registry />
+ <envVar name="JAVA_HOME" />
+ <envVar name="JDK_HOME" />
+ </searchSequence>
+ <variables />
+ <mergedProjects />
+ <codeSigning macEnabled="false" macPkcs12File="" windowsEnabled="false" windowsKeySource="pkcs12" windowsPvkFile="" windowsSpcFile="" windowsPkcs12File="" windowsPkcs11Library="" windowsPkcs11Slot="">
+ <windowsKeystoreIdentifier issuer="" serial="" subject="" />
+ <windowsPkcs11Identifier issuer="" serial="" subject="" />
+ </codeSigning>
+ </application>
+ <files keepModificationTimes="false" missingFilesStrategy="warn" globalExcludeSuffixes="" defaultOverwriteMode="4" defaultUninstallMode="2" launcherOverwriteMode="3" defaultFileMode="644" defaultDirMode="755">
+ <filesets>
+ <fileset name="Full file set" id="734" customizedId="" />
+ </filesets>
+ <roots>
+ <root id="735" fileset="734" location="" />
+ </roots>
+ <mountPoints>
+ <mountPoint id="454" root="" location="" mode="755" />
+ <mountPoint id="736" root="735" location="" mode="755" />
+ </mountPoints>
+ <entries>
+ <dirEntry mountPoint="454" file="../../getdown/files" overwriteMode="4" shared="false" fileMode="644" uninstallMode="0" overrideFileMode="false" overrideOverwriteMode="true" overrideUninstallMode="true" entryMode="direct" subDirectory="files" excludeSuffixes="" dirMode="755" overrideDirMode="false">
+ <exclude />
+ </dirEntry>
+ <dirEntry mountPoint="736" file="../../getdown/website" overwriteMode="4" shared="false" fileMode="644" uninstallMode="0" overrideFileMode="false" overrideOverwriteMode="true" overrideUninstallMode="true" entryMode="direct" subDirectory="files" excludeSuffixes="" dirMode="755" overrideDirMode="false">
+ <exclude />
+ </dirEntry>
+ </entries>
+ <components>
+ <component name="getdown" id="456" customizedId="" displayDescription="false" hideHelpButton="false" selected="true" changeable="true" downloadable="false" hidden="false">
+ <description />
+ <include all="true" />
+ <dependencies />
+ </component>
+ </components>
+ </files>
+ <launchers>
+ <launcher name="Jalview Launcher" id="121" customizedId="" external="false" excludeFromMenu="false" unixMode="755" unixAutoStart="true" menuName="${compiler:sys.shortName}-${compiler:sys.version}" icnsFile="../../resources/images/jalview_logos.icns" customMacBundleIdentifier="false" macBundleIdentifier="" swtApp="false" fileset="" macBundleBinary="JavaApplicationStub" addMacEntitlements="false" macEntitlementsFile="" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}" useJavaMinVersionOverride="false" javaMinVersionOverride="" useJavaMaxVersionOverride="false" javaMaxVersionOverride="" checkUpdater="false" updateExecutionMode="unattendedProgress" unattendedUpdateTitle="${i18n:updater.WindowTitle("${compiler:sys.fullName}")}">
+ <executable name="Jalview" type="1" iconSet="true" iconFile="../../resources/images/jalview_logos.ico" executableDir="." redirectStderr="true" stderrFile="error.log" stderrMode="overwrite" redirectStdout="true" stdoutFile="output.log" stdoutMode="overwrite" failOnStderrOutput="true" executableMode="1" changeWorkingDirectory="true" workingDirectory="." singleInstance="true" serviceStartType="2" serviceDependencies="" serviceDescription="" jreLocation="" executionLevel="asInvoker" checkConsoleParameter="true" globalSingleInstance="false" singleInstanceActivate="true" dpiAware="java9+">
+ <versionInfo include="false" fileVersion="" fileDescription="" legalCopyright="" internalName="" productName="" />
+ </executable>
+ <splashScreen show="false" width="640" height="480" bitmapFile="../../resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
+ <text>
+ <statusLine x="85" y="81" text="${compiler:sys.shortName}" fontSize="18" fontColor="0,0,0" bold="false" />
+ <versionLine x="85" y="109" text="version ${compiler:sys.version}" fontSize="8" fontColor="0,0,0" bold="false" />
+ </text>
+ </splashScreen>
+ <java mainClass="com.threerings.getdown.launcher.GetdownApp" mainMode="1" vmParameters="" arguments="." allowVMPassthroughParameters="true" preferredVM="" bundleRuntime="true">
+ <classPath>
+ <archive location="getdown-launcher.jar" failOnError="false" />
+ </classPath>
+ <modulePath />
+ <nativeLibraryDirectories />
+ <vmOptions />
+ </java>
+ <includedFiles />
+ <unextractableFiles />
+ <vmOptionsFile mode="template" overwriteMode="0" fileMode="644">
+ <content />
+ </vmOptionsFile>
+ <customScript mode="1" file="">
+ <content />
+ </customScript>
+ <infoPlist mode="1" file="">
+ <content />
+ </infoPlist>
+ <iconImageFiles>
+ <file path="../../resources/images/Jalview_Logo.png" />
+ </iconImageFiles>
+ </launcher>
+ <launcher name="Offline Jalview Launcher" id="737" customizedId="" external="false" excludeFromMenu="false" unixMode="755" unixAutoStart="true" menuName="${compiler:sys.shortName}-${compiler:sys.version}" icnsFile="../../resources/images/jalview_logos.icns" customMacBundleIdentifier="false" macBundleIdentifier="" swtApp="false" fileset="" macBundleBinary="JavaApplicationStub" addMacEntitlements="false" macEntitlementsFile="" useCustomMacosExecutableName="true" customMacosExecutableName="${compiler:sys.shortName}" useJavaMinVersionOverride="false" javaMinVersionOverride="" useJavaMaxVersionOverride="false" javaMaxVersionOverride="" checkUpdater="false" updateExecutionMode="unattendedProgress" unattendedUpdateTitle="${i18n:updater.WindowTitle("${compiler:sys.fullName}")}">
+ <executable name="Jalview" type="1" iconSet="true" iconFile="../../resources/images/jalview_logos.ico" executableDir="." redirectStderr="true" stderrFile="error.log" stderrMode="overwrite" redirectStdout="true" stdoutFile="output.log" stdoutMode="overwrite" failOnStderrOutput="true" executableMode="1" changeWorkingDirectory="true" workingDirectory="." singleInstance="true" serviceStartType="2" serviceDependencies="" serviceDescription="" jreLocation="" executionLevel="asInvoker" checkConsoleParameter="true" globalSingleInstance="false" singleInstanceActivate="true" dpiAware="java9+">
+ <versionInfo include="false" fileVersion="" fileDescription="" legalCopyright="" internalName="" productName="" />
+ </executable>
+ <splashScreen show="false" width="640" height="480" bitmapFile="../../resources/images/jalview_logo_background_fade-640x480.png" textOverlay="true">
+ <text>
+ <statusLine x="85" y="81" text="${compiler:sys.shortName}" fontSize="18" fontColor="0,0,0" bold="false" />
+ <versionLine x="85" y="109" text="version ${compiler:sys.version}" fontSize="8" fontColor="0,0,0" bold="false" />
+ </text>
+ </splashScreen>
+ <java mainClass="com.threerings.getdown.launcher.GetdownApp" mainMode="1" vmParameters="" arguments="." allowVMPassthroughParameters="true" preferredVM="" bundleRuntime="true">
+ <classPath>
+ <archive location="getdown-launcher.jar" failOnError="false" />
+ </classPath>
+ <modulePath />
+ <nativeLibraryDirectories />
+ <vmOptions />
+ </java>
+ <includedFiles />
+ <unextractableFiles />
+ <vmOptionsFile mode="template" overwriteMode="0" fileMode="644">
+ <content />
+ </vmOptionsFile>
+ <customScript mode="1" file="">
+ <content />
+ </customScript>
+ <infoPlist mode="1" file="">
+ <content />
+ </infoPlist>
+ <iconImageFiles>
+ <file path="../../resources/images/Jalview_Logo.png" />
+ </iconImageFiles>
+ </launcher>
+ </launchers>
+ <installerGui installerType="1" addOnAppId="" suggestPreviousLocations="true" autoUpdateDescriptorUrl="" useAutoUpdateBaseUrl="false" autoUpdateBaseUrl="">
+ <staticMembers script="" />
+ <customCode />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <applications>
+ <application name="" id="installer" customizedId="" beanClass="com.install4j.runtime.beans.applications.InstallerApplication" enabled="true" commentSet="false" comment="" actionElevationType="none" styleId="35" fileset="" customIcnsFile="../../resources/images/jalview_logos.icns" customIcoFile="../../resources/images/jalview_logos.ico" macEntitlementsFile="" automaticLauncherIntegration="false" launchMode="startupFirstWindow" launchInNewProcess="true" launchSchedule="updateSchedule" allLaunchers="true">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.applications.InstallerApplication">
+ <void property="useCustomIcon">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <styleOverrides>
+ <styleOverride name="Customize banner image" enabled="true">
+ <group name="" id="146" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="backgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="borderSides">
+ <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
+ <void property="bottom">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </void>
+ <void property="imageEdgeBackgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="imageEdgeBorder">
+ <boolean>true</boolean>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+ </object>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>5</int>
+ <int>10</int>
+ <int>10</int>
+ <int>10</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans />
+ <externalParametrizationPropertyNames>
+ <propertyName>imageAnchor</propertyName>
+ <propertyName>imageEdgeBackgroundColor</propertyName>
+ <propertyName>imageFile</propertyName>
+ </externalParametrizationPropertyNames>
+ </group>
+ </styleOverride>
+ <styleOverride name="Jalview" enabled="true">
+ <formComponent name="Watermark" id="352" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" enabled="true" commentSet="false" comment="" insetTop="0" insetLeft="5" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="true" externalParametrizationName="Jalview" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.SeparatorComponent">
+ <void property="enabledTitleText">
+ <boolean>false</boolean>
+ </void>
+ <void property="labelText">
+ <string>install4j</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames>
+ <propertyName>labelText</propertyName>
+ </externalParametrizationPropertyNames>
+ </formComponent>
+ </styleOverride>
+ </styleOverrides>
+ <customScript mode="1" file="">
+ <content />
+ </customScript>
+ <launcherIds />
+ <variables />
+ <startup>
+ <screen name="" id="1" customizedId="" beanClass="com.install4j.runtime.beans.screens.StartupScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.StartupScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="22" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.RequestPrivilegesAction" enabled="true" commentSet="false" comment="" actionElevationType="none" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.RequestPrivilegesAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ </actions>
+ <formComponents />
+ </screen>
+ </startup>
+ <screens>
+ <screen name="" id="2" customizedId="" beanClass="com.install4j.runtime.beans.screens.WelcomeScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.WelcomeScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides>
+ <styleOverride name="Customize banner image" enabled="true">
+ <group name="" id="145" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="backgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="borderSides">
+ <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
+ <void property="bottom">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </void>
+ <void property="imageEdgeBackgroundColor">
+ <object class="java.awt.Color">
+ <int>25</int>
+ <int>143</int>
+ <int>220</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="imageEdgeBorder">
+ <boolean>true</boolean>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+ </object>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>5</int>
+ <int>10</int>
+ <int>10</int>
+ <int>10</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans />
+ <externalParametrizationPropertyNames>
+ <propertyName>imageAnchor</propertyName>
+ <propertyName>imageEdgeBackgroundColor</propertyName>
+ <propertyName>imageFile</propertyName>
+ </externalParametrizationPropertyNames>
+ </group>
+ </styleOverride>
+ </styleOverrides>
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="7" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" enabled="true" commentSet="false" comment="" actionElevationType="inherit" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="true" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction">
+ <void property="excludedVariables">
+ <array class="java.lang.String" length="1">
+ <void index="0">
+ <string>sys.installationDir</string>
+ </void>
+ </array>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition>context.getBooleanVariable("sys.confirmedUpdateInstallation")</condition>
+ </action>
+ </actions>
+ <formComponents>
+ <formComponent name="" id="3" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${form:welcomeMessage}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript>!context.isConsole()</visibilityScript>
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="4" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent">
+ <void property="consoleScript">
+ <object class="com.install4j.api.beans.ScriptProperty">
+ <void property="value">
+ <string>String message = context.getMessage("ConsoleWelcomeLabel", context.getApplicationName());
+return console.askOkCancel(message, true);
+</string>
+ </void>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="5" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.UpdateAlertComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="true" externalParametrizationName="Update Alert" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.UpdateAlertComponent" />
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames>
+ <propertyName>updateCheck</propertyName>
+ </externalParametrizationPropertyNames>
+ </formComponent>
+ <formComponent name="" id="6" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="20" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${i18n:ClickNext}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="8" customizedId="" beanClass="com.install4j.runtime.beans.screens.InstallationDirectoryScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.InstallationDirectoryScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition>!context.getBooleanVariable("sys.confirmedUpdateInstallation")</condition>
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="11" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" enabled="true" commentSet="false" comment="" actionElevationType="inherit" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="true" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction">
+ <void property="excludedVariables">
+ <array class="java.lang.String" length="1">
+ <void index="0">
+ <string>sys.installationDir</string>
+ </void>
+ </array>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition>context.getVariable("sys.responseFile") == null</condition>
+ </action>
+ </actions>
+ <formComponents>
+ <formComponent name="" id="9" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="25" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${i18n:SelectDirLabel(${compiler:sys.fullName})}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="10" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.InstallationDirectoryChooserComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="true" externalParametrizationName="Installation Directory Chooser" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.InstallationDirectoryChooserComponent">
+ <void property="requestFocus">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames>
+ <propertyName>suggestAppDir</propertyName>
+ <propertyName>validateApplicationId</propertyName>
+ <propertyName>existingDirWarning</propertyName>
+ <propertyName>checkWritable</propertyName>
+ <propertyName>manualEntryAllowed</propertyName>
+ <propertyName>checkFreeSpace</propertyName>
+ <propertyName>showRequiredDiskSpace</propertyName>
+ <propertyName>showFreeDiskSpace</propertyName>
+ <propertyName>allowSpacesOnUnix</propertyName>
+ <propertyName>validationScript</propertyName>
+ <propertyName>standardValidation</propertyName>
+ </externalParametrizationPropertyNames>
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="12" customizedId="" beanClass="com.install4j.runtime.beans.screens.ComponentsScreen" enabled="false" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.ComponentsScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions />
+ <formComponents>
+ <formComponent name="" id="13" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${i18n:SelectComponentsLabel2}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript>!context.isConsole()</visibilityScript>
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="14" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.ComponentSelectorComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="true" externalParametrizationName="Installation Components" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.ComponentSelectorComponent">
+ <void property="fillVertical">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames>
+ <propertyName>selectionChangedScript</propertyName>
+ </externalParametrizationPropertyNames>
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="15" customizedId="" beanClass="com.install4j.runtime.beans.screens.InstallationScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="true" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.InstallationScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="17" customizedId="" beanClass="com.install4j.runtime.beans.actions.InstallFilesAction" enabled="true" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="2" errorMessage="${i18n:FileCorrupted}">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.InstallFilesAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="18" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.CreateProgramGroupAction" enabled="true" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.CreateProgramGroupAction">
+ <void property="uninstallerMenuName">
+ <string>${i18n:UninstallerMenuEntry(${compiler:sys.fullName})}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition>!context.getBooleanVariable("sys.programGroupDisabled")</condition>
+ </action>
+ <action name="" id="19" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.RegisterAddRemoveAction" enabled="true" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.RegisterAddRemoveAction">
+ <void property="itemName">
+ <string>${compiler:sys.fullName} ${compiler:sys.version}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="124" customizedId="" beanClass="com.install4j.runtime.beans.actions.control.SetVariableAction" enabled="false" commentSet="false" comment="" actionElevationType="inherit" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.control.SetVariableAction">
+ <void property="script">
+ <object class="com.install4j.api.beans.ScriptProperty">
+ <void property="value">
+ <string />
+ </void>
+ </object>
+ </void>
+ <void property="variableName">
+ <string />
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition>true</condition>
+ </action>
+ <action name="" id="134" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.AddVmOptionsAction" enabled="false" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.AddVmOptionsAction">
+ <void property="launcherId">
+ <string>121</string>
+ </void>
+ <void property="vmOptions">
+ <array class="java.lang.String" length="0" />
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ </actions>
+ <formComponents>
+ <formComponent name="" id="16" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.ProgressComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.ProgressComponent">
+ <void property="initialStatusMessage">
+ <string>${i18n:WizardPreparing}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="20" customizedId="" beanClass="com.install4j.runtime.beans.screens.FinishedScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="true" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.FinishedScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="573" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.CreateDesktopLinkAction" enabled="false" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.CreateDesktopLinkAction">
+ <void property="name">
+ <string>${compiler:sys.fullName}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition>context.getBooleanVariable("createDesktopLinkAction")</condition>
+ </action>
+ <action name="" id="575" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.AddStartupItemAction" enabled="false" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.AddStartupItemAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="576" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.AddToDockAction" enabled="false" commentSet="false" comment="" actionElevationType="none" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.AddToDockAction" />
+ </java>
+ </serializedBean>
+ <condition>context.getBooleanVariable("addToDockAction")</condition>
+ </action>
+ <action name="" id="578" customizedId="" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" enabled="true" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction">
+ <void property="description">
+ <string>Jalview Project File</string>
+ </void>
+ <void property="extension">
+ <string>jvp</string>
+ </void>
+ <void property="launcherId">
+ <string>121</string>
+ </void>
+ <void property="macIconFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/file.png</string>
+ </object>
+ </void>
+ <void property="macRole">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.actions.desktop.MacAssociationRole</class>
+ <string>EDITOR</string>
+ </object>
+ </void>
+ <void property="windowsIconFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/file.png</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ </actions>
+ <formComponents>
+ <formComponent name="" id="21" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="10" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${form:finishedMessage}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Add a desktop link" id="574" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.CheckboxComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.CheckboxComponent">
+ <void property="checkboxText">
+ <string>${i18n:CreateDesktopIcon}</string>
+ </void>
+ <void property="initiallySelected">
+ <boolean>true</boolean>
+ </void>
+ <void property="variableName">
+ <string>createDesktopLinkAction</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Add an executable to the dock" id="577" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.CheckboxComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.CheckboxComponent">
+ <void property="checkboxText">
+ <string>${i18n:AddToDock}</string>
+ </void>
+ <void property="initiallySelected">
+ <boolean>true</boolean>
+ </void>
+ <void property="variableName">
+ <string>addToDockAction</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript>Util.isMacOS()</visibilityScript>
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ </screens>
+ </application>
+ <application name="" id="uninstaller" customizedId="" beanClass="com.install4j.runtime.beans.applications.UninstallerApplication" enabled="true" commentSet="false" comment="" actionElevationType="none" styleId="41" fileset="" customIcnsFile="" customIcoFile="" macEntitlementsFile="" automaticLauncherIntegration="false" launchMode="startupFirstWindow" launchInNewProcess="true" launchSchedule="updateSchedule" allLaunchers="true">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.applications.UninstallerApplication">
+ <void property="customMacosExecutableName">
+ <string>${i18n:UninstallerMenuEntry(${compiler:sys.fullName})}</string>
+ </void>
+ <void property="useCustomMacosExecutableName">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <styleOverrides>
+ <styleOverride name="Customize banner image" enabled="true">
+ <group name="" id="147" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="backgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="borderSides">
+ <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
+ <void property="bottom">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </void>
+ <void property="imageEdgeBackgroundColor">
+ <object class="java.awt.Color">
+ <int>192</int>
+ <int>192</int>
+ <int>192</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="imageEdgeBorder">
+ <boolean>true</boolean>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+ </object>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>5</int>
+ <int>10</int>
+ <int>10</int>
+ <int>10</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans />
+ <externalParametrizationPropertyNames>
+ <propertyName>imageAnchor</propertyName>
+ <propertyName>imageEdgeBackgroundColor</propertyName>
+ <propertyName>imageFile</propertyName>
+ </externalParametrizationPropertyNames>
+ </group>
+ </styleOverride>
+ </styleOverrides>
+ <customScript mode="1" file="">
+ <content />
+ </customScript>
+ <launcherIds />
+ <variables />
+ <startup>
+ <screen name="" id="23" customizedId="" beanClass="com.install4j.runtime.beans.screens.StartupScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.StartupScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="33" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" enabled="true" commentSet="false" comment="" actionElevationType="inherit" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.LoadResponseFileAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="34" customizedId="" beanClass="com.install4j.runtime.beans.actions.misc.RequireInstallerPrivilegesAction" enabled="true" commentSet="false" comment="" actionElevationType="none" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.misc.RequireInstallerPrivilegesAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ </actions>
+ <formComponents />
+ </screen>
+ </startup>
+ <screens>
+ <screen name="" id="24" customizedId="" beanClass="com.install4j.runtime.beans.screens.UninstallWelcomeScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="41" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.UninstallWelcomeScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions />
+ <formComponents>
+ <formComponent name="" id="25" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="10" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${form:welcomeMessage}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript>!context.isConsole()</visibilityScript>
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="26" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.ConsoleHandlerFormComponent">
+ <void property="consoleScript">
+ <object class="com.install4j.api.beans.ScriptProperty">
+ <void property="value">
+ <string>String message = context.getMessage("ConfirmUninstall", context.getApplicationName());
+return console.askYesNo(message, true);
+</string>
+ </void>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="27" customizedId="" beanClass="com.install4j.runtime.beans.screens.UninstallationScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="false" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.UninstallationScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions>
+ <action name="" id="659" customizedId="" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" enabled="true" commentSet="false" comment="" actionElevationType="none" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.control.SetProgressAction">
+ <void property="progressChangeType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.actions.control.ProgressChangeType</class>
+ <string>SET_INDETERMINATE</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="29" customizedId="" beanClass="com.install4j.runtime.beans.actions.UninstallFilesAction" enabled="true" commentSet="false" comment="" actionElevationType="elevated" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.UninstallFilesAction" />
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ <action name="" id="660" customizedId="" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" enabled="true" commentSet="false" comment="" actionElevationType="none" rollbackBarrier="false" rollbackBarrierExitCode="0" multiExec="false" failureStrategy="1" errorMessage="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.actions.control.SetProgressAction">
+ <void property="percentValue">
+ <int>100</int>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <condition />
+ </action>
+ </actions>
+ <formComponents>
+ <formComponent name="" id="28" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.ProgressComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.ProgressComponent">
+ <void property="initialStatusMessage">
+ <string>${i18n:UninstallerPreparing}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ <screen name="" id="32" customizedId="" beanClass="com.install4j.runtime.beans.screens.UninstallFailureScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="true" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.UninstallFailureScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions />
+ <formComponents />
+ </screen>
+ <screen name="" id="30" customizedId="" beanClass="com.install4j.runtime.beans.screens.UninstallSuccessScreen" enabled="true" commentSet="false" comment="" actionElevationType="inherit" styleId="41" rollbackBarrier="false" rollbackBarrierExitCode="0" backButton="2" finishScreen="true" wizardIndexChangeType="unchanged" wizardIndexKey="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.screens.UninstallSuccessScreen" />
+ </java>
+ </serializedBean>
+ <styleOverrides />
+ <condition />
+ <validation />
+ <preActivation />
+ <postActivation />
+ <actions />
+ <formComponents>
+ <formComponent name="" id="31" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="10" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.MultilineLabelComponent">
+ <void property="labelText">
+ <string>${form:successMessage}</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </screen>
+ </screens>
+ </application>
+ </applications>
+ <styles defaultStyleId="35">
+ <style name="Standard" id="35" customizedId="" beanClass="com.install4j.runtime.beans.styles.FormStyle" enabled="true" commentSet="false" comment="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.FormStyle" />
+ </java>
+ </serializedBean>
+ <formComponents>
+ <formComponent name="Header" id="36" customizedId="" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" enabled="true" commentSet="false" comment="" insetTop="0" insetLeft="" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.NestedStyleComponent">
+ <void property="styleId">
+ <string>48</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <group name="Main" id="37" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="imageEdgeAxisType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.formcomponents.AxisType</class>
+ <string>HORIZONTAL</string>
+ </object>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>../../resources/images/jalview_logo_background_fade-640x480.png</string>
+ </object>
+ </void>
+ <void property="imageOverlap">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans>
+ <formComponent name="" id="38" customizedId="" beanClass="com.install4j.runtime.beans.styles.ContentComponent" enabled="true" commentSet="false" comment="" insetTop="10" insetLeft="20" insetBottom="10" insetRight="20" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.ContentComponent" />
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Watermark" id="39" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" enabled="true" commentSet="false" comment="" insetTop="0" insetLeft="5" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="true" externalParametrizationName="Jalview" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.SeparatorComponent">
+ <void property="enabledTitleText">
+ <boolean>false</boolean>
+ </void>
+ <void property="labelText">
+ <string>install4j</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames>
+ <propertyName>labelText</propertyName>
+ </externalParametrizationPropertyNames>
+ </formComponent>
+ <formComponent name="Footer" id="40" customizedId="" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" enabled="true" commentSet="false" comment="" insetTop="0" insetLeft="" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.NestedStyleComponent">
+ <void property="styleId">
+ <string>52</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </beans>
+ <externalParametrizationPropertyNames />
+ </group>
+ </formComponents>
+ </style>
+ <style name="Banner" id="41" customizedId="" beanClass="com.install4j.runtime.beans.styles.FormStyle" enabled="true" commentSet="false" comment="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.FormStyle" />
+ </java>
+ </serializedBean>
+ <formComponents>
+ <group name="" id="42" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="true" externalParametrizationName="Customize banner image" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="backgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="borderSides">
+ <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
+ <void property="bottom">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </void>
+ <void property="imageEdgeBackgroundColor">
+ <object class="java.awt.Color">
+ <int>25</int>
+ <int>143</int>
+ <int>220</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="imageEdgeBorder">
+ <boolean>true</boolean>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>${compiler:sys.install4jHome}/resource/styles/wizard.png</string>
+ </object>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>5</int>
+ <int>10</int>
+ <int>10</int>
+ <int>10</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans>
+ <formComponent name="" id="43" customizedId="" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent" enabled="true" commentSet="false" comment="" insetTop="0" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.ScreenTitleComponent">
+ <void property="labelFontSizePercent">
+ <int>130</int>
+ </void>
+ <void property="labelFontStyle">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.formcomponents.FontStyle</class>
+ <string>BOLD</string>
+ </object>
+ </void>
+ <void property="labelFontType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.formcomponents.FontType</class>
+ <string>DERIVED</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="44" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.SeparatorComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.SeparatorComponent" />
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="" id="45" customizedId="" beanClass="com.install4j.runtime.beans.styles.ContentComponent" enabled="true" commentSet="false" comment="" insetTop="10" insetLeft="" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.ContentComponent" />
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </beans>
+ <externalParametrizationPropertyNames>
+ <propertyName>imageAnchor</propertyName>
+ <propertyName>imageEdgeBackgroundColor</propertyName>
+ <propertyName>imageFile</propertyName>
+ </externalParametrizationPropertyNames>
+ </group>
+ <formComponent name="" id="46" customizedId="" beanClass="com.install4j.runtime.beans.styles.NestedStyleComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="0" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.NestedStyleComponent">
+ <void property="styleId">
+ <string>52</string>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </formComponents>
+ </style>
+ <group name="Style components" id="47" customizedId="" beanClass="com.install4j.runtime.beans.groups.StyleGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.StyleGroup" />
+ </java>
+ </serializedBean>
+ <beans>
+ <style name="Standard header" id="48" customizedId="" beanClass="com.install4j.runtime.beans.styles.FormStyle" enabled="true" commentSet="false" comment="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.FormStyle">
+ <void property="fillVertical">
+ <boolean>false</boolean>
+ </void>
+ <void property="standalone">
+ <boolean>false</boolean>
+ </void>
+ <void property="verticalAnchor">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.beans.Anchor</class>
+ <string>NORTH</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <formComponents>
+ <group name="" id="49" customizedId="" beanClass="com.install4j.runtime.beans.groups.VerticalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="true" externalParametrizationName="Customize title bar" externalParametrizationMode="include">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.VerticalFormComponentGroup">
+ <void property="backgroundColor">
+ <object class="java.awt.Color">
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ <int>255</int>
+ </object>
+ </void>
+ <void property="borderSides">
+ <object class="com.install4j.runtime.beans.formcomponents.BorderSides">
+ <void property="bottom">
+ <boolean>true</boolean>
+ </void>
+ </object>
+ </void>
+ <void property="imageAnchor">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.beans.Anchor</class>
+ <string>NORTHEAST</string>
+ </object>
+ </void>
+ <void property="imageEdgeBorderWidth">
+ <int>2</int>
+ </void>
+ <void property="imageFile">
+ <object class="com.install4j.api.beans.ExternalFile">
+ <string>icon:${installer:sys.installerApplicationMode}_header.png</string>
+ </object>
+ </void>
+ <void property="imageInsets">
+ <object class="java.awt.Insets">
+ <int>0</int>
+ <int>5</int>
+ <int>1</int>
+ <int>1</int>
+ </object>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>0</int>
+ <int>20</int>
+ <int>0</int>
+ <int>10</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans>
+ <formComponent name="Title" id="50" customizedId="" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.ScreenTitleComponent">
+ <void property="labelFontStyle">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.formcomponents.FontStyle</class>
+ <string>BOLD</string>
+ </object>
+ </void>
+ <void property="labelFontType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.formcomponents.FontType</class>
+ <string>DERIVED</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Subtitle" id="51" customizedId="" beanClass="com.install4j.runtime.beans.styles.ScreenTitleComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="8" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.ScreenTitleComponent">
+ <void property="titleType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.runtime.beans.styles.TitleType</class>
+ <string>SUB_TITLE</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </beans>
+ <externalParametrizationPropertyNames>
+ <propertyName>backgroundColor</propertyName>
+ <propertyName>foregroundColor</propertyName>
+ <propertyName>imageAnchor</propertyName>
+ <propertyName>imageFile</propertyName>
+ <propertyName>imageOverlap</propertyName>
+ </externalParametrizationPropertyNames>
+ </group>
+ </formComponents>
+ </style>
+ <style name="Standard footer" id="52" customizedId="" beanClass="com.install4j.runtime.beans.styles.FormStyle" enabled="true" commentSet="false" comment="">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.FormStyle">
+ <void property="fillVertical">
+ <boolean>false</boolean>
+ </void>
+ <void property="standalone">
+ <boolean>false</boolean>
+ </void>
+ <void property="verticalAnchor">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.beans.Anchor</class>
+ <string>SOUTH</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <formComponents>
+ <group name="" id="53" customizedId="" beanClass="com.install4j.runtime.beans.groups.HorizontalFormComponentGroup" enabled="true" commentSet="false" comment="" actionElevationType="inherit" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.groups.HorizontalFormComponentGroup">
+ <void property="alignFirstLabel">
+ <boolean>false</boolean>
+ </void>
+ <void property="insets">
+ <object class="java.awt.Insets">
+ <int>3</int>
+ <int>5</int>
+ <int>8</int>
+ <int>5</int>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <beans>
+ <formComponent name="" id="54" customizedId="" beanClass="com.install4j.runtime.beans.formcomponents.SpringComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.formcomponents.SpringComponent" />
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Back button" id="55" customizedId="" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.StandardControlButtonComponent">
+ <void property="buttonText">
+ <string>< ${i18n:ButtonBack}</string>
+ </void>
+ <void property="controlButtonType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.context.ControlButtonType</class>
+ <string>PREVIOUS</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Next button" id="56" customizedId="" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.StandardControlButtonComponent">
+ <void property="buttonText">
+ <string>${i18n:ButtonNext} ></string>
+ </void>
+ <void property="controlButtonType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.context.ControlButtonType</class>
+ <string>NEXT</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ <formComponent name="Cancel button" id="57" customizedId="" beanClass="com.install4j.runtime.beans.styles.StandardControlButtonComponent" enabled="true" commentSet="false" comment="" insetTop="" insetLeft="5" insetBottom="" insetRight="" resetInitOnPrevious="false" useExternalParametrization="false" externalParametrizationName="" externalParametrizationMode="all">
+ <serializedBean>
+ <java class="java.beans.XMLDecoder">
+ <object class="com.install4j.runtime.beans.styles.StandardControlButtonComponent">
+ <void property="buttonText">
+ <string>${i18n:ButtonCancel}</string>
+ </void>
+ <void property="controlButtonType">
+ <object class="java.lang.Enum" method="valueOf">
+ <class>com.install4j.api.context.ControlButtonType</class>
+ <string>CANCEL</string>
+ </object>
+ </void>
+ </object>
+ </java>
+ </serializedBean>
+ <initScript />
+ <visibilityScript />
+ <externalParametrizationPropertyNames />
+ </formComponent>
+ </beans>
+ <externalParametrizationPropertyNames />
+ </group>
+ </formComponents>
+ </style>
+ </beans>
+ </group>
+ </styles>
+ </installerGui>
+ <mediaSets>
+ <windows name="Windows" id="130" customizedId="" mediaFileName="" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="64" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="false" includedJRE="windows-amd64-1.8.0_202" manualJREEntry="false" bundleType="1" jreURL="" jreShared="false" directDownload="false" installOnlyIfNecessary="false" customInstallBaseDir="" contentFilesType="1" verifyIntegrity="true">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="737" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_734" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ </windows>
+ <macos name="macOS Single Bundle" id="131" customizedId="" mediaFileName="${compiler:sys.shortName}_${compiler:sys.platform}-installer_${compiler:sys.version}" installDir="${compiler:sys.fullName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="false" includedJRE="macosx-amd64-1.8.0_202_unpacked" manualJREEntry="false" bundleType="1" jreURL="" jreShared="false" directDownload="false" installOnlyIfNecessary="false" requiredVmIdPrefix="" customInstallBaseDir="" contentFilesType="1" installerName="${i18n:InstallerName(${compiler:sys.fullName})}" volumeName="${compiler:sys.shortName}" compressDmg="true" launcherId="121">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_734" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <topLevelFiles />
+ </macos>
+ <unixInstaller name="Unix Installer" id="132" customizedId="" mediaFileName="" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="false" includedJRE="" manualJREEntry="false" bundleType="1" jreURL="" jreShared="false" directDownload="false" installOnlyIfNecessary="false" customInstallBaseDir="" contentFilesType="1">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="737" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_734" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <installerScript mode="1" file="">
+ <content />
+ </installerScript>
+ </unixInstaller>
+ <macosArchive name="macOS Single Bundle Archive" id="152" customizedId="" mediaFileName="${compiler:sys.shortName}_${compiler:sys.platform}-app_${compiler:sys.version}" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="true" includedJRE="macosx-amd64-1.8.0_202_unpacked" manualJREEntry="false" archiveType="dmg" volumeName="${compiler:sys.shortName}" launcherId="121">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_734" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <topLevelFiles>
+ <symlink name="" "" target="/Applications" />
+ <file name=".background/jalview_dmg_background.png" file="../../resources/install4j/jalview_dmg_background.png" />
+ <file name=".DS_Store" file="../../resources/install4j/DS_Store" />
+ </topLevelFiles>
+ </macosArchive>
+ <linuxDeb name="Linux Deb Archive" id="153" customizedId="" mediaFileName="" installDir="/opt/${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="true" includedJRE="" manualJREEntry="false" overwriteNeverAsConfigFiles="false" dependencies="" bzip="true" description="Jalview Desktop" maintainerEmail="help@jalview.org" architectureSet="false" architecture="">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="121" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <preInstallScript mode="1" file="">
+ <content />
+ </preInstallScript>
+ <postInstallScript mode="1" file="">
+ <content />
+ </postInstallScript>
+ <preUninstallScript mode="1" file="">
+ <content />
+ </preUninstallScript>
+ <postUninstallScript mode="1" file="">
+ <content />
+ </postUninstallScript>
+ </linuxDeb>
+ <linuxRPM name="Linux RPM" id="570" customizedId="" mediaFileName="" installDir="/opt/${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="true" includedJRE="" manualJREEntry="false" overwriteNeverAsConfigFiles="false" dependencies="" os="linux" arch="i386">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="121" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <preInstallScript mode="1" file="">
+ <content />
+ </preInstallScript>
+ <postInstallScript mode="1" file="">
+ <content />
+ </postInstallScript>
+ <preUninstallScript mode="1" file="">
+ <content />
+ </preUninstallScript>
+ <postUninstallScript mode="1" file="">
+ <content />
+ </postUninstallScript>
+ </linuxRPM>
+ <macosArchive name="Offline macOS Single Bundle Archive" id="739" customizedId="" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}-app_${compiler:sys.version}" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="true" includedJRE="macosx-amd64-1.8.0_202_unpacked" manualJREEntry="false" archiveType="dmg" volumeName="${compiler:sys.shortName} Offline Installer" launcherId="737">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <topLevelFiles>
+ <symlink name="" "" target="/Applications" />
+ <file name=".background/jalview_dmg_background.png" file="../../resources/install4j/jalview_dmg_background.png" />
+ <file name=".DS_Store" file="../../resources/install4j/DS_Store" />
+ </topLevelFiles>
+ </macosArchive>
+ <unixInstaller name="Offline Unix Installer" id="741" customizedId="" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}_${compiler:sys.version}" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="all" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="false" includedJRE="" manualJREEntry="false" bundleType="1" jreURL="" jreShared="false" directDownload="false" installOnlyIfNecessary="false" customInstallBaseDir="" contentFilesType="1">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="121" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ <installerScript mode="1" file="">
+ <content />
+ </installerScript>
+ </unixInstaller>
+ <windows name="Offline Windows" id="743" customizedId="" mediaFileName="${compiler:sys.shortName}-OFFLINE_${compiler:sys.platform}_${compiler:sys.version}" installDir="${compiler:sys.shortName}" overridePrincipalLanguage="false" jreBitType="64" runPostProcessor="false" postProcessor="" failOnPostProcessorError="false" useLegacyMediaFileIds="false" legacyMediaFileIds="" downloadURL="" includeAllDownloadableComponents="false" includedJRE="windows-amd64-1.8.0_202" manualJREEntry="false" bundleType="1" jreURL="" jreShared="false" directDownload="false" installOnlyIfNecessary="false" customInstallBaseDir="" contentFilesType="1" verifyIntegrity="true">
+ <excludedComponents />
+ <includedDownloadableComponents />
+ <excludedLaunchers>
+ <launcher id="121" />
+ </excludedLaunchers>
+ <excludedBeans />
+ <overriddenPrincipalLanguage id="en" customLocalizationFile="" />
+ <exclude>
+ <entry location=".i4j_fileset_" fileType="regular" />
+ </exclude>
+ <variables />
+ <autoUpdate useMinUpdatableVersion="false" minUpdatableVersion="" useMaxUpdatableVersion="false" maxUpdatableVersion="">
+ <commentFiles />
+ <customAttributes />
+ </autoUpdate>
+ </windows>
+ </mediaSets>
+ <buildIds buildAll="false">
+ <mediaSet refId="130" />
+ <mediaSet refId="152" />
+ <mediaSet refId="739" />
+ <mediaSet refId="743" />
+ </buildIds>
+ <buildOptions verbose="true" faster="true" disableSigning="true" disableJreBundling="false" debug="false" />
+</install4j>