addKeyListener();
}
-
+ /**
+ * Change the filename and format for the alignment, and
+ * enable the 'reload' button functionality.
+ * @param file valid filename
+ * @param format format of file
+ */
public void setFileName(String file, String format)
{
fileName = file;
validate();
}
-
-
-
-
+ /**
+ *
+ * @return true if any progress bars are still active
+ */
+ public boolean operationInProgress()
+ {
+ if (progressBars!=null && progressBars.size()>0)
+ {
+ return true;
+ }
+ return false;
+ }
/*
Added so Castor Mapping file can obtain Jalview Version
*/
public void save_actionPerformed(ActionEvent e)
{
if(fileName==null
- || currentFileFormat==null
+ || (currentFileFormat==null || jalview.io.AppletFormatAdapter.isValidFormat(currentFileFormat, true))
|| fileName.startsWith("http")
)
{
}
else
- {
-
+ {
+ if (!jalview.io.AppletFormatAdapter.isValidFormat(format, true))
+ {
+ // JBPNote need to have a raise_gui flag here
+ JOptionPane.showInternalMessageDialog(
+ this, "Cannot save file " + fileName + " using format "+format,
+ "Alignment output format not supported",
+ JOptionPane.WARNING_MESSAGE);
+ saveAs_actionPerformed(null);
+ return false;
+ }
+
String[] omitHidden = null;
if (viewport.hasHiddenColumns)
}
}
FormatAdapter f = new FormatAdapter();
-
String output = f.formatSequences(
format,
(Alignment) viewport.alignment, // class cast exceptions will occur in the distant future
}
/**
- * DOCUMENT ME!
+ * Paste contents of Jalview clipboard
*
- * @param newAlignment DOCUMENT ME!
+ * @param newAlignment true to paste to a new alignment, otherwise add to this.
*/
void paste(boolean newAlignment)
{
{
SequenceI [] oldOrder = viewport.getAlignment().getSequencesArray();
AlignmentSorter.sortByPID(viewport.getAlignment(),
- viewport.getAlignment().getSequenceAt(0));
+ viewport.getAlignment().getSequenceAt(0), null);
addHistoryItem(new OrderCommand("Pairwise Sort", oldOrder,
viewport.alignment));
alignPanel.paintAlignment(true);
public void actionPerformed(ActionEvent e)
{
SequenceI [] oldOrder = viewport.getAlignment().getSequencesArray();
- AlignmentSorter.sortByAnnotationScore(scoreLabel, viewport.getAlignment());
+ AlignmentSorter.sortByAnnotationScore(scoreLabel, viewport.getAlignment());//,viewport.getSelectionGroup());
addHistoryItem(new OrderCommand("Sort by "+scoreLabel, oldOrder, viewport.alignment));
alignPanel.paintAlignment(true);
}
protected void extractScores_actionPerformed(ActionEvent e)
{
ParseProperties pp = new jalview.analysis.ParseProperties(viewport.alignment);
- if (pp.getScoresFromDescription("col", "score column ", "\\W+([-+]?\\d*\\.?\\d*e?-?\\d*)\\W+([-+]?\\d*\\.?\\d*e?-?\\d*)")>0)
+ if (pp.getScoresFromDescription("col", "score column ", "\\W*([-+]?\\d*\\.?\\d*e?-?\\d*)\\W+([-+]?\\d*\\.?\\d*e?-?\\d*)", true)>0)
{
buildSortByAnnotationScoresMenu();
}