X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FStructureChooser.java;h=07eec2b684381910b5415939ed3995d6370b6ca8;hb=53fe06e7ae7a8c00ec902413391cea15362bdbf2;hp=246d162cf0f0fbdb95a059c9a83fa6963622b00a;hpb=2123f8ad0cc51b9f58d5d2820fa54ed03a8f3b22;p=jalview.git diff --git a/src/jalview/gui/StructureChooser.java b/src/jalview/gui/StructureChooser.java index 246d162..07eec2b 100644 --- a/src/jalview/gui/StructureChooser.java +++ b/src/jalview/gui/StructureChooser.java @@ -321,6 +321,7 @@ public class StructureChooser extends GStructureChooser @Override public void run() { + btn_queryTDB.setEnabled(false); populateSeqsWithoutSourceDBRef(); final int y = seqsWithoutSourceDBRef.size(); @@ -333,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 + dbRefFetcher.fetchDBRefs(true); } else @@ -357,33 +359,31 @@ public class StructureChooser extends GStructureChooser int threshold = Cache.getDefault("UNIPROT_AUTOFETCH_THRESHOLD", THRESHOLD_WARN_UNIPROT_FETCH_NEEDED); Console.debug("Using Uniprot fetch threshold of " + threshold); - boolean runThread = false; if (ignoreGui || seqsWithoutSourceDBRef.size() < threshold) { - runThread = true; - } - // need cancel and no to result in the discoverPDB action - mocked is - // 'cancel' TODO: mock should be OK - if (!runThread) - { - int answer = JvOptionPane.showConfirmDialog(this, - MessageManager.formatMessage( - "label.fetch_references_for_3dbeacons", - seqsWithoutSourceDBRef.size()), - MessageManager.getString("label.3dbeacons"), - JvOptionPane.YES_NO_OPTION, JvOptionPane.PLAIN_MESSAGE); - runThread = (answer == JvOptionPane.OK_OPTION); - } - if (runThread) - { Executors.defaultThreadFactory().newThread(discoverCanonicalDBrefs) .start(); return; } - else - { - revertview.run(); - } + // need cancel and no to result in the discoverPDB action - mocked is + // 'cancel' TODO: mock should be OK + + StructureChooser thisSC = this; + JvOptionPane.newOptionDialog(thisSC.getFrame()) + .setResponseHandler(JvOptionPane.OK_OPTION, + discoverCanonicalDBrefs) + .setResponseHandler(JvOptionPane.CANCEL_OPTION, revertview) + .setResponseHandler(JvOptionPane.NO_OPTION, revertview) + .showDialog( + MessageManager.formatMessage( + "label.fetch_references_for_3dbeacons", + seqsWithoutSourceDBRef.size()), + MessageManager.getString("label.3dbeacons"), + JvOptionPane.YES_NO_OPTION, JvOptionPane.PLAIN_MESSAGE, + null, new Object[] + { MessageManager.getString("action.ok"), + MessageManager.getString("action.cancel") }, + MessageManager.getString("action.ok"), false); } /** @@ -1391,6 +1391,7 @@ public class StructureChooser extends GStructureChooser { if (selectedSequences != null) { + lbl_loading.setVisible(true); Thread refreshThread = new Thread(new Runnable() { @Override @@ -1402,6 +1403,7 @@ public class StructureChooser extends GStructureChooser filterResultSet( ((FilterOption) cmb_filterOption.getSelectedItem()) .getValue()); + lbl_loading.setVisible(false); } }); refreshThread.start();