Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJuergen Haug2018-02-19 07:56:43 +0000
committerJuergen Haug2018-02-19 08:05:47 +0000
commit90a18f3965abfdb0ac04e2c67ad82fa0ead1e751 (patch)
tree6144de8cf3a7f434f6bf8c2c44da96ee7a3881bf
parentd197dae2516bf61bf4b8c26163ad16504ad67ffa (diff)
downloadorg.eclipse.etrice-90a18f3965abfdb0ac04e2c67ad82fa0ead1e751.tar.gz
org.eclipse.etrice-90a18f3965abfdb0ac04e2c67ad82fa0ead1e751.tar.xz
org.eclipse.etrice-90a18f3965abfdb0ac04e2c67ad82fa0ead1e751.zip
[expression.ui] intermediate workaround for npe in dialogs
-rw-r--r--plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/util/UIExpressionUtil.xtend7
-rw-r--r--plugins/org.eclipse.etrice.expressions.ui/src/org/eclipse/etrice/expressions/detailcode/DetailExpressionProvider.xtend2
2 files changed, 8 insertions, 1 deletions
diff --git a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/util/UIExpressionUtil.xtend b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/util/UIExpressionUtil.xtend
index 539ad30bb..dc7f90e2a 100644
--- a/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/util/UIExpressionUtil.xtend
+++ b/plugins/org.eclipse.etrice.core.room.ui/src/org/eclipse/etrice/core/ui/util/UIExpressionUtil.xtend
@@ -32,6 +32,7 @@ import org.eclipse.jface.text.Document
import org.eclipse.xtext.nodemodel.ILeafNode
import static org.eclipse.xtext.EcoreUtil2.getContainerOfType
+import org.eclipse.etrice.expressions.detailcode.IDetailExpressionProvider.EmptyDetailExpressionProvider
/**
* Utility to create and cache DetailExpressionProvider
@@ -60,7 +61,11 @@ class UIExpressionUtil {
}
- static def IDetailExpressionProvider selectExpressionProvider(EObject ctx, ExpressionCache cache) {
+ static def IDetailExpressionProvider selectExpressionProvider(EObject ctx, ExpressionCache cache) {
+ // TODO intermediate fix for null from Dialogs
+ if(ctx === null)
+ return new EmptyDetailExpressionProvider
+
val exprProvider = RoomUiModule.getInjector().getInstance(DetailExpressionProvider) => [ prov |
prov.model = ctx
]
diff --git a/plugins/org.eclipse.etrice.expressions.ui/src/org/eclipse/etrice/expressions/detailcode/DetailExpressionProvider.xtend b/plugins/org.eclipse.etrice.expressions.ui/src/org/eclipse/etrice/expressions/detailcode/DetailExpressionProvider.xtend
index 7318e02e9..d34c01f4a 100644
--- a/plugins/org.eclipse.etrice.expressions.ui/src/org/eclipse/etrice/expressions/detailcode/DetailExpressionProvider.xtend
+++ b/plugins/org.eclipse.etrice.expressions.ui/src/org/eclipse/etrice/expressions/detailcode/DetailExpressionProvider.xtend
@@ -49,6 +49,7 @@ import org.eclipse.xtext.util.SimpleAttributeResolver
import static com.google.common.base.Verify.*
import static extension org.eclipse.xtext.EcoreUtil2.getContainerOfType
+import org.eclipse.etrice.core.room.RoomModel
class DetailExpressionProvider implements IDetailExpressionProvider {
@@ -90,6 +91,7 @@ class DetailExpressionProvider implements IDetailExpressionProvider {
override getInitialFeatures() {
verifyNotNull(model)
+ verify(model.isInContainment(RoomModel))
verifyNotNull(globalScopeProvider)
val elementScope = newArrayList

Back to the top