catch up with branch daily
Signed-off-by: Ralf Mollik <ramollik@compex-commerce.com>
diff --git a/org.eclipse.osbp.infogrid.ecview/.settings/org.eclipse.xtend.core.Xtend.prefs b/org.eclipse.osbp.infogrid.ecview/.settings/org.eclipse.xtend.core.Xtend.prefs
index 0933f8c..19e3115 100644
--- a/org.eclipse.osbp.infogrid.ecview/.settings/org.eclipse.xtend.core.Xtend.prefs
+++ b/org.eclipse.osbp.infogrid.ecview/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -1,4 +1,5 @@
//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend
+BuilderConfiguration.is_project_specific=true
eclipse.preferences.version=1
is_project_specific=true
outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
diff --git a/org.eclipse.osbp.infogrid.model.editor/.settings/org.eclipse.xtend.core.Xtend.prefs b/org.eclipse.osbp.infogrid.model.editor/.settings/org.eclipse.xtend.core.Xtend.prefs
index 0933f8c..19e3115 100644
--- a/org.eclipse.osbp.infogrid.model.editor/.settings/org.eclipse.xtend.core.Xtend.prefs
+++ b/org.eclipse.osbp.infogrid.model.editor/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -1,4 +1,5 @@
//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend
+BuilderConfiguration.is_project_specific=true
eclipse.preferences.version=1
is_project_specific=true
outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
diff --git a/org.eclipse.osbp.infogrid.model/.classpath b/org.eclipse.osbp.infogrid.model/.classpath
index e5c313c..8b37caa 100644
--- a/org.eclipse.osbp.infogrid.model/.classpath
+++ b/org.eclipse.osbp.infogrid.model/.classpath
@@ -2,8 +2,7 @@
<classpath>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
- <classpathentry kind="src" path="src"/>
- <classpathentry kind="src" path="xtend-gen"/>
- <classpathentry kind="src" path="model"/>
+ <classpathentry kind="src" path="src/"/>
+ <classpathentry kind="src" path="xtend-gen/"/>
<classpathentry kind="output" path="target/classes"/>
</classpath>
diff --git a/org.eclipse.osbp.infogrid.model/.settings/org.eclipse.xtend.core.Xtend.prefs b/org.eclipse.osbp.infogrid.model/.settings/org.eclipse.xtend.core.Xtend.prefs
index 0933f8c..19e3115 100644
--- a/org.eclipse.osbp.infogrid.model/.settings/org.eclipse.xtend.core.Xtend.prefs
+++ b/org.eclipse.osbp.infogrid.model/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -1,4 +1,5 @@
//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend
+BuilderConfiguration.is_project_specific=true
eclipse.preferences.version=1
is_project_specific=true
outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
diff --git a/org.eclipse.osbp.infogrid.services.tests/.settings/org.eclipse.xtend.core.Xtend.prefs b/org.eclipse.osbp.infogrid.services.tests/.settings/org.eclipse.xtend.core.Xtend.prefs
index 0933f8c..19e3115 100644
--- a/org.eclipse.osbp.infogrid.services.tests/.settings/org.eclipse.xtend.core.Xtend.prefs
+++ b/org.eclipse.osbp.infogrid.services.tests/.settings/org.eclipse.xtend.core.Xtend.prefs
@@ -1,4 +1,5 @@
//outlet.DEFAULT_OUTPUT.sourceFolder.src/test/java.directory=src/test/generated-sources/xtend
+BuilderConfiguration.is_project_specific=true
eclipse.preferences.version=1
is_project_specific=true
outlet.DEFAULT_OUTPUT.hideLocalSyntheticVariables=true
diff --git a/org.eclipse.osbp.infogrid.vaaclipse/src/org/eclipse/osbp/infogrid/vaaclipse/SingleInfoGridComponent.java b/org.eclipse.osbp.infogrid.vaaclipse/src/org/eclipse/osbp/infogrid/vaaclipse/SingleInfoGridComponent.java
index 1cc6834..8e15c86 100644
--- a/org.eclipse.osbp.infogrid.vaaclipse/src/org/eclipse/osbp/infogrid/vaaclipse/SingleInfoGridComponent.java
+++ b/org.eclipse.osbp.infogrid.vaaclipse/src/org/eclipse/osbp/infogrid/vaaclipse/SingleInfoGridComponent.java
@@ -31,6 +31,8 @@
import org.eclipse.e4.core.contexts.IEclipseContext;
import org.eclipse.e4.core.di.annotations.Optional;
import org.eclipse.e4.core.services.events.IEventBroker;
+import org.eclipse.e4.ui.model.application.ui.advanced.MPerspective;
+import org.eclipse.e4.ui.model.application.ui.basic.MPart;
import org.eclipse.emf.common.notify.Notification;
import org.eclipse.emf.common.notify.impl.AdapterImpl;
import org.eclipse.osbp.dsl.dto.lib.impl.DtoServiceAccess;
@@ -48,6 +50,7 @@
import org.eclipse.osbp.runtime.common.event.EventDispatcherEvent;
import org.eclipse.osbp.runtime.common.event.EventDispatcherEvent.EventDispatcherDataTag;
import org.eclipse.osbp.runtime.common.event.IEventDispatcher;
+import org.eclipse.osbp.runtime.common.event.SelectionStore;
import org.eclipse.osbp.runtime.common.filter.IDTOService;
import org.eclipse.osbp.runtime.common.types.ITypeProviderService;
import org.eclipse.osbp.vaaclipse.common.ecview.api.IECViewSessionHelper;
@@ -98,24 +101,9 @@
private Class<?> rootType;
private IDTOService<Object> dtoService;
- // public Component createGrid(String gridSourceId,
- // IGridSourceFacade gridSourceService,
- // IECViewSessionHelper ecviewPropsProvider,
- // ITypeProviderService bundleSpaceTypeProvider, IUser user) {
- // this.gridSourceService = gridSourceService;
- // this.ecviewPropsProvider = ecviewPropsProvider;
- // this.bundleSpaceTypeProvider = bundleSpaceTypeProvider;
- //
- // descriptor = createGridSourceDescriptor(gridSourceId);
- // descriptor.setLocale(user.getLocale());
- // descriptor.setInput(inputdata);
- // if (descriptor != null) {
- // return createComponent(gridSourceId);
- // } else {
- // log.error("gridsource not available:" + gridSourceId);
- // }
- // return null;
- // }
+ private MPart mPart;
+
+ private MPerspective mPerspective;
@PostConstruct
protected void setup() {
@@ -142,6 +130,9 @@
component = (Component) descriptor.getComponent();
component.setSizeFull();
CxGrid grid = descriptor.getGrid();
+
+ mPart = context.get(MPart.class);
+ mPerspective = context.get(MPerspective.class);
// if there is inputdata, just put it into the grids collection
if (inputdata != null) {
@@ -159,16 +150,21 @@
// msg.getNewValue() provides a dto object
if(msg.getNewValue() != null) {
// The first selection event is from the parent dto ...
+ Object idFieldValue = null;
if (idx == 0) {
- selectionEvnt.addItem(EventDispatcherDataTag.ID, DtoUtils.getIdValue(msg.getNewValue()));
+ idFieldValue = DtoUtils.getIdValue(msg.getNewValue());
+ selectionEvnt.addItem(EventDispatcherDataTag.ID, idFieldValue);
+ selectionEvnt.setPerspective(mPerspective);
+ SelectionStore.putSelectionToPerspectiveContext(mPart, "net.osbee.sample.foodmart.entities.Country.id", idFieldValue);
} else {
// ... the rest is from the referenced dtos
List<Field> refs = DtoUtils.getOwnerDomainReferences(msg.getNewValue().getClass());
for (Field field : refs) {
if (!field.getDeclaringClass().getName().equals(field.getType().getName())){
Object fieldValue = DtoUtils.getValue(msg.getNewValue(), field.getName());
- Object idFieldValue = fieldValue != null ? DtoUtils.getIdValue(fieldValue) : null;
+ idFieldValue = fieldValue != null ? DtoUtils.getIdValue(fieldValue) : null;
String topic = selectionEvnt.getTopic();
+ selectionEvnt.setPerspective(mPerspective);
String entityName = EntityUtils.getQualifiedEntityNameForQualifiedDtoName(field.getType().getName());
if (topic!=null && topic.startsWith(entityName)){
selectionEvnt.addItem(EventDispatcherDataTag.ID, idFieldValue);