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