X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FRotatableCanvas.java;h=9007e4f0a46fb5d6ac0b9731274d12a40377c0e4;hb=41238b03f514480a593c586c1c9539727b535cda;hp=724b9fbdda3c4f2c2659037fab782b860772cd55;hpb=f7fa4099d6a05dd882129f25304f37769f14d9a2;p=jalview.git diff --git a/src/jalview/gui/RotatableCanvas.java b/src/jalview/gui/RotatableCanvas.java index 724b9fb..9007e4f 100755 --- a/src/jalview/gui/RotatableCanvas.java +++ b/src/jalview/gui/RotatableCanvas.java @@ -1,6 +1,6 @@ /* * Jalview - A Sequence Alignment Editor and Viewer - * Copyright (C) 2005 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle + * Copyright (C) 2006 AM Waterhouse, J Procter, G Barton, M Clamp, S Searle * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License @@ -22,8 +22,6 @@ import jalview.datamodel.*; import jalview.math.*; -import jalview.util.*; - import java.awt.*; import java.awt.event.*; @@ -81,6 +79,25 @@ public class RotatableCanvas extends JPanel implements MouseListener, public RotatableCanvas(AlignViewport av) { this.av = av; + + addMouseWheelListener(new MouseWheelListener() + { + public void mouseWheelMoved(MouseWheelEvent e) + { + if (e.getWheelRotation() > 0) + { + scale = (float) (scale * 1.1); + repaint(); + } + + else + { + scale = (float) (scale * 0.9); + repaint(); + } + } + }); + } public void showLabels(boolean b) @@ -96,7 +113,7 @@ public class RotatableCanvas extends JPanel implements MouseListener, ToolTipManager.sharedInstance().registerComponent(this); ToolTipManager.sharedInstance().setInitialDelay(0); ToolTipManager.sharedInstance().setDismissDelay(10000); - PaintRefresher.Register(this, av.alignment); + PaintRefresher.Register(this, av.getSequenceSetId()); prefsize = getPreferredSize(); orig = new float[npoint][3]; @@ -140,7 +157,6 @@ public class RotatableCanvas extends JPanel implements MouseListener, scale = findScale(); addMouseListener(this); - addKeyListener(this); addMouseMotionListener(this); @@ -400,18 +416,18 @@ public class RotatableCanvas extends JPanel implements MouseListener, halfheight; float z = sp.coord[1] - centre[2]; - if (sp.sequence.getColor() == Color.black) + if (av.getSequenceColour(sp.sequence) == Color.black) { g.setColor(Color.white); } else { - g.setColor(sp.sequence.getColor()); + g.setColor(av.getSequenceColour(sp.sequence)); } if (av.getSelectionGroup() != null) { - if (av.getSelectionGroup().sequences.contains( + if (av.getSelectionGroup().getSequences(false).contains( ((SequencePoint) points.elementAt(i)).sequence)) { g.setColor(Color.gray); @@ -578,7 +594,7 @@ public class RotatableCanvas extends JPanel implements MouseListener, if (av.getSelectionGroup() != null) { av.getSelectionGroup().addOrRemove(found, true); - PaintRefresher.Refresh(this, av.alignment); + PaintRefresher.Refresh(this, av.getSequenceSetId()); } else { @@ -669,8 +685,6 @@ public class RotatableCanvas extends JPanel implements MouseListener, */ public void rectSelect(int x1, int y1, int x2, int y2) { - boolean changedSel = false; - for (int i = 0; i < npoint; i++) { SequencePoint sp = (SequencePoint) points.elementAt(i); @@ -683,9 +697,8 @@ public class RotatableCanvas extends JPanel implements MouseListener, { if (av != null) { - if (!av.getSelectionGroup().sequences.contains(sp.sequence)) + if (!av.getSelectionGroup().getSequences(false).contains(sp.sequence)) { - changedSel = true; av.getSelectionGroup().addSequence(sp.sequence, true); } }