X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.cms.ui%2Fsrc%2Forg%2Fargeo%2Fcms%2Fscript%2FAppUi.java;h=e0b2a883fcf173aa80c560d61f560bdc79625c3f;hb=743fc68ed576cb578a9cc6c59e1f423d29213be1;hp=cea57df8949bd0323d2ccd46e087e9b78c68ae43;hpb=bf6e7cfca0faab5138ab1591a701a532a65a9ea4;p=lgpl%2Fargeo-commons.git diff --git a/org.argeo.cms.ui/src/org/argeo/cms/script/AppUi.java b/org.argeo.cms.ui/src/org/argeo/cms/script/AppUi.java index cea57df89..e0b2a883f 100644 --- a/org.argeo.cms.ui/src/org/argeo/cms/script/AppUi.java +++ b/org.argeo.cms.ui/src/org/argeo/cms/script/AppUi.java @@ -37,6 +37,8 @@ public class AppUi implements CmsUiProvider, Branding { private String script; // private Branding branding = new Branding(); + private EntryPointFactory factory; + // Branding private String themeId; private String additionalHeaders; @@ -59,20 +61,36 @@ public class AppUi implements CmsUiProvider, Branding { this.ui = uiProvider; } + public AppUi(CmsScriptApp app, EntryPointFactory factory) { + this.app = app; + this.factory = factory; + } + public void apply(Repository repository, Application application, Branding appBranding, String path) { Map factoryProperties = new HashMap<>(); if (appBranding != null) appBranding.applyBranding(factoryProperties); applyBranding(factoryProperties); - EntryPointFactory entryPointFactory = new EntryPointFactory() { - @Override - public EntryPoint create() { - SimpleErgonomics ergonomics = new SimpleErgonomics(repository, "main", "/home/root/argeo:keyring", - AppUi.this, factoryProperties); - return ergonomics; - } - }; - application.addEntryPoint("/" + path, entryPointFactory, factoryProperties); + if (factory != null) { + application.addEntryPoint("/" + path, factory, factoryProperties); + } else { + EntryPointFactory entryPointFactory = new EntryPointFactory() { + @Override + public EntryPoint create() { + SimpleErgonomics ergonomics = new SimpleErgonomics(repository, "main", "/home/root/argeo:keyring", + AppUi.this, factoryProperties); +// CmsUiProvider header = app.getHeader(); +// if (header != null) +// ergonomics.setHeader(header); + app.applySides(ergonomics); + Integer headerHeight = app.getHeaderHeight(); + if (headerHeight != null) + ergonomics.setHeaderHeight(headerHeight); + return ergonomics; + } + }; + application.addEntryPoint("/" + path, entryPointFactory, factoryProperties); + } } public void setUi(CmsUiProvider uiProvider) { @@ -101,31 +119,35 @@ public class AppUi implements CmsUiProvider, Branding { @Override public Control createUi(Composite parent, Node context) throws RepositoryException { CmsPane cmsPane = new CmsPane(parent, SWT.NONE); - // QA - CmsUtils.style(cmsPane.getQaArea(), "qa"); - Button reload = new Button(cmsPane.getQaArea(), SWT.FLAT); - CmsUtils.style(reload, "qa"); - reload.setText("Reload"); - reload.addSelectionListener(new Selected() { - private static final long serialVersionUID = 1L; - - @Override - public void widgetSelected(SelectionEvent e) { - new Thread() { - @Override - public void run() { - app.reload(); - } - }.start(); - RWT.getClient().getService(JavaScriptExecutor.class).execute("setTimeout('location.reload()',1000)"); - } - }); - // Support - CmsUtils.style(cmsPane.getSupportArea(), "support"); - Label msg = new Label(cmsPane.getSupportArea(), SWT.NONE); - CmsUtils.style(msg, "support"); - msg.setText("UNSUPPORTED DEVELOPMENT VERSION"); + if (false) { + // QA + CmsUtils.style(cmsPane.getQaArea(), "qa"); + Button reload = new Button(cmsPane.getQaArea(), SWT.FLAT); + CmsUtils.style(reload, "qa"); + reload.setText("Reload"); + reload.addSelectionListener(new Selected() { + private static final long serialVersionUID = 1L; + + @Override + public void widgetSelected(SelectionEvent e) { + new Thread() { + @Override + public void run() { + app.reload(); + } + }.start(); + RWT.getClient().getService(JavaScriptExecutor.class) + .execute("setTimeout('location.reload()',1000)"); + } + }); + + // Support + CmsUtils.style(cmsPane.getSupportArea(), "support"); + Label msg = new Label(cmsPane.getSupportArea(), SWT.NONE); + CmsUtils.style(msg, "support"); + msg.setText("UNSUPPORTED DEVELOPMENT VERSION"); + } if (ui != null) { ui.createUi(cmsPane.getMainArea(), context);