1 32 33 package it.businesslogic.ireport.gui; 34 35 import java.util.*; 36 import it.businesslogic.ireport.*; 37 import it.businesslogic.ireport.util.I18n; 38 42 public class PluginConfigurationDialog extends javax.swing.JDialog { 43 44 45 public PluginConfigurationDialog(javax.swing.JFrame owner ) { 46 super(owner,false); 47 initComponents(); 48 applyI18n(); 49 this.setSize(450, 250); 50 it.businesslogic.ireport.util.Misc.centerFrame(this); 51 jListPlugins.setModel(new javax.swing.DefaultListModel ()); 52 53 54 javax.swing.KeyStroke escape = javax.swing.KeyStroke.getKeyStroke(java.awt.event.KeyEvent.VK_ESCAPE, 0, false); 55 javax.swing.Action escapeAction = new javax.swing.AbstractAction () { 56 public void actionPerformed(java.awt.event.ActionEvent e) { 57 jButtonCloseActionPerformed(e); 58 } 59 }; 60 61 getRootPane().getInputMap(javax.swing.JComponent.WHEN_IN_FOCUSED_WINDOW).put(escape, "ESCAPE"); 62 getRootPane().getActionMap().put("ESCAPE", escapeAction); 63 64 65 this.getRootPane().setDefaultButton(this.jButtonClose); 67 68 } 69 70 75 private void initComponents() { 77 java.awt.GridBagConstraints gridBagConstraints; 78 79 jScrollPane1 = new javax.swing.JScrollPane (); 80 jListPlugins = new javax.swing.JList (); 81 jPanel1 = new javax.swing.JPanel (); 82 jButtonConfig = new javax.swing.JButton (); 83 jButtonClose = new javax.swing.JButton (); 84 jPanel2 = new javax.swing.JPanel (); 85 86 getContentPane().setLayout(new java.awt.GridBagLayout ()); 87 88 setTitle("Plugins configuration"); 89 addWindowListener(new java.awt.event.WindowAdapter () { 90 public void windowClosing(java.awt.event.WindowEvent evt) { 91 exitForm(evt); 92 } 93 }); 94 95 jListPlugins.setSelectionMode(javax.swing.ListSelectionModel.SINGLE_SELECTION); 96 jListPlugins.addListSelectionListener(new javax.swing.event.ListSelectionListener () { 97 public void valueChanged(javax.swing.event.ListSelectionEvent evt) { 98 jListPluginsValueChanged(evt); 99 } 100 }); 101 jListPlugins.addMouseListener(new java.awt.event.MouseAdapter () { 102 public void mouseClicked(java.awt.event.MouseEvent evt) { 103 jListPluginsMouseClicked(evt); 104 } 105 }); 106 107 jScrollPane1.setViewportView(jListPlugins); 108 109 gridBagConstraints = new java.awt.GridBagConstraints (); 110 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 111 gridBagConstraints.weightx = 1.0; 112 gridBagConstraints.weighty = 1.0; 113 gridBagConstraints.insets = new java.awt.Insets (4, 4, 4, 4); 114 getContentPane().add(jScrollPane1, gridBagConstraints); 115 116 jPanel1.setLayout(new java.awt.GridBagLayout ()); 117 118 jPanel1.setMinimumSize(new java.awt.Dimension (120, 150)); 119 jPanel1.setPreferredSize(new java.awt.Dimension (120, 150)); 120 jButtonConfig.setText("Configure"); 121 jButtonConfig.setEnabled(false); 122 jButtonConfig.addActionListener(new java.awt.event.ActionListener () { 123 public void actionPerformed(java.awt.event.ActionEvent evt) { 124 jButtonConfigActionPerformed(evt); 125 } 126 }); 127 128 gridBagConstraints = new java.awt.GridBagConstraints (); 129 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 130 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST; 131 gridBagConstraints.weightx = 1.0; 132 jPanel1.add(jButtonConfig, gridBagConstraints); 133 134 jButtonClose.setText("Close"); 135 jButtonClose.addActionListener(new java.awt.event.ActionListener () { 136 public void actionPerformed(java.awt.event.ActionEvent evt) { 137 jButtonCloseActionPerformed(evt); 138 } 139 }); 140 141 gridBagConstraints = new java.awt.GridBagConstraints (); 142 gridBagConstraints.gridx = 0; 143 gridBagConstraints.gridy = 1; 144 gridBagConstraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 145 gridBagConstraints.anchor = java.awt.GridBagConstraints.NORTHEAST; 146 gridBagConstraints.insets = new java.awt.Insets (4, 0, 0, 0); 147 jPanel1.add(jButtonClose, gridBagConstraints); 148 149 gridBagConstraints = new java.awt.GridBagConstraints (); 150 gridBagConstraints.gridx = 0; 151 gridBagConstraints.gridy = 3; 152 gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH; 153 gridBagConstraints.weighty = 1.0; 154 jPanel1.add(jPanel2, gridBagConstraints); 155 156 gridBagConstraints = new java.awt.GridBagConstraints (); 157 gridBagConstraints.fill = java.awt.GridBagConstraints.VERTICAL; 158 gridBagConstraints.insets = new java.awt.Insets (4, 0, 4, 4); 159 getContentPane().add(jPanel1, gridBagConstraints); 160 161 pack(); 162 } 164 private void jListPluginsMouseClicked(java.awt.event.MouseEvent evt) { if (evt.getButton() == evt.BUTTON1 && evt.getClickCount() == 2) 166 { 167 jButtonConfigActionPerformed( new java.awt.event.ActionEvent (this,0,"")); 168 } 169 } 171 private void jButtonConfigActionPerformed(java.awt.event.ActionEvent evt) { 173 if (jListPlugins.getSelectedValue() == null) return; 174 175 PluginEntry pe = (PluginEntry)jListPlugins.getSelectedValue(); 176 pe.getPlugin().configure(); 177 178 } 180 private void jListPluginsValueChanged(javax.swing.event.ListSelectionEvent evt) { 182 if (this.jListPlugins.getSelectedValue() != null) 183 { 184 PluginEntry pe = (PluginEntry)jListPlugins.getSelectedValue(); 185 if (pe.isConfigurable()) 186 { 187 jButtonConfig.setEnabled(true); 188 } 189 else 190 { 191 jButtonConfig.setEnabled(false); 192 } 193 } 194 else 195 { 196 jButtonConfig.setEnabled(false); 197 } 198 } 200 private void jButtonCloseActionPerformed(java.awt.event.ActionEvent evt) { this.setVisible(false); 202 } 204 205 private void exitForm(java.awt.event.WindowEvent evt) { this.setVisible(false); 207 } 209 public void setPlugins(Collection plugins) 210 { 211 Iterator iter = plugins.iterator(); 212 while (iter.hasNext()) 213 { 214 PluginEntry pe = (PluginEntry)iter.next(); 215 ((javax.swing.DefaultListModel )(jListPlugins.getModel())).addElement(pe); 216 } 217 218 219 } 221 222 238 239 private javax.swing.JButton jButtonClose; 241 private javax.swing.JButton jButtonConfig; 242 private javax.swing.JList jListPlugins; 243 private javax.swing.JPanel jPanel1; 244 private javax.swing.JPanel jPanel2; 245 private javax.swing.JScrollPane jScrollPane1; 246 248 public void applyI18n(){ 249 jButtonClose.setText(I18n.getString("pluginConfigurationDialog.buttonClose","Close")); 251 jButtonConfig.setText(I18n.getString("pluginConfigurationDialog.buttonConfig","Configure")); 252 } 254 } 255 | Popular Tags |