!7 cmodule OCR { transient ImageSurface is; start { setMainDesktopPane(null); // separate frames is less confusing } visual withCenteredButtons( jscroll(is = imageSurfaceWithStandardOperations()), "Invert", rThread invertImageSurface(is), "Recognize", rThread recognize); void recognize { new OCRRecognizeAndTeach(is.getImage()); } }