X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2FMCview%2FAppletPDBCanvas.java;h=c6553f817b7c626f678735fd95b17e788d19e96e;hb=refs%2Fheads%2Fbug%2FJAL-3806_mappingCoversCDS_reprise;hp=aac796cff69efb47c640e0289fdf47d73d013437;hpb=7d67fb613ec026dc9a265e351e7fab542e3f1d61;p=jalview.git diff --git a/src/MCview/AppletPDBCanvas.java b/src/MCview/AppletPDBCanvas.java index aac796c..c6553f8 100644 --- a/src/MCview/AppletPDBCanvas.java +++ b/src/MCview/AppletPDBCanvas.java @@ -28,6 +28,7 @@ import jalview.datamodel.PDBEntry; import jalview.datamodel.SequenceI; import jalview.io.DataSourceType; import jalview.io.StructureFile; +import jalview.renderer.seqfeatures.FeatureColourFinder; import jalview.structure.AtomSpec; import jalview.structure.StructureListener; import jalview.structure.StructureMapping; @@ -36,8 +37,7 @@ import jalview.util.MessageManager; import java.awt.Color; import java.awt.Dimension; -import java.awt.Event; -import java.awt.Font; +import java.awt.event.InputEvent;import java.awt.Font; import java.awt.Graphics; import java.awt.Image; // JBPNote TODO: This class is quite noisy - needs proper log.info/log.debug @@ -51,8 +51,8 @@ import java.io.PrintStream; import java.util.List; import java.util.Vector; -public class AppletPDBCanvas extends Panel implements MouseListener, - MouseMotionListener, StructureListener +public class AppletPDBCanvas extends Panel + implements MouseListener, MouseMotionListener, StructureListener { MCMatrix idmat = new MCMatrix(3, 3); @@ -158,7 +158,7 @@ public class AppletPDBCanvas extends Panel implements MouseListener, try { - pdb = ssm.setMapping(seq, chains, pdbentry.getFile(), protocol); + pdb = ssm.setMapping(seq, chains, pdbentry.getFile(), protocol, null); if (protocol == DataSourceType.PASTE) { @@ -177,7 +177,7 @@ public class AppletPDBCanvas extends Panel implements MouseListener, colourBySequence(); - int max = -10; + float max = -10; int maxchain = -1; int pdbstart = 0; int pdbend = 0; @@ -190,10 +190,9 @@ public class AppletPDBCanvas extends Panel implements MouseListener, for (int i = 0; i < pdb.getChains().size(); i++) { - mappingDetails - .append("\n\nPDB Sequence is :\nSequence = " - + pdb.getChains().elementAt(i).sequence - .getSequenceAsString()); + mappingDetails.append("\n\nPDB Sequence is :\nSequence = " + + pdb.getChains().elementAt(i).sequence + .getSequenceAsString()); mappingDetails.append("\nNo of residues = " + pdb.getChains().elementAt(i).residues.size() + "\n\n"); @@ -202,8 +201,9 @@ public class AppletPDBCanvas extends Panel implements MouseListener, // Align the sequence to the pdb // TODO: DNa/Pep switch AlignSeq as = new AlignSeq(sequence, - pdb.getChains().elementAt(i).sequence, pdb.getChains() - .elementAt(i).isNa ? AlignSeq.DNA : AlignSeq.PEP); + pdb.getChains().elementAt(i).sequence, + pdb.getChains().elementAt(i).isNa ? AlignSeq.DNA + : AlignSeq.PEP); as.calcScoreMatrix(); as.traceAlignment(); PrintStream ps = new PrintStream(System.out) @@ -487,9 +487,8 @@ public class AppletPDBCanvas extends Panel implements MouseListener, g.fillRect(0, 0, getSize().width, getSize().height); g.setColor(Color.black); g.setFont(new Font("Verdana", Font.BOLD, 14)); - g.drawString( - MessageManager.getString("label.error_loading_pdb_data"), 50, - getSize().height / 2); + g.drawString(MessageManager.getString("label.error_loading_pdb_data"), + 50, getSize().height / 2); return; } @@ -577,6 +576,8 @@ public class AppletPDBCanvas extends Panel implements MouseListener, showFeatures = true; } + FeatureColourFinder finder = new FeatureColourFinder(fr); + PDBChain chain; if (bysequence && pdb != null) { @@ -604,25 +605,16 @@ public class AppletPDBCanvas extends Panel implements MouseListener, if (pos > 0) { pos = sequence[s].findIndex(pos); - tmp.startCol = sr.getResidueBoxColour(sequence[s], pos); - if (showFeatures) - { - tmp.startCol = fr.findFeatureColour(tmp.startCol, - sequence[s], pos); - } + tmp.startCol = sr.getResidueColour(sequence[s], pos, + finder); } pos = mapping[m].getSeqPos(tmp.at2.resNumber) - 1; if (pos > 0) { pos = sequence[s].findIndex(pos); - tmp.endCol = sr.getResidueBoxColour(sequence[s], pos); - if (showFeatures) - { - tmp.endCol = fr.findFeatureColour(tmp.endCol, - sequence[s], pos); - } + tmp.endCol = sr.getResidueColour(sequence[s], pos, + finder); } - } } } @@ -650,11 +642,15 @@ public class AppletPDBCanvas extends Panel implements MouseListener, { tmpBond = visiblebonds.elementAt(i); - xstart = (int) (((tmpBond.start[0] - centre[0]) * scale) + (getSize().width / 2)); - ystart = (int) (((centre[1] - tmpBond.start[1]) * scale) + (getSize().height / 2)); + xstart = (int) (((tmpBond.start[0] - centre[0]) * scale) + + (getSize().width / 2)); + ystart = (int) (((centre[1] - tmpBond.start[1]) * scale) + + (getSize().height / 2)); - xend = (int) (((tmpBond.end[0] - centre[0]) * scale) + (getSize().width / 2)); - yend = (int) (((centre[1] - tmpBond.end[1]) * scale) + (getSize().height / 2)); + xend = (int) (((tmpBond.end[0] - centre[0]) * scale) + + (getSize().width / 2)); + yend = (int) (((centre[1] - tmpBond.end[1]) * scale) + + (getSize().height / 2)); xmid = (xend + xstart) / 2; ymid = (yend + ystart) / 2; @@ -896,7 +892,7 @@ public class AppletPDBCanvas extends Panel implements MouseListener, MCMatrix objmat = new MCMatrix(3, 3); objmat.setIdentity(); - if ((evt.getModifiers() & Event.META_MASK) != 0) + if ((evt.getModifiersEx() & InputEvent.META_DOWN_MASK) != 0) { objmat.rotatez(((mx - omx))); } @@ -971,8 +967,10 @@ public class AppletPDBCanvas extends Panel implements MouseListener, if (n == 1) { - int xstart = (int) (((b.start[0] - centre[0]) * scale) + (getSize().width / 2)); - int ystart = (int) (((centre[1] - b.start[1]) * scale) + (getSize().height / 2)); + int xstart = (int) (((b.start[0] - centre[0]) * scale) + + (getSize().width / 2)); + int ystart = (int) (((centre[1] - b.start[1]) * scale) + + (getSize().height / 2)); g.setColor(Color.red); g.drawString(b.at1.resName + "-" + b.at1.resNumber, xstart, ystart); @@ -980,8 +978,10 @@ public class AppletPDBCanvas extends Panel implements MouseListener, if (n == 2) { - int xstart = (int) (((b.end[0] - centre[0]) * scale) + (getSize().width / 2)); - int ystart = (int) (((centre[1] - b.end[1]) * scale) + (getSize().height / 2)); + int xstart = (int) (((b.end[0] - centre[0]) * scale) + + (getSize().width / 2)); + int ystart = (int) (((centre[1] - b.end[1]) * scale) + + (getSize().height / 2)); g.setColor(Color.red); g.drawString(b.at2.resName + "-" + b.at2.resNumber, xstart, ystart); @@ -1010,11 +1010,13 @@ public class AppletPDBCanvas extends Panel implements MouseListener, { tmpBond = bonds.elementAt(i); - truex = (int) (((tmpBond.start[0] - centre[0]) * scale) + (getSize().width / 2)); + truex = (int) (((tmpBond.start[0] - centre[0]) * scale) + + (getSize().width / 2)); if (Math.abs(truex - x) <= 2) { - int truey = (int) (((centre[1] - tmpBond.start[1]) * scale) + (getSize().height / 2)); + int truey = (int) (((centre[1] - tmpBond.start[1]) * scale) + + (getSize().height / 2)); if (Math.abs(truey - y) <= 2) { @@ -1027,11 +1029,13 @@ public class AppletPDBCanvas extends Panel implements MouseListener, // Still here? Maybe its the last bond - truex = (int) (((tmpBond.end[0] - centre[0]) * scale) + (getSize().width / 2)); + truex = (int) (((tmpBond.end[0] - centre[0]) * scale) + + (getSize().width / 2)); if (Math.abs(truex - x) <= 2) { - int truey = (int) (((tmpBond.end[1] - centre[1]) * scale) + (getSize().height / 2)); + int truey = (int) (((tmpBond.end[1] - centre[1]) * scale) + + (getSize().height / 2)); if (Math.abs(truey - y) <= 2) { @@ -1125,7 +1129,7 @@ public class AppletPDBCanvas extends Panel implements MouseListener, // //////////////////////////////// // /StructureListener @Override - public String[] getPdbFile() + public String[] getStructureFiles() { return new String[] { pdbentry.getFile() }; }