svoid showImageWithRecognizedTexts_makeTeachable2(final BufferedImage img, final ImageSurface is, final L lines, final SimpleRecognizer sr) { onImageSurfaceHighlightChange(is, voidfunc(Rect r) { RecognizedText rec = findByField(lines, +r); setToolTip(is, rec == null ? null : str(rec.text)); }); imageSurfacePopupMenuWhenHighlighted_top(is, voidfunc(JPopupMenu menu, final Rect r) { addPopupMenuItem(menu, "Teach...", r { final RecognizedText rec = findByField(lines, +r); assertNotASubclassOfConcept(GrabbedImage); new GrabbedImage gi; gi.image = new BWImage(clipBufferedImage(img, rec.r)); ocr_teachPhraseForm(gi, sr, voidfunc(S groupedText) { rec.text = scored(groupedText, 1); is.repaint(); }); }); addSeparator(menu); }); }