Source code: com/cybertivity/powerjournal/ChangePasswordView.java
1 package com.cybertivity.powerjournal;
2
3 import java.awt.BorderLayout;
4 import java.awt.BorderLayout;
5 import java.awt.Color;
6 import java.awt.FlowLayout;
7 import java.awt.Insets;
8 import java.awt.event.ActionEvent;
9 import java.awt.event.ActionListener;
10 import java.awt.event.KeyEvent;
11 import java.awt.event.WindowAdapter;
12 import java.awt.event.WindowEvent;
13 import java.util.ArrayList;
14 import javax.swing.BorderFactory;
15 import javax.swing.BoxLayout;
16 import javax.swing.JButton;
17 import javax.swing.JLabel;
18 import javax.swing.JFrame;
19 import javax.swing.JPanel;
20 import javax.swing.JPasswordField;
21 import javax.swing.JTextField;
22 import com.cybertivity.powerjournal.framework.DialogView;
23 import com.cybertivity.powerjournal.framework.Dialogs;
24 import com.cybertivity.powerjournal.framework.ModelEvent;
25 import com.cybertivity.powerjournal.gridpanel.*;
26
27 /**
28 * Title: PowerJournal
29 * Description: $Id: ChangePasswordView.java,v 1.1 2001/12/07 03:00:17 arrowood Exp $
30 * Copyright: Copyright (c) 2001
31 * Company: <A HREF="http://www.cybertivity.com">Cybertivity</A>
32 * @author <A HREF="mailto:chris.arrowood@cybertivity.com">Chris Arrowood</A>
33 * @version 1.0
34 */
35
36 public class ChangePasswordView extends DialogView {
37
38 public final static String EVENT_CANCEL = "ChangePasswordView_Cancel";
39 public final static String EVENT_OK = "ChangePasswordView_Ok";
40 private static ChangePasswordView instance = null;
41 private JButton okButton = null;
42 private JButton cancelButton = null;
43 private JPasswordField journalPasswordTextField1 = null;
44 private JPasswordField journalPasswordTextField2 = null;
45
46
47 private ChangePasswordView(JFrame parent) {
48 super(parent,true);
49 createWindow();
50 content.setTitle("Change Journal Password");
51 content.setResizable(false);
52 content.addWindowListener(new DeadlyWindowListener());
53 content.pack();
54 moveToCenter();
55 }
56
57
58 public static ChangePasswordView getInstance(JFrame parent) {
59 if (instance == null) {
60 instance = new ChangePasswordView(parent);
61 }
62 return instance;
63 }
64
65
66 protected void cleanUp() { }
67
68
69 protected void handleModelEvent(ModelEvent event) { }
70
71
72 private void createWindow() {
73 content.getContentPane().add(createJournalPanel());
74 }
75
76
77 private JPanel createJournalPanel() {
78 JPanel panel = null;
79 try {
80 JPanel buttonPanel = createButtonPanel();
81 Insets insets = new Insets(2, 10, 0, 2);
82 GridPanelColumn leftColumn = createMainPanelLeftColumn();
83 GridPanelColumn rightColumn = createMainPanelRightColumn();
84 ArrayList columns = new ArrayList();
85 columns.add(0, leftColumn);
86 columns.add(1, rightColumn);
87 panel = GridPanelBuilder.createGridPanel(insets, columns, buttonPanel, BorderLayout.SOUTH);
88 } catch (GridPanelException ex) {
89 panel = new JPanel();
90 }
91 return panel;
92 }
93
94
95 private GridPanelColumn createMainPanelLeftColumn() {
96 GridPanelColumn column = new GridPanelColumn();
97 column.add(new JLabel("New Password:"), false, false);
98 column.add(new JLabel("Confirm Password:"), false, false);
99 return column;
100 }
101
102
103 private GridPanelColumn createMainPanelRightColumn() {
104 GridPanelColumn column = new GridPanelColumn();
105 journalPasswordTextField1 = new JPasswordField(10);
106 journalPasswordTextField2 = new JPasswordField(10);
107 column.add(journalPasswordTextField1, false, false);
108 column.add(journalPasswordTextField2, false, false);
109 return column;
110 }
111
112
113 private JPanel createButtonPanel() {
114 JPanel buttonPanel = new JPanel();
115 FlowLayout layout = new FlowLayout();
116 buttonPanel.setLayout(layout);
117 okButton = makeButton("OK", EVENT_OK, null);
118 cancelButton = makeButton("Cancel", EVENT_CANCEL, null);
119 buttonPanel.add(okButton);
120 buttonPanel.add(cancelButton);
121 return buttonPanel;
122 }
123
124
125 private class DeadlyWindowListener extends WindowAdapter {
126 public void windowClosing(WindowEvent evt) {
127 fireEvent(EVENT_CANCEL);
128 }
129 }
130
131
132 private JButton makeButton(String name, final String action, Color color) {
133 JButton btn = new JButton();
134 btn.setText(name);
135 if (color != null) {
136 btn.setForeground(color);
137 }
138
139 btn.addActionListener(
140 new java.awt.event.ActionListener() {
141 public void actionPerformed(ActionEvent e) {
142 fireEvent(action);
143 }
144 });
145 return btn;
146 }
147
148 public String getJournalPasswordText() {
149 return journalPasswordTextField1.getText();
150 }
151
152
153 public String getJournalPasswordConfirmText() {
154 return journalPasswordTextField2.getText();
155 }
156
157
158 public void setVisible(boolean arg) {
159 if (arg) {
160 journalPasswordTextField1.setText("");
161 journalPasswordTextField2.setText("");
162 }
163 super.setVisible(arg);
164 }
165
166 }