1 package sellwin.gui; 2 3 import java.awt.*; 4 import java.awt.event.*; 5 import javax.swing.*; 6 7 import sellwin.domain.*; 8 import sellwin.utils.*; 9 10 14 19 public class AddressPanel extends javax.swing.JPanel implements GUIChars { 20 private JLabel nameLabel; 21 private JLabel addrLabel; 22 private JLabel addrExtLabel; 23 private JLabel cityLabel; 24 private JLabel phoneLabel; 25 private JLabel countryLabel; 26 27 private JTextField lastNameField; 28 private JComboBox stateCombo; 29 private JTextField phoneField; 30 private JTextField miField; 31 private JTextField firstNameField; 32 private JTextField addrField; 33 private JTextField addrExtField; 34 private JTextField cityField; 35 private JTextField zipField; 36 private JTextField zip4Field; 37 private JTextField countryField; 38 39 private Address origAddress; 40 private boolean modified=false; 41 42 45 public AddressPanel() { 46 initComponents(); 47 setFonts(); 48 setColors(); 49 setLang(); 50 } 51 52 55 private final void initComponents() { 56 nameLabel = new JLabel(); 57 addrLabel = new JLabel(); 58 addrExtLabel = new JLabel(); 59 cityLabel = new JLabel(); 60 phoneLabel = new JLabel(); 61 countryLabel = new JLabel(); 62 lastNameField = new JTextField(); 63 stateCombo = new JComboBox(); 64 phoneField = new JTextField(); 65 countryField = new JTextField(); 66 miField = new JTextField(); 67 firstNameField = new JTextField(); 68 addrField = new JTextField(); 69 addrExtField = new JTextField(); 70 cityField = new JTextField(); 71 zipField = new JTextField(); 72 zip4Field = new JTextField(); 73 74 setLayout(new java.awt.GridBagLayout ()); 75 java.awt.GridBagConstraints gridBagConstraints1; 76 77 nameLabel.setText("Name (Last, MI, First)"); 78 nameLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 79 gridBagConstraints1 = new java.awt.GridBagConstraints (); 80 gridBagConstraints1.gridx = 0; 81 gridBagConstraints1.gridy = 0; 82 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 83 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 84 add(nameLabel, gridBagConstraints1); 85 86 JPanel namePanel = new JPanel(new GridBagLayout()); 87 gridBagConstraints1 = new java.awt.GridBagConstraints (); 88 gridBagConstraints1.gridx = 1; 89 gridBagConstraints1.gridy = 0; 90 gridBagConstraints1.anchor = GridBagConstraints.WEST; 91 add(namePanel, gridBagConstraints1); 92 93 94 addrLabel.setText("Address"); 95 addrLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 96 gridBagConstraints1 = new java.awt.GridBagConstraints (); 97 gridBagConstraints1.gridx = 0; 98 gridBagConstraints1.gridy = 1; 99 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 100 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 101 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 102 add(addrLabel, gridBagConstraints1); 103 104 addrExtLabel.setText("Ext. Address"); 105 addrExtLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 106 gridBagConstraints1 = new java.awt.GridBagConstraints (); 107 gridBagConstraints1.gridx = 0; 108 gridBagConstraints1.gridy = 2; 109 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 110 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 111 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 112 add(addrExtLabel, gridBagConstraints1); 113 114 cityLabel.setText("City, State, Zip"); 115 cityLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 116 gridBagConstraints1 = new java.awt.GridBagConstraints (); 117 gridBagConstraints1.gridx = 0; 118 gridBagConstraints1.gridy = 3; 119 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 120 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 121 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 122 add(cityLabel, gridBagConstraints1); 123 124 JPanel cityPanel = new JPanel(new GridBagLayout()); 125 gridBagConstraints1 = new GridBagConstraints(); 126 gridBagConstraints1.gridx = 1; 127 gridBagConstraints1.gridy = 3; 128 gridBagConstraints1.anchor = GridBagConstraints.WEST; 129 add(cityPanel, gridBagConstraints1); 130 131 phoneLabel.setText("Phone"); 132 phoneLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 133 gridBagConstraints1 = new java.awt.GridBagConstraints (); 134 gridBagConstraints1.gridx = 0; 135 gridBagConstraints1.gridy = 4; 136 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 137 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 138 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 139 add(phoneLabel, gridBagConstraints1); 140 141 countryLabel.setText("Country"); 142 countryLabel.setHorizontalAlignment(javax.swing.SwingConstants.LEFT); 143 gridBagConstraints1 = new java.awt.GridBagConstraints (); 144 gridBagConstraints1.gridx = 0; 145 gridBagConstraints1.gridy = 5; 146 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 147 gridBagConstraints1.insets = new Insets(Prefs.I_TOP,Prefs.I_LF,Prefs.I_BOTT,Prefs.I_RT); 148 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 149 add(countryLabel, gridBagConstraints1); 150 151 lastNameField.setText(""); 152 lastNameField.setMinimumSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 153 lastNameField.setPreferredSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 154 GridBagConstraints gridBagConstraints2 = new java.awt.GridBagConstraints (); 155 gridBagConstraints2.gridx = 0; 156 gridBagConstraints2.gridy = 0; 157 gridBagConstraints2.anchor = java.awt.GridBagConstraints.WEST; 158 namePanel.add(lastNameField, gridBagConstraints2); 159 160 miField.setText(""); 161 miField.setColumns(2); 162 miField.setMinimumSize(new Dimension(40,Prefs.FIELD_HEIGHT)); 163 miField.setPreferredSize(new Dimension(40,Prefs.FIELD_HEIGHT)); 164 gridBagConstraints2 = new java.awt.GridBagConstraints (); 165 gridBagConstraints2.gridx = 1; 166 gridBagConstraints2.gridy = 0; 167 gridBagConstraints2.insets = new Insets(0,7,0,7); 168 namePanel.add(miField, gridBagConstraints2); 169 170 firstNameField.setText(""); 171 firstNameField.setMinimumSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 172 firstNameField.setPreferredSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 173 gridBagConstraints2 = new java.awt.GridBagConstraints (); 174 gridBagConstraints2.gridx = 2; 175 gridBagConstraints2.gridy = 0; 176 namePanel.add(firstNameField, gridBagConstraints2); 177 178 179 phoneField.setText(""); 180 phoneField.setMinimumSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 181 phoneField.setPreferredSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 182 gridBagConstraints1 = new java.awt.GridBagConstraints (); 183 gridBagConstraints1.gridx = 1; 184 gridBagConstraints1.gridy = 4; 185 gridBagConstraints1.gridwidth = 2; 186 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 187 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 188 add(phoneField, gridBagConstraints1); 189 190 countryField.setText(""); 191 countryField.setMinimumSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 192 countryField.setPreferredSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 193 gridBagConstraints1 = new java.awt.GridBagConstraints (); 194 gridBagConstraints1.gridx = 1; 195 gridBagConstraints1.gridy = 5; 196 gridBagConstraints1.gridwidth = 2; 197 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 198 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 199 add(countryField, gridBagConstraints1); 200 201 202 addrField.setText(""); 203 addrField.setMinimumSize(new Dimension(200,Prefs.FIELD_HEIGHT)); 204 addrField.setPreferredSize(new Dimension(200,Prefs.FIELD_HEIGHT)); 205 gridBagConstraints1 = new java.awt.GridBagConstraints (); 206 gridBagConstraints1.gridx = 1; 207 gridBagConstraints1.gridy = 1; 208 gridBagConstraints1.gridwidth = java.awt.GridBagConstraints.REMAINDER; 209 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 210 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 211 add(addrField, gridBagConstraints1); 212 213 addrExtField.setText(""); 214 addrExtField.setMinimumSize(new Dimension(200,Prefs.FIELD_HEIGHT)); 215 addrExtField.setPreferredSize(new Dimension(200,Prefs.FIELD_HEIGHT)); 216 gridBagConstraints1 = new java.awt.GridBagConstraints (); 217 gridBagConstraints1.gridx = 1; 218 gridBagConstraints1.gridy = 2; 219 gridBagConstraints1.gridwidth = java.awt.GridBagConstraints.REMAINDER; 220 gridBagConstraints1.fill = java.awt.GridBagConstraints.HORIZONTAL; 221 gridBagConstraints1.anchor = java.awt.GridBagConstraints.WEST; 222 add(addrExtField, gridBagConstraints1); 223 224 cityField.setText(""); 225 cityField.setMinimumSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 226 cityField.setPreferredSize(new Dimension(100,Prefs.FIELD_HEIGHT)); 227 GridBagConstraints gridBagConstraints3 = new java.awt.GridBagConstraints (); 228 gridBagConstraints3.gridx = 0; 229 gridBagConstraints3.gridy = 0; 230 gridBagConstraints3.anchor = java.awt.GridBagConstraints.WEST; 231 cityPanel.add(cityField, gridBagConstraints3); 232 233 stateCombo.setModel(new DefaultComboBoxModel(Address.STATES)); 234 stateCombo.setMinimumSize(new Dimension(50,Prefs.FIELD_HEIGHT)); 235 stateCombo.setPreferredSize(new Dimension(50,Prefs.FIELD_HEIGHT)); 236 gridBagConstraints3 = new java.awt.GridBagConstraints (); 237 gridBagConstraints3.gridx = 1; 238 gridBagConstraints3.gridy = 0; 239 gridBagConstraints3.insets = new Insets(0,5,0,5); 240 cityPanel.add(stateCombo, gridBagConstraints3); 241 242 zipField.setText(""); 243 zipField.setMinimumSize(new Dimension(80,Prefs.FIELD_HEIGHT)); 244 zipField.setPreferredSize(new Dimension(80,Prefs.FIELD_HEIGHT)); 245 gridBagConstraints3 = new java.awt.GridBagConstraints (); 246 gridBagConstraints3.gridx = 2; 247 gridBagConstraints3.gridy = 0; 248 gridBagConstraints3.insets = new Insets(0,5,0,5); 249 cityPanel.add(zipField, gridBagConstraints3); 250 251 zip4Field.setText(""); 252 zip4Field.setMinimumSize(new Dimension(40,Prefs.FIELD_HEIGHT)); 253 zip4Field.setPreferredSize(new Dimension(40,Prefs.FIELD_HEIGHT)); 254 gridBagConstraints3 = new java.awt.GridBagConstraints (); 255 gridBagConstraints3.gridx = 3; 256 gridBagConstraints3.gridy = 0; 257 cityPanel.add(zip4Field, gridBagConstraints3); 258 259 } 260 261 264 public final void setFonts() { 265 nameLabel.setFont(MainWindow.LABEL_FONT); 266 addrLabel.setFont(MainWindow.LABEL_FONT); 267 addrExtLabel.setFont(MainWindow.LABEL_FONT); 268 cityLabel.setFont(MainWindow.LABEL_FONT); 269 phoneLabel.setFont(MainWindow.LABEL_FONT); 270 lastNameField.setFont(MainWindow.FIELD_FONT); 271 stateCombo.setFont(MainWindow.FIELD_FONT); 272 phoneField.setFont(MainWindow.FIELD_FONT); 273 miField.setFont(MainWindow.FIELD_FONT); 274 firstNameField.setFont(MainWindow.FIELD_FONT); 275 addrField.setFont(MainWindow.FIELD_FONT); 276 addrExtField.setFont(MainWindow.FIELD_FONT); 277 cityField.setFont(MainWindow.FIELD_FONT); 278 zipField.setFont(MainWindow.FIELD_FONT); 279 zip4Field.setFont(MainWindow.FIELD_FONT); 280 countryField.setFont(MainWindow.FIELD_FONT); 281 countryLabel.setFont(MainWindow.LABEL_FONT); 282 } 283 284 287 public final void setColors() { 288 countryLabel.setForeground(MainWindow.LETTERS); 289 nameLabel.setForeground(MainWindow.LETTERS); 290 addrLabel.setForeground(MainWindow.LETTERS); 291 addrExtLabel.setForeground(MainWindow.LETTERS); 292 cityLabel.setForeground(MainWindow.LETTERS); 293 phoneLabel.setForeground(MainWindow.LETTERS); 294 stateCombo.setBackground(Color.white); 295 countryLabel.setBackground(Color.white); 296 } 297 298 303 public final void setAddress(Address a) { 304 305 origAddress = a; 306 307 Utility.strSet(lastNameField, a.getLastName()); 308 stateCombo.setSelectedItem(a.getState()); 309 Utility.strSet(phoneField, a.getPhone()); 310 Utility.strSet(miField, a.getMiddleInitial()); 311 Utility.strSet(firstNameField, a.getFirstName()); 312 Utility.strSet(addrField, a.getAddressLine1()); 313 Utility.strSet(addrExtField, a.getAddressLine2()); 314 Utility.strSet(cityField, a.getCity()); 315 Utility.strSet(zipField, a.getZip()); 316 Utility.strSet(zip4Field, a.getZip4()); 317 Utility.strSet(countryField, a.getCountry()); 318 } 319 320 321 326 public final Address getAddress() { 327 328 Address a = new Address(); 329 a.setLastName(lastNameField.getText()); 330 a.setState((String )(stateCombo.getSelectedItem())); 331 a.setPhone(phoneField.getText()); 332 a.setMiddleInitial(miField.getText()); 333 a.setFirstName(firstNameField.getText()); 334 a.setAddressLine1(addrField.getText()); 335 a.setAddressLine2(addrExtField.getText()); 336 a.setCity(cityField.getText()); 337 a.setZip(zipField.getText()); 338 a.setZip4(zip4Field.getText()); 339 a.setCountry(countryField.getText()); 340 341 if (origAddress == null) 342 a.setModified(true); 343 else 344 if (a.diff(origAddress)) 345 a.setModified(true); 346 347 return a; 348 } 349 350 353 public final void clear() { 354 modified=false; 355 lastNameField.setText(""); 356 stateCombo.setSelectedIndex(0); 357 phoneField.setText(""); 358 miField.setText(""); 359 firstNameField.setText(""); 360 addrField.setText(""); 361 addrExtField.setText(""); 362 cityField.setText(""); 363 zipField.setText(""); 364 zip4Field.setText(""); 365 countryField.setText(""); 366 } 367 368 371 public final void setLang() { 372 Whiteboard wb = MainWindow.getWhiteboard(); 373 nameLabel.setText(wb.getLang().getString("fullName")); 374 addrLabel.setText(wb.getLang().getString("address")); 375 addrExtLabel.setText(wb.getLang().getString("extAddress")); 376 cityLabel.setText(wb.getLang().getString("cityStateZip")); 377 phoneLabel.setText(wb.getLang().getString("phone")); 378 countryLabel.setText(wb.getLang().getString("country")); 379 } 380 381 385 public final boolean isModified() { return modified; } 386 } 387 | Popular Tags |