transient sclass JGallery is Swingable { L files; DynamicHStack buttons = makeNiceButtons(); ButtonImageLoader imageLoader = new ButtonImageLoader(buttons); void setImageFiles(L files) { if (eq(this.files, files)) ret; this.files = files; printVars("JGallery.setImageFiles", files); L l = filesForNiceButtons(files, lambda0 openImage); /*for (final TextImageAction tia : l) tia.popupMenuMaker = imageFilesPopupMenuFunction(tia);*/ replaceNiceButtons(buttons, l); imageLoader?.update(); } visual jHigherScrollPane(jfullcenter(buttons)); swappable void openImage(File f) { showImage(f); } }