+ if (atomNo > 0)
+ {
+ atoms.add(new AtomSpec(sm.pdbfile, sm.pdbchain, sm
+ .getPDBResNum(index), atomNo));
+ }
+ }
+ }
+ sl.highlightAtoms(atoms);
+ }
+
+ /**
+ * true if a mouse over event from an external (ie Vamsas) source is being
+ * handled
+ */
+ boolean handlingVamsasMo = false;
+
+ long lastmsg = 0;
+
+ /**
+ * as mouseOverSequence but only route event to SequenceListeners
+ *
+ * @param sequenceI
+ * @param position
+ * in an alignment sequence
+ */
+ public void mouseOverVamsasSequence(SequenceI sequenceI, int position,
+ VamsasSource source)
+ {
+ handlingVamsasMo = true;
+ long msg = sequenceI.hashCode() * (1 + position);
+ if (lastmsg != msg)
+ {
+ lastmsg = msg;
+ mouseOverSequence(sequenceI, position, -1, source);
+ }
+ handlingVamsasMo = false;
+ }
+
+ public Annotation[] colourSequenceFromStructure(SequenceI seq,
+ String pdbid)
+ {
+ return null;
+ // THIS WILL NOT BE AVAILABLE IN JALVIEW 2.3,
+ // UNTIL THE COLOUR BY ANNOTATION IS REWORKED
+ /*
+ * Annotation [] annotations = new Annotation[seq.getLength()];
+ *
+ * StructureListener sl; int atomNo = 0; for (int i = 0; i <
+ * listeners.size(); i++) { if (listeners.elementAt(i) instanceof
+ * StructureListener) { sl = (StructureListener) listeners.elementAt(i);
+ *
+ * for (int j = 0; j < mappings.length; j++) {
+ *
+ * if (mappings[j].sequence == seq && mappings[j].getPdbId().equals(pdbid)
+ * && mappings[j].pdbfile.equals(sl.getPdbFile())) {
+ * System.out.println(pdbid+" "+mappings[j].getPdbId() +"
+ * "+mappings[j].pdbfile);
+ *
+ * java.awt.Color col; for(int index=0; index<seq.getLength(); index++) {
+ * if(jalview.util.Comparison.isGap(seq.getCharAt(index))) continue;
+ *
+ * atomNo = mappings[j].getAtomNum(seq.findPosition(index)); col =
+ * java.awt.Color.white; if (atomNo > 0) { col = sl.getColour(atomNo,
+ * mappings[j].getPDBResNum(index), mappings[j].pdbchain,
+ * mappings[j].pdbfile); }
+ *
+ * annotations[index] = new Annotation("X",null,' ',0,col); } return
+ * annotations; } } } }
+ *
+ * return annotations;
+ */
+ }
+
+ public void structureSelectionChanged()
+ {
+ }
+
+ public void sequenceSelectionChanged()
+ {
+ }
+
+ public void sequenceColoursChanged(Object source)
+ {