package org.isatools.isacreator.gui.menu; import org.isatools.isacreator.common.UIHelper; import org.isatools.isacreator.effects.components.RoundedJPasswordField; import org.jdesktop.fuse.InjectedResource; import javax.swing.*; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; /** * Created by the ISATeam. * User: agbeltran * Date: 15/10/2012 * Time: 16:21 * * @author <a href="mailto:alejandra.gonzalez.beltran@gmail.com">Alejandra Gonzalez-Beltran</a> */ public abstract class UserCreationMenu extends MenuUIComponent { @InjectedResource public ImageIcon backButtonSml, backButtonSmlOver; protected JLabel status, back; protected JTextField emailVal; protected JPasswordField passwordVal; protected JPasswordField confirmPasswordVal; protected JTextField usernameVal; public UserCreationMenu(ISAcreatorMenu menu) { super(menu); } protected JPanel createEmailPanel(Action createProfileAction) { // email JPanel emailCont = createPanel(); JLabel emailLabel = createLabel("email *"); emailCont.add(emailLabel); emailVal = createTextField(); emailCont.add(emailVal); assignKeyActionToComponent(createProfileAction, emailVal); return emailCont; } protected JPanel createConfirmPasswordPanel(Action createProfileAction) { //confirm password JPanel confirmPasswordCont = createPanel(); JLabel confirmPasswordLabel = createLabel("confirm *"); confirmPasswordCont.add(confirmPasswordLabel); confirmPasswordVal = new RoundedJPasswordField(10); UIHelper.renderComponent(confirmPasswordVal, UIHelper.VER_12_BOLD, UIHelper.DARK_GREEN_COLOR, false); confirmPasswordCont.add(confirmPasswordVal); assignKeyActionToComponent(createProfileAction, confirmPasswordVal); return confirmPasswordCont; } protected JPanel createPasswordPanel(Action createProfileAction) { //password JPanel passwordCont = createPanel(); JLabel passwordLabel = createLabel("password *"); passwordCont.add(passwordLabel); passwordVal = new RoundedJPasswordField(10); UIHelper.renderComponent(passwordVal, UIHelper.VER_12_BOLD, UIHelper.DARK_GREEN_COLOR, false); passwordCont.add(passwordVal); assignKeyActionToComponent(createProfileAction, passwordVal); return passwordCont; } protected JPanel createUsernamePanel(Action createProfileAction) { // username JPanel userNameCont = createPanel(); JLabel usernameLabel = createLabel("username *"); userNameCont.add(usernameLabel); usernameVal = createTextField(); userNameCont.add(usernameVal); assignKeyActionToComponent(createProfileAction, usernameVal); return userNameCont; } protected void createBackJLabel() { back = new JLabel(backButtonSml, JLabel.LEFT); back.addMouseListener(new MouseAdapter() { public void mousePressed(MouseEvent event) { back.setIcon(backButtonSml); menu.changeView(menu.getAuthenticationGUI()); } public void mouseEntered(MouseEvent event) { back.setIcon(backButtonSmlOver); } public void mouseExited(MouseEvent event) { back.setIcon(backButtonSml); } }); } protected void assignKeyActionToComponent(Action action, JComponent field) { field.getInputMap().put(KeyStroke.getKeyStroke("ENTER"), "CREATE_PROFILE"); field.getActionMap().put("CREATE_PROFILE", action); } }