git://source.jalview.org
/
jalview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'develop' into releases/Release_2_11_2_Branch
[jalview.git]
/
src
/
jalview
/
gui
/
StructureChooser.java
diff --git
a/src/jalview/gui/StructureChooser.java
b/src/jalview/gui/StructureChooser.java
index
af5f8a4
..
07eec2b
100644
(file)
--- 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.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;
import javax.swing.JMenuItem;
import javax.swing.JPopupMenu;
import javax.swing.JTable;
@@
-44,6
+43,7
@@
import javax.swing.table.AbstractTableModel;
import jalview.api.structures.JalviewStructureDisplayI;
import jalview.bin.Cache;
import jalview.api.structures.JalviewStructureDisplayI;
import jalview.bin.Cache;
+import jalview.bin.Console;
import jalview.bin.Jalview;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
import jalview.bin.Jalview;
import jalview.datamodel.PDBEntry;
import jalview.datamodel.SequenceI;
@@
-81,6
+81,11
@@
public class StructureChooser extends GStructureChooser
{
private static final String AUTOSUPERIMPOSE = "AUTOSUPERIMPOSE";
{
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;
private SequenceI selectedSequence;
private SequenceI[] selectedSequences;
@@
-197,6
+202,7
@@
public class StructureChooser extends GStructureChooser
Executors.defaultThreadFactory().newThread(new Runnable()
{
Executors.defaultThreadFactory().newThread(new Runnable()
{
+ @Override
public void run()
{
populateSeqsWithoutSourceDBRef();
public void run()
{
populateSeqsWithoutSourceDBRef();
@@
-263,6
+269,7
@@
public class StructureChooser extends GStructureChooser
progressBar.setProgressBar(
MessageManager.getString("status.searching_3d_beacons"),
progressId);
progressBar.setProgressBar(
MessageManager.getString("status.searching_3d_beacons"),
progressId);
+ btn_queryTDB.setEnabled(false);
// TODO: warn if no accessions discovered
populateSeqsWithoutSourceDBRef();
// redo initial discovery - this time with 3d beacons
// TODO: warn if no accessions discovered
populateSeqsWithoutSourceDBRef();
// redo initial discovery - this time with 3d beacons
@@
-280,11
+287,13
@@
public class StructureChooser extends GStructureChooser
btn_queryTDB.setToolTipText(MessageManager.getString(
"status.no_structures_discovered_from_3d_beacons"));
btn_queryTDB.setEnabled(false);
btn_queryTDB.setToolTipText(MessageManager.getString(
"status.no_structures_discovered_from_3d_beacons"));
btn_queryTDB.setEnabled(false);
+ pnl_queryTDB.setVisible(false);
}
else
{
cmb_filterOption.setSelectedIndex(0); // select 'best'
btn_queryTDB.setVisible(false);
}
else
{
cmb_filterOption.setSelectedIndex(0); // select 'best'
btn_queryTDB.setVisible(false);
+ pnl_queryTDB.setVisible(false);
progressBar.setProgressBar(null, progressId);
}
mainFrame.setEnabled(true);
progressBar.setProgressBar(null, progressId);
}
mainFrame.setEnabled(true);
@@
-312,6
+321,7
@@
public class StructureChooser extends GStructureChooser
@Override
public void run()
{
@Override
public void run()
{
+ btn_queryTDB.setEnabled(false);
populateSeqsWithoutSourceDBRef();
final int y = seqsWithoutSourceDBRef.size();
populateSeqsWithoutSourceDBRef();
final int y = seqsWithoutSourceDBRef.size();
@@
-324,6
+334,7
@@
public class StructureChooser extends GStructureChooser
{ new jalview.ws.dbsources.Uniprot() }, null, false);
dbRefFetcher.addListener(afterDbRefFetch);
// ideally this would also gracefully run with callbacks
{ new jalview.ws.dbsources.Uniprot() }, null, false);
dbRefFetcher.addListener(afterDbRefFetch);
// ideally this would also gracefully run with callbacks
+
dbRefFetcher.fetchDBRefs(true);
}
else
dbRefFetcher.fetchDBRefs(true);
}
else
@@
-336,6
+347,7
@@
public class StructureChooser extends GStructureChooser
};
final Runnable revertview = new Runnable()
{
};
final Runnable revertview = new Runnable()
{
+ @Override
public void run()
{
if (lastSelected != null)
public void run()
{
if (lastSelected != null)
@@
-344,7
+356,10
@@
public class StructureChooser extends GStructureChooser
}
};
};
}
};
};
- if (ignoreGui)
+ int threshold = Cache.getDefault("UNIPROT_AUTOFETCH_THRESHOLD",
+ THRESHOLD_WARN_UNIPROT_FETCH_NEEDED);
+ Console.debug("Using Uniprot fetch threshold of " + threshold);
+ if (ignoreGui || seqsWithoutSourceDBRef.size() < threshold)
{
Executors.defaultThreadFactory().newThread(discoverCanonicalDBrefs)
.start();
{
Executors.defaultThreadFactory().newThread(discoverCanonicalDBrefs)
.start();
@@
-352,7
+367,9
@@
public class StructureChooser extends GStructureChooser
}
// need cancel and no to result in the discoverPDB action - mocked is
// 'cancel' TODO: mock should be OK
}
// need cancel and no to result in the discoverPDB action - mocked is
// 'cancel' TODO: mock should be OK
- JvOptionPane.newOptionDialog(this)
+
+ StructureChooser thisSC = this;
+ JvOptionPane.newOptionDialog(thisSC.getFrame())
.setResponseHandler(JvOptionPane.OK_OPTION,
discoverCanonicalDBrefs)
.setResponseHandler(JvOptionPane.CANCEL_OPTION, revertview)
.setResponseHandler(JvOptionPane.OK_OPTION,
discoverCanonicalDBrefs)
.setResponseHandler(JvOptionPane.CANCEL_OPTION, revertview)
@@
-366,7
+383,7
@@
public class StructureChooser extends GStructureChooser
null, new Object[]
{ MessageManager.getString("action.ok"),
MessageManager.getString("action.cancel") },
null, new Object[]
{ MessageManager.getString("action.ok"),
MessageManager.getString("action.cancel") },
- MessageManager.getString("action.ok"));
+ MessageManager.getString("action.ok"), false);
}
/**
}
/**
@@
-707,6
+724,7
@@
public class StructureChooser extends GStructureChooser
if (canQueryTDB && notQueriedTDBYet)
{
btn_queryTDB.setVisible(true);
if (canQueryTDB && notQueriedTDBYet)
{
btn_queryTDB.setVisible(true);
+ pnl_queryTDB.setVisible(true);
}
if (cachedPDBExist)
}
if (cachedPDBExist)
@@
-862,6
+880,7
@@
public class StructureChooser extends GStructureChooser
popup.add(viewUrl);
SwingUtilities.invokeLater(new Runnable()
{
popup.add(viewUrl);
SwingUtilities.invokeLater(new Runnable()
{
+ @Override
public void run()
{
popup.show(getResultTable(), x, y);
public void run()
{
popup.show(getResultTable(), x, y);
@@
-1372,6
+1391,7
@@
public class StructureChooser extends GStructureChooser
{
if (selectedSequences != null)
{
{
if (selectedSequences != null)
{
+ lbl_loading.setVisible(true);
Thread refreshThread = new Thread(new Runnable()
{
@Override
Thread refreshThread = new Thread(new Runnable()
{
@Override
@@
-1383,6
+1403,7
@@
public class StructureChooser extends GStructureChooser
filterResultSet(
((FilterOption) cmb_filterOption.getSelectedItem())
.getValue());
filterResultSet(
((FilterOption) cmb_filterOption.getSelectedItem())
.getValue());
+ lbl_loading.setVisible(false);
}
});
refreshThread.start();
}
});
refreshThread.start();