List of usage examples for javax.swing JPasswordField getDocument
public Document getDocument()
From source file:com.palantir.ptoss.cinch.swing.JPasswordFieldWiringHarness.java
public static Collection<Binding> bindJPasswordField(final BindableModel model, final JPasswordField pwdField, final Method getter, final Method setter) { pwdField.getDocument().addDocumentListener(new DocumentListener() { public void removeUpdate(DocumentEvent e) { updateModel();/*from w ww .j ava2 s. c om*/ } public void insertUpdate(DocumentEvent e) { updateModel(); } public void changedUpdate(DocumentEvent e) { updateModel(); } private void updateModel() { try { setter.invoke(model, pwdField.getPassword()); } catch (Exception ex) { Wiring.logger.error("exception in JPasswordField binding", ex); } } }); Binding binding = new Binding() { public <T extends Enum<?> & ModelUpdate> void update(T... changed) { try { char[] charArray = (char[]) getter.invoke(model); if (charArray == null) { charArray = new char[0]; } if (!Arrays.equals(charArray, pwdField.getPassword())) { pwdField.setText(String.valueOf(charArray)); } } catch (Exception ex) { Wiring.logger.error("exception in JPasswordField binding", ex); } } }; model.bind(binding); return Collections.singleton(binding); }
From source file:com.intel.stl.ui.common.view.ComponentFactory.java
public static JPasswordField createPasswordField(DocumentListener... docListeners) { final JPasswordField field = new JPasswordField(); final Border oldBorder = field.getBorder(); if (docListeners != null) { for (DocumentListener docListener : docListeners) { field.getDocument().addDocumentListener(docListener); field.getDocument().putProperty("owner", field); }/*w w w.j av a 2 s . c om*/ } final InputVerifier verifier = new InputVerifier() { @Override public boolean verify(final JComponent input) { final JPasswordField field = (JPasswordField) input; char[] txt = field.getPassword(); if (txt.length == 0) { // Run in EDT to avoid deadlock in case this gets called // from not swing thread Util.runInEDT(new Runnable() { @Override public void run() { field.setToolTipText(UILabels.STL50084_CANT_BE_BLANK.getDescription()); input.setBackground(UIConstants.INTEL_LIGHT_RED); input.setBorder(BorderFactory.createLineBorder(UIConstants.INTEL_RED, 2)); // show tooltip immediately ToolTipManager.sharedInstance() .mouseMoved(new MouseEvent(field, 0, 0, 0, 0, 0, 0, false)); } }); return false; } else { Util.runInEDT(new Runnable() { @Override public void run() { input.setBackground(UIConstants.INTEL_WHITE); input.setBorder(oldBorder); } }); return true; } } }; DocumentListener dynamicChecker = new DocumentListener() { @Override public void insertUpdate(DocumentEvent e) { verifier.verify(field); } @Override public void removeUpdate(DocumentEvent e) { verifier.verify(field); } @Override public void changedUpdate(DocumentEvent e) { verifier.verify(field); } }; field.getDocument().addDocumentListener(dynamicChecker); // Add the input verifier field.setInputVerifier(verifier); return field; }
From source file:edu.ku.brc.af.auth.UserAndMasterPasswordMgr.java
/** * @return/*from w w w . ja v a2 s . c o m*/ */ protected String[] getUserNamePasswordKey() { loadAndPushResourceBundle("masterusrpwd"); FormLayout layout = new FormLayout("p, 4dlu, p, 8px, p", "p, 2dlu, p, 2dlu, p, 16px, p, 2dlu, p, 2dlu, p"); layout.setRowGroups(new int[][] { { 1, 3, 5 } }); PanelBuilder pb = new PanelBuilder(layout); final JTextField dbUsrTxt = createTextField(30); final JPasswordField dbPwdTxt = createPasswordField(30); final JTextField usrText = createTextField(30); final JPasswordField pwdText = createPasswordField(30); final char echoChar = pwdText.getEchoChar(); final JLabel dbUsrLbl = createI18NFormLabel("USERNAME", SwingConstants.RIGHT); final JLabel dbPwdLbl = createI18NFormLabel("PASSWORD", SwingConstants.RIGHT); final JLabel usrLbl = createI18NFormLabel("USERNAME", SwingConstants.RIGHT); final JLabel pwdLbl = createI18NFormLabel("PASSWORD", SwingConstants.RIGHT); usrText.setText(usersUserName); CellConstraints cc = new CellConstraints(); int y = 1; pb.addSeparator(UIRegistry.getResourceString("MASTER_SEP"), cc.xyw(1, y, 5)); y += 2; pb.add(dbUsrLbl, cc.xy(1, y)); pb.add(dbUsrTxt, cc.xy(3, y)); y += 2; pb.add(dbPwdLbl, cc.xy(1, y)); pb.add(dbPwdTxt, cc.xy(3, y)); y += 2; pb.addSeparator(UIRegistry.getResourceString("USER_SEP"), cc.xyw(1, y, 5)); y += 2; pb.add(usrLbl, cc.xy(1, y)); pb.add(usrText, cc.xy(3, y)); y += 2; pb.add(pwdLbl, cc.xy(1, y)); pb.add(pwdText, cc.xy(3, y)); pb.setDefaultDialogBorder(); final CustomDialog dlg = new CustomDialog((Frame) null, getResourceString("MASTER_INFO_TITLE"), true, CustomDialog.OKCANCELAPPLYHELP, pb.getPanel()); dlg.setOkLabel(getResourceString("GENERATE_KEY")); dlg.setHelpContext("MASTERPWD_GEN"); dlg.setApplyLabel(showPwdLabel); dlg.createUI(); dlg.getOkBtn().setEnabled(false); popResourceBundle(); DocumentListener docListener = new DocumentAdaptor() { @Override protected void changed(DocumentEvent e) { String dbUserStr = dbUsrTxt.getText(); boolean enable = !dbUserStr.isEmpty() && !((JTextField) dbPwdTxt).getText().isEmpty() && !usrText.getText().isEmpty() && !((JTextField) pwdText).getText().isEmpty(); if (enable && isNotEmpty(dbUserStr) && dbUserStr.equalsIgnoreCase("root")) { loadAndPushResourceBundle("masterusrpwd"); UIRegistry.showLocalizedError("MASTER_NO_ROOT"); popResourceBundle(); enable = false; } dlg.getOkBtn().setEnabled(enable); } }; dbUsrTxt.getDocument().addDocumentListener(docListener); dbPwdTxt.getDocument().addDocumentListener(docListener); usrText.getDocument().addDocumentListener(docListener); pwdText.getDocument().addDocumentListener(docListener); currEcho = echoChar; dlg.getApplyBtn().addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { dlg.getApplyBtn().setText(currEcho == echoChar ? hidePwdLabel : showPwdLabel); currEcho = currEcho == echoChar ? 0 : echoChar; pwdText.setEchoChar(currEcho); dbPwdTxt.setEchoChar(currEcho); } }); dlg.setVisible(true); if (!dlg.isCancelled()) { return new String[] { dbUsrTxt.getText(), ((JTextField) dbPwdTxt).getText(), usrText.getText(), ((JTextField) pwdText).getText() }; } return null; }