/** DOCUMENT ME!! */
public String currentFileFormat = null;
- Stack historyList = new Stack();
- Stack redoList = new Stack();
+
+ public String fileName = null;
+
private int treeCount = 0;
/**
setGUINucleotide(viewport.alignment.isNucleotide());
}
- if (jalview.bin.Cache.getDefault("WRAP_ALIGNMENT", false))
+ setMenusFromViewport(viewport);
+
+ if (viewport.wrapAlignment)
{
- wrapMenuItem.setSelected(true);
wrapMenuItem_actionPerformed(null);
}
addKeyListener();
+
+
}
void addKeyListener()
case KeyEvent.VK_V:
if (!evt.isControlDown())
{
- AlignmentI al;
- if(viewport.hasHiddenRows)
- {
- al = viewport.alignment.getHiddenSequences().getFullAlignment();
- }
- else
- al = new Alignment(viewport.alignment.getSequencesArray());
-
- AlignViewport newview = new AlignViewport(al);
+ AlignmentPanel newap =
+ new Jalview2XML().copyAlignPanel(alignPanel, true);
if(viewport.viewName==null)
viewport.viewName="View 1";
- newview.sequenceSetID = viewport.getSequenceSetId();
- newview.viewName = "View " +
+ newap.av.historyList = viewport.historyList;
+ newap.av.redoList = viewport.redoList;
+ newap.av.viewName = "View " +
(Desktop.getViewCount(viewport.getSequenceSetId())+1);
- AlignmentPanel newap = new AlignmentPanel(af, newview);
-
- PaintRefresher.Register(newap, viewport.getSequenceSetId());
- PaintRefresher.Register(alignPanel, viewport.getSequenceSetId());
+ addAlignmentPanel(newap, false);
- addAlignmentPanel(newap, true);
tabbedPane.setSelectedIndex(tabbedPane.getTabCount()-1);
+
}
break;
case KeyEvent.VK_G:
public void setGUINucleotide(boolean nucleotide)
{
showTranslation.setVisible( nucleotide );
- //sequenceFeatures.setVisible(!nucleotide );
- //featureSettings.setVisible( !nucleotide );
- conservationMenuItem.setVisible( !nucleotide );
- modifyConservation.setVisible( !nucleotide );
+ conservationMenuItem.setEnabled( !nucleotide );
+ modifyConservation.setEnabled( !nucleotide );
//Remember AlignFrame always starts as protein
if(!nucleotide)
}
}
+ /**
+ * Need to call this method when tabs are selected for multiple views,
+ * or when loading from Jalview2XML.java
+ * @param av AlignViewport
+ */
+ void setMenusFromViewport(AlignViewport av)
+ {
+ colourTextMenuItem.setSelected(av.showColourText);
+ abovePIDThreshold.setSelected(av.getAbovePIDThreshold());
+ conservationMenuItem.setSelected(av.getConservationSelected());
+ seqLimits.setSelected(av.getShowJVSuffix());
+ renderGapsMenuItem.setSelected(av.renderGaps);
+ wrapMenuItem.setSelected(av.wrapAlignment);
+ annotationPanelMenuItem.setState(av.showAnnotation);
+ viewBoxesMenuItem.setSelected(av.showBoxes);
+ viewTextMenuItem.setSelected(av.showText);
+
+ setColourSelected(ColourSchemeProperty.
+ getColourName(av.getGlobalColourScheme()));
+
+ showSeqFeatures.setSelected(av.showSequenceFeatures);
+ hiddenMarkers.setState(av.showHiddenMarkers);
+ applyToAllGroups.setState(av.colourAppliesToAllGroups);
+ smoothFont.setState(av.antiAlias);
+
+ updateEditMenuBar();
+ }
+
Hashtable progressBars;
public void setProgressBar(String message, long id)
Desktop.instance.inputURLMenuItem_actionPerformed(viewport);
}
+
+ public void save_actionPerformed(ActionEvent e)
+ {
+ if(fileName==null || currentFileFormat==null)
+ saveAs_actionPerformed(null);
+ else
+ saveAlignment(fileName, currentFileFormat);
+ }
+
/**
* DOCUMENT ME!
*
* @param e DOCUMENT ME!
*/
- public void saveAlignmentMenu_actionPerformed(ActionEvent e)
+ public void saveAs_actionPerformed(ActionEvent e)
{
JalviewFileChooser chooser = new JalviewFileChooser(jalview.bin.Cache.
getProperty( "LAST_DIRECTORY"),
if (value == JalviewFileChooser.APPROVE_OPTION)
{
currentFileFormat = chooser.getSelectedFormat();
-
if (currentFileFormat == null)
{
JOptionPane.showInternalMessageDialog(Desktop.desktop,
return;
}
+ fileName = chooser.getSelectedFile().getPath();
+
jalview.bin.Cache.setProperty("DEFAULT_FILE_FORMAT",
currentFileFormat);
- String choice = chooser.getSelectedFile().getPath();
- jalview.bin.Cache.setProperty("LAST_DIRECTORY", choice);
+ jalview.bin.Cache.setProperty("LAST_DIRECTORY", fileName);
- saveAlignment(choice, currentFileFormat);
+ saveAlignment(fileName, currentFileFormat);
}
}
new Jalview2XML().SaveAlignment(this, file, shortName);
+ statusBar.setText("Successfully saved to file: "
+ +fileName+" in "
+ +format +" format.");
+
+
// USE Jalview2XML to save this file
return true;
}
out.print(output);
out.close();
this.setTitle(file);
+ statusBar.setText("Successfully saved to file: "
+ +fileName+" in "
+ +format +" format.");
return true;
}
catch (Exception ex)
}
// alignPanels = null;
}
- else
- System.out.println("null one here");
+ // else
+ // System.out.println("null one here");
// alignPanel = null;
// viewport = null;
void updateEditMenuBar()
{
- if (historyList.size() > 0)
+ if (viewport.historyList.size() > 0)
{
undoMenuItem.setEnabled(true);
- CommandI command = (CommandI) historyList.peek();
+ CommandI command = (CommandI) viewport.historyList.peek();
undoMenuItem.setText("Undo " + command.getDescription());
}
else
undoMenuItem.setText("Undo");
}
- if (redoList.size() > 0)
+ if (viewport.redoList.size() > 0)
{
redoMenuItem.setEnabled(true);
- CommandI command = (CommandI) redoList.peek();
+ CommandI command = (CommandI) viewport.redoList.peek();
redoMenuItem.setText("Redo " + command.getDescription());
}
else
{
if(command.getSize()>0)
{
- historyList.push(command);
- redoList.clear();
+ viewport.historyList.push(command);
+ viewport.redoList.clear();
updateEditMenuBar();
viewport.hasHiddenColumns = viewport.colSel.getHiddenColumns() != null;
}
*/
protected void undoMenuItem_actionPerformed(ActionEvent e)
{
- CommandI command = (CommandI)historyList.pop();
- redoList.push(command);
+ CommandI command = (CommandI)viewport.historyList.pop();
+ viewport.redoList.push(command);
command.undoCommand();
viewport.hasHiddenColumns = viewport.colSel.getHiddenColumns() != null;
*/
protected void redoMenuItem_actionPerformed(ActionEvent e)
{
- CommandI command = (CommandI) redoList.pop();
- historyList.push(command);
+ CommandI command = (CommandI) viewport.redoList.pop();
+ viewport.historyList.push(command);
command.doCommand();
viewport.hasHiddenColumns = viewport.colSel.getHiddenColumns()!=null;
}
}
- viewport.firePropertyChange("alignment", null, viewport.getAlignment().getSequences());
+ viewport.firePropertyChange("alignment", null,
+ viewport.getAlignment().getSequences());
}
}
viewport.getIgnoreGapsConsensus());
sg.cs.setConsensus(AAFrequency.calculate(
- sg.getSequences(true), 0,
- sg.getWidth()));
+ sg.getSequences(true), sg.getStartRes(),
+ sg.getEndRes()+1));
}
else
sg.cs.setThreshold(0, viewport.getIgnoreGapsConsensus());
{
Conservation c = new Conservation("Group",
ResidueProperties.propHash, 3,
- sg.getSequences(true), 0,
- viewport.alignment.getWidth() - 1);
+ sg.getSequences(true),
+ sg.getStartRes(),
+ sg.getEndRes()+1);
c.calculate();
c.verdict(false, viewport.ConsPercGaps);
sg.cs.setConservation(c);
{
alignPanel = (AlignmentPanel) alignPanels.elementAt(index);
viewport = alignPanel.av;
+ setMenusFromViewport(viewport);
}
}