JAL-3420 multiple file extensions for the same mime-type now work in unix installer
authorBen Soares <bsoares@dundee.ac.uk>
Sat, 23 Nov 2019 10:17:20 +0000 (10:17 +0000)
committerBen Soares <bsoares@dundee.ac.uk>
Sat, 23 Nov 2019 10:17:20 +0000 (10:17 +0000)
utils/install4j/auto_file_associations-i4j8.pl
utils/install4j/file_associations_auto-install4j8.xml
utils/install4j/file_associations_template-install4j8.xml
utils/install4j/install4j8_template.install4j

index 71044fe..df04a6a 100755 (executable)
@@ -106,7 +106,7 @@ while(my $line = <IN>) {
       name => $name,
       extensions => \@extensions
     };
-    warn("Adding file association for $shortname\n");
+    warn("Adding file association for $shortname (".join(",",@extensions).")\n");
   }
 }
 close(IN);
@@ -126,9 +126,13 @@ for my $key (@ordered) {
 
   my $extensions = $a->{extensions};
   my @extensions = @$extensions;
-  for my $ext (@extensions) {
-    $num++;
-  }
+
+  # multiple extensions now all dealt with together since i4j 8.0.1
+  #for my $ext (@extensions) {
+  #  $num++;
+  #}
+  $num++
+
   #delete $all_associations{$shortname};
   #print "NUM: $num\n";
 }
@@ -178,40 +182,66 @@ for my $shortname (@ordered) {
   $i4jentry =~ s/\$\$MIMETYPE\$\$/$xmimetype/g;
   $i4jentry =~ s/\$\$ICONFILE\$\$/$xiconfile/g;
 
-  my $unixext;
-  for my $ext (sort @extensions) {
-    if (not defined($unixext)) {
-      $unixext = $ext;
-      next;
-    }
-    if (length($ext) < length($unixext)) {
-      $unixext = $ext;
-      next;
-    }
-  }
+# multiple extensions now all dealt with together since i4j 8.0.1
+#  my $unixext;
+#  for my $ext (sort @extensions) {
+#    if (not defined($unixext)) {
+#      $unixext = $ext;
+#      next;
+#    }
+#    if (length($ext) < length($unixext)) {
+#      $unixext = $ext;
+#      next;
+#    }
+#  }
+#  for my $ext (@extensions) {
+#    $i4jcount++;
+#    #print "COUNT: $i4jcount\n";
+#    my $progresspercent = int(($i4jcount/$num)*100);
+#    #print "PC: $progresspercent\n";
+#    $progresspercent = 100 if $progresspercent > 100;
+#    my $xext = xml_escape($ext);
+#    my $addunixextension = ($ext eq $unixext)?"true":"false";
+#
+#    my $i4jextentry = $i4jentry;
+#    $i4jextentry =~ s/\$\$ADDUNIXEXTENSION\$\$/$addunixextension/g;
+#    $i4jextentry =~ s/\$\$EXTENSION\$\$/$xext/g;
+#    $i4jextentry =~ s/\$\$PROGRESSPERCENT\$\$/$progresspercent/g;
+#    $i4jextentry =~ s/\$\$ID\$\$/$id/g;
+#    $id++;
+#    $i4jextentry =~ s/\$\$ID1\$\$/$id/g;
+#    $id++;
+#    $i4jextentry =~ s/\$\$ID2\$\$/$id/g;
+#    $id++;
+#
+#    print IA $i4jextentry;
+#  }
+
+  my $ext = join(",",sort(@extensions));
+  my $xdisplayext = xml_escape(join(", ", map(".$_",sort(@extensions))));
+  $i4jcount++;
+#print "COUNT: $i4jcount\n";
+  my $progresspercent = int(($i4jcount/$num)*100);
+#print "PC: $progresspercent\n";
+  $progresspercent = 100 if $progresspercent > 100;
+  my $xext = xml_escape($ext);
+  #my $addunixextension = ($ext eq $unixext)?"true":"false";
+  my $addunixextension = "true";
+
+  my $i4jextentry = $i4jentry;
+  $i4jextentry =~ s/\$\$ADDUNIXEXTENSION\$\$/$addunixextension/g;
+  $i4jextentry =~ s/\$\$EXTENSION\$\$/$xext/g;
+  $i4jextentry =~ s/\$\$DISPLAYEXTENSION\$\$/$xdisplayext/g;
+  $i4jextentry =~ s/\$\$PROGRESSPERCENT\$\$/$progresspercent/g;
+  $i4jextentry =~ s/\$\$ID\$\$/$id/g;
+  $id++;
+  $i4jextentry =~ s/\$\$ID1\$\$/$id/g;
+  $id++;
+  $i4jextentry =~ s/\$\$ID2\$\$/$id/g;
+  $id++;
+
+  print IA $i4jextentry;
 
-  for my $ext (@extensions) {
-    $i4jcount++;
-    #print "COUNT: $i4jcount\n";
-    my $progresspercent = int(($i4jcount/$num)*100);
-    #print "PC: $progresspercent\n";
-    $progresspercent = 100 if $progresspercent > 100;
-    my $xext = xml_escape($ext);
-    my $addunixextension = ($ext eq $unixext)?"true":"false";
-
-    my $i4jextentry = $i4jentry;
-    $i4jextentry =~ s/\$\$ADDUNIXEXTENSION\$\$/$addunixextension/g;
-    $i4jextentry =~ s/\$\$EXTENSION\$\$/$xext/g;
-    $i4jextentry =~ s/\$\$PROGRESSPERCENT\$\$/$progresspercent/g;
-    $i4jextentry =~ s/\$\$ID\$\$/$id/g;
-    $id++;
-    $i4jextentry =~ s/\$\$ID1\$\$/$id/g;
-    $id++;
-    $i4jextentry =~ s/\$\$ID2\$\$/$id/g;
-    $id++;
-
-    print IA $i4jextentry;
-  }
 
   delete $all_associations{$shortname};
 }
