srecord noeq JFilePathButton(File file) is Swingable { transient JButton button; cachedVisualize { button if null = jimageButtonScaledToWidth(16, #1101292, "", l0 showInExplorer); updateToolTip(); ret button; } void showInExplorer { thread { //startPlatformFileManager(dirOfFile(file)); desktopOpen(dirOfFile(file)); } } void setFile(File file) { this.file = file; updateToolTip(); } void updateToolTip { setEnabled(button, file != null); toolTip(file == null ? "No file" : f2s(file) + " [click to show in file explorer]", button); } }