X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fui%2Fwidgets%2FImg.java;h=fb1091a028e49d6e5c1e76b37f58795399e8becc;hb=623a35d1a39522cf8b6a1d6c860ac60a2646f03d;hp=258aa9f49eb6006086675cb5f3b6c689fce6af95;hpb=10aaa7aff828d944077aa2016be1987f2ed47fa8;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui/src/org/argeo/cms/ui/widgets/Img.java b/org.argeo.cms.ui/src/org/argeo/cms/ui/widgets/Img.java index 258aa9f49..fb1091a02 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/ui/widgets/Img.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/ui/widgets/Img.java @@ -10,6 +10,7 @@ import org.argeo.cms.ui.util.CmsUiUtils; import org.argeo.cms.ui.viewers.NodePart; import org.argeo.cms.ui.viewers.Section; import org.argeo.cms.ui.viewers.SectionPart; +import org.argeo.jcr.Jcr; import org.argeo.jcr.JcrException; import org.eclipse.rap.fileupload.FileUploadHandler; import org.eclipse.rap.fileupload.FileUploadListener; @@ -87,10 +88,22 @@ public class Img extends EditableImage implements SectionPart, NodePart { } } - protected Control createImageChooser(Composite box, String style) throws RepositoryException { + protected Node getUploadFolder() { + return Jcr.getParent(getNode()); + } + + protected String getUploadName() { Node node = getNode(); - JcrFileUploadReceiver receiver = new JcrFileUploadReceiver(node.getParent(), - node.getName() + '[' + node.getIndex() + ']', imageManager); + return Jcr.getName(node) + '[' + Jcr.getIndex(node) + ']'; + } + + protected CmsImageManager getImageManager() { + return imageManager; + } + + protected Control createImageChooser(Composite box, String style) throws RepositoryException { + JcrFileUploadReceiver receiver = new JcrFileUploadReceiver(this, getUploadFolder(), getUploadName(), + imageManager); if (currentUploadHandler != null) currentUploadHandler.dispose(); currentUploadHandler = prepareUpload(receiver);