? 91291_j2seproject.patch Index: src/org/netbeans/modules/java/j2seproject/ui/customizer/CustomizerProviderImpl.java =================================================================== RCS file: /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/ui/customizer/CustomizerProviderImpl.java,v retrieving revision 1.12 diff -u -r1.12 CustomizerProviderImpl.java --- src/org/netbeans/modules/java/j2seproject/ui/customizer/CustomizerProviderImpl.java 30 Apr 2007 12:37:21 -0000 1.12 +++ src/org/netbeans/modules/java/j2seproject/ui/customizer/CustomizerProviderImpl.java 28 Aug 2007 13:10:25 -0000 @@ -101,7 +101,8 @@ }); OptionListener listener = new OptionListener( project, uiProperties ); - dialog = ProjectCustomizer.createCustomizerDialog( CUSTOMIZER_FOLDER_PATH, context, preselectedCategory, listener, null ); + StoreListener storeListener = new StoreListener(uiProperties); + dialog = ProjectCustomizer.createCustomizerDialog( CUSTOMIZER_FOLDER_PATH, context, preselectedCategory, listener, storeListener, null ); dialog.addWindowListener( listener ); dialog.setTitle( MessageFormat.format( NbBundle.getMessage( CustomizerProviderImpl.class, "LBL_Customizer_Title" ), // NOI18N @@ -112,6 +113,20 @@ } } + private class StoreListener implements ActionListener { + + private J2SEProjectProperties uiProperties; + + StoreListener(J2SEProjectProperties uiProperties ) { + this.uiProperties = uiProperties; + } + + public void actionPerformed(ActionEvent e) { + uiProperties.save(); + } + + } + /** Listens to the actions on the Customizer's option buttons */ private class OptionListener extends WindowAdapter implements ActionListener { @@ -133,7 +148,6 @@ // as modified before the project customizer is shown. // assert !ProjectManager.getDefault().isModified(project) : // "Some of the customizer panels has written the changed data before OK Button was pressed. Please file it as bug."; //NOI18N - uiProperties.save(); // Close & dispose the the dialog Dialog dialog = (Dialog)project2Dialog.get( project );