From: Mathieu Baudier Date: Tue, 2 Feb 2021 19:33:11 +0000 (+0100) Subject: Force max media width. X-Git-Tag: argeo-suite-2.1.18~10 X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=commitdiff_plain;h=dc6a3192964bf36bc6d7b33dccffcdc441d13957 Force max media width. --- diff --git a/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/AbstractDbkViewer.java b/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/AbstractDbkViewer.java index 44e6f54..b790358 100644 --- a/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/AbstractDbkViewer.java +++ b/publishing/org.argeo.publishing.ui/src/org/argeo/docbook/ui/AbstractDbkViewer.java @@ -51,6 +51,7 @@ import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.MouseListener; import org.eclipse.swt.graphics.Point; import org.eclipse.swt.graphics.Rectangle; +import org.eclipse.swt.layout.GridData; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.eclipse.swt.widgets.Label; @@ -71,6 +72,8 @@ public abstract class AbstractDbkViewer extends AbstractPageViewer implements Ke private final boolean flat; + private Integer maxMediaWidth = null; + protected AbstractDbkViewer(Section parent, int style, CmsEditable cmsEditable) { super(parent, style, cmsEditable); // CmsView cmsView = CmsView.getCmsView(parent); @@ -165,7 +168,15 @@ public abstract class AbstractDbkViewer extends AbstractPageViewer implements Ke protected DbkImg newImg(TextSection parent, Node node) { try { DbkImg img = new DbkImg(parent, parent.getStyle(), node, imageManager); - img.setLayoutData(CmsUiUtils.grabWidth(SWT.CENTER, SWT.DEFAULT)); + GridData imgGd; + if (maxMediaWidth != null) { + imgGd = new GridData(SWT.CENTER, SWT.FILL, false, false); + imgGd.widthHint = maxMediaWidth; + img.setPreferredSize(new Point(maxMediaWidth, 0)); + } else { + imgGd = CmsUiUtils.grabWidth(SWT.CENTER, SWT.DEFAULT); + } + img.setLayoutData(imgGd); updateContent(img); img.setMouseListener(getMouseListener()); img.setFocusListener(getFocusListener()); @@ -922,6 +933,10 @@ public abstract class AbstractDbkViewer extends AbstractPageViewer implements Ke return new ArrayList<>(); } + public void setMaxMediaWidth(Integer maxMediaWidth) { + this.maxMediaWidth = maxMediaWidth; + } + // FILE UPLOAD LISTENER private class FUL implements FileUploadListener { public void uploadProgress(FileUploadEvent event) {