1 19 20 package org.netbeans.modules.apisupport.project.ui.wizard; 21 22 import javax.swing.JPanel ; 23 import org.openide.WizardDescriptor; 24 import org.openide.util.NbBundle; 25 26 31 public abstract class BasicVisualPanel extends JPanel { 32 33 private WizardDescriptor settings; 34 35 protected BasicVisualPanel(final WizardDescriptor setting) { 36 this.settings = setting; 37 } 38 39 public final WizardDescriptor getSettings() { 40 return settings; 41 } 42 43 46 protected final void setError(String message) { 47 if (message == null) { 48 throw new NullPointerException (); 49 } 50 setMessage(message); 51 setValid(false); 52 } 53 54 57 protected final void setWarning(String message) { 58 if (message == null) { 59 throw new NullPointerException (); 60 } 61 setMessage(message); 62 setValid(true); 63 } 64 65 69 protected final void markInvalid() { 70 setMessage(null); 71 setValid(false); 72 } 73 74 77 protected final void markValid() { 78 setMessage(null); 79 setValid(true); 80 } 81 82 private final void setMessage(String message) { 83 settings.putProperty("WizardPanel_errorMessage", message); } 85 86 90 private final void setValid(boolean valid) { 91 firePropertyChange("valid", null, Boolean.valueOf(valid)); } 93 94 protected abstract static class NewTemplatePanel extends BasicVisualPanel { 95 96 private final NewModuleProjectData data; 97 98 NewTemplatePanel(final NewModuleProjectData data) { 99 super(data.getSettings()); 100 this.data = data; 101 String resource; 102 int wizardType = data.getWizardType(); 103 switch (data.getWizardType()) { 104 case NewNbModuleWizardIterator.TYPE_SUITE: 105 resource = "emptySuite"; break; 107 case NewNbModuleWizardIterator.TYPE_MODULE: 108 case NewNbModuleWizardIterator.TYPE_SUITE_COMPONENT: 109 resource = "emptyModule"; break; 111 case NewNbModuleWizardIterator.TYPE_LIBRARY_MODULE: 112 resource = "libraryModule"; break; 114 default: 115 assert false : "Unknown wizard type = " + wizardType; 116 resource = ""; 117 } 118 data.getSettings().putProperty("NewProjectWizard_Title", NbBundle.getMessage(BasicVisualPanel.class, "Templates/Project/APISupport/" + resource)); 120 } 121 122 protected NewModuleProjectData getData() { 123 return data; 124 } 125 126 protected boolean isSuiteWizard() { 127 return getData().getWizardType() == NewNbModuleWizardIterator.TYPE_SUITE; 128 } 129 130 protected boolean isSuiteComponentWizard() { 131 return getData().getWizardType() == NewNbModuleWizardIterator.TYPE_SUITE_COMPONENT; 132 } 133 134 protected boolean isLibraryWizard() { 135 return getData().getWizardType() == NewNbModuleWizardIterator.TYPE_LIBRARY_MODULE; 136 } 137 138 } 139 140 } 141 | Popular Tags |