1 19 25 26 package org.netbeans.modules.j2ee.sun.ide.j2ee.ui; 27 28 import java.awt.event.ItemEvent ; 29 import java.awt.event.ItemListener ; 30 import javax.swing.event.ChangeListener ; 31 import javax.swing.event.DocumentEvent ; 32 import javax.swing.event.DocumentListener ; 33 import javax.swing.event.ListDataEvent ; 34 import javax.swing.event.ListDataListener ; 35 import org.netbeans.modules.j2ee.sun.ide.j2ee.DeploymentManagerProperties; 36 37 41 public class CustomizerDataSupport { 42 43 private final DeploymentManagerProperties dmp; 44 45 private CustomizerSupport.PathModel sourceModel; 47 private CustomizerSupport.PathModel classModel; 48 private CustomizerSupport.PathModel javadocModel; 49 50 private boolean sourceModelFlag; 52 private boolean javadocModelFlag; 53 private boolean serverPortModelFlag; 54 55 58 public CustomizerDataSupport(DeploymentManagerProperties dmp) { 59 this.dmp = dmp; 60 init(); 61 } 62 63 64 private void init() { 65 classModel = new CustomizerSupport.PathModel(dmp.getClasses()); 67 68 sourceModel = new CustomizerSupport.PathModel(dmp.getSources()); 70 sourceModel.addListDataListener(new ModelChangeAdapter() { 71 public void modelChanged() { 72 sourceModelFlag = true; 73 store(); } 75 }); 76 77 javadocModel = new CustomizerSupport.PathModel(dmp.getJavadocs()); 79 javadocModel.addListDataListener(new ModelChangeAdapter() { 80 public void modelChanged() { 81 javadocModelFlag = true; 82 store(); } 84 }); 85 } 86 87 public CustomizerSupport.PathModel getClassModel() { 88 return classModel; 89 } 90 91 public CustomizerSupport.PathModel getSourceModel() { 92 return sourceModel; 93 } 94 95 public CustomizerSupport.PathModel getJavadocsModel() { 96 return javadocModel; 97 } 98 99 101 102 private void store() { 103 if (sourceModelFlag) { 104 dmp.setSources(sourceModel.getData()); 105 sourceModelFlag = false; 106 } 107 108 if (javadocModelFlag) { 109 dmp.setJavadocs(javadocModel.getData()); 110 javadocModelFlag = false; 111 } 112 } 113 114 116 120 private abstract class ModelChangeAdapter implements ListDataListener , 121 DocumentListener , ItemListener , ChangeListener { 122 123 public abstract void modelChanged(); 124 125 public void contentsChanged(ListDataEvent e) { 126 modelChanged(); 127 } 128 129 public void intervalAdded(ListDataEvent e) { 130 modelChanged(); 131 } 132 133 public void intervalRemoved(ListDataEvent e) { 134 modelChanged(); 135 } 136 137 public void changedUpdate(DocumentEvent e) { 138 modelChanged(); 139 } 140 141 public void removeUpdate(DocumentEvent e) { 142 modelChanged(); 143 } 144 145 public void insertUpdate(DocumentEvent e) { 146 modelChanged(); 147 } 148 149 public void itemStateChanged(ItemEvent e) { 150 modelChanged(); 151 } 152 153 public void stateChanged(javax.swing.event.ChangeEvent e) { 154 modelChanged(); 155 } 156 } 157 } 158 | Popular Tags |