X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=org.argeo.suite.e4%2Fsrc%2Forg%2Fargeo%2Fsuite%2Fe4%2Fparts%2FAbstractSuiteDashboard.java;h=f473297431cd8c9d50e4e19220bf6019247995ec;hb=0640a2e720d001b3ac26a900fb9e7eddd8c4ee99;hp=88067aab7f7cd0dd0f7b457c21a26a3ab8646167;hpb=40776acccb8ac4457d96a4c7448cd6e5f404771c;p=gpl%2Fargeo-suite.git diff --git a/org.argeo.suite.e4/src/org/argeo/suite/e4/parts/AbstractSuiteDashboard.java b/org.argeo.suite.e4/src/org/argeo/suite/e4/parts/AbstractSuiteDashboard.java index 88067aa..f473297 100644 --- a/org.argeo.suite.e4/src/org/argeo/suite/e4/parts/AbstractSuiteDashboard.java +++ b/org.argeo.suite.e4/src/org/argeo/suite/e4/parts/AbstractSuiteDashboard.java @@ -17,6 +17,10 @@ import org.argeo.connect.ui.SystemWorkbenchService; import org.argeo.connect.util.ConnectJcrUtils; import org.argeo.eclipse.ui.EclipseUiUtils; import org.argeo.jcr.JcrUtils; +import org.argeo.node.NodeConstants; +import org.eclipse.e4.ui.di.Focus; +import org.eclipse.rap.rwt.RWT; +import org.eclipse.rap.rwt.client.service.BrowserNavigation; import org.eclipse.swt.SWT; import org.eclipse.swt.events.SelectionAdapter; import org.eclipse.swt.events.SelectionEvent; @@ -29,6 +33,8 @@ import org.eclipse.swt.widgets.Link; /** Generic dashboard for Argeo Suite applications */ public abstract class AbstractSuiteDashboard { + // private final static Log log = + // LogFactory.getLog(AbstractSuiteDashboard.class); // DEPENDENCY INJECTION @Inject @@ -40,22 +46,27 @@ public abstract class AbstractSuiteDashboard { @Inject private SystemWorkbenchService systemWorkbenchService; - private Session session; + private Session homeSession; + private Session mainSession; // UI Objects private FormToolkit toolkit; - public void init() { - session = ConnectJcrUtils.login(repository); -// updateTooltip(input); + // RAP specific + private BrowserNavigation browserNavigation; + + public void init() { + homeSession = ConnectJcrUtils.login(repository, NodeConstants.HOME); + mainSession = ConnectJcrUtils.login(repository); + // updateTooltip(input); } -// private void updateTooltip(IEditorInput input) { -// if (input instanceof EntityEditorInput) { -// EntityEditorInput sei = (EntityEditorInput) input; -// sei.setTooltipText("My Dashboard"); -// } -// } + // private void updateTooltip(IEditorInput input) { + // if (input instanceof EntityEditorInput) { + // EntityEditorInput sei = (EntityEditorInput) input; + // sei.setTooltipText("My Dashboard"); + // } + // } /** * Implementing classes must call super in order to create the correct form @@ -65,6 +76,7 @@ public abstract class AbstractSuiteDashboard { public void createPartControl(Composite parent) { toolkit = new FormToolkit(Display.getCurrent()); init(); + browserNavigation = RWT.getClient().getService(BrowserNavigation.class); } // UTILS @@ -122,13 +134,22 @@ public abstract class AbstractSuiteDashboard { // Life cycle @PreDestroy public void dispose() { - JcrUtils.logoutQuietly(session); + JcrUtils.logoutQuietly(homeSession); + JcrUtils.logoutQuietly(mainSession); } + @Focus + public void setFocus() { + browserNavigation.pushState("~", "Dashboard"); + } // Expose to implementing classes - protected Session getSession() { - return session; + protected Session getHomeSession() { + return homeSession; + } + + public Session getMainSession() { + return mainSession; } public ResourcesService getResourcesService() { @@ -148,19 +169,20 @@ public abstract class AbstractSuiteDashboard { } /* DEPENDENCY INJECTION */ - public void setRepository(Repository repository) { - this.repository = repository; - } - - public void setResourcesService(ResourcesService resourcesService) { - this.resourcesService = resourcesService; - } - - public void setSystemAppService(SystemAppService systemAppService) { - this.systemAppService = systemAppService; - } - - public void setSystemWorkbenchService(SystemWorkbenchService systemWorkbenchService) { - this.systemWorkbenchService = systemWorkbenchService; - } + // public void setRepository(Repository repository) { + // this.repository = repository; + // } + // + // public void setResourcesService(ResourcesService resourcesService) { + // this.resourcesService = resourcesService; + // } + // + // public void setSystemAppService(SystemAppService systemAppService) { + // this.systemAppService = systemAppService; + // } + // + // public void setSystemWorkbenchService(SystemWorkbenchService + // systemWorkbenchService) { + // this.systemWorkbenchService = systemWorkbenchService; + // } }