import jalview.datamodel.SequenceI;
import jalview.gui.ImageExporter.ImageWriterI;
import jalview.gui.JalviewColourChooser.ColourChooserListener;
-import jalview.jbgui.GPCAPanel;
+import jalview.jbgui.GPaSiMapPanel;
import jalview.math.RotatableMatrix.Axis;
import jalview.util.ImageMaker;
import jalview.util.MessageManager;
/**
* The panel holding the Pairwise Similarity Map 3-D visualisation
*/
-public class PaSiMapPanel extends GPCAPanel
+public class PaSiMapPanel extends GPaSiMapPanel
implements Runnable, IProgressIndicator
{
private static final int MIN_WIDTH = 470;
public PaSiMapPanel(AlignmentPanel alignPanel, String modelName,
SimilarityParamsI params)
{
- super();
+ super(3); // dim = 3
this.av = alignPanel.av;
this.ap = alignPanel;
boolean nucleotide = av.getAlignment().isNucleotide();
boolean selected = av.getSelectionGroup() != null
&& av.getSelectionGroup().getSize() > 0;
- AlignmentView seqstrings = av.getAlignmentView(selected);
SequenceI[] seqs;
if (!selected)
{
ScoreModelI scoreModel = ScoreModels.getInstance()
.getScoreModel(modelName, ap);
setPasimapModel(
- new PaSiMapModel(seqstrings, seqs, nucleotide, scoreModel, params));
+ new PaSiMapModel(av, seqs, nucleotide, scoreModel, params));
PaintRefresher.Register(this, av.getSequenceSetId());
setRotatableCanvas(new RotatableCanvas(alignPanel));
}
Object[] alAndColsel = getPasimapModel().getInputData()
- .getAlignmentAndHiddenColumns(gc);
+ .getAlignmentView(false).getAlignmentAndHiddenColumns(gc);
if (alAndColsel != null && alAndColsel[0] != null)
{
}
}
- public void makePaSiMapImage(ImageMaker.TYPE type)
+ public void makePaSiMapImage(ImageMaker.TYPE type) throws Exception
{
int width = getRotatableCanvas().getWidth();
int height = getRotatableCanvas().getHeight();
* (non-Javadoc)
*
* @see
- * jalview.jbgui.GPCAPanel#outputPoints_actionPerformed(java.awt.event.ActionEvent
+ * jalview.jbgui.GPaSiMapPanel#outputPoints_actionPerformed(java.awt.event.ActionEvent
* )
*/
@Override
* (non-Javadoc)
*
* @see
- * jalview.jbgui.GPCAPanel#outputProjPoints_actionPerformed(java.awt.event
+ * jalview.jbgui.GPaSiMapPanel#outputProjPoints_actionPerformed(java.awt.event
* .ActionEvent)
*/
@Override
/*
* (non-Javadoc)
*
+ * @see
+ * jalview.jbgui.GPaSiMapPanel#outputAlignment_actionPerformed(java.awt.event
+ * .ActionEvent)
+ */
+ @Override
+ protected void outputAlignment_actionPerformed()
+ {
+ CutAndPasteTransfer cap = new CutAndPasteTransfer();
+ try
+ {
+ cap.setText(getPasimapModel().getAlignmentOutput());
+ Desktop.addInternalFrame(cap, MessageManager.formatMessage(
+ "label.pairwise_alignment_for_params", new String[] { this.getTitle() }), 500, 500);
+ } catch (OutOfMemoryError oom)
+ {
+ new OOMWarning("exporting pairwise alignments", oom);
+ cap.dispose();
+ }
+ }
+
+ /*
+ * (non-Javadoc)
+ *
* @see jalview.gui.IProgressIndicator#setProgressBar(java.lang.String, long)
*/
@Override
*
* @param data
*/
- public void setInputData(AlignmentView data)
+ public void setInputData(AlignmentViewport data)
{
getPasimapModel().setInputData(data);
originalSeqData.setVisible(data != null);