1 7 8 package com.memoire.vainstall.builder.gui; 9 10 import com.memoire.vainstall.VAGlobals; 11 import com.memoire.vainstall.builder.*; 12 13 import java.awt.*; 14 import java.awt.event.*; 15 16 import javax.swing.*; 17 import javax.swing.border.*; 18 19 32 public class ProductTargetPanel extends JPanel implements FocusListener, ItemListener { 33 34 private VAIProductModel model; 35 36 private final static Border loweredBorder = new SoftBevelBorder(BevelBorder.LOWERED); 37 38 JCheckBox javaBox; 39 40 JCheckBox jarBox; 41 JTextField jarSignerAliasField; 42 JTextField jarSignerPassphraseField; 43 44 JCheckBox jnlpBox; 45 JTextField jnlpCodebaseField; 46 JTextField jnlpHomepageField; 47 JTextField jnlpVendorField; 48 49 JCheckBox unixBox; 50 JCheckBox linuxi386Box; 51 JCheckBox win95Box; 52 53 public ProductTargetPanel() { 54 55 setBorder(loweredBorder); 56 57 GridBagLayout layout = new GridBagLayout(); 58 setLayout(layout); 59 60 GridBagConstraints contraint=new GridBagConstraints(); 61 75 76 JLabel targetLabel = new JLabel(); 77 targetLabel.setText("Select targets that VAInstall should build:"); 78 contraint.fill = GridBagConstraints.NONE; 79 contraint.insets = new Insets(16,16,0,16); 80 contraint.anchor = GridBagConstraints.WEST; 81 contraint.gridx = 0; 82 contraint.gridy = 0; 83 contraint.gridwidth = 2; 84 contraint.gridheight = 1; 85 contraint.weightx = 0; 86 contraint.weighty = 0; 87 layout.setConstraints(targetLabel,contraint); 88 add(targetLabel); 89 90 javaBox = new JCheckBox(); 91 javaBox.setText("Java. (*.class)"); 92 contraint.fill = GridBagConstraints.NONE; 93 contraint.insets = new Insets(16,32,0,16); 94 contraint.anchor = GridBagConstraints.WEST; 95 contraint.gridx = 0; 96 contraint.gridy = 1; 97 contraint.gridwidth = 1; 98 contraint.gridheight = 1; 99 contraint.weightx = 0; 100 contraint.weighty = 0; 101 layout.setConstraints(javaBox,contraint); 102 add(javaBox); 103 104 jarBox = new JCheckBox(); 105 jarBox.setText("Jar. (*.jar)"); 106 contraint.fill = GridBagConstraints.NONE; 107 contraint.insets = new Insets(4,32,0,16); 108 contraint.anchor = GridBagConstraints.WEST; 109 contraint.gridx = 0; 110 contraint.gridy = 2; 111 contraint.gridwidth = 1; 112 contraint.gridheight = 1; 113 contraint.weightx = 0; 114 contraint.weighty = 0; 115 layout.setConstraints(jarBox,contraint); 116 add(jarBox); 117 118 JLabel jarSignerAliasLabel = new JLabel(); 120 jarSignerAliasLabel.setText("Jar Signer Alias:"); 121 contraint.fill = GridBagConstraints.NONE; 122 contraint.insets = new Insets(4,64,0,16); 123 contraint.anchor = GridBagConstraints.EAST; 124 contraint.gridx = 0; 125 contraint.gridy = 3; 126 contraint.gridwidth = 1; 127 contraint.gridheight = 1; 128 contraint.weightx = 0; 129 contraint.weighty = 0; 130 layout.setConstraints(jarSignerAliasLabel,contraint); 131 add(jarSignerAliasLabel); 132 133 jarSignerAliasField = new JTextField(); 134 jarSignerAliasField.setEditable(false); 135 contraint.fill = GridBagConstraints.HORIZONTAL; 136 contraint.insets = new Insets(4,64,0,16); 137 contraint.anchor = GridBagConstraints.WEST; 138 contraint.gridx = 1; 139 contraint.gridy = 3; 140 contraint.gridwidth = 1; 141 contraint.gridheight = 1; 142 contraint.weightx = 1; 143 contraint.weighty = 0; 144 layout.setConstraints(jarSignerAliasField,contraint); 145 add(jarSignerAliasField); 146 147 JLabel jarSignerPassphraseLabel = new JLabel(); 148 jarSignerPassphraseLabel.setText("Jar Signer Passphrase:"); 149 contraint.fill = GridBagConstraints.NONE; 150 contraint.insets = new Insets(4,64,0,16); 151 contraint.anchor = GridBagConstraints.EAST; 152 contraint.gridx = 0; 153 contraint.gridy = 4; 154 contraint.gridwidth = 1; 155 contraint.gridheight = 1; 156 contraint.weightx = 0; 157 contraint.weighty = 0; 158 layout.setConstraints(jarSignerPassphraseLabel,contraint); 159 add(jarSignerPassphraseLabel); 160 161 jarSignerPassphraseField = new JTextField(); 162 jarSignerPassphraseField.setEditable(false); 163 contraint.fill = GridBagConstraints.HORIZONTAL; 164 contraint.insets = new Insets(4,64,0,16); 165 contraint.anchor = GridBagConstraints.WEST; 166 contraint.gridx = 1; 167 contraint.gridy = 4; 168 contraint.gridwidth = 1; 169 contraint.gridheight = 1; 170 contraint.weightx = 1; 171 contraint.weighty = 0; 172 layout.setConstraints(jarSignerPassphraseField,contraint); 173 add(jarSignerPassphraseField); 174 175 jnlpBox = new JCheckBox(); 176 jnlpBox.setText("Jnlp. (*.jnlp)"); 177 contraint.fill = GridBagConstraints.NONE; 178 contraint.insets = new Insets(4,32,0,16); 179 contraint.anchor = GridBagConstraints.WEST; 180 contraint.gridx = 0; 181 contraint.gridy = 5; 182 contraint.gridwidth = 1; 183 contraint.gridheight = 1; 184 contraint.weightx = 0; 185 contraint.weighty = 0; 186 layout.setConstraints(jnlpBox,contraint); 187 add(jnlpBox); 188 189 JLabel jnlpCodebaseLabel = new JLabel(); 191 jnlpCodebaseLabel.setText("Jnlp Codebase:"); 192 contraint.fill = GridBagConstraints.NONE; 193 contraint.insets = new Insets(4,64,0,16); 194 contraint.anchor = GridBagConstraints.EAST; 195 contraint.gridx = 0; 196 contraint.gridy = 6; 197 contraint.gridwidth = 1; 198 contraint.gridheight = 1; 199 contraint.weightx = 0; 200 contraint.weighty = 0; 201 layout.setConstraints(jnlpCodebaseLabel,contraint); 202 add(jnlpCodebaseLabel); 203 204 jnlpCodebaseField = new JTextField(); 205 jnlpCodebaseField.setEditable(false); 206 contraint.fill = GridBagConstraints.HORIZONTAL; 207 contraint.insets = new Insets(4,64,0,16); 208 contraint.anchor = GridBagConstraints.WEST; 209 contraint.gridx = 1; 210 contraint.gridy = 6; 211 contraint.gridwidth = 1; 212 contraint.gridheight = 1; 213 contraint.weightx = 1; 214 contraint.weighty = 0; 215 layout.setConstraints(jnlpCodebaseField,contraint); 216 add(jnlpCodebaseField); 217 218 JLabel jnlpHomepageLabel = new JLabel(); 219 jnlpHomepageLabel.setText("Jnlp Homepage:"); 220 contraint.fill = GridBagConstraints.NONE; 221 contraint.insets = new Insets(4,64,0,16); 222 contraint.anchor = GridBagConstraints.EAST; 223 contraint.gridx = 0; 224 contraint.gridy = 7; 225 contraint.gridwidth = 1; 226 contraint.gridheight = 1; 227 contraint.weightx = 0; 228 contraint.weighty = 0; 229 layout.setConstraints(jnlpHomepageLabel,contraint); 230 add(jnlpHomepageLabel); 231 232 jnlpHomepageField = new JTextField(); 233 jnlpHomepageField.setEditable(false); 234 contraint.fill = GridBagConstraints.HORIZONTAL; 235 contraint.insets = new Insets(4,64,0,16); 236 contraint.anchor = GridBagConstraints.WEST; 237 contraint.gridx = 1; 238 contraint.gridy = 7; 239 contraint.gridwidth = 1; 240 contraint.gridheight = 1; 241 contraint.weightx = 1; 242 contraint.weighty = 0; 243 layout.setConstraints(jnlpHomepageField,contraint); 244 add(jnlpHomepageField); 245 246 JLabel jnlpVendorLabel = new JLabel(); 247 jnlpVendorLabel.setText("Jnlp Vendor:"); 248 contraint.fill = GridBagConstraints.NONE; 249 contraint.insets = new Insets(4,64,0,16); 250 contraint.anchor = GridBagConstraints.EAST; 251 contraint.gridx = 0; 252 contraint.gridy = 8; 253 contraint.gridwidth = 1; 254 contraint.gridheight = 1; 255 contraint.weightx = 0; 256 contraint.weighty = 0; 257 layout.setConstraints(jnlpVendorLabel,contraint); 258 add(jnlpVendorLabel); 259 260 jnlpVendorField = new JTextField(); 261 jnlpVendorField.setEditable(false); 262 contraint.fill = GridBagConstraints.HORIZONTAL; 263 contraint.insets = new Insets(4,64,0,16); 264 contraint.anchor = GridBagConstraints.WEST; 265 contraint.gridx = 1; 266 contraint.gridy = 8; 267 contraint.gridwidth = 1; 268 contraint.gridheight = 1; 269 contraint.weightx = 1; 270 contraint.weighty = 0; 271 layout.setConstraints(jnlpVendorField,contraint); 272 add(jnlpVendorField); 273 274 unixBox = new JCheckBox(); 275 unixBox.setText("Unix. (*.sh)"); 276 contraint.fill = GridBagConstraints.NONE; 277 contraint.insets = new Insets(4,32,0,16); 278 contraint.anchor = GridBagConstraints.WEST; 279 contraint.gridx = 0; 280 contraint.gridy = 9; 281 contraint.gridwidth = 1; 282 contraint.gridheight = 1; 283 contraint.weightx = 0; 284 contraint.weighty = 0; 285 layout.setConstraints(unixBox,contraint); 286 add(unixBox); 287 288 linuxi386Box = new JCheckBox(); 289 linuxi386Box.setText("Linux - i386. (*.lin)"); 290 contraint.fill = GridBagConstraints.NONE; 291 contraint.insets = new Insets(4,32,0,16); 292 contraint.anchor = GridBagConstraints.WEST; 293 contraint.gridx = 0; 294 contraint.gridy = 10; 295 contraint.gridwidth = 1; 296 contraint.gridheight = 1; 297 contraint.weightx = 0; 298 contraint.weighty = 0; 299 layout.setConstraints(linuxi386Box,contraint); 300 add(linuxi386Box); 301 302 win95Box = new JCheckBox(); 303 win95Box.setText("Windows - 95. (*.exe)"); 304 contraint.fill = GridBagConstraints.NONE; 305 contraint.insets = new Insets(4,32,0,16); 306 contraint.anchor = GridBagConstraints.WEST; 307 contraint.gridx = 0; 308 contraint.gridy = 11; 309 contraint.gridwidth = 1; 310 contraint.gridheight = 1; 311 contraint.weightx = 0; 312 contraint.weighty = 0; 313 layout.setConstraints(win95Box,contraint); 314 add(win95Box); 315 316 JPanel fillPanel = new JPanel(); 317 contraint.fill = GridBagConstraints.BOTH; 318 contraint.insets = new Insets(4,4,4,4); 319 contraint.anchor = GridBagConstraints.CENTER; 320 contraint.gridx = 0; 321 contraint.gridy = 12; 322 contraint.gridwidth = 1; 323 contraint.gridheight = 1; 324 contraint.weightx = 0; 325 contraint.weighty = 1; 326 layout.setConstraints(fillPanel,contraint); 327 add(fillPanel); 328 329 } 330 331 332 335 public void save() { 336 } 337 338 341 public void initialize(VAIProductModel model) { 342 this.model = model; 343 344 if(model.getTargetList().contains("java") == true) { 345 javaBox.setSelected(true); 346 } 347 348 if(model.getTargetList().contains("jar") == true) { 349 jarBox.setSelected(true); 350 if (model.getProperty("vainstall.archiver.target.jar.signer.alias") != null) { 351 jarSignerAliasField.setText(model.getProperty("vainstall.archiver.target.jar.signer.alias")); 352 } 353 if (model.getProperty("vainstall.archiver.target.jar.signer.passphrase") != null) { 354 jarSignerPassphraseField.setText(model.getProperty("vainstall.archiver.target.jar.signer.passphrase")); 355 } 356 357 jarSignerAliasField.setEditable(true); 358 jarSignerPassphraseField.setEditable(true); 359 } 360 361 if(model.getTargetList().contains("jnlp") == true) { 362 jnlpBox.setSelected(true); 363 364 if (model.getProperty("vainstall.archiver.target.jnlp.codebase") != null) { 365 jnlpCodebaseField.setText(model.getProperty("vainstall.archiver.target.jnlp.codebase")); 366 } 367 if (model.getProperty("vainstall.archiver.target.jnlp.homepage") != null) { 368 jnlpHomepageField.setText(model.getProperty("vainstall.archiver.target.jnlp.homepage")); 369 } 370 if (model.getProperty("vainstall.archiver.target.jnlp.vendor") != null) { 371 jnlpVendorField.setText(model.getProperty("vainstall.archiver.target.jnlp.vendor")); 372 } 373 374 jnlpCodebaseField.setEditable(true); 375 jnlpHomepageField.setEditable(true); 376 jnlpVendorField.setEditable(true); 377 } 378 379 if(model.getTargetList().contains("unix") == true) { 380 unixBox.setSelected(true); 381 } 382 383 if(model.getTargetList().contains("linux-i386") == true) { 384 linuxi386Box.setSelected(true); 385 } 386 387 if(model.getTargetList().contains("win95") == true) { 388 win95Box.setSelected(true); 389 } 390 391 javaBox.addItemListener(this); 392 jarBox.addItemListener(this); 393 jnlpBox.addItemListener(this); 394 unixBox.addItemListener(this); 395 linuxi386Box.addItemListener(this); 396 win95Box.addItemListener(this); 397 398 jarSignerPassphraseField.addFocusListener(this); 399 jarSignerAliasField.addFocusListener(this); 400 jnlpHomepageField.addFocusListener(this); 401 jnlpVendorField.addFocusListener(this); 402 jnlpCodebaseField.addFocusListener(this); 403 404 } 405 406 409 public void stop() { 410 } 411 412 public void focusGained(FocusEvent evt) { 413 } 414 415 public void focusLost(FocusEvent evt) { 416 417 if (evt.getSource() == jarSignerPassphraseField) { 418 model.putProperty("vainstall.archiver.target.jar.signer.passphrase",jarSignerPassphraseField.getText()); 419 } 420 421 if (evt.getSource() == jarSignerAliasField) { 422 model.putProperty("vainstall.archiver.target.jar.signer.alias",jarSignerAliasField.getText()); 423 } 424 425 if (evt.getSource() == jnlpHomepageField) { 426 model.putProperty("vainstall.archiver.target.jnlp.codebase",jnlpHomepageField.getText()); 427 } 428 429 if (evt.getSource() == jnlpVendorField) { 430 model.putProperty("vainstall.archiver.target.jnlp.homepage",jnlpVendorField.getText()); 431 } 432 433 if (evt.getSource() == jnlpCodebaseField) { 434 model.putProperty("vainstall.archiver.target.jnlp.vendor",jnlpCodebaseField.getText()); 435 } 436 } 437 438 public void itemStateChanged(ItemEvent evt) { 439 440 if (evt.getItem() == javaBox) { 441 if (javaBox.isSelected() == true) { 442 model.addTarget("java"); 443 } else { 444 model.removeTarget("java"); 445 } 446 } 447 448 if (evt.getItem() == jarBox) { 449 if (jarBox.isSelected() == true) { 450 jarSignerPassphraseField.setEditable(true); 451 jarSignerAliasField.setEditable(true); 452 jarSignerAliasField.requestFocus(); 453 454 model.addTarget("jar"); 455 } else { 456 jarSignerAliasField.setText(""); 457 jarSignerAliasField.setEditable(false); 458 jarSignerPassphraseField.setText(""); 459 jarSignerPassphraseField.setEditable(false); 460 461 model.removeTarget("jar"); 462 model.removeProperty("vainstall.archiver.target.jar.signer.alias"); 463 model.removeProperty("vainstall.archiver.target.jar.signer.passphrase"); 464 } 465 } 466 467 if (evt.getItem() == jnlpBox) { 468 if (jnlpBox.isSelected() == true) { 469 jnlpHomepageField.setEditable(true); 470 jnlpVendorField.setEditable(true); 471 jnlpCodebaseField.setEditable(true); 472 jnlpCodebaseField.requestFocus(); 473 474 model.addTarget("jnlp"); 475 } else { 476 jnlpHomepageField.setEditable(false); 477 jnlpHomepageField.setText(""); 478 jnlpVendorField.setEditable(false); 479 jnlpVendorField.setText(""); 480 jnlpCodebaseField.setEditable(false); 481 jnlpCodebaseField.setText(""); 482 483 model.removeTarget("jnlp"); 484 model.removeProperty("vainstall.archiver.target.jnlp.codebase"); 485 model.removeProperty("vainstall.archiver.target.jnlp.homepage"); 486 model.removeProperty("vainstall.archiver.target.jnlp.vendor"); 487 } 488 } 489 490 if (evt.getItem() == unixBox) { 491 if (unixBox.isSelected() == true) { 492 model.addTarget("unix"); 493 } else { 494 model.removeTarget("unix"); 495 } 496 } 497 498 if (evt.getItem() == linuxi386Box) { 499 if (linuxi386Box.isSelected() == true) { 500 model.addTarget("linux-i386"); 501 } else { 502 model.removeTarget("linux-i386"); 503 } 504 } 505 506 if (evt.getItem() == win95Box) { 507 if (win95Box.isSelected() == true) { 508 model.addTarget("win95"); 509 } else { 510 model.removeTarget("win95"); 511 } 512 } 513 514 } 515 } 516 | Popular Tags |