[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[ide-dev] Widget and Utils contribution

Hey guys,

I'm the developer of the composer plugin (which is a php package manager) and we are about to migrate this plugin into PDT. We have some dependencies to solve and here is one which has a nice contribution to eclipse as well. I hope I am on the correct mailing list here, anyway please pass me on.

1) History:
The main part of the composer plugin is the composer editor, which is pretty similar to the PDE editor. In fact, I even took code from there. I realized this code can be used for multiple purposes, editors and dialogs as well, because it was already very generalized. I extracted it into its own plugin, which I put on github: https://github.com/gossi/eclipse-components

2) Packages:
The repo consists a little more than just UI stuff. So let me explain a little which packages to look at:
- si.gos.eclipse.actions
- si.gos.eclipse.editor
- si.gos.eclipse.forms
- si.gos.eclipse.parts
- si.gos.eclipse.widgets.utils

basicaly they all work together.

3) Features:

- The most interessting is the parts package I'd say. There you'll find typical parts that you see throughout the whole eclipse environment. Most typically, this is a list/table/tree on the left, with action buttons on the right. There are just multiple parts present with all their configuration classes (Taken from PDE).

- Forms: Offer many widgets to build up forms (e.g. in an editor) very easily (Taken from PDE).

- Editor: Offer customized sections as widgets that are ready to use in a (multipage) editor (Taken from PDE).

- Widget Utils: Especially the parts might occur in an editor environment or most often appear in dialogs. Depending on which situation, they need to be initiated differently, that's where the WidgetFactory comes into play, which is a facade pattern to adopt to these two environments and are used under the hood of the parts above.

- Widget Helper: An easy way to help layouting composites in SWT (Taken from PDE).

4) The Plan:
We want to use this for PDT and to migrate the composer plugin, yet I think a lot of people will benefit from that and the best would be to contribute this to a place somewhere in eclipse where it can reach its potential.

=> That's my question to you guys:
I'd like to contribute this back to eclipse. What do you think?

In case you agree on this, there is some stuff to do (which you might be asking for anyway):
For now and for historical reasons, everything is e3 based, which can be done way more easier with e4 and DI. Prior to contribution to eclipse, I'd lift the code up onto e4 API.