From 3cb4f09b9259374aa25e42ff1ff5d125d345b99d Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Mon, 8 Oct 2018 09:14:10 +0200 Subject: [PATCH] Improve Argeo Office --- .../suite/e4/rap/ArgeoOfficeRapE4App.java | 31 +++++++++++++++++++ org.argeo.suite.e4/e4xmi/argeo-office.e4xmi | 29 ++++++++--------- 2 files changed, 46 insertions(+), 14 deletions(-) diff --git a/org.argeo.suite.e4.rap/src/org/argeo/suite/e4/rap/ArgeoOfficeRapE4App.java b/org.argeo.suite.e4.rap/src/org/argeo/suite/e4/rap/ArgeoOfficeRapE4App.java index 92fcfa3..f9180c7 100644 --- a/org.argeo.suite.e4.rap/src/org/argeo/suite/e4/rap/ArgeoOfficeRapE4App.java +++ b/org.argeo.suite.e4.rap/src/org/argeo/suite/e4/rap/ArgeoOfficeRapE4App.java @@ -1,8 +1,19 @@ package org.argeo.suite.e4.rap; +import java.util.Map; + import org.argeo.cms.e4.rap.AbstractRapE4App; +import org.argeo.cms.util.BundleResourceLoader; +import org.eclipse.rap.e4.E4ApplicationConfig; +import org.eclipse.rap.rwt.RWT; +import org.eclipse.rap.rwt.application.Application; +import org.eclipse.rap.rwt.client.WebClient; +import org.osgi.framework.Bundle; +import org.osgi.framework.BundleContext; +import org.osgi.framework.FrameworkUtil; public class ArgeoOfficeRapE4App extends AbstractRapE4App { + private BundleContext bc = FrameworkUtil.getBundle(getClass()).getBundleContext(); public ArgeoOfficeRapE4App() { setPageTitle("Argeo Office"); @@ -11,4 +22,24 @@ public class ArgeoOfficeRapE4App extends AbstractRapE4App { setLifeCycleUri("bundleclass://org.argeo.suite.e4.rap/org.argeo.suite.e4.rap.ArgeoSuiteLoginLifecycle"); } + @Override + protected void addEntryPoint(Application application, E4ApplicationConfig config, Map properties) { + // String theme ="org.argeo.theme.argeo2.office"; + String theme = RWT.DEFAULT_THEME_ID; + Bundle themeBundle = findTheme("org.argeo.theme.argeo2"); + // application.addStyleSheet(theme, "rap/office-rwt.css", new + // BundleResourceLoader(themeBundle)); + application.addStyleSheet(theme, "rap/office.css", new BundleResourceLoader(themeBundle)); + properties.put(WebClient.THEME_ID, theme); + String font = ""; + properties.put(WebClient.HEAD_HTML, font); + super.addEntryPoint(application, config, properties); + } + + Bundle findTheme(String symbolicName) { + for (Bundle b : bc.getBundles()) + if (symbolicName.equals(b.getSymbolicName())) + return b; + throw new RuntimeException("Theme bundle " + symbolicName + " not found"); + } } diff --git a/org.argeo.suite.e4/e4xmi/argeo-office.e4xmi b/org.argeo.suite.e4/e4xmi/argeo-office.e4xmi index 30c86b5..6b2b5a3 100644 --- a/org.argeo.suite.e4/e4xmi/argeo-office.e4xmi +++ b/org.argeo.suite.e4/e4xmi/argeo-office.e4xmi @@ -14,26 +14,27 @@ - - entityEditorArea - - - - - - + - - - - - - entityEditorArea + + + + + + + + entityEditorArea + + + + + + -- 2.30.2