JAL-4153 avoid use of invokeAndWait, increase wait time and add timeout for the cache...
[jalview.git] / src / jalview / fts / core / GFTSPanel.java
index ea206e9..dd7fd94 100644 (file)
 
 package jalview.fts.core;
 
-import jalview.bin.Cache;
-import jalview.fts.api.FTSDataColumnI;
-import jalview.fts.api.GFTSPanelI;
-import jalview.fts.core.FTSDataColumnPreferences.PreferenceSource;
-import jalview.gui.Desktop;
-import jalview.gui.IProgressIndicator;
-import jalview.gui.JvSwingUtils;
-import jalview.gui.SequenceFetcher;
-import jalview.io.cache.JvCacheableInputBox;
-import jalview.util.MessageManager;
-import jalview.util.Platform;
-
 import java.awt.BorderLayout;
 import java.awt.CardLayout;
 import java.awt.Dimension;
@@ -77,6 +65,18 @@ import javax.swing.event.InternalFrameEvent;
 import javax.swing.table.DefaultTableModel;
 import javax.swing.table.TableColumn;
 
+import jalview.bin.Cache;
+import jalview.fts.api.FTSDataColumnI;
+import jalview.fts.api.GFTSPanelI;
+import jalview.fts.core.FTSDataColumnPreferences.PreferenceSource;
+import jalview.gui.Desktop;
+import jalview.gui.IProgressIndicator;
+import jalview.gui.JvSwingUtils;
+import jalview.gui.SequenceFetcher;
+import jalview.io.cache.JvCacheableInputBox;
+import jalview.util.MessageManager;
+import jalview.util.Platform;
+
 /**
  * This class provides the swing GUI layout for FTS Panel and implements most of
  * the contracts defined in GFSPanelI
@@ -544,7 +544,10 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
           }
           txt_search.getComponent().setToolTipText(
                   JvSwingUtils.wrapTooltip(true, tooltipText));
+          // if (btn_autosearch.isSelected())
           searchAction(true);
+
+          setCmbSearchTargetTooltip();
         }
       }
     });
@@ -678,6 +681,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
     pnl_actions.add(btn_cancel);
 
     pnl_results.add(tabbedPane);
+    setCmbSearchTargetTooltip();
     pnl_inputs.add(cmb_searchTarget);
     pnl_inputs.add(txt_search.getComponent());
     pnl_inputs.add(txt_help);
@@ -692,6 +696,7 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
     this.add(pnl_inputs, java.awt.BorderLayout.NORTH);
     this.add(pnl_results, java.awt.BorderLayout.CENTER);
     this.add(pnl_actions, java.awt.BorderLayout.SOUTH);
+    mainFrame.setFrameIcon(null);
     mainFrame.setVisible(true);
     if (tabs != null)
     {
@@ -1085,4 +1090,28 @@ public abstract class GFTSPanel extends JPanel implements GFTSPanelI
 
   @Override
   public abstract void okAction();
+
+  private void setCmbSearchTargetTooltip()
+  {
+    JComboBox<FTSDataColumnI> cmb = getCmbSearchTarget();
+    if (cmb.isEnabled())
+    {
+      boolean isAll = "all"
+              .equalsIgnoreCase(cmb.getSelectedItem().toString());
+      FTSDataColumnI index = (FTSDataColumnI) cmb.getSelectedItem();
+      String indexCode = index.getAltCode();
+      String dbName = getDbName();
+      String message = isAll ? MessageManager
+              .formatMessage("label.search_db_all", new Object[]
+              { dbName })
+              : MessageManager.formatMessage("label.search_db_index",
+                      new Object[]
+                      { dbName, indexCode });
+      cmb.setToolTipText(message);
+    }
+    else
+    {
+      cmb.setToolTipText("");
+    }
+  }
 }