From d489d6463806f4da4a70181741d6665357f2c0e6 Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Fri, 23 Oct 2020 11:54:38 +0200 Subject: [PATCH] Extract WorkLayer to a separate class. --- .../src/org/argeo/suite/ui/ArgeoSuiteUi.java | 67 +------------------ .../src/org/argeo/suite/ui/WorkLayer.java | 55 +++++++++++++++ 2 files changed, 56 insertions(+), 66 deletions(-) create mode 100644 org.argeo.suite.ui/src/org/argeo/suite/ui/WorkLayer.java diff --git a/org.argeo.suite.ui/src/org/argeo/suite/ui/ArgeoSuiteUi.java b/org.argeo.suite.ui/src/org/argeo/suite/ui/ArgeoSuiteUi.java index d74dc21..72210ad 100644 --- a/org.argeo.suite.ui/src/org/argeo/suite/ui/ArgeoSuiteUi.java +++ b/org.argeo.suite.ui/src/org/argeo/suite/ui/ArgeoSuiteUi.java @@ -5,14 +5,11 @@ import java.util.Map; import javax.jcr.Session; -import org.argeo.cms.ui.CmsTheme; import org.argeo.cms.ui.CmsView; import org.argeo.cms.ui.util.CmsUiUtils; import org.argeo.cms.ui.widgets.TabbedArea; import org.eclipse.swt.SWT; -import org.eclipse.swt.custom.SashForm; import org.eclipse.swt.layout.FormLayout; -import org.eclipse.swt.layout.GridLayout; import org.eclipse.swt.widgets.Composite; /** The {@link CmsView} for the work ergonomics of Argeo Suite. */ @@ -25,8 +22,6 @@ public class ArgeoSuiteUi extends Composite { private Composite leadPane; private Composite dynamicArea; - private CmsTheme theme; - private Session session; private Map layers = new HashMap<>(); @@ -34,7 +29,6 @@ public class ArgeoSuiteUi extends Composite { public ArgeoSuiteUi(Composite parent, int style) { super(parent, style); - theme = CmsTheme.getCmsTheme(parent); this.setLayout(CmsUiUtils.noSpaceGridLayout()); header = new Composite(this, SWT.NONE); @@ -132,65 +126,6 @@ public class ArgeoSuiteUi extends Composite { this.session = session; } - class WorkLayer { - private SashForm area; - private Composite entryArea; - private Composite editorArea; - private TabbedArea tabbedArea; - - WorkLayer(Composite parent, int style) { - area = new SashForm(parent, SWT.HORIZONTAL); - area.setLayoutData(CmsUiUtils.coversAll()); - - if (SWT.RIGHT_TO_LEFT == (style & SWT.RIGHT_TO_LEFT)) {// arabic, hebrew, etc. - editorArea = new Composite(area, SWT.BORDER); - entryArea = new Composite(area, SWT.BORDER); - } else { - entryArea = new Composite(area, SWT.NONE); - editorArea = new Composite(area, SWT.NONE); - } - int[] weights = new int[] { 2000, 8000 }; - area.setWeights(weights); -// editorArea.setLayout(CmsUiUtils.noSpaceGridLayout()); - editorArea.setLayout(new GridLayout()); - - tabbedArea = new TabbedArea(editorArea, SWT.NONE); - tabbedArea.setBodyStyle(SuiteStyle.mainTabBody.toStyleClass()); - tabbedArea.setTabStyle(SuiteStyle.mainTab.toStyleClass()); - tabbedArea.setTabSelectedStyle(SuiteStyle.mainTabSelected.toStyleClass()); - tabbedArea.setCloseIcon(SuiteIcon.close.getSmallIcon(theme)); - tabbedArea.setLayoutData(CmsUiUtils.fillAll()); - - // TODO make it dynamic -// Composite buttons = new Composite(editorTabFolder, SWT.NONE); -// buttons.setLayout(CmsUiUtils.noSpaceGridLayout()); -// ToolBar toolBar = new ToolBar(buttons, SWT.NONE); -// toolBar.setLayoutData(new GridData(SWT.END, SWT.TOP, false, false)); -// ToolItem deleteItem = new ToolItem(toolBar, SWT.PUSH); -// deleteItem.setImage(SuiteIcon.delete.getSmallIcon(theme)); -// deleteItem.setEnabled(false); -// editorTabFolder.setTopRight(buttons); -// -// CTabItem defaultTab = new CTabItem(editorTabFolder, SWT.NONE); -// // defaultTab.setText("Home"); -// defaultTab.setImage(dashboard.getSmallIcon(theme)); -// defaultBody = new Composite(editorTabFolder, SWT.NONE); -// defaultTab.setControl(defaultBody); -// editorTabFolder.setSelection(defaultTab); - - } - - Composite getArea() { - return area; - } - - Composite getEntryArea() { - return entryArea; - } - - TabbedArea getTabbedArea() { - return tabbedArea; - } - } + } diff --git a/org.argeo.suite.ui/src/org/argeo/suite/ui/WorkLayer.java b/org.argeo.suite.ui/src/org/argeo/suite/ui/WorkLayer.java new file mode 100644 index 0000000..e2afb15 --- /dev/null +++ b/org.argeo.suite.ui/src/org/argeo/suite/ui/WorkLayer.java @@ -0,0 +1,55 @@ +package org.argeo.suite.ui; + +import org.argeo.cms.ui.CmsTheme; +import org.argeo.cms.ui.util.CmsUiUtils; +import org.argeo.cms.ui.widgets.TabbedArea; +import org.eclipse.swt.SWT; +import org.eclipse.swt.custom.SashForm; +import org.eclipse.swt.layout.GridLayout; +import org.eclipse.swt.widgets.Composite; + +/** An app layer based on an entry area and an editor area. */ +public class WorkLayer { + private CmsTheme theme; + private SashForm area; + private Composite entryArea; + private Composite editorArea; + private TabbedArea tabbedArea; + + WorkLayer(Composite parent, int style) { + theme = CmsTheme.getCmsTheme(parent); + area = new SashForm(parent, SWT.HORIZONTAL); + area.setLayoutData(CmsUiUtils.coversAll()); + + if (SWT.RIGHT_TO_LEFT == (style & SWT.RIGHT_TO_LEFT)) {// arabic, hebrew, etc. + editorArea = new Composite(area, SWT.BORDER); + entryArea = new Composite(area, SWT.BORDER); + } else { + entryArea = new Composite(area, SWT.NONE); + editorArea = new Composite(area, SWT.NONE); + } + int[] weights = new int[] { 2000, 8000 }; + area.setWeights(weights); +// editorArea.setLayout(CmsUiUtils.noSpaceGridLayout()); + editorArea.setLayout(new GridLayout()); + + tabbedArea = new TabbedArea(editorArea, SWT.NONE); + tabbedArea.setBodyStyle(SuiteStyle.mainTabBody.toStyleClass()); + tabbedArea.setTabStyle(SuiteStyle.mainTab.toStyleClass()); + tabbedArea.setTabSelectedStyle(SuiteStyle.mainTabSelected.toStyleClass()); + tabbedArea.setCloseIcon(SuiteIcon.close.getSmallIcon(theme)); + tabbedArea.setLayoutData(CmsUiUtils.fillAll()); + } + + Composite getArea() { + return area; + } + + Composite getEntryArea() { + return entryArea; + } + + TabbedArea getTabbedArea() { + return tabbedArea; + } +} \ No newline at end of file -- 2.30.2