1.1 --- a/src/login/LoginDemo.java Sun Jan 22 15:07:37 2012 +0100
1.2 +++ b/src/login/LoginDemo.java Fri Feb 03 06:35:38 2012 +0100
1.3 @@ -1,5 +1,5 @@
1.4 /*
1.5 - * Copyright (c) 2008-2011, Matthias Mann
1.6 + * Copyright (c) 2008-2012, Matthias Mann
1.7 *
1.8 * All rights reserved.
1.9 *
1.10 @@ -32,6 +32,8 @@
1.11 import de.matthiasmann.twl.Button;
1.12 import de.matthiasmann.twl.DialogLayout;
1.13 import de.matthiasmann.twl.EditField;
1.14 +import de.matthiasmann.twl.EditField.Callback;
1.15 +import de.matthiasmann.twl.Event;
1.16 import de.matthiasmann.twl.FPSCounter;
1.17 import de.matthiasmann.twl.GUI;
1.18 import de.matthiasmann.twl.Label;
1.19 @@ -63,6 +65,8 @@
1.20 LWJGLRenderer renderer = new LWJGLRenderer();
1.21 GUI gui = new GUI(demo, renderer);
1.22
1.23 + demo.efName.requestKeyboardFocus();
1.24 +
1.25 ThemeManager theme = ThemeManager.createThemeManager(
1.26 LoginDemo.class.getResource("login.xml"), renderer);
1.27 gui.applyTheme(theme);
1.28 @@ -97,9 +101,23 @@
1.29 loginPanel.setTheme("login-panel");
1.30
1.31 efName = new EditField();
1.32 + efName.addCallback(new Callback() {
1.33 + public void callback(int key) {
1.34 + if(key == Event.KEY_RETURN) {
1.35 + efPassword.requestKeyboardFocus();
1.36 + }
1.37 + }
1.38 + });
1.39
1.40 efPassword = new EditField();
1.41 efPassword.setPasswordMasking(true);
1.42 + efPassword.addCallback(new Callback() {
1.43 + public void callback(int key) {
1.44 + if(key == Event.KEY_RETURN) {
1.45 + emulateLogin();
1.46 + }
1.47 + }
1.48 + });
1.49
1.50 Label lName = new Label("Name");
1.51 lName.setLabelFor(efName);
1.52 @@ -155,7 +173,12 @@
1.53 efPassword.setEnabled(false);
1.54 btnLogin.setEnabled(false);
1.55
1.56 - // step 2: start a timer to simulate the process of talking to a remote server
1.57 + // step 2: get name & password from UI
1.58 + String name = efName.getText();
1.59 + String pasword = efPassword.getText();
1.60 + System.out.println("Name: " + name + " with a " + pasword.length() + " character password");
1.61 +
1.62 + // step 3: start a timer to simulate the process of talking to a remote server
1.63 Timer timer = gui.createTimer();
1.64 timer.setCallback(new Runnable() {
1.65 public void run() {
1.66 @@ -163,6 +186,7 @@
1.67 efName.setEnabled(true);
1.68 efPassword.setEnabled(true);
1.69 efPassword.setText("");
1.70 + efPassword.requestKeyboardFocus();
1.71 btnLogin.setEnabled(true);
1.72 }
1.73 });