]> git.argeo.org Git - gpl/argeo-suite.git/blob - core/org.argeo.suite.ui/src/org/argeo/suite/ui/DefaultLoginScreen.java
Use new build approach.
[gpl/argeo-suite.git] / core / org.argeo.suite.ui / src / org / argeo / suite / ui / DefaultLoginScreen.java
1 package org.argeo.suite.ui;
2
3 import javax.jcr.Node;
4 import javax.jcr.RepositoryException;
5
6 import org.argeo.cms.auth.CurrentUser;
7 import org.argeo.cms.ui.CmsUiProvider;
8 import org.argeo.cms.ui.CmsView;
9 import org.argeo.cms.ui.widgets.auth.CmsLogin;
10 import org.eclipse.swt.SWT;
11 import org.eclipse.swt.layout.GridData;
12 import org.eclipse.swt.layout.GridLayout;
13 import org.eclipse.swt.widgets.Composite;
14 import org.eclipse.swt.widgets.Control;
15
16 /** Provides a login screen. */
17 public class DefaultLoginScreen implements CmsUiProvider {
18
19 @Override
20 public Control createUi(Composite parent, Node context) throws RepositoryException {
21 CmsView cmsView = CmsView.getCmsView(parent);
22 if (!cmsView.isAnonymous())
23 throw new IllegalStateException(CurrentUser.getUsername() + " is already logged in");
24
25 parent.setLayout(new GridLayout());
26 Composite loginArea = new Composite(parent, SWT.NONE);
27 loginArea.setLayoutData(new GridData(SWT.CENTER, SWT.CENTER, true, true));
28
29 CmsLogin cmsLogin = new CmsLogin(cmsView);
30 cmsLogin.createUi(loginArea);
31 return cmsLogin.getCredentialsBlock();
32 }
33
34 }