!7 module ImageSegmenter extends DynImageSurface { start { ownResource(vmBus_onMessage('newClipboardContents, voidfunc(fO o) { final BufferedImage img = toBufferedImageOpt(o); if (img != null) { temp enter(); thread { setImage(new BWImage(img)); } } })); } BWImage getBWImage() { ret toBWImage(getImage()); } visualize { ret withCenteredButtons(super.visualize(), "Auto-contrast", rThread { setImage(bwAutoContrast(getBWImage())) }, "Contrast+", rThread { setImage(bwContrast(1.1, getBWImage())) } ); } }