Skip to content

Commit 8c8432c

Browse files
committed
[New project wizard] Try to set default values based on the name of the project
1 parent 843bb99 commit 8c8432c

2 files changed

Lines changed: 39 additions & 0 deletions

File tree

java_execution/java_xdsml/plugins/org.gemoc.execution.sequential.javaxdsml.ide.ui/src/org/gemoc/execution/sequential/javaxdsml/ide/ui/templates/SequentialNewWizard.java

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
package org.gemoc.execution.sequential.javaxdsml.ide.ui.templates;
22

3+
import org.eclipse.jface.wizard.IWizardPage;
4+
import org.eclipse.xtext.util.Strings;
5+
36
import fr.inria.diverse.commons.eclipse.pde.wizards.pages.pde.ui.BaseProjectWizardFields;
47
import fr.inria.diverse.commons.eclipse.pde.wizards.pages.pde.ui.templates.ITemplateSection;
58
import fr.inria.diverse.melange.ui.templates.melange.SimpleMTNewWizard;
@@ -16,4 +19,28 @@ public void init(BaseProjectWizardFields data) {
1619
public ITemplateSection[] createTemplateSections() {
1720
return new ITemplateSection[] {new SequentialTemplate()};
1821
}
22+
23+
@Override
24+
public IWizardPage getNextPage(IWizardPage page) {
25+
26+
try {
27+
String project = getData().projectName;
28+
String SUFFIX = ".xdsml";
29+
if(project.endsWith(SUFFIX)){
30+
31+
int startSuffix = project.length() - SUFFIX.length();
32+
int startName = project.lastIndexOf(".", startSuffix-1) + 1;
33+
34+
String packageName = project.substring(0, startName - 1).toLowerCase();
35+
String languageName = project.substring(startName, startSuffix);
36+
languageName = Strings.toFirstUpper(languageName);
37+
38+
ITemplateSection[] selections = getTemplateSections();
39+
SequentialTemplate selection = (SequentialTemplate) selections[0];
40+
selection.updateOptions(packageName, languageName);
41+
}
42+
} catch (Exception e) {}
43+
44+
return super.getNextPage(page);
45+
}
1946
}

java_execution/java_xdsml/plugins/org.gemoc.execution.sequential.javaxdsml.ide.ui/src/org/gemoc/execution/sequential/javaxdsml/ide/ui/templates/SequentialTemplate.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,18 @@ public String doSelectButton() {
5555
registerOption(dsaProjectLocationOption, (String) null, 0);
5656
}
5757

58+
public void updateOptions(String packageName, String languageName){
59+
TemplateOption[] allOptions = getOptions(0);
60+
for(TemplateOption option : allOptions){
61+
if(option.getName().equals(KEY_PACKAGE_NAME) && packageName != null){
62+
option.setValue(packageName);
63+
}
64+
else if(option.getName().equals(KEY_METAMODEL_NAME) && languageName != null){
65+
option.setValue(languageName);
66+
}
67+
}
68+
}
69+
5870
@Override
5971
public String getSectionId() {
6072
return "SequentialLanguage";

0 commit comments

Comments
 (0)