projects
/
gpl
/
argeo-suite.git
/ blobdiff
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Massive Argeo APIs refactoring
[gpl/argeo-suite.git]
/
org.argeo.suite.ui
/
src
/
org
/
argeo
/
suite
/
ui
/
SuiteUi.java
diff --git
a/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java
b/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java
index 1231d9262efda834e893a75f6a4dd81b670f79af..dc2ef509b1161d00e203d75a5ca5871df7a31376 100644
(file)
--- a/
org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java
+++ b/
org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java
@@
-8,29
+8,33
@@
import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import org.a
pache.commons.logging.Log
;
-import org.a
pache.commons.logging.LogFactory
;
-import org.argeo.api.
NodeConstants
;
-import org.argeo.api.
NodeUtil
s;
-import org.argeo.cms.
ui.CmsView
;
-import org.argeo.cms.
ui.util.CmsUi
Utils;
+import org.a
rgeo.api.cms.CmsUi
;
+import org.a
rgeo.api.cms.CmsView
;
+import org.argeo.api.
cms.CmsLog
;
+import org.argeo.api.
cms.CmsConstant
s;
+import org.argeo.cms.
Localized
;
+import org.argeo.cms.
swt.CmsSwt
Utils;
import org.argeo.jcr.Jcr;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Composite;
/** The view for the default ergonomics of Argeo Suite. */
import org.argeo.jcr.Jcr;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FormLayout;
import org.eclipse.swt.widgets.Composite;
/** The view for the default ergonomics of Argeo Suite. */
-class SuiteUi extends Composite {
+class SuiteUi extends Composite
implements CmsUi
{
private static final long serialVersionUID = 6207018859086689108L;
private static final long serialVersionUID = 6207018859086689108L;
- private final static Log log = LogFactory.getLog(SuiteUi.class);
+ private final static CmsLog log = CmsLog.getLog(SuiteUi.class);
+
+ private Localized title;
private Composite header;
private Composite header;
+ private Composite footer;
private Composite belowHeader;
private Composite leadPane;
private Composite belowHeader;
private Composite leadPane;
+ private Composite sidePane;
private Composite dynamicArea;
private Session sysSession;
private Session homeSession;
private Composite dynamicArea;
private Session sysSession;
private Session homeSession;
- private Node user
Home
;
+ private Node user
Dir
;
private Map<String, SuiteLayer> layers = new HashMap<>();
private Map<String, Composite> workAreas = new HashMap<>();
private Map<String, SuiteLayer> layers = new HashMap<>();
private Map<String, Composite> workAreas = new HashMap<>();
@@
-40,38
+44,51
@@
class SuiteUi extends Composite {
public SuiteUi(Composite parent, int style) {
super(parent, style);
public SuiteUi(Composite parent, int style) {
super(parent, style);
- cmsView = Cms
View
.getCmsView(parent);
- this.setLayout(Cms
Ui
Utils.noSpaceGridLayout());
+ cmsView = Cms
SwtUtils
.getCmsView(parent);
+ this.setLayout(Cms
Swt
Utils.noSpaceGridLayout());
header = new Composite(this, SWT.NONE);
header = new Composite(this, SWT.NONE);
- CmsUiUtils.style(header, SuiteStyle.header);
- header.setLayoutData(CmsUiUtils.fillWidth());
+ header.setLayout(CmsSwtUtils.noSpaceGridLayout());
+ CmsSwtUtils.style(header, SuiteStyle.header);
+ header.setLayoutData(CmsSwtUtils.fillWidth());
belowHeader = new Composite(this, SWT.NONE);
belowHeader = new Composite(this, SWT.NONE);
- belowHeader.setLayoutData(CmsUiUtils.fillAll());
+ belowHeader.setLayoutData(CmsSwtUtils.fillAll());
+
+ footer = new Composite(this, SWT.NONE);
+ footer.setLayout(CmsSwtUtils.noSpaceGridLayout());
+ CmsSwtUtils.style(footer, SuiteStyle.footer);
+ footer.setLayoutData(CmsSwtUtils.fillWidth());
}
public void refreshBelowHeader(boolean initApp) {
}
public void refreshBelowHeader(boolean initApp) {
- Cms
Ui
Utils.clear(belowHeader);
+ Cms
Swt
Utils.clear(belowHeader);
int style = getStyle();
if (initApp) {
int style = getStyle();
if (initApp) {
- belowHeader.setLayout(Cms
UiUtils.noSpaceGridLayout(2
));
+ belowHeader.setLayout(Cms
SwtUtils.noSpaceGridLayout(3
));
if (SWT.RIGHT_TO_LEFT == (style & SWT.RIGHT_TO_LEFT)) {// arabic, hebrew, etc.
if (SWT.RIGHT_TO_LEFT == (style & SWT.RIGHT_TO_LEFT)) {// arabic, hebrew, etc.
+ sidePane = new Composite(belowHeader, SWT.NONE);
+ sidePane.setLayout(CmsSwtUtils.noSpaceGridLayout());
+ sidePane.setLayoutData(CmsSwtUtils.fillHeight());
dynamicArea = new Composite(belowHeader, SWT.NONE);
leadPane = new Composite(belowHeader, SWT.NONE);
} else {
leadPane = new Composite(belowHeader, SWT.NONE);
dynamicArea = new Composite(belowHeader, SWT.NONE);
dynamicArea = new Composite(belowHeader, SWT.NONE);
leadPane = new Composite(belowHeader, SWT.NONE);
} else {
leadPane = new Composite(belowHeader, SWT.NONE);
dynamicArea = new Composite(belowHeader, SWT.NONE);
+ sidePane = new Composite(belowHeader, SWT.NONE);
+ sidePane.setLayout(CmsSwtUtils.noSpaceGridLayout());
+ sidePane.setLayoutData(CmsSwtUtils.fillHeight());
}
}
- leadPane.setLayoutData(Cms
Ui
Utils.fillHeight());
-
CmsUiUtils.style(leadPane, SuiteStyle.leadPane
);
-
dynamicArea.setLayoutData(CmsUiUtils.fillAll()
);
+ leadPane.setLayoutData(Cms
Swt
Utils.fillHeight());
+
leadPane.setLayout(CmsSwtUtils.noSpaceGridLayout()
);
+
CmsSwtUtils.style(leadPane, SuiteStyle.leadPane
);
+ dynamicArea.setLayoutData(CmsSwtUtils.fillAll());
dynamicArea.setLayout(new FormLayout());
} else {
dynamicArea.setLayout(new FormLayout());
} else {
- belowHeader.setLayout(Cms
Ui
Utils.noSpaceGridLayout());
+ belowHeader.setLayout(Cms
Swt
Utils.noSpaceGridLayout());
}
}
}
}
@@
-91,33
+108,42
@@
class SuiteUi extends Composite {
private Composite getLayer(String id, Node context) {
if (!layers.containsKey(id))
private Composite getLayer(String id, Node context) {
if (!layers.containsKey(id))
-
throw new IllegalArgumentException("No layer " + id + " is available.")
;
+
return null
;
if (!workAreas.containsKey(id))
initLayer(id, layers.get(id), context);
return workAreas.get(id);
}
Composite switchToLayer(String layerId, Node context) {
if (!workAreas.containsKey(id))
initLayer(id, layers.get(id), context);
return workAreas.get(id);
}
Composite switchToLayer(String layerId, Node context) {
+ Composite current = null;
if (currentLayerId != null) {
if (currentLayerId != null) {
-
Composite
current = getCurrentWorkArea();
+ current = getCurrentWorkArea();
if (currentLayerId.equals(layerId))
return current;
}
if (context == null) {
if (!cmsView.isAnonymous())
if (currentLayerId.equals(layerId))
return current;
}
if (context == null) {
if (!cmsView.isAnonymous())
- context = user
Home
;
+ context = user
Dir
;
}
Composite toShow = getLayer(layerId, context);
}
Composite toShow = getLayer(layerId, context);
- currentLayerId = layerId;
- if (!isDisposed())
- getDisplay().syncExec(() -> {
- if (!toShow.isDisposed())
+ if (toShow != null) {
+ currentLayerId = layerId;
+ if (!isDisposed()) {
+// getDisplay().syncExec(() -> {
+ if (!toShow.isDisposed()) {
toShow.moveAbove(null);
toShow.moveAbove(null);
- else
+ } else {
log.warn("Cannot show work area because it is disposed.");
log.warn("Cannot show work area because it is disposed.");
+ toShow = initLayer(layerId, layers.get(layerId), context);
+ toShow.moveAbove(null);
+ }
dynamicArea.layout(true, true);
dynamicArea.layout(true, true);
- });
- return toShow;
+// });
+ }
+ return toShow;
+ } else {
+ return current;
+ }
}
Composite switchToLayer(SuiteLayer layer, Node context) {
}
Composite switchToLayer(SuiteLayer layer, Node context) {
@@
-146,13
+172,14
@@
class SuiteUi extends Composite {
protected Composite initLayer(String id, SuiteLayer layer, Node context) {
Composite workArea = cmsView.doAs(() -> (Composite) layer.createUiPart(dynamicArea, context));
protected Composite initLayer(String id, SuiteLayer layer, Node context) {
Composite workArea = cmsView.doAs(() -> (Composite) layer.createUiPart(dynamicArea, context));
- workArea.setLayoutData(CmsUiUtils.coverAll());
+ CmsSwtUtils.style(workArea, SuiteStyle.workArea);
+ workArea.setLayoutData(CmsSwtUtils.coverAll());
workAreas.put(id, workArea);
return workArea;
}
synchronized void logout() {
workAreas.put(id, workArea);
return workArea;
}
synchronized void logout() {
- user
Home
= null;
+ user
Dir
= null;
Jcr.logout(sysSession);
Jcr.logout(homeSession);
currentLayerId = null;
Jcr.logout(sysSession);
Jcr.logout(homeSession);
currentLayerId = null;
@@
-167,10
+194,18
@@
class SuiteUi extends Composite {
return header;
}
return header;
}
+ Composite getFooter() {
+ return footer;
+ }
+
Composite getLeadPane() {
return leadPane;
}
Composite getLeadPane() {
return leadPane;
}
+ Composite getSidePane() {
+ return sidePane;
+ }
+
Composite getBelowHeader() {
return belowHeader;
}
Composite getBelowHeader() {
return belowHeader;
}
@@
-179,18
+214,18
@@
class SuiteUi extends Composite {
// return sysSession;
// }
//
// return sysSession;
// }
//
- synchronized void initSessions(Repository repository) throws RepositoryException {
+ synchronized void initSessions(Repository repository
, String userDirPath
) throws RepositoryException {
this.sysSession = repository.login();
this.sysSession = repository.login();
- this.homeSession = repository.login(
Node
Constants.HOME_WORKSPACE);
- user
Home = NodeUtils.getUserHome(homeSession
);
+ this.homeSession = repository.login(
Cms
Constants.HOME_WORKSPACE);
+ user
Dir = sysSession.getNode(userDirPath
);
addDisposeListener((e) -> {
Jcr.logout(sysSession);
Jcr.logout(homeSession);
});
}
addDisposeListener((e) -> {
Jcr.logout(sysSession);
Jcr.logout(homeSession);
});
}
- Node getUser
Home
() {
- return user
Home
;
+ Node getUser
Dir
() {
+ return user
Dir
;
}
Session getSysSession() {
}
Session getSysSession() {
@@
-200,9
+235,9
@@
class SuiteUi extends Composite {
Session getSession(String workspaceName) {
if (workspaceName == null)
return sysSession;
Session getSession(String workspaceName) {
if (workspaceName == null)
return sysSession;
- if (
Node
Constants.SYS_WORKSPACE.equals(workspaceName))
+ if (
Cms
Constants.SYS_WORKSPACE.equals(workspaceName))
return sysSession;
return sysSession;
- else if (
Node
Constants.HOME_WORKSPACE.equals(workspaceName))
+ else if (
Cms
Constants.HOME_WORKSPACE.equals(workspaceName))
return homeSession;
else
throw new IllegalArgumentException("Unknown workspace " + workspaceName);
return homeSession;
else
throw new IllegalArgumentException("Unknown workspace " + workspaceName);
@@
-212,4
+247,12
@@
class SuiteUi extends Composite {
return cmsView;
}
return cmsView;
}
+ public Localized getTitle() {
+ return title;
+ }
+
+ public void setTitle(Localized title) {
+ this.title = title;
+ }
+
}
}