1 package org.simantics.modeling.ui.scl.imports;
3 import java.util.ArrayList;
5 import org.eclipse.jface.dialogs.Dialog;
6 import org.eclipse.swt.widgets.Shell;
7 import org.simantics.scl.compiler.commands.CommandSessionImportEntry;
8 import org.simantics.scl.ui.imports.ImportModulesAction;
10 public class OntologyImportModulesAction extends ImportModulesAction {
12 public static final OntologyImportModulesAction INSTANCE = new OntologyImportModulesAction();
14 public OntologyImportModulesAction() {
15 super(Messages.OntologyImportModulesAction_AddOntology, 10.0);
19 public boolean editImports(Shell shell, ArrayList<CommandSessionImportEntry> imports) {
20 ModuleSelectionDialog dialog = new ModuleSelectionDialog(shell, OntologiesQuery.INSTANCE);
21 dialog.setTitle(Messages.OntologyImportModulesAction_AddOntology);
22 if(dialog.open() == Dialog.OK) {
23 for(Object r : dialog.getResult()) {
24 String uri = (String)r;
25 new CommandSessionImportEntry(uri, getDefaultLocalName(uri), true).addTo(imports);
33 public String getDefaultLocalName(String ontologyUri) {
34 if(ontologyUri.contains("/Layer0-")) //$NON-NLS-1$
35 return "L0"; //$NON-NLS-1$
36 if(ontologyUri.contains("/Structural-")) //$NON-NLS-1$
37 return "STR"; //$NON-NLS-1$
38 if(ontologyUri.contains("/Modeling-")) //$NON-NLS-1$
39 return "MOD"; //$NON-NLS-1$
40 return ""; //$NON-NLS-1$