index 05c307f..d37b053 100644 (file)
@@ -1,3 +1,4 @@
+<!-- Jalview (.jvp) BEGIN -->
                   <action id="10000" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Jalview (.jvp)</property>
@@ -6,9 +7,10 @@
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
+
                   <action id="10001" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="3" />
+                      <property name="percentValue" type="int" value="4" />
                     </serializedBean>
                   </action>
 
@@ -39,7 +41,9 @@
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
+<!-- Jalview Launch (.jvl) BEGIN -->
                   <action id="10003" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Jalview Launch (.jvl)</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
+
                   <action id="10004" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="6" />
+                      <property name="percentValue" type="int" value="8" />
                     </serializedBean>
                   </action>
 
@@ -81,7 +86,9 @@
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
+<!-- AMSA (.amsa) BEGIN -->
                   <action id="10006" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">AMSA (.amsa)</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
+
                   <action id="10007" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="10" />
+                      <property name="percentValue" type="int" value="13" />
                     </serializedBean>
                   </action>
 
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
+<!-- Jalview Annotations (.annotations, .jvannotations) BEGIN -->
                   <action id="10009" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">Jalview Annotations (.annotations)</property>
+                      <property name="detailMessage" type="string">Jalview Annotations (.annotations, .jvannotations)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
+
                   <action id="10010" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="13" />
+                      <property name="percentValue" type="int" value="17" />
                     </serializedBean>
                   </action>
 
-                  <action id="10011" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .annotations file association">
+                  <action id="10011" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .annotations,jvannotations file association">
                     <serializedBean>
                       <property name="description" type="string">Jalview Annotations File</property>
-                      <property name="extension" type="string">annotations</property>
+                      <property name="extension" type="string">annotations,jvannotations</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
+<!-- BioJSON (.biojson) BEGIN -->
                   <action id="10012" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">Jalview Annotations (.jvannotations)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10013" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="16" />
