package jalview.appletgui;
+import java.awt.BorderLayout;
+import java.awt.Dimension;
+import java.awt.GridLayout;
+import java.awt.Panel;
+
import jalview.analysis.AlignmentUtils;
+import jalview.api.AlignmentViewPanel;
import jalview.api.ViewStyleI;
import jalview.bin.JalviewLite;
import jalview.datamodel.AlignmentI;
import jalview.structure.StructureSelectionManager;
-import java.awt.BorderLayout;
-import java.awt.Dimension;
-import java.awt.GridLayout;
-import java.awt.Panel;
-
public class SplitFrame extends EmbmenuFrame
{
private static final long serialVersionUID = 1L;
ssm.addCommandListener(protein);
}
+ /*
+ * Now mappings exist, can compute cDNA consensus on protein alignment
+ */
+ protein.initComplementConsensus();
+ AlignmentViewPanel ap = topAlignment.isNucleotide() ? bottomFrame.alignPanel
+ : topFrame.alignPanel;
+ protein.updateConsensus(ap);
+
adjustLayout();
}
}
/*
- * Expand protein to 3 times character width of dna
+ * Scale protein to either 1 or 3 times character width of dna
*/
if (protein != null && cdna != null)
{
ViewStyleI vs = protein.getViewStyle();
- vs.setCharWidth(3 * vs.getCharWidth());
+ int scale = vs.isScaleProteinAsCdna() ? 3 : 1;
+ vs.setCharWidth(scale * cdna.getViewStyle().getCharWidth());
protein.setViewStyle(vs);
}
}
panel.add(menuPanel, BorderLayout.NORTH);
panel.add(af.statusBar, BorderLayout.SOUTH);
panel.add(af.alignPanel, BorderLayout.CENTER);
+
+ af.setSplitFrame(this);
}
/**
else
{
this.add(outermost);
- int width = Math.max(topFrame.DEFAULT_WIDTH,
- bottomFrame.DEFAULT_WIDTH);
- int height = topFrame.DEFAULT_HEIGHT + bottomFrame.DEFAULT_HEIGHT;
+ int width = Math.max(topFrame.frameWidth,
+ bottomFrame.frameWidth);
+ int height = topFrame.frameHeight + bottomFrame.frameHeight;
jalview.bin.JalviewLite
.addFrame(this, this.getTitle(), width, height);
}