import jalview.schemes.*;\r
import jalview.ws.*;\r
import java.awt.dnd.*;\r
+import org.biojava.dasobert.eventmodel.*;\r
\r
\r
/**\r
* @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
}\r
;\r
});\r
-\r
}\r
\r
public void setGUINucleotide(boolean nucleotide)\r
}\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
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
{\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
import javax.swing.*;\r
\r
import jalview.schemes.*;\r
+import java.awt.BorderLayout;\r
\r
public class GAlignFrame\r
extends JInternalFrame\r
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
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
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
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
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
{\r
\r
}\r
+\r
+ public void dbRefs_actionPerformed(ActionEvent e)\r
+ {\r
+\r
+ }\r
}\r