Fetch DBRefs
authoramwaterhouse <Andrew Waterhouse>
Thu, 22 Jun 2006 08:50:35 +0000 (08:50 +0000)
committeramwaterhouse <Andrew Waterhouse>
Thu, 22 Jun 2006 08:50:35 +0000 (08:50 +0000)
src/jalview/gui/AlignFrame.java
src/jalview/jbgui/GAlignFrame.java

index 32a50cf..f426f9c 100755 (executable)
@@ -35,6 +35,7 @@ import jalview.jbgui.*;
 import jalview.schemes.*;\r
 import jalview.ws.*;\r
 import java.awt.dnd.*;\r
+import org.biojava.dasobert.eventmodel.*;\r
 \r
 \r
 /**\r
@@ -44,7 +45,7 @@ import java.awt.dnd.*;
  * @version $Revision$\r
  */\r
 public class AlignFrame\r
-    extends GAlignFrame implements DropTargetListener\r
+    extends GAlignFrame implements DropTargetListener, FeatureListener\r
 {\r
   /** DOCUMENT ME!! */\r
   public static final int NEW_WINDOW_WIDTH = 700;\r
@@ -169,7 +170,6 @@ public class AlignFrame
       }\r
       ;\r
     });\r
-\r
   }\r
 \r
   public void setGUINucleotide(boolean nucleotide)\r
@@ -187,6 +187,61 @@ public class AlignFrame
     }\r
   }\r
 \r
