Lines 54-59
Link Here
|
54 |
import javax.swing.event.ChangeListener; |
54 |
import javax.swing.event.ChangeListener; |
55 |
import org.netbeans.api.java.platform.JavaPlatform; |
55 |
import org.netbeans.api.java.platform.JavaPlatform; |
56 |
import org.netbeans.api.project.ProjectManager; |
56 |
import org.netbeans.api.project.ProjectManager; |
|
|
57 |
import org.netbeans.api.queries.FileEncodingQuery; |
57 |
import org.netbeans.modules.ant.freeform.spi.ProjectConstants; |
58 |
import org.netbeans.modules.ant.freeform.spi.ProjectConstants; |
58 |
import org.netbeans.modules.ant.freeform.spi.support.Util; |
59 |
import org.netbeans.modules.ant.freeform.spi.support.Util; |
59 |
import org.netbeans.modules.java.freeform.JavaProjectGenerator; |
60 |
import org.netbeans.modules.java.freeform.JavaProjectGenerator; |
Lines 103-109
Link Here
|
103 |
private static final SpecificationVersion JDK_MAX_SUPPORTED_VERSION = new SpecificationVersion ("1.5"); //NOI18N |
104 |
private static final SpecificationVersion JDK_MAX_SUPPORTED_VERSION = new SpecificationVersion ("1.5"); //NOI18N |
104 |
|
105 |
|
105 |
private ProjectModel(File baseFolder, File nbProjectFolder, PropertyEvaluator evaluator, |
106 |
private ProjectModel(File baseFolder, File nbProjectFolder, PropertyEvaluator evaluator, |
106 |
List<JavaProjectGenerator.SourceFolder> sourceFolders, List<JavaProjectGenerator.JavaCompilationUnit> compUnits) { |
107 |
List<JavaProjectGenerator.SourceFolder> sourceFolders, List<JavaProjectGenerator.JavaCompilationUnit> compUnits, String enc) { |
107 |
this.baseFolder = baseFolder; |
108 |
this.baseFolder = baseFolder; |
108 |
this.nbProjectFolder = nbProjectFolder; |
109 |
this.nbProjectFolder = nbProjectFolder; |
109 |
this.evaluator = evaluator; |
110 |
this.evaluator = evaluator; |
Lines 115-123
Link Here
|
115 |
if (sourceLevel == null) { |
116 |
if (sourceLevel == null) { |
116 |
setSourceLevel(getDefaultSourceLevel()); |
117 |
setSourceLevel(getDefaultSourceLevel()); |
117 |
} |
118 |
} |
118 |
if (sourceFolders.size() > 0) { |
119 |
if (enc != null) { |
|
|
120 |
this.encoding = enc; |
121 |
} else if (sourceFolders.size() > 0) { |
119 |
JavaProjectGenerator.SourceFolder sf = sourceFolders.get(0); |
122 |
JavaProjectGenerator.SourceFolder sf = sourceFolders.get(0); |
120 |
encoding = sf.encoding == null ? null : Charset.forName(sf.encoding).name(); |
123 |
this.encoding = sf.encoding == null ? null : Charset.forName(sf.encoding).name(); |
121 |
} |
124 |
} |
122 |
resetState(); |
125 |
resetState(); |
123 |
} |
126 |
} |
Lines 147-153
Link Here
|
147 |
public static ProjectModel createEmptyModel(File baseFolder, File nbProjectFolder, PropertyEvaluator evaluator) { |
150 |
public static ProjectModel createEmptyModel(File baseFolder, File nbProjectFolder, PropertyEvaluator evaluator) { |
148 |
return new ProjectModel(baseFolder, nbProjectFolder, evaluator, |
151 |
return new ProjectModel(baseFolder, nbProjectFolder, evaluator, |
149 |
new ArrayList<JavaProjectGenerator.SourceFolder>(), |
152 |
new ArrayList<JavaProjectGenerator.SourceFolder>(), |
150 |
new ArrayList<JavaProjectGenerator.JavaCompilationUnit>()); |
153 |
new ArrayList<JavaProjectGenerator.JavaCompilationUnit>(), FileEncodingQuery.getDefaultEncoding().name()); |
151 |
} |
154 |
} |
152 |
|
155 |
|
153 |
/** Create project model of existing project. Useful for project customization. */ |
156 |
/** Create project model of existing project. Useful for project customization. */ |
Lines 161-167
Link Here
|
161 |
// reads only "java" type because other types are not editable in UI |
164 |
// reads only "java" type because other types are not editable in UI |
162 |
JavaProjectGenerator.getSourceFolders(helper, TYPE_JAVA), |
165 |
JavaProjectGenerator.getSourceFolders(helper, TYPE_JAVA), |
163 |
JavaProjectGenerator.getJavaCompilationUnits(helper, |
166 |
JavaProjectGenerator.getJavaCompilationUnits(helper, |
164 |
Util.getAuxiliaryConfiguration(helper)) |
167 |
Util.getAuxiliaryConfiguration(helper)), |
|
|
168 |
JavaProjectGenerator.getEncoding(helper) |
165 |
); |
169 |
); |
166 |
// only "java" type of sources was read so fix style to "pacakges" on all |
170 |
// only "java" type of sources was read so fix style to "pacakges" on all |
167 |
updateStyle(pm.sourceFolders); |
171 |
updateStyle(pm.sourceFolders); |
Lines 190-196
Link Here
|
190 |
if (subprojects.size() > 0) { |
194 |
if (subprojects.size() > 0) { |
191 |
JavaProjectGenerator.putSubprojects(helper, subprojects); |
195 |
JavaProjectGenerator.putSubprojects(helper, subprojects); |
192 |
} |
196 |
} |
193 |
|
197 |
if (model.encoding != null) { |
|
|
198 |
JavaProjectGenerator.putEncoding(helper, model.encoding); |
199 |
} |
194 |
model.resetState(); |
200 |
model.resetState(); |
195 |
} |
201 |
} |
196 |
|
202 |
|
Lines 225-230
Link Here
|
225 |
List<String> buildFiles = JavaProjectGenerator.getBuildFiles(model.getEvaluator(), |
231 |
List<String> buildFiles = JavaProjectGenerator.getBuildFiles(model.getEvaluator(), |
226 |
model.javaCompilationUnitsList, model.baseFolder, model.nbProjectFolder); |
232 |
model.javaCompilationUnitsList, model.baseFolder, model.nbProjectFolder); |
227 |
JavaProjectGenerator.putBuildFiles(helper, buildFiles); |
233 |
JavaProjectGenerator.putBuildFiles(helper, buildFiles); |
|
|
234 |
|
235 |
JavaProjectGenerator.putEncoding(helper, model.encoding); |
228 |
|
236 |
|
229 |
return null; |
237 |
return null; |
230 |
} |
238 |
} |