1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125
|
//
// Copyright (C) 1999 AT&T Laboratories Cambridge. All Rights Reserved.
//
// This is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation; either version 2 of the License, or
// (at your option) any later version.
//
// This software is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of the GNU General Public License
// along with this software; if not, write to the Free Software
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
// USA.
//
import java.awt.*;
//
// The panel which implements the user authentication scheme
//
class authenticationPanel extends Panel {
Label title, retry, prompt;
TextField password;
Button ok;
//
// Constructor.
//
public authenticationPanel() {
title = new Label("VNC Authentication",Label.CENTER);
title.setFont(new Font("Helvetica", Font.BOLD, 18));
prompt = new Label("Password:",Label.CENTER);
password = new TextField(10);
password.setForeground(Color.black);
password.setBackground(Color.white);
password.setEchoCharacter('*');
ok = new Button("OK");
retry = new Label("",Label.CENTER);
retry.setFont(new Font("Courier", Font.BOLD, 16));
GridBagLayout gridbag = new GridBagLayout();
GridBagConstraints gbc = new GridBagConstraints();
setLayout(gridbag);
gbc.gridwidth = GridBagConstraints.REMAINDER;
gridbag.setConstraints(title,gbc);
add(title);
gbc.fill = GridBagConstraints.HORIZONTAL;
gridbag.setConstraints(retry,gbc);
add(retry);
gbc.fill = GridBagConstraints.NONE;
gbc.gridwidth = 1;
gridbag.setConstraints(prompt,gbc);
add(prompt);
gridbag.setConstraints(password,gbc);
add(password);
gbc.ipady = 10;
gbc.gridwidth = GridBagConstraints.REMAINDER;
gbc.fill = GridBagConstraints.BOTH;
gbc.insets = new Insets(0,20,0,0);
gbc.ipadx = 40;
gridbag.setConstraints(ok,gbc);
add(ok);
password.requestFocus();
}
//
// Override Component.show() to get the focus set properly.
//
public void show() {
password.requestFocus();
super.show();
}
//
// Get reference to password text field object.
//
public TextField getPasswordField() {
return password;
}
//
// action() is called when a button is pressed or return is pressed in the
// password text field.
//
public synchronized boolean action(Event evt, Object arg){
if ((evt.target == password) || (evt.target == ok)) {
notify();
return true;
}
return false;
}
//
// retry().
//
public void retry() {
retry.setText("Sorry. Try again.");
password.setText("");
}
}
|