private void buttonNew_Click(object sender, RoutedEventArgs e) { if (canProceedAfterSave()) { var selectModulesDialog = new SelectModulesDialog { Owner = this, }; selectModulesDialog.Initialize(_application.CurrentLanguage); if (selectModulesDialog.ShowDialog() == true) { var semanticNetwork = new Semantics.SemanticNetwork(_application.CurrentLanguage) .WithModules(selectModulesDialog.SelectedModules); setModel(semanticNetwork, string.Empty); } } }
public Semantics.SemanticNetwork Load(ILanguage language) { var result = new Semantics.SemanticNetwork(language); Name.LoadTo(result.Name); result.WithModules(Repositories.Modules.Values.Where(module => Modules.Contains(module.Name)).ToList()); var conceptsCache = new Dictionary <Concept, IConcept>(); foreach (var concept in Concepts) { result.Concepts.Add(conceptsCache[concept] = concept.Load()); } var conceptIdResolver = new ConceptIdResolver(conceptsCache); foreach (var statement in Statements) { result.Statements.Add(statement.Save(conceptIdResolver)); } return(result); }