import java.io.File;
import java.io.IOException;
+import java.util.AbstractMap;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.Locale;
import java.util.Map;
+import java.util.Map.Entry;
import jalview.analysis.AlignmentUtils;
import jalview.api.AlignmentViewPanel;
import jalview.gui.StructureViewer;
import jalview.io.AppletFormatAdapter;
import jalview.io.DataSourceType;
+import jalview.io.FileFormat;
import jalview.io.FileFormatException;
import jalview.io.FileFormatI;
import jalview.io.FileLoader;
boolean first = true;
boolean progressBarSet = false;
AlignFrame af;
- for (ArgValue av : avm.getArgValueList(Arg.OPEN))
+ List<Entry<Arg, ArgValue>> openAvList = new ArrayList<>();
+ avm.getArgValueList(Arg.OPEN).stream()
+ .forEachOrdered(av -> openAvList.add(
+ new AbstractMap.SimpleEntry<Arg, ArgValue>(Arg.OPEN,
+ av)));
+ avm.getArgValueList(Arg.OPENNEW).stream()
+ .forEachOrdered(av -> openAvList
+ .add(new AbstractMap.SimpleEntry<Arg, ArgValue>(
+ Arg.OPENNEW, av)));
+ for (Entry<Arg, ArgValue> aav : openAvList)
{
+ Arg a = aav.getKey();
+ ArgValue av = aav.getValue();
String openFile = av.getValue();
if (openFile == null)
continue;
}
af = afMap.get(id);
- if (af == null)
+ if (af == null || "true".equals(av.getSubVal("new"))
+ || a == Arg.OPENNEW || format == FileFormat.Jalview)
{
/*
* this approach isn't working yet