00001 package edu.ksu.cis.bandera.bui; 00002 00003 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00004 * Bandera, a Java(TM) analysis and transformation toolkit * 00005 * Copyright (C) 2000 Robby (robby@cis.ksu.edu) * 00006 * All rights reserved. * 00007 * * 00008 * This work was done as a project in the SAnToS Laboratory, * 00009 * Department of Computing and Information Sciences, Kansas State * 00010 * University, USA (http://www.cis.ksu.edu/santos). * 00011 * It is understood that any modification not identified as such is * 00012 * not covered by the preceding statement. * 00013 * * 00014 * This work is free software; you can redistribute it and/or * 00015 * modify it under the terms of the GNU Library General Public * 00016 * License as published by the Free Software Foundation; either * 00017 * version 2 of the License, or (at your option) any later version. * 00018 * * 00019 * This work is distributed in the hope that it will be useful, * 00020 * but WITHOUT ANY WARRANTY; without even the implied warranty of * 00021 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * 00022 * Library General Public License for more details. * 00023 * * 00024 * You should have received a copy of the GNU Library General Public * 00025 * License along with this toolkit; if not, write to the * 00026 * Free Software Foundation, Inc., 59 Temple Place - Suite 330, * 00027 * Boston, MA 02111-1307, USA. * 00028 * * 00029 * Java is a trademark of Sun Microsystems, Inc. * 00030 * * 00031 * To submit a bug report, send a comment, or get the latest news on * 00032 * this project and other SAnToS projects, please visit the web-site * 00033 * http://www.cis.ksu.edu/santos * 00034 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 00035 import edu.ksu.cis.bandera.bui.session.*; 00036 import edu.ksu.cis.bandera.bui.session.datastructure.*; 00037 import java.io.*; 00038 import java.util.*; 00039 import javax.swing.*; 00040 import edu.ksu.cis.bandera.jjjc.*; 00041 public class ClasspathManager extends JDialog { 00042 private JButton ivjAddButton = null; 00043 private JLabel ivjClasspathLabel = null; 00044 private JList ivjClasspathList = null; 00045 private JPanel ivjClasspathManagerContentPane = null; 00046 private JScrollPane ivjClasspathScrollPane = null; 00047 private JButton ivjOkButton = null; 00048 private JButton ivjRemoveButton = null; 00049 private JButton ivjCancelButton = null; 00050 IvjEventHandler ivjEventHandler = new IvjEventHandler(); 00051 00052 class IvjEventHandler implements java.awt.event.ActionListener, java.awt.event.WindowListener, javax.swing.event.ListSelectionListener { 00053 public void actionPerformed(java.awt.event.ActionEvent e) { 00054 if (e.getSource() == ClasspathManager.this.getCancelButton()) 00055 connEtoM1(e); 00056 if (e.getSource() == ClasspathManager.this.getRemoveButton()) 00057 connEtoC1(); 00058 if (e.getSource() == ClasspathManager.this.getAddButton()) 00059 connEtoC2(); 00060 if (e.getSource() == ClasspathManager.this.getOkButton()) 00061 connEtoC3(); 00062 }; 00063 public void valueChanged(javax.swing.event.ListSelectionEvent e) { 00064 if (e.getSource() == ClasspathManager.this.getClasspathList()) 00065 connEtoC5(); 00066 }; 00067 public void windowActivated(java.awt.event.WindowEvent e) {}; 00068 public void windowClosed(java.awt.event.WindowEvent e) {}; 00069 public void windowClosing(java.awt.event.WindowEvent e) {}; 00070 public void windowDeactivated(java.awt.event.WindowEvent e) {}; 00071 public void windowDeiconified(java.awt.event.WindowEvent e) {}; 00072 public void windowIconified(java.awt.event.WindowEvent e) {}; 00073 public void windowOpened(java.awt.event.WindowEvent e) { 00074 if (e.getSource() == ClasspathManager.this) 00075 connEtoC4(e); 00076 }; 00077 }; 00078 /** 00079 * ClasspathManager constructor comment. 00080 */ 00081 public ClasspathManager() { 00082 super(); 00083 initialize(); 00084 } 00085 /** 00086 * ClasspathManager constructor comment. 00087 * @param owner java.awt.Dialog 00088 */ 00089 public ClasspathManager(java.awt.Dialog owner) { 00090 super(owner); 00091 } 00092 /** 00093 * ClasspathManager constructor comment. 00094 * @param owner java.awt.Dialog 00095 * @param title java.lang.String 00096 */ 00097 public ClasspathManager(java.awt.Dialog owner, String title) { 00098 super(owner, title); 00099 } 00100 /** 00101 * ClasspathManager constructor comment. 00102 * @param owner java.awt.Dialog 00103 * @param title java.lang.String 00104 * @param modal boolean 00105 */ 00106 public ClasspathManager(java.awt.Dialog owner, String title, boolean modal) { 00107 super(owner, title, modal); 00108 } 00109 /** 00110 * ClasspathManager constructor comment. 00111 * @param owner java.awt.Dialog 00112 * @param modal boolean 00113 */ 00114 public ClasspathManager(java.awt.Dialog owner, boolean modal) { 00115 super(owner, modal); 00116 } 00117 /** 00118 * ClasspathManager constructor comment. 00119 * @param owner java.awt.Frame 00120 */ 00121 public ClasspathManager(java.awt.Frame owner) { 00122 super(owner); 00123 } 00124 /** 00125 * ClasspathManager constructor comment. 00126 * @param owner java.awt.Frame 00127 * @param title java.lang.String 00128 */ 00129 public ClasspathManager(java.awt.Frame owner, String title) { 00130 super(owner, title); 00131 } 00132 /** 00133 * ClasspathManager constructor comment. 00134 * @param owner java.awt.Frame 00135 * @param title java.lang.String 00136 * @param modal boolean 00137 */ 00138 public ClasspathManager(java.awt.Frame owner, String title, boolean modal) { 00139 super(owner, title, modal); 00140 } 00141 /** 00142 * ClasspathManager constructor comment. 00143 * @param owner java.awt.Frame 00144 * @param modal boolean 00145 */ 00146 public ClasspathManager(java.awt.Frame owner, boolean modal) { 00147 super(owner, modal); 00148 } 00149 /** 00150 * Comment 00151 */ 00152 public void addButton_ActionEvents() { 00153 FileChooser.chooser.setCurrentDirectory(new File(System.getProperty("user.dir"))); 00154 FileChooser.chooser.setFileFilter(FileChooser.CLASSPATH); 00155 FileChooser.chooser.setSelectedFile(new File("")); 00156 FileChooser.chooser.setFileSelectionMode(FileChooser.FILES_AND_DIRECTORIES); 00157 if (FileChooser.chooser.showDialog(this, "Add") == FileChooser.APPROVE_OPTION) { 00158 File file = FileChooser.chooser.getSelectedFile(); 00159 if (file.isDirectory() || (file.exists() 00160 && (file.getName().endsWith(".jar") || file.getName().endsWith(".zip")))) { 00161 ListModel listModel = getClasspathList().getModel(); 00162 int size = listModel.getSize(); 00163 TreeSet ts = new TreeSet(); 00164 for (int i = 0; i < size; i++) { 00165 ts.add(listModel.getElementAt(i)); 00166 } 00167 try { 00168 ts.add(file.getCanonicalPath()); 00169 } catch (Exception e) { 00170 } 00171 getClasspathList().setValueIsAdjusting(true); 00172 getClasspathList().setListData(new Vector(ts)); 00173 getClasspathList().setValueIsAdjusting(false); 00174 getClasspathScrollPane().validate(); 00175 getClasspathScrollPane().repaint(); 00176 getRemoveButton().setEnabled(false); 00177 } else { 00178 try { 00179 JOptionPane.showMessageDialog(this, "File '" + file.getCanonicalPath() 00180 + "' does not exist, not a directory, or not a jar/zip file", "Error", JOptionPane.ERROR_MESSAGE); 00181 } catch (Exception e) { 00182 } 00183 } 00184 } 00185 } 00186 /** 00187 * Comment 00188 */ 00189 public void classpathList_ListSelectionEvents() { 00190 getRemoveButton().setEnabled(true); 00191 } 00192 /** 00193 * Comment 00194 */ 00195 public void classpathManager_WindowOpened() { 00196 getRemoveButton().setEnabled(getClasspathList().getSelectedValue() != null); 00197 } 00198 /** 00199 * connEtoC1: (RemoveButton.action. --> ClasspathManager.removeButton_ActionEvents()V) 00200 */ 00201 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00202 private void connEtoC1() { 00203 try { 00204 // user code begin {1} 00205 // user code end 00206 this.removeButton_ActionEvents(); 00207 // user code begin {2} 00208 // user code end 00209 } catch (java.lang.Throwable ivjExc) { 00210 // user code begin {3} 00211 // user code end 00212 handleException(ivjExc); 00213 } 00214 } 00215 /** 00216 * connEtoC2: (AddButton.action. --> ClasspathManager.addButton_ActionEvents()V) 00217 */ 00218 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00219 private void connEtoC2() { 00220 try { 00221 // user code begin {1} 00222 // user code end 00223 this.addButton_ActionEvents(); 00224 // user code begin {2} 00225 // user code end 00226 } catch (java.lang.Throwable ivjExc) { 00227 // user code begin {3} 00228 // user code end 00229 handleException(ivjExc); 00230 } 00231 } 00232 /** 00233 * connEtoC3: (OkButton.action. --> ClasspathManager.okButton_ActionEvents()V) 00234 */ 00235 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00236 private void connEtoC3() { 00237 try { 00238 // user code begin {1} 00239 // user code end 00240 this.okButton_ActionEvents(); 00241 // user code begin {2} 00242 // user code end 00243 } catch (java.lang.Throwable ivjExc) { 00244 // user code begin {3} 00245 // user code end 00246 handleException(ivjExc); 00247 } 00248 } 00249 /** 00250 * connEtoC4: (ClasspathManager.window.windowOpened(java.awt.event.WindowEvent) --> ClasspathManager.classpathManager_WindowOpened()V) 00251 * @param arg1 java.awt.event.WindowEvent 00252 */ 00253 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00254 private void connEtoC4(java.awt.event.WindowEvent arg1) { 00255 try { 00256 // user code begin {1} 00257 // user code end 00258 this.classpathManager_WindowOpened(); 00259 // user code begin {2} 00260 // user code end 00261 } catch (java.lang.Throwable ivjExc) { 00262 // user code begin {3} 00263 // user code end 00264 handleException(ivjExc); 00265 } 00266 } 00267 /** 00268 * connEtoC5: (ClasspathList.listSelection. --> ClasspathManager.classpathList_ListSelectionEvents()V) 00269 */ 00270 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00271 private void connEtoC5() { 00272 try { 00273 // user code begin {1} 00274 // user code end 00275 this.classpathList_ListSelectionEvents(); 00276 // user code begin {2} 00277 // user code end 00278 } catch (java.lang.Throwable ivjExc) { 00279 // user code begin {3} 00280 // user code end 00281 handleException(ivjExc); 00282 } 00283 } 00284 /** 00285 * connEtoM1: (CancelButton.action.actionPerformed(java.awt.event.ActionEvent) --> ClasspathManager.setVisible(Z)V) 00286 * @param arg1 java.awt.event.ActionEvent 00287 */ 00288 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00289 private void connEtoM1(java.awt.event.ActionEvent arg1) { 00290 try { 00291 // user code begin {1} 00292 // user code end 00293 this.setVisible(false); 00294 // user code begin {2} 00295 // user code end 00296 } catch (java.lang.Throwable ivjExc) { 00297 // user code begin {3} 00298 // user code end 00299 handleException(ivjExc); 00300 } 00301 } 00302 /** 00303 * Return the AddButton property value. 00304 * @return javax.swing.JButton 00305 */ 00306 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00307 private javax.swing.JButton getAddButton() { 00308 if (ivjAddButton == null) { 00309 try { 00310 ivjAddButton = new javax.swing.JButton(); 00311 ivjAddButton.setName("AddButton"); 00312 ivjAddButton.setMnemonic('a'); 00313 ivjAddButton.setText("Add"); 00314 ivjAddButton.setBackground(new java.awt.Color(204,204,255)); 00315 // user code begin {1} 00316 // user code end 00317 } catch (java.lang.Throwable ivjExc) { 00318 // user code begin {2} 00319 // user code end 00320 handleException(ivjExc); 00321 } 00322 } 00323 return ivjAddButton; 00324 } 00325 /** 00326 * 00327 */ 00328 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00329 private static void getBuilderData() { 00330 /*V1.1 00331 **start of data** 00332 D0CB838494G88G88G4C89CEA8GGGGGGGGGGGG8CGGGE2F5E9ECE4E5F2A0E4E1F4E135BC8DD8D45715E643EE0DEB9337B5095B5ADD5B1016EEE8EA3BEE1624B4358D7DCAF65DDDCB5D54E6CDEBD33A317B1154B4F6EB7B314D9D987EF4D4149F098C882291A2720F98C423B088C48C88C4C8E2939EB38F18B84C0CB30FGCA52BD775EF76E3CF9738650B6FC5F713DFB6E3D671EF36E39675CFB5E9DC96E41D5E92614DCC2CCE9C47DEBB291E239C8C84C0D270691D7C092CCC473D78A3017CC 00333 361861D98EF55D5D8926EC724D3ECCA837C03961758453FEF84FA145C7133A60A54CB8F1D0F7675837DF1EFB1C3FA840F1B2D8F9E45A824F5DGE78167GD8CD687857278BD47CE2A86FD65FA918D28839E222EDC6868AB478EDEA3B9A28338110945A666EE92BDA9F89B85AA6961E6BCD3C6D96F8E6B16E2E751CD45B45E6C69147530BA2F65131B47491BAD3F8DF177AA42B4BA328A2D20954DCC5F556FBF56C0C6C182C3A6A1F2C32BB7DD5A3125BA17B242A11C9E7F3F31BCB727B3D12B2FED1F2CBE3320F10 00334 CD0C4F4583190C8670896571D40AA3EFD25D14407BC9005ED46475390BADAAAF434F7E93A939F3C9D8DE23D3B90F6BD3833C766EC8B1AFB2D37A0FB25D53FE59D06E84603C244FA0AFF1E664657DB7E85BE4A86726A518AA5390DF5BC371B6A8DF81D052104727DFC39EDD638F13441F5C9931A78C0FCB53B8EFEB5282BC2ECAB619DFE276317BG1D632DD0171B1EE0AA876886F081AC85A8E4F679F841AB70BCB72234F9A6A6BC6EF3DEEF2B4B613B68F148AEF8EFEE069A9557A75BBDBE87A15C76BEB9D0E940 00335 8FC2E4FA305DD160328D92341595A98F12697F78DBB67FFA59EC791E089815463A7400EC5999D4EF53ECEE13GCF7B51796378CFB07CC0C6G4F67AA1D61E9F99A6A92B3D04F4B4B11974B27A2494A7D57A3B28CF8691D3AA722B71373B01E9960056BF8CBA15571F2402F860887588CC03292CCA5D928631C176A6753F117DB11FDEE4955BFB96215FCCA6B245385F62F6ABAEEFAAEDD9B816F17F0537D38DE226A35F3347D7D0F8C7562F5AD09E849627A98488A68050F3DF3A65C58CAD628ED6C96F378E336D6 00336 96E771B9CC9578AD8C3FC20367F36BE5F8DA0E02BA4B8E403176DFE6EB4B3BC3EFA3B18C3FFC075EC61AFA50C6E2206E704E84931F5F3FAA22BEF09914238162GB681A48394D8E0ADDBF00E5FFD29FA016B28D7B33F3C6F7E8379701427951F546576AB125BAEDF16FCCEE944A57B095A2664G556BC8D03FA3ECFD5BE10C8E598DDED2F1FA5CC0DD1A1041187C3CCD55013D340DCFE635834E89998618709224FB62C08EBC4131AAEFFA9D12A287DA707AB38728CDFCA0DD860AC0G5EE7ADD4DF114C67F6437B 00337 3885F5750F459437964A9B05DE9EBE308F1E974038E5D7F3334DE927ECC83E9934510F5E24B2A4C17B61DD892698004C5D8926A1004D3B054F9EC2FB5C7E7387C97C688DC3FBE471E58F372D61BDFAFB7CA49BE7B16023G628136GE4E603DF4C46F8EAF9F3D8C30B0E2F27CF79C3DE91B7E450CE8B193AFABE56512031F605D943542E53B4381D8BD83F5AB21F175292EA5B1DA02783A0A29B67E65B0192EE332D12DFC6AB6D710101490E40CC71364F975298A4FFA03B951B6C15A1AA3B953FEAA35B8B338276 00338 BB6A913675FB06277E0CC5EE01B7DB77F2BC50502E862C3730FAC9D1FC4E11C9C56E179545699E8B744F35D2DE7CC12E522F4ADAD6CAE5DD89B22E81089332FE4E1A233143EE0F676A24F7002EB0551E8F31383D915AEF95761078865DEF656E4572F32C9C287F600DA1D54F344D4D7859057B703B449829FFE67A01B13E5AC357867A55B4951F255A9BEF73A8EBD383F28E81AC820882D88F30DD6867F44F709CF47E3CBC8F31310C46B1DACB378A5CF6169505377DFB0B0CED7FF3C54636FFDF515C367DC01111 00339 ED733A2F97D1D9BDD3EE4DDA7967A26ADF6D9E37DBE68BD6F4A1FCDF7D5CG154369F6AA03CE47182C74BB2F4B608B76D11B7F867361A5705E308FFD6DD4997ADA4765AF131A63D78D77E74B3E7D6908257B384D2F5A9770351C2718E23A86E517BC810AEA73CC3A950EFF144587956FCFE5382D43E3140772B69A75DC2D130A62F1D7CACC14AA7E6815FD239E5F046CA8FFDF7AC02A122614AAB695D567D8F5BBFD2FA8B9FE7CCC097EFCD06917154BCE3F93D6F9795B9517ABEA889F732B57DEE7E37649931E8F 00340 6460B10D8979B4AD5F530C6BAF873235C4257BD43D0D51BD67F0AC0428044DC2A856F1FA763AD6C62F676AC248F92E0621D60F7C3D18F71D6BDA5FF54A69F6F8262A782387ACBCD459032CEEAEE55BF50877863564000F8664636FFA5E8E66235B69D7AADD70CFBF9847DCB25A35BD5E6B567688485B08F16F72A1EA07EB41BEB7GA46D43D850FC1056E3ACD083DE1B4725D202BADB8EDD9F0F3D192B31F9F38EBFE36F96753F8C2ADF2A56EF04A72F77DEB62ACF92754F9B5613DC2C778D9A55670A7A978C6B4B 00341 F3D14E23A55954174857A6E5D8DCB458DD10E7F0DFD832CFD7F7D9F2CD86761BA7CA28AFF5E962A447D7149A2F6D6AD29A9B2F8A7A752569046E9BB9CD6E0BD6CB142657671C00ED858D7CEAAE625599EDAE22857827F98B87BC2781F85FFB3329ACFA03B81CC77BEF6B41BC45B2E89F85901F4B63F8E69E1F2FC4566E31DEEC670572E20028BCBED6ECD03B59CB582EA69F4E767901F663795AF6B5FDE2DC5AC653AEBE28DD22E817144F79B26F676D4E6E57367BD2BF36F381BE82A0D2ED37D6ED37F5BFED17A0 00342 729D5582778B067BA58442474DF80E3B182D4D4BDC39ED0921AF2750D04069F796684F37FFDDC6690E83FE3AG6D6AAB255A3D54B93F5FE3F7326305EAA3D78EE97DBC47C907F640F354697343D957A1CF231D0D9D223C5273070AD6ED253743684C5C6EF0AA9E9FEED55B38BFEA93416F32D31ED2E57FCC1DB64FB3EB19085899C676252A4C519A599D49A6B3676301E327974A4700278D0EE21D30E4F49CE11E6A654BB8EFC98518AF7A12409DFE89F16503083BA2F0DF96386582774A9062563D046B246F9A1D 00343 B716C7239EFC3A4A8FDEFD2C3979F51BD3F2F94684AF77317DAE551579G6623AE4F52355D826581G97GBF9B97756299BB82F03187507FFC7F3A567FEC833C3590EC9A007B793BFA6B60F973419CEDE0A7239B9C4451361F4EBF2B0E9BEDDBCD564B779A6648326F3CA7E220104F6BECE1E0FE63D2D24D9B8138FCC9CCBEBAE69C34C9AEC47912330D64EB3022FC7D17B2827229BC6F3752B5BC57FE0173CFFA357C8FBD79C7C37E573DB49351E965FCFB2D817EB7C5951A33932DA91C7F7BAFA17F3150E61B95 00344 790F4FB5623F3288ED45758E3515305B90023911377A107ED968BBDD0474FF3C53087EEAC17FB32FD23F9EEEDF42E96F6A973A07FE49C528DB251F7A361B5C1828F3208C1640F33E7D889FFF3D983F2198EC3E98E533DF524A968978F80024E2642F096D2B0377ACE8377F307330F67CB976AAEACE34AE48CFFFA5AA2C1FA687398D649E547B69EF9D216B398670360368271FBEC44F9A68277BE0EC49BD8611DC1CEB4A28AC9033557272B2BAAE0B598477D049AFD3BD8C81CD85E0A9C0A4C01C982370703C394D 00345 7669B9F21B47AE5FCC0EB271A01EB523EF2A5FF6516F78604D743314E03F87EF2ADF0968D7BDF4B37D9AC43FA816BF6DACB14EABDCD171DE7599D102F94FFFE1BEFCC509BEFF3A016123CA747953AB33685BE3204EDA0A6317754E477722D2233CD66D3C7DA2F57D781A59539FA6EEF167C1703B554E8F35FB4558D23E1F5A8C4FED259897B3EFE0EC339C425CE4DFB9754BB6A88F83CC83AC87088158G307D905A33737029F96D1987FB6E4E5A74A7EFD58F3F8A51C3C1D9305C467AA317747D2A74B6222343E5 00346 7EED8E4A5CDD06B2BFDEC1E50E0072AA0098008DG5B81F28FA718CE9EC6199FB9EC3447B112B9F40393485DF17E9F8861FFE1F2BFBC2F5CC3070D64FEB19765769EC65BFD2F6F56F81888692767A14A1007BC8B7230D6701053FFEBBC1406745373307D30D13FA7EEF13C44F9474BBEE234DE7F3502FE57B6D82FB45029EBB5F3D03BD64B0F707D41GBC470F60DA7D4C25CC1517C5C750EE330ED1DC8C14630F200D6EBFC273FA984BFABDCE37C2B00E459D21E7CD0F4FB966F4A36EF10633FBFCACD926661D0F 00347 064F636DBCEA1C475BFB54B80F377F685CB96C03C7436579F83E39156D7BB702FC5BGB86EB1014BFC99F136C144D9856E3B82D7A3F0670790E79338EF31BD7E90AD8BDC7EF50ADB8665A8013B1B794BF5D05EACF0BFE638EDD04EBC0AB63DFE166543C579C9D626F32A5EC71845DC752D82259D2E0E0FF163CF9EE32EBCFA912BFFC649A386B955B7248919E08ECB6E4DD25B34AB1E0B35E2DD3CD0D1E03CAEFAA530DC55D7FF087E2265A81E3D6EAA24F1D80172D200C82163DDB7746BB3966A5683A482ECB750 00348 17FA86AF8FEF6B76F2E3DBF71653B56677CC7A6C325E1E3D658522AE607D3B94F9022A053719E17D9549B7A6072C07C52CBF2F8B577F0E72F0EB064F4B6379FB581A737BE5BF8BC8B6C9115479283824190F36DAE1AF3F4F516B4FD21EE0AA81E8G68AC8F273F9FD404575F1395467A5BDC91DEFF4FD44C2F3F2D956175771B0A7975C7DE8927BF2E232703F4D4A7F4E44E536B688A68458B90813042C0C71C5EBDFDDAFA75025E810B1EDEB450D88B3081E0CBD8FA2F77EB69B5887C2E81AD3ED12C353176A263 00349 3556EF77F9DCAE3A62884668334CE752FE496538669EE4677E060A84D3B7002382575C5F876DC5E6AB827CAE0377480AF0B6337B985DDBCF0B72BED61E917C4A67F60BB9ECF7BB54A04673F7EFB15F7FGB8543DA644BD49F077826EFB84F16FB0B9BE8D38BF08F61B986EDED0D619E8F75F3B9477B034E9CCC1BDBEB1C37D1AC39E15A6DD904EBCFE998E437C5AG6DD741F252B32827188ABC47FFED0A664EC6FD528428375FAB5BC97CAB346D716B985F9B205C89B08E3098A06A95BCA7C75F20B4A6BC8E49A5 00350 46F86C86662D320FE13BDF33F60AD3E1675312E3747EDBA5DD46AA6FBF7DA35529BE7F8BABC1E18198E6DADD6F9FEA674E81F4260F7179DA8A4FD547C2670E1F0FB22C5496569C535F9749E7780D477477C56EAE447BA249D0B7DE09F173B013ED831437885CB843A5C359F29CF10FB3DC8114EB846E0EA90C4DB6014B4BC5FA4B856E2DDC2497A5F00F64A23DB58277EEBE520B973842BC24D7D005B8C79E522B94386F66A13D138267AAC3FA5D82D7EBC1FAAB85EE520274D68B5C93962497ABF0DF34A03D75D5 00351 38765A034E59A555417355D09DEE7E8E319CD8E7357E5CDB4970C3557AF36F9A11539C073AF5554853C3ECBFDAD383F3D0033862FE16830772A2013BBB87F9DFDE03B61CF91D722EF1C5EAF28A2C145E6AD17CD5362E7E5E1E7E7677FA5EF82F2D9BDEF87E6727C41B7FA12E4F074D7F445428F762546776CFBFF3BB77EF7DECDFC77B18EB93CCAD35947713207CAC6571EFCCFCFF4F6B775E50565358D1C13475EDC1751457EF27EA6BA7036A53B47D39DC475E419C7C4009C7C8F97DD4583B169135DC1EA87599 00352 F9A74835B6454C757A648D3A4FD4FC13B227DBFDD22B2FB57FB691E18AC3F733CAAF29B610AFD35755C76C5BF79D6C836AF0CE6FCDE37BE5A83B84AEBF836DF619407D219067BE32CE6C532C549746C3B99140DC8F7BF50086004EFAECE3E5ED066BF9AE11FED7E25F207279B7AB5E66330543BA99109E253350BDAE65C3DBC6DE0277528F050C05F7A9EE668E05FEBF2D3F6F4167300E79138937BC61F1BB6DBC8EDCE4BE104636C5753806E22DEC2EE1F345E3408F69B6C525F1BC03FEC39A116CD747FC1EC937 00353 8363492F981DE5C0E3A5C0F683452D1A3221AE8C74162A72192A42A6E83395A0CF550139017B8B8AFC0CB34C3F7E1C5A8754F15E626816C72D7F992B9F07BA2581F9184CC79ED6B59873102663E1CDC3000778909E3A188E9F8358A0F8D859906061B9D61F88F5DB858F3717A18F56C6E39ED2F5BC54B486F830B56AF9F81B796C1FG74B6A28F37B586F8F811558FC31D2B91F9782685F9D89106078C9D8F519A9E56EAF8606B6F4AA07A68F50D38A63FB208EBF2D3A32E2572CB5416AACFE0390E1569F7D5DEFE 00354 24974F12344DC26DFD21404778C16F47F9FF0B2F8B7FA04DF50CF8FC6C40307684737D17F0EF568965E10065GD12A1C3CDFE33F71FA3A4862DDE6D302A997006F7522F3105ED9408DGA8G4B8156B4E15E266A845B8BC0F9EB9366ED2E559E0367E5697D50AF27006C75F9E0872A4CF0AC3B01003E697A2D5DDD4E984018337C2B7713A12BBB6CF75F6C136AEF9E703968195B69134B32220979EA281B85D8859083308EA071A44A96D3CBF92459D1E07F1C22C876F176459B13267463EFGCDB74E1C76B7E878 00355 42BB1235C7426987A83C8EFB091E11776130B7A00D09F92BB6074E77F9B34E4FF660AF7BD5583FG8C3D4AF3EE3C5F03E9341FCB1A71CCAA586F3BE9584F8BED97832C8608D37BF1FBE8E7B1F0936036G64B6D31CD2D8E02053E03BFC2A193E87EE79C8A3328B6BD67565E86BB4A7B6DEBF718A1DCFF113CA503C66207BB66D4DAD0EFFB7137208B725B82E638CED2B3DD9463F6D75D9357B16AB4DDC56C54D28A7478D7ABCEABF2A1EC3221A09987F23290370F44BD3A562BBE41B476571155755B4D4B2E8EC2C 00356 D04F1C5F1F423354F220FD107507F5C582FF21382D2F71B16F211FA1D41B367A512613BA22096313F7C414053169F54D5C162D27B4F799A2DFCC653C3F194B647221DCBFED8948551F3FF0393E180FF28D1CB2128BE5F878F4007EF09E9BDB42313FFEA6D0A715ADFC6CB5E5B87652B947DE72DA007EB58B9B5B03E3FF6FEC206E3316050F7D1C85470E1BF36C89FAED0F543450BECB86E94CC9BE0531B0EE90E32152929AF3700C027B134550E6E58B0F0594373AA5908B55F5B4CB77EAC1B769881EF1B27A700C 00357 938B7D363560F97E644CD1921AB729628E2539394DB36125612015BB98AEFBCF9F1EAFAACFE37E64C3C65F8165D9006527718E6975D43457640A07086B21CF996E7B2DD7EF0B08BE2D7E466AF440DE57A41B4CDC0F2B5B827334A4E73EF92AE940F9CA48C1DEADE770ACC4F275E721670976ACD3172BBF8B19026A9D397A335039203354BD397A339076D76F431D20F8111B6321CE2DEBBEC17B52BB3ACE49653C4E92B27D5050BD466345A29B2D3701AC43G91GABG224FE09CFA7444A1426210C18CEAF70C49 00358 F87E4471BE5F94BE379955B47FEFD13E5644768D9E702893143E380B5CC4E3376271B2A44745B6D1DD791CE3638AEF2A623F53C46748A50FB2B437D737996DB59EE4A32F213D26159C194BDE5B957B380C560A793E074CE883A7DFC3FBCDE4743DD0DE8C306AB53C5F74EC9A7E16AF86F0DB45383543D66D3854681A1BBBFCCEC72BB4564D22A89F2BB19D47AABF0BE35953A94DE1A8CF83ACBB0BFB65DF3487EC3A2FF0A13E072F29FFBF210D81F41D04BBCBC71DD5F384E783EB8AEDB2153CB09A667B840B4EDC 00359 1EBB2C78CD4EF28E774ACFCCE977E3B6408F1D1BFB4F4CED77D08775F7AEE83B98A09AA08EE0A340D6GF3EB0229G20924086F085408B90813082A08AA096E0FDAB5A7AFF1D22B906F07BC9F5F218417BA47E0DD07DAE1D2F65BF9168EDEF1D1BFF753BF419361F258D6631EDA17DDE884A01B7C01F4EF97A297EFC309C1E5C184FCBF610ED260A7DFACB6E76CC51FB4A2D30EEDD3C3E3C025B4662FAEDBEA47137B39129E1EC630A4A032BCD1FBF7A35480F2FECB30EEDC67B97EE537F5BC9045C3BC23E216BE1 00360 03CE8F3CDF613C7D0A8D75BCB0EF3F10FDBF4B8BBE4FE2575636C0BC65785FB1FC32864FFD446DFD68A3B2EDF03635611967C7DDF4BD2D07F29200399D7612GADGC36DE833EBDAEB48BC77AB86BC5EEEBA311ACF49DC3E9F06FC3F1A8F78180BED61FD7CDD3679FD7C8A9B3B438B3EF9E0462BFEDF7A1C0DFDE79F9D754BA216FC4116ADF0DD7EDE0F5FC9239767DDB15F1AAD7C453C7D0CED619B7376B33605A1667FDD6DFADB1098FE3ADDEF8B7FE3C6DB08003AAD6D68A3DFC83B355F691A52EF2DDF73CD77 00361 63F27D1045266E73FAF9B7B37C50F93D3C4EF4145781F5716751766BAFD05B2F6CG5F86608208GD881303A83ED3F66BCCD12057357FD9E8F7BF8C33F63003BE69FF450F3F3996F349A499857416DE6A3BC13BA02ED0867031EE5E7AF5249E56138DFB1DC010AD3FF675091FE1D1C6E18FF1D1C6FB05E8BF5F7046E05AEF5986F0586BB34FBA1757BFD877545E3904F06C4BBC9605E9238D1C61362861D8EE5DC60DD0CAF0A6F1469000877B13E2698EEC845CDE9F0EF2938598E3A56C164F10F38BFF3DB87BD4B 00362 0CBADDAEDE7ECB5646690625AF743104716874CA9A3E6F92383744DCFCA7BFF4FE3E172F1D9F0EDBDF965A6EBF4BC25B6D58955AEE4FAEEDBB75B7C15DD40606CE344F624EC3F358A73D6F46F7623866FE9774FD2A9368DC691CBB2E733B8BEBF3F6B1DD391C545A59AF3645BA7ECD9F916F24BF70FEC75F1FFA57E5FE9F72050FF58C759EF2D778B5760BAE633B943F6CB23EF7756B2E39FFBF79FFDD61FFBFE9FEDD7B7BC9AE7F3BE981FD0FE95E371ABFFE5DE725FD7CE3BC159E10693FB56F1E740FFF6C459F 00363 6B98FCCEDBAE04372D368B737B6F6E8B467E3B6FC2287F9E3CE06C3F7FF0C16B3F396F395F0A5F403D1D780DE2C791FE23189538A1364FDA876544CEBCF7CAAF53F82B668318DB67F86B742EG9E5D3A4A435B5DF4F27D2A2F6234778E057A447CA12DCF647B77EB97E9B31E1FAAAD427C54F6833F067B827CEEE5690273D0D7A0BF5550254FCFF9EC6CF7DF9E1F9C7C0D6193CC6E33503E3B8B6F024694639944553550B388665C3A5EA0C21E569EA246FF0E7D46B278FCDDB562126CD7390DFE33D86B4FA3E15C 00364 182E397DB957630662D05D7E28D82BDB7E7FBEFD2D5912C2C87433A4CDA13BE9F0897C28D5A169BCB78DAFBC212D1054F38E07C2D2FA2E7AFDE4F7B057267B775F1EFDD77DE48AC9BFCF52C7A517F7DC6AA2E96C679A5DA4456ED7C8E1B76DD28DDD2A6D34CBB56B586F156C7229F7C85628EFEC04B507915EB97F8E90E125EB64A31251CDF6A863EC9F866BC5A17B8314FA69EECC2DB8B5CD7F679072623AF5AFFA618F185CA3186CE27B004D9F54B7277E6C3E5494E26EA269FCDDF591B3DD9C40ACDBBBDDA495 00365 56952334C38BFE4AC8DA90FD0A5921EBC77E8C6DC858F66BC43B39C7E0FF8A59A1E633D9B4C98BA394GA5454F6C316D5AB33BB56E3630F7BE16F52BF7A23A753F79F11D2676369970495D381F09EDB9CE42FFCF6A1F10DCAEC5F2DDBD67F650EFCB2DB30A9C081D57CED37AFEEC23D6723A6953D96ABA42BE7F8FD0CB878848B03643999AGGB4CDGGD0CB818294G94G88G88G4C89CEA848B03643999AGGB4CDGG8CGGGGGGGGGGGGGGGGGE2F5E9ECE4E5F2A0E4E1F4E1D0CB85 00366 86GGGG81G81GBAGGGD39AGGGG 00367 **end of data**/ 00368 } 00369 /** 00370 * Return the CancelButton property value. 00371 * @return javax.swing.JButton 00372 */ 00373 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00374 private javax.swing.JButton getCancelButton() { 00375 if (ivjCancelButton == null) { 00376 try { 00377 ivjCancelButton = new javax.swing.JButton(); 00378 ivjCancelButton.setName("CancelButton"); 00379 ivjCancelButton.setMnemonic('c'); 00380 ivjCancelButton.setText("Cancel"); 00381 ivjCancelButton.setBackground(new java.awt.Color(204,204,255)); 00382 // user code begin {1} 00383 // user code end 00384 } catch (java.lang.Throwable ivjExc) { 00385 // user code begin {2} 00386 // user code end 00387 handleException(ivjExc); 00388 } 00389 } 00390 return ivjCancelButton; 00391 } 00392 /** 00393 * Return the ClasspathLabel property value. 00394 * @return javax.swing.JLabel 00395 */ 00396 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00397 private javax.swing.JLabel getClasspathLabel() { 00398 if (ivjClasspathLabel == null) { 00399 try { 00400 ivjClasspathLabel = new javax.swing.JLabel(); 00401 ivjClasspathLabel.setName("ClasspathLabel"); 00402 ivjClasspathLabel.setText("Classpath:"); 00403 ivjClasspathLabel.setForeground(java.awt.Color.black); 00404 // user code begin {1} 00405 // user code end 00406 } catch (java.lang.Throwable ivjExc) { 00407 // user code begin {2} 00408 // user code end 00409 handleException(ivjExc); 00410 } 00411 } 00412 return ivjClasspathLabel; 00413 } 00414 /** 00415 * Return the ClasspathList property value. 00416 * @return javax.swing.JList 00417 */ 00418 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00419 public javax.swing.JList getClasspathList() { 00420 if (ivjClasspathList == null) { 00421 try { 00422 ivjClasspathList = new javax.swing.JList(); 00423 ivjClasspathList.setName("ClasspathList"); 00424 ivjClasspathList.setBorder(new javax.swing.border.CompoundBorder()); 00425 ivjClasspathList.setBackground(new java.awt.Color(204,204,204)); 00426 ivjClasspathList.setBounds(0, 0, 160, 120); 00427 // user code begin {1} 00428 // user code end 00429 } catch (java.lang.Throwable ivjExc) { 00430 // user code begin {2} 00431 // user code end 00432 handleException(ivjExc); 00433 } 00434 } 00435 return ivjClasspathList; 00436 } 00437 /** 00438 * Return the ClasspathManagerContentPane property value. 00439 * @return javax.swing.JPanel 00440 */ 00441 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00442 private javax.swing.JPanel getClasspathManagerContentPane() { 00443 if (ivjClasspathManagerContentPane == null) { 00444 try { 00445 ivjClasspathManagerContentPane = new javax.swing.JPanel(); 00446 ivjClasspathManagerContentPane.setName("ClasspathManagerContentPane"); 00447 ivjClasspathManagerContentPane.setBorder(new javax.swing.border.EtchedBorder()); 00448 ivjClasspathManagerContentPane.setLayout(new java.awt.GridBagLayout()); 00449 ivjClasspathManagerContentPane.setBackground(new java.awt.Color(204,204,255)); 00450 00451 java.awt.GridBagConstraints constraintsClasspathLabel = new java.awt.GridBagConstraints(); 00452 constraintsClasspathLabel.gridx = 0; constraintsClasspathLabel.gridy = 0; 00453 constraintsClasspathLabel.gridwidth = 2; 00454 constraintsClasspathLabel.fill = java.awt.GridBagConstraints.BOTH; 00455 constraintsClasspathLabel.weightx = 1.0; 00456 constraintsClasspathLabel.weighty = 1.0; 00457 constraintsClasspathLabel.insets = new java.awt.Insets(10, 10, 5, 10); 00458 getClasspathManagerContentPane().add(getClasspathLabel(), constraintsClasspathLabel); 00459 00460 java.awt.GridBagConstraints constraintsClasspathScrollPane = new java.awt.GridBagConstraints(); 00461 constraintsClasspathScrollPane.gridx = 0; constraintsClasspathScrollPane.gridy = 1; 00462 constraintsClasspathScrollPane.gridheight = 4; 00463 constraintsClasspathScrollPane.fill = java.awt.GridBagConstraints.BOTH; 00464 constraintsClasspathScrollPane.weightx = 1.0; 00465 constraintsClasspathScrollPane.insets = new java.awt.Insets(0, 10, 10, 0); 00466 getClasspathManagerContentPane().add(getClasspathScrollPane(), constraintsClasspathScrollPane); 00467 00468 java.awt.GridBagConstraints constraintsAddButton = new java.awt.GridBagConstraints(); 00469 constraintsAddButton.gridx = 1; constraintsAddButton.gridy = 1; 00470 constraintsAddButton.fill = java.awt.GridBagConstraints.HORIZONTAL; 00471 constraintsAddButton.weighty = 1.0; 00472 constraintsAddButton.insets = new java.awt.Insets(0, 10, 10, 10); 00473 getClasspathManagerContentPane().add(getAddButton(), constraintsAddButton); 00474 00475 java.awt.GridBagConstraints constraintsRemoveButton = new java.awt.GridBagConstraints(); 00476 constraintsRemoveButton.gridx = 1; constraintsRemoveButton.gridy = 2; 00477 constraintsRemoveButton.fill = java.awt.GridBagConstraints.HORIZONTAL; 00478 constraintsRemoveButton.weighty = 1.0; 00479 constraintsRemoveButton.insets = new java.awt.Insets(0, 10, 10, 10); 00480 getClasspathManagerContentPane().add(getRemoveButton(), constraintsRemoveButton); 00481 00482 java.awt.GridBagConstraints constraintsOkButton = new java.awt.GridBagConstraints(); 00483 constraintsOkButton.gridx = 1; constraintsOkButton.gridy = 3; 00484 constraintsOkButton.fill = java.awt.GridBagConstraints.HORIZONTAL; 00485 constraintsOkButton.weighty = 1.0; 00486 constraintsOkButton.insets = new java.awt.Insets(0, 10, 0, 10); 00487 getClasspathManagerContentPane().add(getOkButton(), constraintsOkButton); 00488 00489 java.awt.GridBagConstraints constraintsCancelButton = new java.awt.GridBagConstraints(); 00490 constraintsCancelButton.gridx = 1; constraintsCancelButton.gridy = 4; 00491 constraintsCancelButton.fill = java.awt.GridBagConstraints.HORIZONTAL; 00492 constraintsCancelButton.weighty = 1.0; 00493 constraintsCancelButton.insets = new java.awt.Insets(10, 10, 10, 10); 00494 getClasspathManagerContentPane().add(getCancelButton(), constraintsCancelButton); 00495 // user code begin {1} 00496 // user code end 00497 } catch (java.lang.Throwable ivjExc) { 00498 // user code begin {2} 00499 // user code end 00500 handleException(ivjExc); 00501 } 00502 } 00503 return ivjClasspathManagerContentPane; 00504 } 00505 /** 00506 * Return the ClasspathScrollPane property value. 00507 * @return javax.swing.JScrollPane 00508 */ 00509 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00510 public javax.swing.JScrollPane getClasspathScrollPane() { 00511 if (ivjClasspathScrollPane == null) { 00512 try { 00513 ivjClasspathScrollPane = new javax.swing.JScrollPane(); 00514 ivjClasspathScrollPane.setName("ClasspathScrollPane"); 00515 ivjClasspathScrollPane.setBorder(BorderFactory.createLoweredBevelBorder()); 00516 getClasspathScrollPane().setViewportView(getClasspathList()); 00517 // user code begin {1} 00518 // user code end 00519 } catch (java.lang.Throwable ivjExc) { 00520 // user code begin {2} 00521 // user code end 00522 handleException(ivjExc); 00523 } 00524 } 00525 return ivjClasspathScrollPane; 00526 } 00527 /** 00528 * Return the OkButton property value. 00529 * @return javax.swing.JButton 00530 */ 00531 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00532 private javax.swing.JButton getOkButton() { 00533 if (ivjOkButton == null) { 00534 try { 00535 ivjOkButton = new javax.swing.JButton(); 00536 ivjOkButton.setName("OkButton"); 00537 ivjOkButton.setMnemonic('o'); 00538 ivjOkButton.setText("Ok"); 00539 ivjOkButton.setBackground(new java.awt.Color(204,204,255)); 00540 // user code begin {1} 00541 // user code end 00542 } catch (java.lang.Throwable ivjExc) { 00543 // user code begin {2} 00544 // user code end 00545 handleException(ivjExc); 00546 } 00547 } 00548 return ivjOkButton; 00549 } 00550 /** 00551 * Return the RemoveButton property value. 00552 * @return javax.swing.JButton 00553 */ 00554 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00555 private javax.swing.JButton getRemoveButton() { 00556 if (ivjRemoveButton == null) { 00557 try { 00558 ivjRemoveButton = new javax.swing.JButton(); 00559 ivjRemoveButton.setName("RemoveButton"); 00560 ivjRemoveButton.setMnemonic('r'); 00561 ivjRemoveButton.setText("Remove"); 00562 ivjRemoveButton.setBackground(new java.awt.Color(204,204,255)); 00563 // user code begin {1} 00564 // user code end 00565 } catch (java.lang.Throwable ivjExc) { 00566 // user code begin {2} 00567 // user code end 00568 handleException(ivjExc); 00569 } 00570 } 00571 return ivjRemoveButton; 00572 } 00573 /** 00574 * Called whenever the part throws an exception. 00575 * @param exception java.lang.Throwable 00576 */ 00577 private void handleException(java.lang.Throwable exception) { 00578 00579 /* Uncomment the following lines to print uncaught exceptions to stdout */ 00580 // System.out.println("--------- UNCAUGHT EXCEPTION ---------"); 00581 // exception.printStackTrace(System.out); 00582 } 00583 /** 00584 * Initializes connections 00585 * @exception java.lang.Exception The exception description. 00586 */ 00587 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00588 private void initConnections() throws java.lang.Exception { 00589 // user code begin {1} 00590 // user code end 00591 getCancelButton().addActionListener(ivjEventHandler); 00592 getRemoveButton().addActionListener(ivjEventHandler); 00593 getAddButton().addActionListener(ivjEventHandler); 00594 getOkButton().addActionListener(ivjEventHandler); 00595 this.addWindowListener(ivjEventHandler); 00596 getClasspathList().addListSelectionListener(ivjEventHandler); 00597 } 00598 /** 00599 * Initialize the class. 00600 */ 00601 /* WARNING: THIS METHOD WILL BE REGENERATED. */ 00602 private void initialize() { 00603 try { 00604 // user code begin {1} 00605 // user code end 00606 setName("ClasspathManager"); 00607 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); 00608 setSize(480, 200); 00609 setModal(true); 00610 setTitle("Edit Classpath"); 00611 setContentPane(getClasspathManagerContentPane()); 00612 initConnections(); 00613 } catch (java.lang.Throwable ivjExc) { 00614 handleException(ivjExc); 00615 } 00616 // user code begin {2} 00617 // user code end 00618 } 00619 /** 00620 * main entrypoint - starts the part when it is run as an application 00621 * @param args java.lang.String[] 00622 */ 00623 public static void main(java.lang.String[] args) { 00624 try { 00625 ClasspathManager aClasspathManager; 00626 aClasspathManager = new ClasspathManager(); 00627 aClasspathManager.setModal(true); 00628 aClasspathManager.addWindowListener(new java.awt.event.WindowAdapter() { 00629 public void windowClosing(java.awt.event.WindowEvent e) { 00630 System.exit(0); 00631 }; 00632 }); 00633 aClasspathManager.setVisible(true); 00634 } catch (Throwable exception) { 00635 System.err.println("Exception occurred in main() of javax.swing.JDialog"); 00636 exception.printStackTrace(System.out); 00637 } 00638 } 00639 /** 00640 * Comment 00641 */ 00642 public void okButton_ActionEvents() { 00643 ListModel listModel = getClasspathList().getModel(); 00644 int size = listModel.getSize(); 00645 StringBuffer buffer = new StringBuffer(); 00646 if (size > 0) { 00647 buffer.append(listModel.getElementAt(0).toString()); 00648 } 00649 for (int i = 1; i < size; i++) { 00650 buffer.append(File.pathSeparator + listModel.getElementAt(i).toString()); 00651 } 00652 String classpath = buffer.toString().trim(); 00653 CompilationManager.setClasspath(classpath); 00654 BUI.manager.getClasspathTextField().setText(classpath); 00655 BUI.manager.getClasspathTextField().validate(); 00656 BUI.manager.getClasspathTextField().repaint(); 00657 Session session = BUI.sessions.getActiveSession(); 00658 if (session != null) { 00659 session.setClasspath(classpath); 00660 BUI.sessions.setSaved(false); 00661 BUI.manager.updateInfo(session); 00662 } 00663 setVisible(false); 00664 BUI.manager.requestFocus(); 00665 } 00666 /** 00667 * Comment 00668 */ 00669 public void removeButton_ActionEvents() { 00670 Object[] selectedPaths = getClasspathList().getSelectedValues(); 00671 TreeSet ts = new TreeSet(); 00672 ListModel listModel = getClasspathList().getModel(); 00673 int size = listModel.getSize(); 00674 for (int i = 0; i < size; i++) { 00675 boolean f = true; 00676 Object o = listModel.getElementAt(i); 00677 for (int j = 0; j < selectedPaths.length; j++) { 00678 if (selectedPaths[j] == o) { 00679 f = false; 00680 break; 00681 } 00682 } 00683 if (f) { 00684 ts.add(o); 00685 } 00686 } 00687 00688 getClasspathList().setValueIsAdjusting(true); 00689 getClasspathList().setListData(new Vector(ts)); 00690 getClasspathList().setValueIsAdjusting(false); 00691 getClasspathScrollPane().validate(); 00692 getClasspathScrollPane().repaint(); 00693 getRemoveButton().setEnabled(false); 00694 } 00695 }