summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/gui/core/LoginComposite.java
diff options
context:
space:
mode:
authorStephan Schwaer2015-06-22 14:12:05 +0200
committerStephan Schwaer2015-06-22 14:12:05 +0200
commit61c822f7c39e6197b64a154ab2c6d1a484c847c4 (patch)
treee296f6815f97ffd6eb78eb385be4609086fe0fcd /dozentenmodul/src/main/java/gui/core/LoginComposite.java
parentMerge branch 'v1.1' of git.openslx.org:openslx-ng/tutor-module into v1.1 (diff)
downloadtutor-module-61c822f7c39e6197b64a154ab2c6d1a484c847c4.tar.gz
tutor-module-61c822f7c39e6197b64a154ab2c6d1a484c847c4.tar.xz
tutor-module-61c822f7c39e6197b64a154ab2c6d1a484c847c4.zip
Added GUI for Login
Diffstat (limited to 'dozentenmodul/src/main/java/gui/core/LoginComposite.java')
-rw-r--r--dozentenmodul/src/main/java/gui/core/LoginComposite.java175
1 files changed, 175 insertions, 0 deletions
diff --git a/dozentenmodul/src/main/java/gui/core/LoginComposite.java b/dozentenmodul/src/main/java/gui/core/LoginComposite.java
new file mode 100644
index 00000000..38449b2f
--- /dev/null
+++ b/dozentenmodul/src/main/java/gui/core/LoginComposite.java
@@ -0,0 +1,175 @@
+package gui.core;
+import gui.GuiManager;
+
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.ImageData;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Group;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Shell;
+import org.eclipse.swt.widgets.Text;
+
+
+public class LoginComposite extends Composite {
+
+ private Image _titleImage;
+ private Text _usernameText;
+ private Text _passwordText;
+ /**
+ * Create a new login composite
+ * @param mainShell The shell it should be added to
+
+ */
+ public LoginComposite(final Shell mainShell) {
+ super(mainShell, SWT.NO_BACKGROUND);
+ mainShell.setText("Dozmod - Login");
+
+ // Left authentication selection and right loginmask
+ GridLayout gridLayout = new GridLayout(2, true);
+ this.setLayout(gridLayout);
+
+ //Load the needed Picture
+ loadImage();
+
+ Label titlePicture = new Label(this, SWT.NONE);
+ titlePicture.setImage(_titleImage);
+ GridData gridData = new GridData(SWT.FILL, SWT.FILL, true, true);
+ gridData.horizontalSpan = 2;
+ gridData.horizontalAlignment = SWT.CENTER;
+ titlePicture.setLayoutData(gridData);
+
+ // Group for the authentication method.
+ Group authGroup = new Group(this, SWT.NONE);
+ authGroup.setText("Authentifizierungsart");
+ gridLayout = new GridLayout();
+ gridLayout.numColumns = 1;
+ authGroup.setLayout(gridLayout);
+ gridData = new GridData(GridData.FILL, GridData.CENTER, false, false);
+ gridData.heightHint = 150;
+ authGroup.setLayoutData(gridData);
+
+ // Add the radio buttons
+ Button[] authButtons = new Button[3];
+
+ authButtons[0] = new Button(authGroup, SWT.RADIO);
+ authButtons[0].setSelection(true);
+ authButtons[0].setText("Authentifizierung über bwIDM");
+
+ authButtons[1] = new Button(authGroup, SWT.RADIO);
+ authButtons[1].setText("Test-Zugang mit festem Benutzernamen");
+
+ authButtons[2] = new Button(authGroup, SWT.RADIO);
+ authButtons[2].setText("Direkte Verbindung zum Satteliten");
+
+
+ // Group for the login mask
+ final Group loginGroup = new Group(this, SWT.NONE);
+ loginGroup.setText("Zugangsdaten");
+ gridLayout = new GridLayout();
+ gridLayout.numColumns = 2;
+ loginGroup.setLayout(gridLayout);
+ gridData = new GridData(GridData.FILL, GridData.CENTER, true, false);
+ gridData.heightHint = 150;
+ loginGroup.setLayoutData(gridData);
+
+
+ final Label IdPText = new Label(loginGroup, SWT.NONE);
+ IdPText.setText("IdP:");
+
+
+ final Combo IdPCombo = new Combo(loginGroup, SWT.DROP_DOWN | SWT.READ_ONLY);
+
+
+ IdPCombo.add("Ubuntu");
+ IdPCombo.add("Fedora");
+ IdPCombo.add("Mandriva");
+ IdPCombo.add("Red Hat");
+ IdPCombo.add("Mint");
+
+
+
+ new Label(loginGroup, SWT.NONE).setText("Benutzername:");
+ _usernameText = new Text(loginGroup, SWT.SINGLE | SWT.BORDER);
+ _usernameText.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+
+ new Label(loginGroup, SWT.NONE).setText("Passwort:");
+ _passwordText = new Text(loginGroup, SWT.SINGLE | SWT.BORDER);
+ _passwordText.setLayoutData(new GridData(GridData.FILL, GridData.CENTER, true, false));
+ Button loginButton = new Button(loginGroup, SWT.PUSH);
+ loginButton.setText("Login");
+ Button saveUsernameCheck = new Button(loginGroup, SWT.CHECK);
+ saveUsernameCheck.setText("Benutzername speichern");
+
+ // Actions of the login button
+ loginButton.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ System.out.println("BAM!");
+ //loginComposite.dispose();
+ mainShell.setText("Login?");
+
+
+ }
+ });
+
+ // For save username checkbox.
+ saveUsernameCheck.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ System.out.println("Checkboxtoggle");
+ }
+ });
+
+ // Selecting the "Authentifizierung über bwIDM" radio button
+ authButtons[0].addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ IdPText.setVisible(true);
+ IdPCombo.setVisible(true);
+ }
+ });
+
+ // Selecting the "Test-Zugang über bwIDM" radio button
+ authButtons[1].addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ IdPText.setVisible(false);
+ IdPCombo.setVisible(false);
+
+ }
+ });
+
+ authButtons[2].setEnabled(false);
+ // Selecting the "Direkte Verbindung zum Satteliten" radio button
+ authButtons[2].addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ IdPText.setVisible(false);
+ IdPCombo.setVisible(false);
+ }
+ });
+ }
+
+
+
+ private void loadImage(){
+ try {
+ _titleImage = new Image(GuiManager.getDisplay() , "resources/Logo_bwLehrpool.png");
+ ImageData imgData = _titleImage.getImageData();
+ imgData = imgData.scaledTo(imgData.width/5, imgData.height/5);
+ _titleImage = new Image(GuiManager.getDisplay(), imgData);
+ } catch (Exception e) {
+ System.out.println("Cannot load image");
+ System.out.println(e.getMessage());
+ }
+ }
+
+
+}