| /* | |
| * Licensed to the Apache Software Foundation (ASF) under one | |
| * or more contributor license agreements. See the NOTICE file | |
| * distributed with this work for additional information | |
| * regarding copyright ownership. The ASF licenses this file | |
| * to you under the Apache License, Version 2.0 (the | |
| * "License"); you may not use this file except in compliance | |
| * with the License. You may obtain a copy of the License at | |
| * | |
| * http://www.apache.org/licenses/LICENSE-2.0 | |
| * | |
| * Unless required by applicable law or agreed to in writing, | |
| * software distributed under the License is distributed on an | |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
| * KIND, either express or implied. See the License for the | |
| * specific language governing permissions and limitations | |
| * under the License. | |
| */ | |
| package examples; | |
| public class ContactEditor extends javax.swing.JFrame { | |
| /** | |
| * Creates new form ContactEditor | |
| */ | |
| public ContactEditor() { | |
| initComponents(); | |
| } | |
| /** This method is called from within the constructor to | |
| * initialize the form. | |
| * WARNING: Do NOT modify this code. The content of this method is | |
| * always regenerated by the Form Editor. | |
| */ | |
| // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents | |
| private void initComponents() { | |
| buttonGroup1 = new javax.swing.ButtonGroup(); | |
| jPanel1 = new javax.swing.JPanel(); | |
| jLabel1 = new javax.swing.JLabel(); | |
| jLabel2 = new javax.swing.JLabel(); | |
| jTextField1 = new javax.swing.JTextField(); | |
| jTextField2 = new javax.swing.JTextField(); | |
| jLabel3 = new javax.swing.JLabel(); | |
| jTextField3 = new javax.swing.JTextField(); | |
| jLabel4 = new javax.swing.JLabel(); | |
| jTextField4 = new javax.swing.JTextField(); | |
| jLabel5 = new javax.swing.JLabel(); | |
| jComboBox1 = new javax.swing.JComboBox(); | |
| jPanel2 = new javax.swing.JPanel(); | |
| jLabel6 = new javax.swing.JLabel(); | |
| jTextField5 = new javax.swing.JTextField(); | |
| jScrollPane1 = new javax.swing.JScrollPane(); | |
| jList1 = new javax.swing.JList(); | |
| jButton1 = new javax.swing.JButton(); | |
| jButton2 = new javax.swing.JButton(); | |
| jButton3 = new javax.swing.JButton(); | |
| jButton4 = new javax.swing.JButton(); | |
| jLabel7 = new javax.swing.JLabel(); | |
| jRadioButton1 = new javax.swing.JRadioButton(); | |
| jRadioButton2 = new javax.swing.JRadioButton(); | |
| jRadioButton3 = new javax.swing.JRadioButton(); | |
| jButton5 = new javax.swing.JButton(); | |
| jButton6 = new javax.swing.JButton(); | |
| setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); | |
| setTitle("E-mail Contacts"); | |
| jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(" Name ")); | |
| jLabel1.setText("First Name:"); | |
| jLabel2.setText("Last Name:"); | |
| jTextField1.setText("John"); | |
| jTextField2.setText("Guy"); | |
| jLabel3.setText("Title:"); | |
| jTextField3.setText("Prof, DrSC"); | |
| jLabel4.setText("Nickname:"); | |
| jTextField4.setText("gui-master"); | |
| jLabel5.setText("Display Format:"); | |
| jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "[Nickname] First_Name + Last_Name" })); | |
| javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); | |
| jPanel1.setLayout(jPanel1Layout); | |
| jPanel1Layout.setHorizontalGroup( | |
| jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel1Layout.createSequentialGroup() | |
| .addContainerGap() | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) | |
| .addComponent(jLabel5) | |
| .addComponent(jLabel3) | |
| .addComponent(jLabel1)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel1Layout.createSequentialGroup() | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addComponent(jTextField3, javax.swing.GroupLayout.DEFAULT_SIZE, 157, Short.MAX_VALUE) | |
| .addComponent(jTextField1, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 157, Short.MAX_VALUE)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) | |
| .addComponent(jLabel2) | |
| .addComponent(jLabel4)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 157, Short.MAX_VALUE) | |
| .addComponent(jTextField4, javax.swing.GroupLayout.DEFAULT_SIZE, 157, Short.MAX_VALUE))) | |
| .addComponent(jComboBox1, 0, 376, Short.MAX_VALUE)) | |
| .addContainerGap()) | |
| ); | |
| jPanel1Layout.setVerticalGroup( | |
| jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel1Layout.createSequentialGroup() | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jLabel1) | |
| .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
| .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
| .addComponent(jLabel2)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jLabel3) | |
| .addComponent(jTextField4, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
| .addComponent(jLabel4) | |
| .addComponent(jTextField3, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jLabel5) | |
| .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)) | |
| .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) | |
| ); | |
| jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(" E-mail ")); | |
| jLabel6.setText("E-mail Address:"); | |
| jList1.setModel(new javax.swing.AbstractListModel() { | |
| String[] strings = { "john.guy@xxxxxx.yyy", "gui@yyyyyy.xxx" }; | |
| public int getSize() { return strings.length; } | |
| public Object getElementAt(int i) { return strings[i]; } | |
| }); | |
| jScrollPane1.setViewportView(jList1); | |
| jButton1.setText("Add"); | |
| jButton2.setText("Edit"); | |
| jButton3.setText("Remove"); | |
| jButton4.setText("Default"); | |
| jLabel7.setText("Mail Format:"); | |
| buttonGroup1.add(jRadioButton1); | |
| jRadioButton1.setSelected(true); | |
| jRadioButton1.setText("HTML"); | |
| jRadioButton1.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); | |
| jRadioButton1.setMargin(new java.awt.Insets(0, 0, 0, 0)); | |
| buttonGroup1.add(jRadioButton2); | |
| jRadioButton2.setText("Plain Text"); | |
| jRadioButton2.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); | |
| jRadioButton2.setMargin(new java.awt.Insets(0, 0, 0, 0)); | |
| buttonGroup1.add(jRadioButton3); | |
| jRadioButton3.setText("Custom"); | |
| jRadioButton3.setBorder(javax.swing.BorderFactory.createEmptyBorder(0, 0, 0, 0)); | |
| jRadioButton3.setMargin(new java.awt.Insets(0, 0, 0, 0)); | |
| javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2); | |
| jPanel2.setLayout(jPanel2Layout); | |
| jPanel2Layout.setHorizontalGroup( | |
| jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addContainerGap() | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addGap(12, 12, 12) | |
| .addComponent(jRadioButton1) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jRadioButton2) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jRadioButton3)) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addComponent(jLabel6) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jTextField5, javax.swing.GroupLayout.DEFAULT_SIZE, 298, Short.MAX_VALUE)) | |
| .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 376, Short.MAX_VALUE)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addComponent(jButton2) | |
| .addComponent(jButton1) | |
| .addComponent(jButton3) | |
| .addComponent(jButton4))) | |
| .addComponent(jLabel7)) | |
| .addContainerGap()) | |
| ); | |
| jPanel2Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jButton1, jButton2, jButton3, jButton4}); | |
| jPanel2Layout.setVerticalGroup( | |
| jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jLabel6) | |
| .addComponent(jTextField5, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
| .addComponent(jButton1)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(jPanel2Layout.createSequentialGroup() | |
| .addComponent(jButton2) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jButton3) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jButton4)) | |
| .addComponent(jScrollPane1, 0, 0, Short.MAX_VALUE)) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jLabel7) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jRadioButton1) | |
| .addComponent(jRadioButton2) | |
| .addComponent(jRadioButton3)) | |
| .addContainerGap()) | |
| ); | |
| jButton5.setText("Cancel"); | |
| jButton6.setText("OK"); | |
| javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); | |
| getContentPane().setLayout(layout); | |
| layout.setHorizontalGroup( | |
| layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(layout.createSequentialGroup() | |
| .addContainerGap() | |
| .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup() | |
| .addComponent(jButton6) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jButton5)) | |
| .addComponent(jPanel1, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) | |
| .addComponent(jPanel2, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) | |
| .addContainerGap()) | |
| ); | |
| layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jButton5, jButton6}); | |
| layout.setVerticalGroup( | |
| layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) | |
| .addGroup(layout.createSequentialGroup() | |
| .addContainerGap() | |
| .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE) | |
| .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) | |
| .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) | |
| .addComponent(jButton5) | |
| .addComponent(jButton6)) | |
| .addContainerGap()) | |
| ); | |
| pack(); | |
| }// </editor-fold>//GEN-END:initComponents | |
| /** | |
| * @param args the command line arguments | |
| */ | |
| public static void main(String args[]) { | |
| /* Set the Nimbus look and feel */ | |
| //<editor-fold defaultstate="collapsed" desc=" Look and feel setting code (optional) "> | |
| /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. | |
| * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html | |
| */ | |
| try { | |
| javax.swing.UIManager.LookAndFeelInfo[] installedLookAndFeels=javax.swing.UIManager.getInstalledLookAndFeels(); | |
| for (int idx=0; idx<installedLookAndFeels.length; idx++) | |
| if ("Nimbus".equals(installedLookAndFeels[idx].getName())) { | |
| javax.swing.UIManager.setLookAndFeel(installedLookAndFeels[idx].getClassName()); | |
| break; | |
| } | |
| } catch (ClassNotFoundException ex) { | |
| java.util.logging.Logger.getLogger(ContactEditor.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); | |
| } catch (InstantiationException ex) { | |
| java.util.logging.Logger.getLogger(ContactEditor.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); | |
| } catch (IllegalAccessException ex) { | |
| java.util.logging.Logger.getLogger(ContactEditor.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); | |
| } catch (javax.swing.UnsupportedLookAndFeelException ex) { | |
| java.util.logging.Logger.getLogger(ContactEditor.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); | |
| } | |
| //</editor-fold> | |
| /* Create and display the form */ | |
| java.awt.EventQueue.invokeLater(new Runnable() { | |
| public void run() { | |
| new ContactEditor().setVisible(true); | |
| } | |
| }); | |
| } | |
| // Variables declaration - do not modify//GEN-BEGIN:variables | |
| private javax.swing.ButtonGroup buttonGroup1; | |
| private javax.swing.JButton jButton1; | |
| private javax.swing.JButton jButton2; | |
| private javax.swing.JButton jButton3; | |
| private javax.swing.JButton jButton4; | |
| private javax.swing.JButton jButton5; | |
| private javax.swing.JButton jButton6; | |
| private javax.swing.JComboBox jComboBox1; | |
| private javax.swing.JLabel jLabel1; | |
| private javax.swing.JLabel jLabel2; | |
| private javax.swing.JLabel jLabel3; | |
| private javax.swing.JLabel jLabel4; | |
| private javax.swing.JLabel jLabel5; | |
| private javax.swing.JLabel jLabel6; | |
| private javax.swing.JLabel jLabel7; | |
| private javax.swing.JList jList1; | |
| private javax.swing.JPanel jPanel1; | |
| private javax.swing.JPanel jPanel2; | |
| private javax.swing.JRadioButton jRadioButton1; | |
| private javax.swing.JRadioButton jRadioButton2; | |
| private javax.swing.JRadioButton jRadioButton3; | |
| private javax.swing.JScrollPane jScrollPane1; | |
| private javax.swing.JTextField jTextField1; | |
| private javax.swing.JTextField jTextField2; | |
| private javax.swing.JTextField jTextField3; | |
| private javax.swing.JTextField jTextField4; | |
| private javax.swing.JTextField jTextField5; | |
| // End of variables declaration//GEN-END:variables | |
| } |