X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=blobdiff_plain;f=org.argeo.suite.web%2Fsrc%2Forg%2Fargeo%2Fsuite%2Ffs%2FMyFilesBrowserPage.java;fp=org.argeo.suite.web%2Fsrc%2Forg%2Fargeo%2Fsuite%2Ffs%2FMyFilesBrowserPage.java;h=6afa58bf64720e6f3cac6f55be89b8a50db77607;hp=0000000000000000000000000000000000000000;hb=0887c47a0a7086f298401cb331462fc0444db41c;hpb=991f1814bbe5bef2b08da8d5c27fe2f904a5746c diff --git a/org.argeo.suite.web/src/org/argeo/suite/fs/MyFilesBrowserPage.java b/org.argeo.suite.web/src/org/argeo/suite/fs/MyFilesBrowserPage.java new file mode 100644 index 0000000..6afa58b --- /dev/null +++ b/org.argeo.suite.web/src/org/argeo/suite/fs/MyFilesBrowserPage.java @@ -0,0 +1,40 @@ +package org.argeo.suite.fs; + +import java.nio.file.spi.FileSystemProvider; + +import javax.jcr.Node; +import javax.jcr.RepositoryException; + +import org.argeo.cms.auth.CurrentUser; +import org.argeo.cms.fs.CmsFsBrowser; +import org.argeo.cms.ui.CmsUiProvider; +import org.argeo.eclipse.ui.EclipseUiUtils; +import org.eclipse.swt.SWT; +import org.eclipse.swt.widgets.Composite; +import org.eclipse.swt.widgets.Control; + +/** Default file browser page for the CMS */ +public class MyFilesBrowserPage implements CmsUiProvider { + + private FileSystemProvider nodeFileSystemProvider; + + public MyFilesBrowserPage(FileSystemProvider nodeFileSystemProvider) { + this.nodeFileSystemProvider = nodeFileSystemProvider; + } + + @Override + public Control createUi(Composite parent, Node context) throws RepositoryException { + parent.setLayout(EclipseUiUtils.noSpaceGridLayout()); + + if (CurrentUser.isAnonymous()) + // TODO implement public file display + return null; + + CmsFsBrowser browser = new CmsFsBrowser(parent, SWT.NO_FOCUS, context, nodeFileSystemProvider); + browser.setLayoutData(EclipseUiUtils.fillAll()); + + // TODO set input on the default home folder parent for one user's + // files + return browser; + } +}