1 29 38 39 package org.planetamessenger.mos.forms; 40 41 import org.planetamessenger.mos.engine.*; 42 43 44 45 class JMOSAddInviteDlg extends javax.swing.JDialog { 46 47 private static int WINDOW_WIDTH = 250; 48 private static int WINDOW_HEIGHT = 160; 49 50 private javax.swing.JTextField userIdText = null; 51 private javax.swing.JButton addButton = null; 52 private javax.swing.JButton cancelButton = null; 53 private javax.swing.JLabel userIdLabel = null; 54 private javax.swing.JLabel protocolLabel = null; 55 private javax.swing.JComboBox protocolCombo = null; 56 57 58 59 66 public JMOSAddInviteDlg( java.awt.Frame parent, boolean modal ) { 67 68 super( parent, modal ); 69 initComponents(); 70 } 71 72 76 private void initComponents() { 77 78 java.awt.GridBagConstraints constraints = new java.awt.GridBagConstraints (); 79 javax.swing.Box btnsPanel = javax.swing.Box.createHorizontalBox(); 80 81 82 addButton = new javax.swing.JButton (); 83 cancelButton = new javax.swing.JButton (); 84 userIdText = new javax.swing.JTextField (); 85 userIdLabel = new javax.swing.JLabel (); 86 protocolLabel = new javax.swing.JLabel (); 87 protocolCombo = new javax.swing.JComboBox (); 88 89 90 setDefaultCloseOperation( javax.swing.JFrame.DO_NOTHING_ON_CLOSE ); 91 getContentPane().setLayout( new java.awt.GridBagLayout () ); 92 setTitle( JSharedObjects.getLanguageManager().getStringEx( "ADD_INVITE_USER" ) ); 93 94 constraints.gridx = 0; 95 constraints.gridy = 0; 96 constraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 97 constraints.gridheight = 1; 98 constraints.weightx = 0.001; 99 constraints.weighty = 0.001; 100 constraints.fill = java.awt.GridBagConstraints.HORIZONTAL; 101 constraints.insets = new java.awt.Insets ( 1, 1, 1, 1 ); 102 104 protocolLabel.setFont( JSystemFonts.FONT ); 106 protocolLabel.setText( JSharedObjects.getLanguageManager().getStringEx( "SELECT_NETWORK" ) ); 107 protocolLabel.setPreferredSize( new java.awt.Dimension ( 120, 17 ) ); 108 getContentPane().add( protocolLabel, constraints ); 109 110 constraints.gridy++; 111 constraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 112 113 protocolCombo.setPreferredSize( new java.awt.Dimension ( 120, 21 ) ); 115 protocolCombo.setModel( new javax.swing.DefaultComboBoxModel () ); 116 protocolCombo.setFont( JSystemFonts.FONT ); 117 fillProtocolCombo(); 118 getContentPane().add( protocolCombo, constraints ); 119 120 constraints.gridy++; 122 userIdLabel.setFont( JSystemFonts.FONT ); 123 userIdLabel.setText( JSharedObjects.getLanguageManager().getStringEx( "USER" ) ); 124 userIdLabel.setPreferredSize( new java.awt.Dimension ( 120, 17 ) ); 125 getContentPane().add( userIdLabel, constraints ); 126 127 constraints.gridy++; 129 userIdText.addKeyListener( new java.awt.event.KeyAdapter () { 130 public void keyReleased( java.awt.event.KeyEvent keyEvt ) { 131 if( userIdText.getText().length() > 0 ) 132 addButton.setEnabled( true ); 133 else 134 addButton.setEnabled( false ); 135 } 136 } ); 137 userIdText.setFont( JSystemFonts.FONT ); 138 userIdText.setText( "" ); 139 userIdText.setPreferredSize( new java.awt.Dimension ( 110, 21 ) ); 140 getContentPane().add( userIdText, constraints ); 141 142 addButton.setFont( JSystemFonts.FONT ); 144 addButton.setIcon( JSharedObjects.getResources().getIcon( JResources.OK_BUTTON_ICON ) ); 145 addButton.setText( JSharedObjects.getLanguageManager().getStringEx( "ADD" ) ); 146 addButton.setEnabled( false ); 147 addButton.setPreferredSize( new java.awt.Dimension ( JResources.DEFAULT_BUTTON_WIDTH, JResources.DEFAULT_BUTTON_HEIGHT ) ); 148 addButton.setMinimumSize( addButton.getPreferredSize() ); 149 150 cancelButton.setFont( JSystemFonts.FONT ); 152 cancelButton.setIcon( JSharedObjects.getResources().getIcon( JResources.CLOSE_BUTTON_ICON ) ); 153 cancelButton.setText( JSharedObjects.getLanguageManager().getStringEx( "CANCEL" ) ); 154 cancelButton.setPreferredSize( new java.awt.Dimension ( JResources.DEFAULT_BUTTON_WIDTH, JResources.DEFAULT_BUTTON_HEIGHT ) ); 155 cancelButton.setMinimumSize( cancelButton.getPreferredSize() ); 156 157 btnsPanel.add( javax.swing.Box.createHorizontalGlue() ); 158 btnsPanel.add( cancelButton ); 159 btnsPanel.add( addButton ); 160 161 constraints.gridy++; 162 constraints.gridwidth = java.awt.GridBagConstraints.REMAINDER; 163 constraints.gridheight = java.awt.GridBagConstraints.RELATIVE; 164 constraints.fill = java.awt.GridBagConstraints.CENTER; 165 constraints.weighty = 0.01; 166 167 getContentPane().add( btnsPanel, constraints ); 168 169 setResizable( true ); 170 java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize(); 171 setSize( new java.awt.Dimension ( WINDOW_WIDTH, WINDOW_HEIGHT ) ); 172 setLocation( ( screenSize.width - getSize().width ) / 2, ( screenSize.height - getSize().height ) / 2 ); 173 174 addButton.addActionListener( new java.awt.event.ActionListener () { 176 177 public void actionPerformed( java.awt.event.ActionEvent evt ) { 178 addButtonActionPerformed( evt ); 179 } 180 } 181 ); 182 183 cancelButton.addActionListener( new java.awt.event.ActionListener () { 185 186 public void actionPerformed( java.awt.event.ActionEvent evt ) { 187 cancelButtonActionPerformed( evt ); 188 } 189 } 190 ); 191 } 192 193 198 private void addButtonActionPerformed( java.awt.event.ActionEvent evt ) { 199 200 org.planetamessenger.plugin.JPlugin plugin = ( org.planetamessenger.plugin.JPlugin ) protocolCombo.getModel().getSelectedItem(); 201 202 203 if( !plugin.isConnected() ) { 204 System.err.println( "JMOSAddInviteDlg.addButtonActionPerformed() - Plugin is not connected. Nothing to do" ); 205 206 javax.swing.JOptionPane.showMessageDialog( this, 207 JSharedObjects.getLanguageManager().getStringEx( "DISCONNECTED_PLUGIN_WARNING" ), 208 JSharedObjects.getLanguageManager().getStringEx( "INFORMATION" ), javax.swing.JOptionPane.INFORMATION_MESSAGE ); 209 return; 210 } 211 212 try { 213 if( JSharedObjects.getContactListManager().getContactList( plugin ).containsKey( userIdText.getText().trim() ) ) { 214 javax.swing.JOptionPane.showMessageDialog( this, JSharedObjects.getLanguageManager().getStringEx( "USER_ALREADY_IN_CONTACT_LIST_WARNING" ), JSharedObjects.getLanguageManager().getStringEx( "INFORMATION" ), javax.swing.JOptionPane.INFORMATION_MESSAGE ); 215 } 216 else { 217 plugin.fireOnAddUserToContactList( userIdText.getText() ); 218 closeDialog( null ); 219 } 220 } catch( java.lang.Exception ex ) { 221 System.err.println( "JMOSAddInviteDialog.addButtonActionPerformed() - " + ex ); 222 } 223 } 224 225 230 private void cancelButtonActionPerformed( java.awt.event.ActionEvent evt ) { 231 232 closeDialog( null ); 233 } 234 235 240 private void closeDialog( java.awt.event.WindowEvent evt ) { 241 242 setVisible( false ); 243 dispose(); 244 } 245 246 250 private void fillProtocolCombo() { 251 252 org.planetamessenger.plugin.JPlugin[] allPlugins = org.planetamessenger.mos.engine.JSharedObjects.getPluginEngine().toArray(); 254 255 if( allPlugins != null ) 256 for( int nCount = 0; nCount < allPlugins.length; nCount++ ) 257 if( org.planetamessenger.mos.engine.JSharedObjects.getProfileManager().checkForPluginUser( allPlugins[nCount].getPluginProperties().getPluginId() ) ) 258 ( ( javax.swing.DefaultComboBoxModel ) protocolCombo.getModel() ).addElement( allPlugins[nCount] ); 259 } 260 } 261 262 | Popular Tags |