|
|
@@ -4,6 +4,13 @@
|
|
|
package org.yakindu.base.expressions.ui;
|
|
|
|
|
|
import org.eclipse.ui.plugin.AbstractUIPlugin;
|
|
|
+import org.eclipse.xtext.ui.editor.model.IResourceForEditorInputFactory;
|
|
|
+import org.eclipse.xtext.ui.editor.model.JavaClassPathResourceForIEditorInputFactory;
|
|
|
+import org.eclipse.xtext.ui.editor.model.ResourceForIEditorInputFactory;
|
|
|
+import org.eclipse.xtext.ui.resource.IResourceSetProvider;
|
|
|
+import org.eclipse.xtext.ui.resource.SimpleResourceSetProvider;
|
|
|
+import org.eclipse.xtext.ui.resource.XtextResourceSetProvider;
|
|
|
+import org.eclipse.xtext.ui.shared.Access;
|
|
|
|
|
|
/**
|
|
|
* Use this class to register components to be used within the IDE.
|
|
|
@@ -12,4 +19,30 @@ public class ExpressionsUiModule extends org.yakindu.base.expressions.ui.Abstrac
|
|
|
public ExpressionsUiModule(AbstractUIPlugin plugin) {
|
|
|
super(plugin);
|
|
|
}
|
|
|
+
|
|
|
+ public com.google.inject.Provider<org.eclipse.xtext.resource.containers.IAllContainersState> provideIAllContainersState() {
|
|
|
+ if (Access.getJdtHelper().get().isJavaCoreAvailable()) {
|
|
|
+ return Access.getJavaProjectsState();
|
|
|
+ } else {
|
|
|
+ return Access.getWorkspaceProjectsState();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Class<? extends IResourceSetProvider> bindIResourceSetProvider() {
|
|
|
+ if (Access.getJdtHelper().get().isJavaCoreAvailable()) {
|
|
|
+ return XtextResourceSetProvider.class;
|
|
|
+ } else {
|
|
|
+ return SimpleResourceSetProvider.class;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Class<? extends IResourceForEditorInputFactory> bindIResourceForEditorInputFactory() {
|
|
|
+ if (Access.getJdtHelper().get().isJavaCoreAvailable()) {
|
|
|
+ return JavaClassPathResourceForIEditorInputFactory.class;
|
|
|
+ } else {
|
|
|
+ return ResourceForIEditorInputFactory.class;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|