!7 sclass ImagePreview extends DynSCP { new DynModuleRef mate; S dir; L allFiles, imageFiles; transient DynamicHStack buttons; transient ButtonImageLoader imageLoader; File dirObject() { ret newFile(dir); } JComponent visualize2() { Image image = getImage(); if (image == null) ret jcenteredlabel("Need image"); ret jimage(image); } Image getImage() { ret castCall(mate!, 'getImage); } void update { lock lock; if (mate! != null && !dm_moduleStillThere(mate!)) mate.set(null); if (mate! == null) if (setField(mate := DynModuleRef(dm_findMateOfType(this, 'ImageInfo)))) revisualize2(); } }