JAL-1834 added tooltip to the PDB sequence fetcher and structure chooser summary...
[jalview.git] / src / jalview / gui / PDBSearchPanel.java
index 950c6b7..63c3761 100644 (file)
@@ -36,7 +36,6 @@ import java.util.Comparator;
 import java.util.HashSet;
 import java.util.List;
 
-import javax.swing.JOptionPane;
 import javax.swing.table.DefaultTableModel;
 
 @SuppressWarnings("serial")
@@ -62,6 +61,8 @@ public class PDBSearchPanel extends GPDBSearchPanel
   @Override
   public void txt_search_ActionPerformed()
   {
+    errorWarning.setLength(0);
+    lbl_warning.setVisible(false);
     btn_ok.setEnabled(false);
     boolean allowEmptySequence = false;
     mainFrame.setTitle(MessageManager
@@ -95,8 +96,9 @@ public class PDBSearchPanel extends GPDBSearchPanel
       } catch (Exception e)
       {
         // System.out.println(">>>>>>>>>>>>>>>" + e.getMessage());
-        JOptionPane.showMessageDialog(this, e.getMessage(),
-                "PDB Web-service Error", JOptionPane.ERROR_MESSAGE);
+        e.printStackTrace();
+        errorWarning.append(e.getMessage());
+        checkForErrors();
         return;
       }
 
@@ -172,12 +174,20 @@ public class PDBSearchPanel extends GPDBSearchPanel
     mainFrame.dispose();
   }
 
+  public void transferToSequenceFetcher(String ids)
+  {
+    // mainFrame.dispose();
+    seqFetcher.textArea.setText(ids);
+    Thread worker = new Thread(seqFetcher);
+    worker.start();
+  }
+
   /**
    * Add the discovered/selected sequences to a target alignment window
    */
   public void loadSelectedPDBSequencesToAlignment()
   {
-    mainFrame.dispose();
+    // mainFrame.dispose();
     StringBuilder selectedIds = new StringBuilder();
     HashSet<String> selectedIdsSet = new HashSet<String>();
     int pdbIdCol = PDBRestClient.getPDBIdColumIndex(wantedFields, false);
@@ -196,7 +206,7 @@ public class PDBSearchPanel extends GPDBSearchPanel
     }
 
     String ids = selectedIds.toString();
-    System.out.println(">>>>>>>>>>>>>>>> selected Ids: " + ids);
+    // System.out.println(">>>>>>>>>>>>>>>> selected Ids: " + ids);
     seqFetcher.textArea.setText(ids);
     Thread worker = new Thread(seqFetcher);
     worker.start();
@@ -258,4 +268,14 @@ public class PDBSearchPanel extends GPDBSearchPanel
     }
   }
 
+  public void checkForErrors()
+  {
+    lbl_warning.setVisible(false);
+    if (errorWarning.length() > 0)
+    {
+      lbl_warning.setToolTipText(JvSwingUtils.wrapTooltip(true,
+              errorWarning.toString()));
+      lbl_warning.setVisible(true);
+    }
+  }
 }