Author: allain.lalonde
Date: Mon Jul 20 08:02:56 2009
New Revision: 524
Modified:
piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java
Log:
Refactored mousePressed and mouseReleased so that code common to each is
now in a helper method. Net result is a much lower cyclomatic complexity
for each.
Modified:
piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java
==============================================================================
--- piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java
(original)
+++ piccolo2d.java/trunk/core/src/main/java/edu/umd/cs/piccolo/PCanvas.java
Mon Jul 20 08:02:56 2009
@@ -424,28 +424,12 @@
sendInputEventToInputManager(e,
MouseEvent.MOUSE_EXITED);
}
- public void mousePressed(MouseEvent e) {
+ public void mousePressed(MouseEvent rawEvent) {
requestFocus();
boolean shouldBalanceEvent = false;
- if (e.getButton() == MouseEvent.NOBUTTON) {
- if ((e.getModifiers() & MouseEvent.BUTTON1_MASK)
== MouseEvent.BUTTON1_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_PRESSED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON1);
- }
- else if ((e.getModifiers() &
MouseEvent.BUTTON2_MASK) == MouseEvent.BUTTON2_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_PRESSED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON2);
- }
- else if ((e.getModifiers() &
MouseEvent.BUTTON3_MASK) == MouseEvent.BUTTON3_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_PRESSED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON3);
- }
- }
+ MouseEvent e = copyButtonsFromModifiers(rawEvent,
MouseEvent.MOUSE_PRESSED);
switch (e.getButton()) {
case MouseEvent.BUTTON1:
@@ -479,27 +463,11 @@
sendInputEventToInputManager(e,
MouseEvent.MOUSE_PRESSED);
}
-
- public void mouseReleased(MouseEvent e) {
+
+ public void mouseReleased(MouseEvent rawEvent) {
boolean shouldBalanceEvent = false;
- if (e.getButton() == MouseEvent.NOBUTTON) {
- if ((e.getModifiers() & MouseEvent.BUTTON1_MASK)
== MouseEvent.BUTTON1_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_RELEASED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON1);
- }
- else if ((e.getModifiers() &
MouseEvent.BUTTON2_MASK) == MouseEvent.BUTTON2_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_RELEASED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON2);
- }
- else if ((e.getModifiers() &
MouseEvent.BUTTON3_MASK) == MouseEvent.BUTTON3_MASK) {
- e = new MouseEvent((Component) e.getSource(),
MouseEvent.MOUSE_RELEASED, e.getWhen(), e
- .getModifiers(), e.getX(), e.getY(),
e.getClickCount(), e.isPopupTrigger(),
- MouseEvent.BUTTON3);
- }
- }
+ MouseEvent e = copyButtonsFromModifiers(rawEvent,
MouseEvent.MOUSE_RELEASED);
switch (e.getButton()) {
case MouseEvent.BUTTON1:
@@ -533,6 +501,29 @@
sendInputEventToInputManager(e,
MouseEvent.MOUSE_RELEASED);
}
+
+ private MouseEvent copyButtonsFromModifiers(final
MouseEvent rawEvent, int eventType) {
+ if
(rawEvent.getButton() != MouseEvent.NOBUTTON) {
+ if
((rawEvent.getModifiers() & MouseEvent.BUTTON1_MASK) ==
MouseEvent.BUTTON1_MASK) {
+
return new MouseEvent((Component) rawEvent.getSource(),
eventType, rawEvent.getWhen(), rawEvent
+
.getModifiers(), rawEvent.getX(),
rawEvent.getY(), rawEvent.getClickCount(), rawEvent.isPopupTrigger(),
+
MouseEvent.BUTTON1);
+ }
+
else if ((rawEvent.getModifiers() & MouseEvent.BUTTON2_MASK)
== MouseEvent.BUTTON2_MASK) {
+
return new MouseEvent((Component) rawEvent.getSource(),
eventType, rawEvent.getWhen(), rawEvent
+
.getModifiers(), rawEvent.getX(),
rawEvent.getY(), rawEvent.getClickCount(), rawEvent.isPopupTrigger(),
+
MouseEvent.BUTTON2);
+ }
+
else if ((rawEvent.getModifiers() & MouseEvent.BUTTON3_MASK)
== MouseEvent.BUTTON3_MASK) {
+
return new MouseEvent((Component) rawEvent.getSource(),
eventType, rawEvent.getWhen(), rawEvent
+
.getModifiers(), rawEvent.getX(),
rawEvent.getY(), rawEvent.getClickCount(), rawEvent.isPopupTrigger(),
+
MouseEvent.BUTTON3);
+ }
+ }
+
+ return
rawEvent;
+ }
+
};
addMouseListener(mouseListener);
}
--~--~---------~--~----~------------~-------~--~----~
Piccolo2D Developers Group: http://groups.google.com/group/piccolo2d-dev?hl=en
-~----------~----~----~----~------~----~------~--~---