Skip to main content



      Home
Home » Modeling » EMF Parsley » Define a ViewerContentProvider for each TreeFormView
Define a ViewerContentProvider for each TreeFormView [message #1838019] Sat, 13 February 2021 04:24 Go to next message
Eclipse UserFriend
Hello,

I'm discovering Parsley which is a very good project.
I setuped a project with RAP, and I created several entry points to display different perspectives and views.
I'm loading the same object from an xmi in a configurator defined in an EmfParsleyGuiceModule.

What I would like to to is to filter this big EObject depending the TreeFormView.
My problem is that ViewerContentProvider that I defined is defined in my EmfParsleyGuiceModule which is project wide so, I cannot make my filtering on views like I want.
Is there a solution to have a different content provider for each TreeFormView I defined ?
I'm attaching a schema of the architecture I would like to reach.

Thank you
Re: Define a ViewerContentProvider for each TreeFormView [message #1838063 is a reply to message #1838019] Mon, 15 February 2021 02:39 Go to previous messageGo to next message
Eclipse UserFriend
Hi
if you need different customizations, then you need different Guice Modules.
You can have another Guice Module in the same project. If you use the DSL you can have several DSL files in the same project. When you specify something like a content provider, you can specify that it extends an existing one, in case you want to reuse something.
Is that what you meant?
cheers
Lorenzo
Re: Define a ViewerContentProvider for each TreeFormView [message #1838073 is a reply to message #1838063] Mon, 15 February 2021 07:25 Go to previous messageGo to next message
Eclipse UserFriend
Hello Lorenzo,

Thanks for your fast answer. This is exactly what I want. But how to use the other Guice Module for a given SaveableTreeFormView ? Shall we inject it in the TreeFormView like the following code ? Is there another way to map the Guice Module to use and the given view ?
import com.google.inject.Inject;

public class Example1SaveableTreeFormView extends org.eclipse.emf.parsley.views.SaveableTreeFormView {
	@Inject
	private EmfParsleyGuiceModule1 module;
}
import com.google.inject.Inject;

public class Example2SaveableTreeFormView extends org.eclipse.emf.parsley.views.SaveableTreeFormView {

	@Inject
	private EmfParsleyGuiceModule2 module;
}




Thanks a lot


[Updated on: Mon, 15 February 2021 07:26] by Moderator

Re: Define a ViewerContentProvider for each TreeFormView [message #1838082 is a reply to message #1838073] Mon, 15 February 2021 09:52 Go to previous messageGo to next message
Eclipse UserFriend
No, you should not inject a Guice Module: you should create an injector from a Guice Module and then create your components with that injector. (please, make sure you also read the section "Dependency Injection With Google Guice" in the documentation, https://www.eclipse.org/emf-parsley/documentation.html).
The easiest thing to do is to create a DSL file, where you also define your view; similar to the one you created with the wizard (assuming you have already started with a wizard).
Re: Define a ViewerContentProvider for each TreeFormView [message #1838083 is a reply to message #1838082] Mon, 15 February 2021 09:53 Go to previous messageGo to next message
Eclipse UserFriend
I mean that by using the DSL you get for free all the infrastructure that creates an Eclipse view via injection and using all the customizations specified in that specific DSL file.
Re: Define a ViewerContentProvider for each TreeFormView [message #1838084 is a reply to message #1838083] Mon, 15 February 2021 10:07 Go to previous messageGo to next message
Eclipse UserFriend
Hello, yes I was going to reply when you provided additional input.
I created several dsl *.parsley files with the different configuration needed and it works like a charm !
Thanks a lot for your help. EMF Parsley is really great !
Re: Define a ViewerContentProvider for each TreeFormView [message #1838113 is a reply to message #1838084] Tue, 16 February 2021 05:14 Go to previous message
Eclipse UserFriend
Thank you for the feedback! :)
Previous Topic:Parsley Editor Example/Tutorial
Next Topic:ChangeRecorder cannot be found by org.eclipse.emf.edit
Goto Forum:
  


Current Time: Tue May 13 14:29:01 EDT 2025

Powered by FUDForum. Page generated in 0.03703 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top