-                    </serializedBean>
-                  </action>
-
-                  <action id="10014" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .jvannotations file association">
-                    <serializedBean>
-                      <property name="description" type="string">Jalview Annotations File</property>
-                      <property name="extension" type="string">jvannotations</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">application/x-jalview-annotations+text</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">application/x-jalview-annotations+text</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
-
-                  <action id="10015" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
                       <property name="detailMessage" type="string">BioJSON (.biojson)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10016" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10013" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="20" />
+                      <property name="percentValue" type="int" value="21" />
                     </serializedBean>
                   </action>
 
-                  <action id="10017" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .biojson file association">
+                  <action id="10014" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .biojson file association">
                     <serializedBean>
                       <property name="description" type="string">BioJSON File</property>
                       <property name="extension" type="string">biojson</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10018" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- BLC (.blc) BEGIN -->
+                  <action id="10015" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">BLC (.blc)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10019" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10016" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="23" />
+                      <property name="percentValue" type="int" value="26" />
                     </serializedBean>
                   </action>
 
-                  <action id="10020" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .blc file association">
+                  <action id="10017" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .blc file association">
                     <serializedBean>
                       <property name="description" type="string">BLC File</property>
                       <property name="extension" type="string">blc</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10021" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Clustal (.aln) BEGIN -->
+                  <action id="10018" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Clustal (.aln)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10022" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10019" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="26" />
+                      <property name="percentValue" type="int" value="30" />
                     </serializedBean>
                   </action>
 
-                  <action id="10023" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .aln file association">
+                  <action id="10020" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .aln file association">
                     <serializedBean>
                       <property name="description" type="string">Clustal File</property>
                       <property name="extension" type="string">aln</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10024" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Fasta (.fa, .fasta) BEGIN -->
+                  <action id="10021" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">Fasta (.fa)</property>
+                      <property name="detailMessage" type="string">Fasta (.fa, .fasta)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10025" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10022" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="30" />
+                      <property name="percentValue" type="int" value="34" />
                     </serializedBean>
                   </action>
 
-                  <action id="10026" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .fa file association">
+                  <action id="10023" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .fa,fasta file association">
                     <serializedBean>
                       <property name="description" type="string">Fasta File</property>
-                      <property name="extension" type="string">fa</property>
+                      <property name="extension" type="string">fa,fasta</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10027" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Jalview Features (.features, .jvfeatures) BEGIN -->
+                  <action id="10024" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">Fasta (.fasta)</property>
+                      <property name="detailMessage" type="string">Jalview Features (.features, .jvfeatures)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10028" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="33" />
-                    </serializedBean>
-                  </action>
 
-                  <action id="10029" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .fasta file association">
-                    <serializedBean>
-                      <property name="description" type="string">Fasta File</property>
-                      <property name="extension" type="string">fasta</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">application/x-fasta+txt</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">application/x-fasta+txt</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
-
-                  <action id="10030" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">Jalview Features (.features)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10031" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+                  <action id="10025" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="36" />
+                      <property name="percentValue" type="int" value="39" />
                     </serializedBean>
                   </action>
 
-                  <action id="10032" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .features file association">
+                  <action id="10026" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .features,jvfeatures file association">
                     <serializedBean>
                       <property name="description" type="string">Jalview Features File</property>
-                      <property name="extension" type="string">features</property>
+                      <property name="extension" type="string">features,jvfeatures</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10033" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">Jalview Features (.jvfeatures)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10034" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="40" />
-                    </serializedBean>
-                  </action>
-
-                  <action id="10035" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .jvfeatures file association">
-                    <serializedBean>
-                      <property name="description" type="string">Jalview Features File</property>
-                      <property name="extension" type="string">jvfeatures</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">application/x-jalview-features+text</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">application/x-jalview-features+text</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
-
-                  <action id="10036" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Generic Features Format v2 (.gff2) BEGIN -->
+                  <action id="10027" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Generic Features Format v2 (.gff2)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10037" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10028" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="43" />
                     </serializedBean>
                   </action>
 
