/*\r
* Jalview - A Sequence Alignment Editor and Viewer\r
- * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
+ * Copyright (C) 2007 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle\r
*\r
* This program is free software; you can redistribute it and/or\r
* modify it under the terms of the GNU General Public License\r
{\r
this.points = points;\r
this.npoint = npoint;\r
- PaintRefresher.Register(this, av.alignment);\r
+ PaintRefresher.Register(this, av.getSequenceSetId());\r
\r
prefsize = getPreferredSize();\r
orig = new float[npoint][3];\r
{\r
paint(g);\r
}\r
+\r
public void paint(Graphics g)\r
{\r
if (points == null)\r
drawAxes(ig);\r
}\r
\r
- if(tooltip!=null)\r
+ if (tooltip != null)\r
{\r
ig.setColor(Color.red);\r
ig.drawString(tooltip, toolx, tooly);\r
int y = (int) ( (float) (sp.coord[1] - centre[1]) * scale) + halfheight;\r
float z = sp.coord[1] - centre[2];\r
\r
- if (sp.sequence.getColor() == Color.black)\r
+ if (av.getSequenceColour(sp.sequence) == Color.black)\r
{\r
g.setColor(Color.white);\r
}\r
else\r
{\r
- g.setColor(sp.sequence.getColor());\r
+ g.setColor(av.getSequenceColour(sp.sequence));\r
}\r
\r
if (av.getSelectionGroup() != null)\r
{\r
- if (av.getSelectionGroup().sequences.contains( ( (SequencePoint) points.\r
+ if (av.getSelectionGroup().getSequences(null).contains( ( (\r
+ SequencePoint) points.\r
elementAt(i)).sequence))\r
{\r
g.setColor(Color.gray);\r
if (av.getSelectionGroup() != null)\r
{\r
av.getSelectionGroup().addOrRemove(found, true);\r
- av.getSelectionGroup().setEndRes(av.alignment.getWidth()-1);\r
- PaintRefresher.Refresh(this, av.alignment);\r
+ av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1);\r
+ PaintRefresher.Refresh(this, av.getSequenceSetId());\r
}\r
else\r
{\r
av.setSelectionGroup(new SequenceGroup());\r
av.getSelectionGroup().addOrRemove(found, true);\r
- av.getSelectionGroup().setEndRes(av.alignment.getWidth()-1);\r
+ av.getSelectionGroup().setEndRes(av.alignment.getWidth() - 1);\r
\r
}\r
}\r
repaint();\r
}\r
\r
-\r
public void mouseMoved(MouseEvent evt)\r
{\r
- SequenceI found = findPoint(evt.getX(), evt.getY());\r
- if(found==null)\r
- tooltip = null;\r
- else\r
- {\r
- tooltip = found.getName();\r
- toolx = evt.getX();\r
- tooly = evt.getY();\r
- }\r
- repaint();\r
+ SequenceI found = findPoint(evt.getX(), evt.getY());\r
+ if (found == null)\r
+ {\r
+ tooltip = null;\r
+ }\r
+ else\r
+ {\r
+ tooltip = found.getName();\r
+ toolx = evt.getX();\r
+ tooly = evt.getY();\r
+ }\r
+ repaint();\r
}\r
\r
public void mouseDragged(MouseEvent evt)\r
mx = evt.getX();\r
my = evt.getY();\r
\r
- rotmat.setIdentity();\r
+ rotmat.setIdentity();\r
\r
- rotmat.rotate( (float) (my - omy), 'x');\r
- rotmat.rotate( (float) (mx - omx), 'y');\r
+ rotmat.rotate( (float) (my - omy), 'x');\r
+ rotmat.rotate( (float) (mx - omx), 'y');\r
\r
- for (int i = 0; i < npoint; i++)\r
- {\r
- SequencePoint sp = (SequencePoint) points.elementAt(i);\r
- sp.coord[0] -= centre[0];\r
- sp.coord[1] -= centre[1];\r
- sp.coord[2] -= centre[2];\r
-\r
- //Now apply the rotation matrix\r
- sp.coord = rotmat.vectorMultiply(sp.coord);\r
-\r
- //Now translate back again\r
- sp.coord[0] += centre[0];\r
- sp.coord[1] += centre[1];\r
- sp.coord[2] += centre[2];\r
- }\r
+ for (int i = 0; i < npoint; i++)\r
+ {\r
+ SequencePoint sp = (SequencePoint) points.elementAt(i);\r
+ sp.coord[0] -= centre[0];\r
+ sp.coord[1] -= centre[1];\r
+ sp.coord[2] -= centre[2];\r
\r
- for (int i = 0; i < 3; i++)\r
- {\r
- axes[i] = rotmat.vectorMultiply(axes[i]);\r
- }\r
- omx = mx;\r
- omy = my;\r
+ //Now apply the rotation matrix\r
+ sp.coord = rotmat.vectorMultiply(sp.coord);\r
+\r
+ //Now translate back again\r
+ sp.coord[0] += centre[0];\r
+ sp.coord[1] += centre[1];\r
+ sp.coord[2] += centre[2];\r
+ }\r
+\r
+ for (int i = 0; i < 3; i++)\r
+ {\r
+ axes[i] = rotmat.vectorMultiply(axes[i]);\r
+ }\r
+ omx = mx;\r
+ omy = my;\r
\r
- paint(this.getGraphics());\r
+ paint(this.getGraphics());\r
}\r
\r
public void rectSelect(int x1, int y1, int x2, int y2)\r
{\r
if (av != null)\r
{\r
- if (!av.getSelectionGroup().sequences.contains(sp.sequence))\r
+ if (!av.getSelectionGroup().getSequences(null).contains(sp.sequence))\r
{\r
av.getSelectionGroup().addSequence(sp.sequence, true);\r
}\r