diff --git a/swt/src/main/java/edu/umd/cs/piccolox/swt/PSWTImage.java b/swt/src/main/java/edu/umd/cs/piccolox/swt/PSWTImage.java index b281aef..735079b 100644 --- a/swt/src/main/java/edu/umd/cs/piccolox/swt/PSWTImage.java +++ b/swt/src/main/java/edu/umd/cs/piccolox/swt/PSWTImage.java @@ -64,9 +64,7 @@ this.canvas = canvas; canvas.addDisposeListener(new DisposeListener() { public void widgetDisposed(final DisposeEvent de) { - if (image != null) { - image.dispose(); - } + disposeImage(); } }); } @@ -126,6 +124,12 @@ firePropertyChange(PImage.PROPERTY_CODE_IMAGE, PImage.PROPERTY_IMAGE, old, image); } + protected void disposeImage() { + if (image != null) { + image.dispose(); + } + } + protected void paint(final PPaintContext paintContext) { if (getImage() != null) { final Rectangle r = image.getBounds();