+  public void comeBackLater(FeatureEvent evt)\r
+  {}\r
+\r
+  public void newFeatures(FeatureEvent evt)\r
+  {\r
+    if (evt.getFeatures().length > 0)\r
+    {\r
+      alignPanel.seqPanel.seqCanvas.fr.featuresAdded();\r
+      alignPanel.repaint();\r
+    }\r
+    else\r
+    {\r
+      System.out.println("No Features found for " +\r
+                         evt.getDasSource().getNickname());\r
+    }\r
+  }\r
+\r
+  Hashtable progressBars;\r
+  public void setProgressBar(String message, long id)\r
+  {\r
+    if(progressBars == null)\r
+      progressBars = new Hashtable();\r
+\r
+    JPanel progressPanel;\r
+    GridLayout layout = (GridLayout) statusPanel.getLayout();\r
+    if(progressBars.get( new Long(id) )!=null)\r
+     {\r
+       progressPanel = (JPanel)progressBars.get( new Long(id) );\r
+       statusPanel.remove(progressPanel);\r
+       progressBars.remove( progressPanel );\r
+       progressPanel = null;\r
+       if(message!=null)\r
+         statusBar.setText(message);\r
+\r
+       layout.setRows(layout.getRows() - 1);\r
+     }\r
+    else\r
+    {\r
+      progressPanel = new JPanel(new BorderLayout(10, 5));\r
+\r
+      JProgressBar progressBar = new JProgressBar();\r
+      progressBar.setIndeterminate(true);\r
+\r
+      progressPanel.add(new JLabel(message), BorderLayout.WEST);\r
+      progressPanel.add(progressBar, BorderLayout.CENTER);\r
+\r
+      layout.setRows(layout.getRows() + 1);\r
+      statusPanel.add(progressPanel);\r
+\r
+      progressBars.put(new Long(id), progressPanel);\r
+    }\r
+\r
+    validate();\r
+  }\r
+\r
 \r
   /*\r
    Added so Castor Mapping file can obtain Jalview Version\r
@@ -1400,11 +1455,16 @@ public class AlignFrame
     alignPanel.repaint();\r
   }\r
 \r
+\r
+  public void dbRefs_actionPerformed(ActionEvent e)\r
+  {\r
+    new DBRefFetcher(viewport.alignment, this);\r
+  }\r
+\r
   public void fetchSeqFeatures_actionPerformed(ActionEvent e)\r
   {\r
-      new DasSequenceFeatureFetcher(viewport.\r
-                                    alignment,\r
-                                    alignPanel);\r
+      new DasSequenceFeatureFetcher(viewport.alignment,\r
+                                    this);\r
       viewport.setShowSequenceFeatures(true);\r
       showSeqFeatures.setSelected(true);\r
   }\r
@@ -2638,7 +2698,7 @@ public boolean parseFeaturesFile(String file, String type)
 {\r
     boolean featuresFile = false;\r
     try{\r
-      featuresFile = new FeaturesFile(file, type).parse(viewport.alignment,\r
+      featuresFile = new FeaturesFile(file, type).parse(viewport.alignment.getDataset(),\r
                                          alignPanel.seqPanel.seqCanvas.\r
                                          getFeatureRenderer().featureColours);\r
     }\r
index 5a404eb..eafbf12 100755 (executable)
@@ -23,6 +23,7 @@ import java.awt.event.*;
 import javax.swing.*;\r
 \r
 import jalview.schemes.*;\r
+import java.awt.BorderLayout;\r
 \r
 public class GAlignFrame\r
     extends JInternalFrame\r
@@ -130,6 +131,9 @@ public class GAlignFrame
   JMenuItem addFromURL = new JMenuItem();\r
   JMenuItem exportAnnotations = new JMenuItem();\r
   JMenuItem exportFeatures = new JMenuItem();\r
+  JMenuItem dbRefs = new JMenuItem();\r
+  protected JPanel statusPanel = new JPanel();\r
+  GridLayout gridLayout1 = new GridLayout();\r
   public GAlignFrame()\r
   {\r
 \r
@@ -1034,6 +1038,15 @@ public class GAlignFrame
         exportAnnotations_actionPerformed(e);\r
       }\r
     });\r
+    dbRefs.setText("Fetch DB Refs");\r
+    dbRefs.addActionListener(new ActionListener()\r
+    {\r
+      public void actionPerformed(ActionEvent e)\r
+      {\r
+        dbRefs_actionPerformed(e);\r
+      }\r
+    });\r
+    statusPanel.setLayout(gridLayout1);\r
     alignFrameMenuBar.add(fileMenu);\r
     alignFrameMenuBar.add(editMenu);\r
     alignFrameMenuBar.add(searchMenu);\r
@@ -1090,6 +1103,7 @@ public class GAlignFrame
     viewMenu.add(renderGapsMenuItem);\r
     viewMenu.add(annotationPanelMenuItem);\r
     viewMenu.addSeparator();\r
+    viewMenu.add(dbRefs);\r
     viewMenu.add(fetchSeqFeatures);\r
     viewMenu.add(showSeqFeatures);\r
     viewMenu.add(featureSettings);\r
@@ -1125,9 +1139,7 @@ public class GAlignFrame
     calculateMenu.add(showTranslation);\r
     calculateMenu.add(autoCalculate);\r
     webServiceNoServices=new JMenuItem("<No Services>");\r
-    webService.add(webServiceNoServices);\r
-    this.getContentPane().add(statusBar, BorderLayout.SOUTH);\r
-    jMenu1.add(pasteNew);\r
+    webService.add(webServiceNoServices);jMenu1.add(pasteNew);\r
     jMenu1.add(pasteThis);\r
     sort.add(sortIDMenuItem);\r
     sort.add(sortGroupMenuItem);\r
@@ -1142,6 +1154,8 @@ public class GAlignFrame
     addSequenceMenu.add(addFromFile);\r
     addSequenceMenu.add(addFromText);\r
     addSequenceMenu.add(addFromURL);\r
+    this.getContentPane().add(statusPanel, java.awt.BorderLayout.SOUTH);\r
+    statusPanel.add(statusBar, null);\r
   }\r
 \r
   protected void outputText_actionPerformed(ActionEvent e)\r
@@ -1495,4 +1509,9 @@ public class GAlignFrame
   {\r
 \r
   }\r
+\r
+  public void dbRefs_actionPerformed(ActionEvent e)\r
+  {\r
+\r
+  }\r
 }\r