X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.app.ui%2Fsrc%2Forg%2Fargeo%2Fapp%2Fui%2FDefaultEditionLayer.java;h=9e399f0e8d6eeaba335b72c60f4058809c935b5a;hb=f1b87af2e0de38f1f49ab8fe68f9988018914811;hp=4bfc3de664286b7623f3ab5c93d27685d377cfe0;hpb=8317c50a86ebb2d50add224816e3dd6103e36150;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java b/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java index 4bfc3de..9e399f0 100644 --- a/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java +++ b/org.argeo.app.ui/src/org/argeo/app/ui/DefaultEditionLayer.java @@ -5,12 +5,11 @@ import java.util.List; import java.util.Map; import org.argeo.api.acr.Content; -import org.argeo.api.cms.CmsTheme; import org.argeo.cms.Localized; +import org.argeo.cms.swt.CmsSwtTheme; import org.argeo.cms.swt.CmsSwtUtils; +import org.argeo.cms.swt.acr.SwtTabbedArea; import org.argeo.cms.swt.acr.SwtUiProvider; -import org.argeo.cms.swt.widgets.SwtTabbedArea; -import org.argeo.cms.ui.CmsUiProvider; import org.argeo.util.LangUtils; import org.eclipse.swt.SWT; import org.eclipse.swt.custom.SashForm; @@ -18,13 +17,15 @@ import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; import org.eclipse.swt.widgets.Control; import org.osgi.framework.BundleContext; +import org.osgi.framework.Constants; import org.osgi.framework.wiring.BundleWiring; /** An app layer based on an entry area and an editor area. */ public class DefaultEditionLayer implements SuiteLayer { - private CmsUiProvider entryArea; - private CmsUiProvider defaultView; - private CmsUiProvider workArea; + private String id; + private SwtUiProvider entryArea; + private SwtUiProvider defaultView; + private SwtUiProvider workArea; private List weights = new ArrayList<>(); private boolean startMaximized = false; private boolean fixedEntryArea = false; @@ -57,7 +58,7 @@ public class DefaultEditionLayer implements SuiteLayer { this.workArea.createUiPart(area, context); return area; } - CmsTheme theme = CmsSwtUtils.getCmsTheme(parent); + CmsSwtTheme theme = CmsSwtUtils.getCmsTheme(parent); SwtTabbedArea tabbedArea = createTabbedArea(parent, theme); return tabbedArea; } @@ -118,7 +119,15 @@ public class DefaultEditionLayer implements SuiteLayer { return title; } + @Override + public String getId() { + return id; + } + public void init(BundleContext bundleContext, Map properties) { + String pid = (String) properties.get(Constants.SERVICE_PID); + id = pid; + weights = LangUtils.toStringList(properties.get(Property.weights.name())); startMaximized = properties.containsKey(Property.startMaximized.name()) && "true".equals(properties.get(Property.startMaximized.name())); @@ -158,25 +167,25 @@ public class DefaultEditionLayer implements SuiteLayer { } - public void setEntryArea(CmsUiProvider entryArea) { + public void setEntryArea(SwtUiProvider entryArea) { this.entryArea = entryArea; } - public void setWorkArea(CmsUiProvider workArea) { + public void setWorkArea(SwtUiProvider workArea) { this.workArea = workArea; } - public void setDefaultView(CmsUiProvider defaultView) { + public void setDefaultView(SwtUiProvider defaultView) { this.defaultView = defaultView; } - SwtTabbedArea createTabbedArea(Composite parent, CmsTheme theme) { + SwtTabbedArea createTabbedArea(Composite parent, CmsSwtTheme theme) { SwtTabbedArea tabbedArea = new SwtTabbedArea(parent, SWT.NONE); tabbedArea.setSingleTab(singleTab); tabbedArea.setBodyStyle(SuiteStyle.mainTabBody.style()); tabbedArea.setTabStyle(SuiteStyle.mainTab.style()); tabbedArea.setTabSelectedStyle(SuiteStyle.mainTabSelected.style()); - tabbedArea.setCloseIcon(SuiteIcon.close.getSmallIcon(theme)); + tabbedArea.setCloseIcon(theme.getSmallIcon(SuiteIcon.close)); tabbedArea.setLayoutData(CmsSwtUtils.fillAll()); return tabbedArea; } @@ -189,7 +198,7 @@ public class DefaultEditionLayer implements SuiteLayer { SashFormEditionArea(Composite parent, int style) { super(parent, SWT.HORIZONTAL); - CmsTheme theme = CmsSwtUtils.getCmsTheme(parent); + CmsSwtTheme theme = CmsSwtUtils.getCmsTheme(parent); Composite editorC; if (SWT.RIGHT_TO_LEFT == (style & SWT.RIGHT_TO_LEFT)) {// arabic, hebrew, etc. @@ -242,7 +251,7 @@ public class DefaultEditionLayer implements SuiteLayer { public FixedEditionArea(Composite parent, int style) { super(parent, style); - CmsTheme theme = CmsSwtUtils.getCmsTheme(parent); + CmsSwtTheme theme = CmsSwtUtils.getCmsTheme(parent); setLayout(CmsSwtUtils.noSpaceGridLayout(2));