Coverage details for edu.uci.ics.jung.visualization.control.PluggableGraphMouse

LineHitsSource
1 /*
2  * Copyright (c) 2005, the JUNG Project and the Regents of the University of
3  * California All rights reserved.
4  *
5  * This software is open-source under the BSD license; see either "license.txt"
6  * or http://jung.sourceforge.net/license.txt for a description.
7  *
8  * Created on Jul 7, 2005
9  */
10  
11 package edu.uci.ics.jung.visualization.control;
12  
13 import java.awt.Component;
14 import java.awt.event.MouseEvent;
15 import java.awt.event.MouseListener;
16 import java.awt.event.MouseMotionListener;
17 import java.awt.event.MouseWheelEvent;
18 import java.awt.event.MouseWheelListener;
19 import java.util.LinkedHashSet;
20 import java.util.Set;
21  
22 import edu.uci.ics.jung.visualization.VisualizationViewer;
23  
24 /**
25  * a GraphMouse that accepts plugins for various mouse events.
26  *
27  * @author Tom Nelson - RABA Technologies
28  *
29  *
30  */
310public class PluggableGraphMouse implements VisualizationViewer.GraphMouse {
32  
33     MouseListener[] mouseListeners;
34     MouseMotionListener[] mouseMotionListeners;
35     MouseWheelListener[] mouseWheelListeners;
360    Set mousePluginList = new LinkedHashSet();
370    Set mouseMotionPluginList = new LinkedHashSet();
380    Set mouseWheelPluginList = new LinkedHashSet();
39  
40     public void add(GraphMousePlugin plugin) {
410        if(plugin instanceof MouseListener) {
420            mousePluginList.add(plugin);
430            mouseListeners = null;
44         }
450        if(plugin instanceof MouseMotionListener) {
460            mouseMotionPluginList.add(plugin);
470            mouseMotionListeners = null;
48         }
490        if(plugin instanceof MouseWheelListener) {
500            mouseWheelPluginList.add(plugin);
510            mouseWheelListeners = null;
52         }
530    }
54  
55     public void remove(GraphMousePlugin plugin) {
560        if(plugin instanceof MouseListener) {
570            boolean wasThere = mousePluginList.remove(plugin);
580            if(wasThere) mouseListeners = null;
59         }
600        if(plugin instanceof MouseMotionListener) {
610            boolean wasThere = mouseMotionPluginList.remove(plugin);
620            if(wasThere) mouseMotionListeners = null;
63         }
640        if(plugin instanceof MouseWheelListener) {
650            boolean wasThere = mouseWheelPluginList.remove(plugin);
660            if(wasThere) mouseWheelListeners = null;
67         }
680    }
69     
70     private void checkMouseListeners() {
710        if(mouseListeners == null) {
720            mouseListeners = (MouseListener[])
73             mousePluginList.toArray(new MouseListener[mousePluginList.size()]);
74         }
750    }
76     
77     private void checkMouseMotionListeners() {
780        if(mouseMotionListeners == null){
790            mouseMotionListeners = (MouseMotionListener[])
80             mouseMotionPluginList.toArray(new MouseMotionListener[mouseMotionPluginList.size()]);
81         }
820    }
83     
84     private void checkMouseWheelListeners() {
850        if(mouseWheelListeners == null) {
860            mouseWheelListeners = (MouseWheelListener[])
87             mouseWheelPluginList.toArray(new MouseWheelListener[mouseWheelPluginList.size()]);
88         }
890    }
90  
91     public void mouseClicked(MouseEvent e) {
920        checkMouseListeners();
930        for(int i=0; i<mouseListeners.length; i++) {
940            mouseListeners[i].mouseClicked(e);
950            if(e.isConsumed()) break;
96         }
970        ((Component) e.getSource()).repaint();
980    }
99     
100     public void mousePressed(MouseEvent e) {
1010        checkMouseListeners();
1020        for(int i=0; i<mouseListeners.length; i++) {
1030            mouseListeners[i].mousePressed(e);
1040            if(e.isConsumed()) break;
105         }
1060        ((Component) e.getSource()).repaint();
1070    }
108     
109     public void mouseReleased(MouseEvent e) {
1100        checkMouseListeners();
1110        for(int i=0; i<mouseListeners.length; i++) {
1120            mouseListeners[i].mouseReleased(e);
1130            if(e.isConsumed()) break;
114         }
1150        ((Component) e.getSource()).repaint();
1160    }
117     
118     public void mouseEntered(MouseEvent e) {
1190        checkMouseListeners();
1200        for(int i=0; i<mouseListeners.length; i++) {
1210            mouseListeners[i].mouseEntered(e);
1220            if(e.isConsumed()) break;
123         }
1240        ((Component) e.getSource()).repaint();
1250    }
126     
127     public void mouseExited(MouseEvent e) {
1280        checkMouseListeners();
1290        for(int i=0; i<mouseListeners.length; i++) {
1300            mouseListeners[i].mouseExited(e);
1310            if(e.isConsumed()) break;
132         }
1330        ((Component) e.getSource()).repaint();
1340    }
135     
136     public void mouseDragged(MouseEvent e) {
1370        checkMouseMotionListeners();
1380        for(int i=0; i<mouseMotionListeners.length; i++) {
1390            mouseMotionListeners[i].mouseDragged(e);
1400            if(e.isConsumed()) break;
141         }
1420        ((Component) e.getSource()).repaint();
1430    }
144     
145     public void mouseMoved(MouseEvent e) {
1460        checkMouseMotionListeners();
1470        for(int i=0; i<mouseMotionListeners.length; i++) {
1480            mouseMotionListeners[i].mouseMoved(e);
1490            if(e.isConsumed()) break;
150         }
1510        ((Component) e.getSource()).repaint();
1520    }
153     
154     public void mouseWheelMoved(MouseWheelEvent e) {
1550        checkMouseWheelListeners();
1560        for(int i=0; i<mouseWheelListeners.length; i++) {
1570            mouseWheelListeners[i].mouseWheelMoved(e);
1580            if(e.isConsumed()) break;
159         }
1600        ((Component) e.getSource()).repaint();
1610    }
162 }

this report was generated by version 1.0.5 of jcoverage.
visit www.jcoverage.com for updates.

copyright © 2003, jcoverage ltd. all rights reserved.
Java is a trademark of Sun Microsystems, Inc. in the United States and other countries.