From 656cf528c7dd048d2bb462a4ed0482505ea09563 Mon Sep 17 00:00:00 2001 From: Dworkowski Florian Date: Fri, 6 Nov 2015 15:45:38 +0100 Subject: [PATCH] --- plugins/Microscope.java | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/plugins/Microscope.java b/plugins/Microscope.java index 046f67f..69de454 100644 --- a/plugins/Microscope.java +++ b/plugins/Microscope.java @@ -155,33 +155,36 @@ public class Microscope extends Panel { private void buttonDefineBeamActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buttonDefineBeamActionPerformed try{ Pen pen = new Pen(Color.RED); - Overlay selection = new Overlays.Rect(pen); - /* + final Overlay selection = new Overlays.Rect(pen); + renderer.addListener(new RendererListener() { @Override public void onSelectionFinished(Renderer renderer, Overlay overlay) { - try { - if (overlay.getLength() > 0) { - beam = overlay.copy(); - beam.setPen(pen); - beam.setSolid(false); - beam.setMovable(true); - renderer.addOverlay(beam); + if (overlay == selection){ + try { + if (overlay.getLength() > 0) { + beam = overlay.copy(); + beam.setPen(pen); + beam.setSolid(false); + beam.setMovable(true); + //renderer.addOverlay(beam); + } + } catch (Exception ex) { + getLogger().log(Level.WARNING, null, ex); + } finally { + renderer.removeListener(this); } - } catch (Exception ex) { - getLogger().log(Level.WARNING, null, ex); - } finally { - renderer.removeListener(this); } } @Override public void onSelectionAborted(Renderer renderer, Overlay overlay) { - renderer.removeListener(this); + if (overlay == selection){ + renderer.removeListener(this); + } } }); renderer.removeOverlay(beam); renderer.startSelection(selection); - */ } catch (Exception ex){ showException(ex);