-                  <action id="10038" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .gff2 file association">
+                  <action id="10029" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .gff2 file association">
                     <serializedBean>
                       <property name="description" type="string">Generic Features Format v2 File</property>
                       <property name="extension" type="string">gff2</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10039" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Generic Features Format v3 (.gff3) BEGIN -->
+                  <action id="10030" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Generic Features Format v3 (.gff3)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10040" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10031" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="46" />
+                      <property name="percentValue" type="int" value="47" />
                     </serializedBean>
                   </action>
 
-                  <action id="10041" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .gff3 file association">
+                  <action id="10032" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .gff3 file association">
                     <serializedBean>
                       <property name="description" type="string">Generic Features Format v3 File</property>
                       <property name="extension" type="string">gff3</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10042" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- JnetFile (.concise, .jnet) BEGIN -->
+                  <action id="10033" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">JnetFile (.concise)</property>
+                      <property name="detailMessage" type="string">JnetFile (.concise, .jnet)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10043" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="50" />
-                    </serializedBean>
-                  </action>
-
-                  <action id="10044" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .concise file association">
-                    <serializedBean>
-                      <property name="description" type="string">JnetFile File</property>
-                      <property name="extension" type="string">concise</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">application/x-jalview-jnet+text</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">application/x-jalview-jnet+text</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
 
-                  <action id="10045" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">JnetFile (.jnet)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10046" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+                  <action id="10034" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="53" />
+                      <property name="percentValue" type="int" value="52" />
                     </serializedBean>
                   </action>
 
-                  <action id="10047" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .jnet file association">
+                  <action id="10035" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .concise,jnet file association">
                     <serializedBean>
                       <property name="description" type="string">JnetFile File</property>
-                      <property name="extension" type="string">jnet</property>
+                      <property name="extension" type="string">concise,jnet</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10048" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- mmCIF (.cif) BEGIN -->
+                  <action id="10036" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">mmCIF (.cif)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10049" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10037" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="56" />
                     </serializedBean>
                   </action>
 
-                  <action id="10050" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .cif file association">
+                  <action id="10038" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .cif file association">
                     <serializedBean>
                       <property name="description" type="string">mmCIF File</property>
                       <property name="extension" type="string">cif</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10051" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- mmCIF (.mcif, .mmcif) BEGIN -->
+                  <action id="10039" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">mmCIF (.mcif)</property>
+                      <property name="detailMessage" type="string">mmCIF (.mcif, .mmcif)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10052" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10040" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="60" />
                     </serializedBean>
                   </action>
 
-                  <action id="10053" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .mcif file association">
+                  <action id="10041" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .mcif,mmcif file association">
                     <serializedBean>
                       <property name="description" type="string">mmCIF File</property>
-                      <property name="extension" type="string">mcif</property>
+                      <property name="extension" type="string">mcif,mmcif</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10054" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">mmCIF (.mmcif)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10055" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="63" />
-                    </serializedBean>
-                  </action>
-
-                  <action id="10056" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .mmcif file association">
-                    <serializedBean>
-                      <property name="description" type="string">mmCIF File</property>
-                      <property name="extension" type="string">mmcif</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">chemical/x-mcif</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">chemical/x-mcif</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
-
-                  <action id="10057" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- MSF (.msf) BEGIN -->
+                  <action id="10042" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">MSF (.msf)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10058" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10043" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="66" />
+                      <property name="percentValue" type="int" value="65" />
                     </serializedBean>
                   </action>
 
-                  <action id="10059" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .msf file association">
+                  <action id="10044" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .msf file association">
                     <serializedBean>
                       <property name="description" type="string">MSF File</property>
                       <property name="extension" type="string">msf</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10060" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- PDB (.ent, .pdb) BEGIN -->
