From b9cd8b693d0504a93598b73244e90bb54f9d547a Mon Sep 17 00:00:00 2001 From: Simon Leischnig Date: Mon, 27 Apr 2020 14:18:35 +0200 Subject: [PATCH 1/2] refactor unfitting name --- .../visual/sphincsplus/ui/SphincsPlusForsView.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java index aa6399bd1..0d425cef0 100644 --- a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java +++ b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java @@ -198,7 +198,7 @@ public void mouseScrolled(MouseEvent e) { }); // Camera Movement - MouseListener dragQueen = new MouseListener() { + MouseListener draglistener = new MouseListener() { @Override public void mouseUp(MouseEvent e) { @@ -238,8 +238,8 @@ public void mouseDoubleClick(MouseEvent e) { } }; - graphViewer.getGraphControl().addMouseListener(dragQueen); - zestComposite.addMouseListener(dragQueen); + graphViewer.getGraphControl().addMouseListener(draglistener); + zestComposite.addMouseListener(draglistener); // We give the focus to our graphViewer, so it receives the MouseWheel Events. graphViewer.getControl().forceFocus(); From 37a57564ce7673830ffae126b7f59add8da3b1a1 Mon Sep 17 00:00:00 2001 From: Simon Leischnig Date: Mon, 27 Apr 2020 19:02:49 +0200 Subject: [PATCH 2/2] remove background thread and replace with MouseMove listener --- .../sphincsplus/ui/SphincsPlusForsView.java | 43 ++++++++----------- .../sphincsplus/ui/SphincsPlusTreeView.java | 36 +++++++--------- 2 files changed, 34 insertions(+), 45 deletions(-) diff --git a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java index 0d425cef0..fde60aa80 100644 --- a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java +++ b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusForsView.java @@ -19,6 +19,7 @@ import org.eclipse.swt.events.ExpandListener; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.MouseListener; +import org.eclipse.swt.events.MouseMoveListener; import org.eclipse.swt.events.MouseWheelListener; import org.eclipse.swt.events.PaintEvent; import org.eclipse.swt.events.PaintListener; @@ -198,7 +199,7 @@ public void mouseScrolled(MouseEvent e) { }); // Camera Movement - MouseListener draglistener = new MouseListener() { + MouseListener dragQueen = new MouseListener() { @Override public void mouseUp(MouseEvent e) { @@ -215,21 +216,6 @@ public void mouseDown(MouseEvent e) { if (distinctListener == false) zestComposite.setCursor(getDisplay().getSystemCursor(SWT.CURSOR_SIZEALL)); - Runnable runnable = new Runnable() { - @Override - public void run() { - while (mouseDragging) { - if (distinctListener == false) - updateViewLocation(); - try { - Thread.sleep(2); - - } catch (InterruptedException e) { - } - } - } - }; - new Thread(runnable).start(); } @Override @@ -238,8 +224,17 @@ public void mouseDoubleClick(MouseEvent e) { } }; - graphViewer.getGraphControl().addMouseListener(draglistener); - zestComposite.addMouseListener(draglistener); + + graphViewer.getGraphControl().addMouseListener(dragQueen); + MouseMoveListener moveListener = new MouseMoveListener() { + + @Override + public void mouseMove(MouseEvent e) { + updateViewLocation(); + } + }; + graphViewer.getGraphControl().addMouseMoveListener(moveListener); + zestComposite.addMouseListener(dragQueen); // We give the focus to our graphViewer, so it receives the MouseWheel Events. graphViewer.getControl().forceFocus(); @@ -282,10 +277,10 @@ public void itemCollapsed(ExpandEvent e) { * Sets the current view location based on mouse movement. */ private void updateViewLocation() { - curDisplay.asyncExec(new Runnable() { - - @Override - public void run() { +// curDisplay.asyncExec(new Runnable() { +// +// @Override +// public void run() { newMouse = getDisplay().getCursorLocation(); differenceMouseX = newMouse.x - oldMouse.x; differenceMouseY = newMouse.y - oldMouse.y; @@ -297,8 +292,8 @@ public void run() { oldMouse = newMouse; } } - } - }); +// } +// }); } /** diff --git a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusTreeView.java b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusTreeView.java index befd6512b..c54828ad0 100644 --- a/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusTreeView.java +++ b/org.jcryptool.visual.sphincsplus/src/org/jcryptool/visual/sphincsplus/ui/SphincsPlusTreeView.java @@ -19,6 +19,7 @@ import org.eclipse.swt.events.ExpandListener; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.MouseListener; +import org.eclipse.swt.events.MouseMoveListener; import org.eclipse.swt.events.MouseWheelListener; import org.eclipse.swt.events.PaintEvent; import org.eclipse.swt.events.PaintListener; @@ -313,21 +314,6 @@ public void mouseDown(MouseEvent e) { if (distinctListener == false) zestComposite.setCursor(getDisplay().getSystemCursor(SWT.CURSOR_SIZEALL)); - Runnable runnable = new Runnable() { - @Override - public void run() { - while (mouseDragging) { - if (distinctListener == false) - updateViewLocation(); - try { - Thread.sleep(2); - - } catch (InterruptedException e) { - } - } - } - }; - new Thread(runnable).start(); } @Override @@ -337,6 +323,14 @@ public void mouseDoubleClick(MouseEvent e) { }; graphViewer.getGraphControl().addMouseListener(dragQueen); + graphViewer.getGraphControl().addMouseMoveListener(new MouseMoveListener() { + + @Override + public void mouseMove(MouseEvent e) { + updateViewLocation(); + } + }); + zestComposite.addMouseListener(dragQueen); // We give the focus to our graphViewer, so it receives the MouseWheel Events @@ -380,10 +374,10 @@ public void itemCollapsed(ExpandEvent e) { * Sets the current view location based on mouse movement */ private void updateViewLocation() { - curDisplay.asyncExec(new Runnable() { - - @Override - public void run() { +// curDisplay.asyncExec(new Runnable() { +// +// @Override +// public void run() { newMouse = getDisplay().getCursorLocation(); differenceMouseX = newMouse.x - oldMouse.x; differenceMouseY = newMouse.y - oldMouse.y; @@ -395,8 +389,8 @@ public void run() { oldMouse = newMouse; } } - } - }); +// } +// }); } /**