1 19 20 package org.netbeans.modules.web.struts.ui; 21 22 import java.awt.Component ; 23 import java.util.HashSet ; 24 import java.util.Iterator ; 25 import java.util.Set ; 26 27 import javax.swing.JComponent ; 28 import javax.swing.event.ChangeEvent ; 29 import javax.swing.event.ChangeListener ; 30 import org.netbeans.modules.web.spi.webmodule.FrameworkConfigurationPanel; 31 32 import org.openide.WizardDescriptor; 33 import org.openide.WizardValidationException; 34 import org.openide.util.HelpCtx; 35 36 40 public final class StrutsConfigurationPanel implements FrameworkConfigurationPanel, WizardDescriptor.FinishablePanel, WizardDescriptor.ValidatingPanel { 41 42 private WizardDescriptor wizardDescriptor; 43 private StrutsConfigurationPanelVisual component; 44 45 private boolean customizer; 46 47 48 public StrutsConfigurationPanel(boolean customizer) { 49 this.customizer = customizer; 50 getComponent(); 51 } 52 53 public boolean isFinishPanel() { 54 return true; 55 } 56 57 public Component getComponent() { 58 if (component == null) 59 component = new StrutsConfigurationPanelVisual(this, customizer); 60 61 return component; 62 } 63 64 public HelpCtx getHelp() { 65 return new HelpCtx(StrutsConfigurationPanel .class); 66 } 67 68 public boolean isValid() { 69 getComponent(); 70 return component.valid(wizardDescriptor); 71 } 72 73 private final Set listeners = new HashSet (1); 74 75 public final void addChangeListener(ChangeListener l) { 76 synchronized (listeners) { 77 listeners.add(l); 78 } 79 } 80 public final void removeChangeListener(ChangeListener l) { 81 synchronized (listeners) { 82 listeners.remove(l); 83 } 84 } 85 protected final void fireChangeEvent() { 86 Iterator it; 87 synchronized (listeners) { 88 it = new HashSet (listeners).iterator(); 89 } 90 ChangeEvent ev = new ChangeEvent (this); 91 while (it.hasNext()) { 92 ((ChangeListener )it.next()).stateChanged(ev); 93 } 94 } 95 96 public void readSettings(Object settings) { 97 wizardDescriptor = (WizardDescriptor) settings; 98 component.read (wizardDescriptor); 99 100 Object substitute = ((JComponent ) component).getClientProperty("NewProjectWizard_Title"); if (substitute != null) 104 wizardDescriptor.putProperty("NewProjectWizard_Title", substitute); } 106 107 108 public void storeSettings(Object settings) { 109 WizardDescriptor d = (WizardDescriptor) settings; 110 component.store(d); 111 ((WizardDescriptor) d).putProperty("NewProjectWizard_Title", null); } 113 114 public void validate() throws WizardValidationException { 115 getComponent (); 116 component.validate (wizardDescriptor); 117 } 118 119 public void enableComponents(boolean enable) { 120 getComponent(); 121 component.enableComponents(enable); 122 } 123 124 public String getURLPattern(){ 125 return component.getURLPattern(); 126 } 127 128 public void setURLPattern(String pattern){ 129 component.setURLPattern(pattern); 130 } 131 132 public String getServletName(){ 133 return component.getServletName(); 134 } 135 136 public void setServletName(String name){ 137 component.setServletName(name); 138 } 139 140 public String getAppResource(){ 141 return component.getAppResource(); 142 } 143 144 public void setAppResource(String resource){ 145 component.setAppResource(resource); 146 } 147 public boolean addTLDs(){ 148 return component.addTLDs(); 149 } 150 151 public boolean packageWars(){ 152 return component.packageWars(); 153 } 154 } 155 | Popular Tags |