+                  <action id="10045" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">PDB (.pdb)</property>
+                      <property name="detailMessage" type="string">PDB (.ent, .pdb)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10061" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="70" />
-                    </serializedBean>
-                  </action>
 
-                  <action id="10062" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pdb file association">
-                    <serializedBean>
-                      <property name="description" type="string">PDB File</property>
-                      <property name="extension" type="string">pdb</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">chemical/x-pdb</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">chemical/x-pdb</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
-
-                  <action id="10063" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">PDB (.ent)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10064" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+                  <action id="10046" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="73" />
+                      <property name="percentValue" type="int" value="69" />
                     </serializedBean>
                   </action>
 
-                  <action id="10065" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .ent file association">
+                  <action id="10047" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .ent,pdb file association">
                     <serializedBean>
                       <property name="description" type="string">PDB File</property>
-                      <property name="extension" type="string">ent</property>
+                      <property name="extension" type="string">ent,pdb</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10066" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- PFAM (.pfam) BEGIN -->
+                  <action id="10048" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">PFAM (.pfam)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10067" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10049" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="76" />
+                      <property name="percentValue" type="int" value="73" />
                     </serializedBean>
                   </action>
 
-                  <action id="10068" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pfam file association">
+                  <action id="10050" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pfam file association">
                     <serializedBean>
                       <property name="description" type="string">PFAM File</property>
                       <property name="extension" type="string">pfam</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10069" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- PHYLIP (.phy) BEGIN -->
+                  <action id="10051" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">PHYLIP (.phy)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10070" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10052" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="80" />
+                      <property name="percentValue" type="int" value="78" />
                     </serializedBean>
                   </action>
 
-                  <action id="10071" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .phy file association">
+                  <action id="10053" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .phy file association">
                     <serializedBean>
                       <property name="description" type="string">PHYLIP File</property>
                       <property name="extension" type="string">phy</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10072" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- PileUp (.pileup) BEGIN -->
+                  <action id="10054" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">PileUp (.pileup)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10073" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10055" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="83" />
+                      <property name="percentValue" type="int" value="82" />
                     </serializedBean>
                   </action>
 
-                  <action id="10074" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pileup file association">
+                  <action id="10056" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pileup file association">
                     <serializedBean>
                       <property name="description" type="string">PileUp File</property>
                       <property name="extension" type="string">pileup</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10075" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- PIR (.pir) BEGIN -->
+                  <action id="10057" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">PIR (.pir)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10076" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10058" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="86" />
                     </serializedBean>
                   </action>
 
-                  <action id="10077" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pir file association">
+                  <action id="10059" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .pir file association">
                     <serializedBean>
                       <property name="description" type="string">PIR File</property>
                       <property name="extension" type="string">pir</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10078" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- RNAML (.rnaml) BEGIN -->
+                  <action id="10060" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">RNAML (.rnaml)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10079" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10061" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="90" />
+                      <property name="percentValue" type="int" value="91" />
                     </serializedBean>
                   </action>
 
-                  <action id="10080" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .rnaml file association">
+                  <action id="10062" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .rnaml file association">
                     <serializedBean>
                       <property name="description" type="string">RNAML File</property>
                       <property name="extension" type="string">rnaml</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10081" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Substitution Matrix (.mat) BEGIN -->
+                  <action id="10063" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="detailMessage" type="string">Substitution Matrix (.mat)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10082" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+
+                  <action id="10064" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="percentValue" type="int" value="93" />
+                      <property name="percentValue" type="int" value="95" />
                     </serializedBean>
                   </action>
 
