From be4f78978faba3d3ceb88df02a7f93a2e09ff1e0 Mon Sep 17 00:00:00 2001 From: Kenji Hosokawa Date: Tue, 3 Aug 2021 18:42:39 +0900 Subject: Initial commit Bug-AGL: SPEC-4033 Signed-off-by: Kenji Hosokawa --- .../editor/resource/IRBAModelResourceLoader.xtend | 11 ++++++++++ .../resource/RBAModelEObjectDescription.xtend | 24 ++++++++++++++++++++++ .../resource/RBAModelLocationInFileProvider.xtend | 17 +++++++++++++++ 3 files changed, 52 insertions(+) create mode 100644 rba.tool.editor/src/rba/tool/editor/resource/IRBAModelResourceLoader.xtend create mode 100644 rba.tool.editor/src/rba/tool/editor/resource/RBAModelEObjectDescription.xtend create mode 100644 rba.tool.editor/src/rba/tool/editor/resource/RBAModelLocationInFileProvider.xtend (limited to 'rba.tool.editor/src/rba/tool/editor/resource') diff --git a/rba.tool.editor/src/rba/tool/editor/resource/IRBAModelResourceLoader.xtend b/rba.tool.editor/src/rba/tool/editor/resource/IRBAModelResourceLoader.xtend new file mode 100644 index 0000000..8f7812d --- /dev/null +++ b/rba.tool.editor/src/rba/tool/editor/resource/IRBAModelResourceLoader.xtend @@ -0,0 +1,11 @@ +package rba.tool.editor.resource + +import org.eclipse.core.resources.IProject +import org.eclipse.emf.common.util.URI +import org.eclipse.emf.ecore.resource.ResourceSet + +interface IRBAModelResourceLoader { + + def void loadAndResolveResource(ResourceSet resourceSet, URI[] URIs, IProject project); + +} diff --git a/rba.tool.editor/src/rba/tool/editor/resource/RBAModelEObjectDescription.xtend b/rba.tool.editor/src/rba/tool/editor/resource/RBAModelEObjectDescription.xtend new file mode 100644 index 0000000..d9d5d8e --- /dev/null +++ b/rba.tool.editor/src/rba/tool/editor/resource/RBAModelEObjectDescription.xtend @@ -0,0 +1,24 @@ +package rba.tool.editor.resource + +import java.util.Map +import org.eclipse.emf.ecore.EObject +import org.eclipse.xtext.naming.QualifiedName +import org.eclipse.xtext.resource.EObjectDescription + +class RBAModelEObjectDescription extends EObjectDescription { + + private final int[] additionalInfo; + + new(QualifiedName qualifiedName, EObject element, Map userData) { + this(qualifiedName, element, userData, newIntArrayOfSize(2)); + } + + new(QualifiedName qualifiedName, EObject element, Map userData, int[] additionalInfo) { + super(qualifiedName, element, userData); + this.additionalInfo = additionalInfo ?: newIntArrayOfSize(2); + } + + def public int[] getAdditionalInfo() { + return this.additionalInfo; + } +} diff --git a/rba.tool.editor/src/rba/tool/editor/resource/RBAModelLocationInFileProvider.xtend b/rba.tool.editor/src/rba/tool/editor/resource/RBAModelLocationInFileProvider.xtend new file mode 100644 index 0000000..6deab29 --- /dev/null +++ b/rba.tool.editor/src/rba/tool/editor/resource/RBAModelLocationInFileProvider.xtend @@ -0,0 +1,17 @@ +package rba.tool.editor.resource + +import org.eclipse.emf.ecore.EObject +import org.eclipse.emf.ecore.EStructuralFeature +import org.eclipse.xtext.resource.DefaultLocationInFileProvider +import rba.tool.editor.util.RBAModelEditorToolUtil + +class RBAModelLocationInFileProvider extends DefaultLocationInFileProvider { + + override getFullTextRegion(EObject owner, EStructuralFeature feature, int indexInList) { + if (RBAModelEditorToolUtil.isSkippedSyntax(owner, feature)) { + return null; + } + super.getFullTextRegion(owner, feature, indexInList); + } + +} -- cgit 1.2.3-korg