]> git.argeo.org Git - lgpl/argeo-commons.git/blob - org.argeo.security.ui.rap/src/org/argeo/security/ui/rap/RapWorkbenchLogin.java
789874ae3c8b559a2b956eda0cec56280f140408
[lgpl/argeo-commons.git] / org.argeo.security.ui.rap / src / org / argeo / security / ui / rap / RapWorkbenchLogin.java
1 package org.argeo.security.ui.rap;
2
3 import java.util.Locale;
4
5 import org.argeo.cms.CmsMsg;
6 import org.argeo.cms.util.CmsUtils;
7 import org.eclipse.rap.rwt.RWT;
8 import org.eclipse.rap.rwt.client.service.JavaScriptExecutor;
9 import org.eclipse.swt.SWT;
10 import org.eclipse.swt.events.SelectionListener;
11 import org.eclipse.swt.widgets.Button;
12 import org.eclipse.swt.widgets.Composite;
13 import org.eclipse.swt.widgets.Display;
14 import org.eclipse.ui.PlatformUI;
15
16 public class RapWorkbenchLogin extends WorkbenchLogin {
17 // private final static Log log =
18 // LogFactory.getLog(RapWorkbenchLogin.class);
19
20 @Override
21 protected int createAndRunWorkbench(Display display, String username) {
22 RapWorkbenchAdvisor workbenchAdvisor = createRapWorkbenchAdvisor(username);
23 return PlatformUI.createAndRunWorkbench(display, workbenchAdvisor);
24 }
25
26 /** Override to provide an application specific workbench advisor */
27 protected RapWorkbenchAdvisor createRapWorkbenchAdvisor(String username) {
28 return new RapWorkbenchAdvisor(username);
29 }
30
31 @Override
32 public int createUI() {
33 JavaScriptExecutor jsExecutor = RWT.getClient().getService(
34 JavaScriptExecutor.class);
35 int returnCode;
36 try {
37 returnCode = super.createUI();
38 } finally {
39 // always reload
40 jsExecutor.execute("location.reload()");
41 }
42 return returnCode;
43 }
44
45 @Override
46 protected void extendsCredentialsBlock(Composite credentialsBlock,
47 Locale selectedLocale, SelectionListener loginSelectionListener) {
48 Button loginButton = new Button(credentialsBlock, SWT.PUSH);
49 loginButton.setText(CmsMsg.login.lead(selectedLocale));
50 loginButton.setLayoutData(CmsUtils.fillWidth());
51 loginButton.addSelectionListener(loginSelectionListener);
52 }
53
54 }