X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.ui%2Fsrc%2Forg%2Fargeo%2Fapp%2Fui%2FSuiteUiUtils.java;h=d1869717e28f1352792defe0ea988c36e10783d5;hb=8873dfad689dff038387f739f358dde5e93d42f4;hp=cad9bdd1ed1715595da5c6dd7f023fab00362659;hpb=942fd932e1f6ed3319575c4c1d944912dfca9fa5;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.ui/src/org/argeo/app/ui/SuiteUiUtils.java b/org.argeo.app.ui/src/org/argeo/app/ui/SuiteUiUtils.java index cad9bdd..d186971 100644 --- a/org.argeo.app.ui/src/org/argeo/app/ui/SuiteUiUtils.java +++ b/org.argeo.app.ui/src/org/argeo/app/ui/SuiteUiUtils.java @@ -1,8 +1,10 @@ package org.argeo.app.ui; +import java.awt.image.BufferedImage; import java.io.IOException; import java.io.InputStream; +import javax.imageio.ImageIO; import javax.jcr.Node; import javax.jcr.RepositoryException; import javax.jcr.Session; @@ -25,7 +27,6 @@ import org.argeo.cms.ui.util.CmsLink; import org.argeo.cms.ui.util.CmsUiUtils; import org.argeo.eclipse.ui.EclipseUiUtils; import org.argeo.jcr.Jcr; -import org.argeo.jcr.JcrException; import org.argeo.jcr.JcrUtils; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.ScrolledComposite; @@ -232,6 +233,27 @@ public class SuiteUiUtils { public static Label addPicture(Composite parent, Node fileNode, Integer maxWidth, Node link) throws RepositoryException { Node content = fileNode.getNode(Node.JCR_CONTENT); + + boolean test = false; + if (test) { + try (InputStream in = JcrUtils.getFileAsStream(fileNode); + // OutputStream out = Files.newOutputStream(Paths.get("/home/mbaudier/tmp/" + + // fileNode.getName())) + ) { + BufferedImage img = ImageIO.read(in); + System.out.println(fileNode.getName() + ": width=" + img.getWidth() + ", height=" + img.getHeight()); +// IOUtils.copy(in, out); + } catch (IOException e) { + throw new RuntimeException(e); + } + + try (InputStream in = JcrUtils.getFileAsStream(fileNode);) { + ImageData imageData = new ImageData(in); + System.out.println(fileNode.getName() + ": width=" + imageData.width + ", height=" + imageData.height); + } catch (IOException e) { + throw new RuntimeException(e); + } + } // TODO move it deeper in the middleware. if (!content.isNodeType(EntityType.box.get())) { if (content.getSession().hasPermission(content.getPath(), Session.ACTION_SET_PROPERTY)) { @@ -337,7 +359,7 @@ public class SuiteUiUtils { } public static String toLink(Node node) { - return node != null ? "#" + CmsUiUtils.cleanPathForUrl(SuiteApp.nodeToState(node)) : null; + return node != null ? "#" + CmsUiUtils.cleanPathForUrl(SuiteApp.nodeToState(node)) : null; } public static Control addLink(Composite parent, String label, Node node, CmsStyle style)