-                  <action id="10083" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .mat file association">
+                  <action id="10065" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .mat file association">
                     <serializedBean>
                       <property name="description" type="string">Substitution Matrix File</property>
                       <property name="extension" type="string">mat</property>
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
-                  <action id="10084" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
+<!-- Stockholm (.stk, .sto) BEGIN -->
+                  <action id="10066" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">Stockholm (.sto)</property>
+                      <property name="detailMessage" type="string">Stockholm (.stk, .sto)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
-                  <action id="10085" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="percentValue" type="int" value="96" />
-                    </serializedBean>
-                  </action>
-
-                  <action id="10086" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .sto file association">
-                    <serializedBean>
-                      <property name="description" type="string">Stockholm File</property>
-                      <property name="extension" type="string">sto</property>
-                      <property name="launcherId" type="string">737</property>
-                      <property name="macIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.icns</string>
-                        </object>
-                      </property>
-                      <!--<property name="macMimeType" type="string">application/x-stockholm+txt</property>-->
-                      <property name="macRole" type="enum" class="com.install4j.runtime.beans.actions.desktop.MacAssociationRole" value="EDITOR" />
-                      <property name="restartFinder" type="boolean" value="true" />
-                      <property name="unix" type="boolean" value="false" />
-                      <property name="unixIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.png</string>
-                        </object>
-                      </property>
-                      <property name="unixMimeType" type="string">application/x-stockholm+txt</property>
-                      <property name="windowsIconFile">
-                        <object class="com.install4j.api.beans.ExternalFile">
-                          <string>Jalview-File.ico</string>
-                        </object>
-                      </property>
-                    </serializedBean>
-                  </action>
 
-                  <action id="10087" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
-                    <serializedBean>
-                      <property name="detailMessage" type="string">Stockholm (.stk)</property>
-                      <property name="statusMessage" type="string">Creating file associations...</property>
-                      <property name="useDetail" type="boolean" value="true" />
-                      <property name="useStatus" type="boolean" value="true" />
-                    </serializedBean>
-                  </action>
-                  <action id="10088" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
+                  <action id="10067" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="100" />
                     </serializedBean>
                   </action>
 
-                  <action id="10089" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .stk file association">
+                  <action id="10068" beanClass="com.install4j.runtime.beans.actions.desktop.CreateFileAssociationAction" actionElevationType="elevated" rollbackBarrierExitCode="0" errorMessage="Could not make .stk,sto file association">
                     <serializedBean>
                       <property name="description" type="string">Stockholm File</property>
-                      <property name="extension" type="string">stk</property>
+                      <property name="extension" type="string">stk,sto</property>
                       <property name="launcherId" type="string">737</property>
                       <property name="macIconFile">
                         <object class="com.install4j.api.beans.ExternalFile">
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
index cb9ebf8..bd1a4e1 100644 (file)
@@ -1,11 +1,13 @@
+<!-- $$NAME$$ ($$DISPLAYEXTENSION$$) BEGIN -->
                   <action id="$$ID$$" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
-                      <property name="detailMessage" type="string">$$NAME$$ (.$$EXTENSION$$)</property>
+                      <property name="detailMessage" type="string">$$NAME$$ ($$DISPLAYEXTENSION$$)</property>
                       <property name="statusMessage" type="string">Creating file associations...</property>
                       <property name="useDetail" type="boolean" value="true" />
                       <property name="useStatus" type="boolean" value="true" />
                     </serializedBean>
                   </action>
+
                   <action id="$$ID1$$" beanClass="com.install4j.runtime.beans.actions.control.SetProgressAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>
                       <property name="percentValue" type="int" value="$$PROGRESSPERCENT$$" />
@@ -39,4 +41,5 @@
                       </property>
                     </serializedBean>
                   </action>
+<!-- END -->
 
index 649d1f5..7860656 100644 (file)
@@ -405,7 +405,7 @@ return console.askOkCancel(message, true);
                   <property name="vmOptions" type="array" elementType="string" length="0" />
                 </serializedBean>
               </action>
-              <group id="2251" beanClass="com.install4j.runtime.beans.groups.ActionGroup">
+              <group name="File Associations" id="2251" beanClass="com.install4j.runtime.beans.groups.ActionGroup">
                 <beans>
                   <action id="2253" beanClass="com.install4j.runtime.beans.actions.control.SetMessageAction" actionElevationType="none" rollbackBarrierExitCode="0">
                     <serializedBean>