From c186c05d53ea978b7bc70892a8d307cbe5a123fa Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Tue, 25 May 2021 06:28:39 +0200 Subject: [PATCH] Improve content layer. --- .../config/contentLayer.properties | 2 +- .../config/documentUiProvider.properties | 2 +- .../argeo/publishing/ui/DocumentUiProvider.java | 14 +++++++++++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/library/org.argeo.library.ui/config/contentLayer.properties b/library/org.argeo.library.ui/config/contentLayer.properties index 0f07715..c1ca8e3 100644 --- a/library/org.argeo.library.ui/config/contentLayer.properties +++ b/library/org.argeo.library.ui/config/contentLayer.properties @@ -3,4 +3,4 @@ service.pid=argeo.library.ui.contentLayer title=%content icon=documents -entity.type=nt:folder,entity:space,entity:document +entity.type=nt:folder,nt:file,entity:space,entity:document diff --git a/publishing/org.argeo.publishing.ui/config/documentUiProvider.properties b/publishing/org.argeo.publishing.ui/config/documentUiProvider.properties index 2b9635f..855735d 100644 --- a/publishing/org.argeo.publishing.ui/config/documentUiProvider.properties +++ b/publishing/org.argeo.publishing.ui/config/documentUiProvider.properties @@ -1,3 +1,3 @@ service.pid=argeo.publishing.ui.documentUiProvider -entity.type=entity:document \ No newline at end of file +entity.type=entity:document,nt:file \ No newline at end of file diff --git a/publishing/org.argeo.publishing.ui/src/org/argeo/publishing/ui/DocumentUiProvider.java b/publishing/org.argeo.publishing.ui/src/org/argeo/publishing/ui/DocumentUiProvider.java index 17292d8..a2a4977 100644 --- a/publishing/org.argeo.publishing.ui/src/org/argeo/publishing/ui/DocumentUiProvider.java +++ b/publishing/org.argeo.publishing.ui/src/org/argeo/publishing/ui/DocumentUiProvider.java @@ -2,6 +2,7 @@ package org.argeo.publishing.ui; import javax.jcr.Node; import javax.jcr.RepositoryException; +import javax.jcr.nodetype.NodeType; import org.argeo.cms.ui.CmsEditable; import org.argeo.cms.ui.CmsUiProvider; @@ -12,6 +13,7 @@ import org.argeo.docbook.DbkType; import org.argeo.docbook.ui.AbstractDbkViewer; import org.argeo.docbook.ui.DocumentTextEditor; import org.eclipse.swt.SWT; +import org.eclipse.swt.browser.Browser; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; @@ -30,7 +32,17 @@ public class DocumentUiProvider implements CmsUiProvider { page.setLayout(CmsUiUtils.noSpaceGridLayout()); AbstractDbkViewer dbkEditor = new DocumentTextEditor(page, SWT.NONE, textNode, cmsEditable); - + return page; + + } else if (context.isNodeType(NodeType.NT_FILE)) { + String fileName = context.getName(); + if (fileName.endsWith(".pdf")) { + Browser browser = new Browser(parent, SWT.NONE); + String dataPath = CmsUiUtils.getDataPath(context); + browser.setUrl(dataPath); + browser.setLayoutData(CmsUiUtils.fillAll()); + return browser; + } } return null; } -- 2.30.2