X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;ds=inline;f=src%2Fjalview%2Fgui%2FStructureChooser.java;fp=src%2Fjalview%2Fgui%2FStructureChooser.java;h=b32e43517e3d709bc58163b943c4f42fac81271f;hb=89350c76ad3884aa1394952979998ea58902063c;hp=5ea68fb5e2f825d838b7dc0233fc008eb08ca0ba;hpb=fa9da54fb97cb2eacb1af7859024d90166bddb8f;p=jalview.git diff --git a/src/jalview/gui/StructureChooser.java b/src/jalview/gui/StructureChooser.java index 5ea68fb..b32e435 100644 --- a/src/jalview/gui/StructureChooser.java +++ b/src/jalview/gui/StructureChooser.java @@ -35,7 +35,6 @@ import java.util.concurrent.Executors; import javax.swing.JCheckBox; import javax.swing.JComboBox; import javax.swing.JLabel; -import javax.swing.JMenu; import javax.swing.JMenuItem; import javax.swing.JPopupMenu; import javax.swing.JTable; @@ -81,6 +80,11 @@ public class StructureChooser extends GStructureChooser { private static final String AUTOSUPERIMPOSE = "AUTOSUPERIMPOSE"; + /** + * warn user if need to fetch more than this many uniprot records at once + */ + private static final int THRESHOLD_WARN_UNIPROT_FETCH_NEEDED = 20; + private SequenceI selectedSequence; private SequenceI[] selectedSequences; @@ -197,6 +201,7 @@ public class StructureChooser extends GStructureChooser Executors.defaultThreadFactory().newThread(new Runnable() { + @Override public void run() { populateSeqsWithoutSourceDBRef(); @@ -339,6 +344,7 @@ public class StructureChooser extends GStructureChooser }; final Runnable revertview = new Runnable() { + @Override public void run() { if (lastSelected != null) @@ -347,7 +353,8 @@ public class StructureChooser extends GStructureChooser } }; }; - if (ignoreGui) + if (ignoreGui || seqsWithoutSourceDBRef + .size() < THRESHOLD_WARN_UNIPROT_FETCH_NEEDED) { Executors.defaultThreadFactory().newThread(discoverCanonicalDBrefs) .start(); @@ -866,6 +873,7 @@ public class StructureChooser extends GStructureChooser popup.add(viewUrl); SwingUtilities.invokeLater(new Runnable() { + @Override public void run() { popup.show(getResultTable(), x, y);