Hi Angelo,

the problem is that annotations are not inherited, hence such a base class
would not be very useful. Inheritance of annotations works only for class
annotations AFAIK.

See
http://docs.oracle.com/javase/7/docs/api/java/lang/annotation/Inherited.html
http://stackoverflow.com/questions/4745798/why-java-classes-do-not-inherit-annotations-from-implemented-interfaces

I send you the editor chapter is a private mail. It also an example for a
multiple editor implementation (which is not yet online).

Best regards, Lars


2013/9/6 Angelo zerr <[email protected]>

> Hi Lars, Eric, Wim,
>
> Many thank's for your answer!
>
> > I think Angelo wants some base class which already implements dirty,
> focus, memento, save as, issaveasallowed, editor input, etcetera. An editor
> that is uniform to workbench requirements and that plays along well with
> the 3.x editor lifecycle.
> Exactly!
>
> >I'm not sure why you think it's necessary to have a base class though;
> we already handle focus and dirty etc through the model.
> When you are newbie to develop some editor with E4 (as me), it's difficult
> to know how to start (except if you read tutorial of Lars:)). I think if E4
> provides some framework by providing some base class, it should be easier.
>
> Takes a basic sample of Lars tutorial :
>
> ------------------------------------------------------------------
> public class MySavePart {
>
>   @Inject
>   MDirtyable dirty;
>
>   @PostConstruct
>   public void createControls(Composite parent) {
>     Button button = new Button(parent, SWT.PUSH);
>     button.addSelectionListener(new SelectionAdapter() {
>       @Override
>       public void widgetSelected(SelectionEvent e) {
>         dirty.setDirty(true);
>       }
>     });
>   }
>
> }
> ------------------------------------------------------------------
>
> In this sample you need to declare MDirtyable with @Inject and
> createControls with @PostConstruct. If you are newbie, you can forget to
> set the well annotation. If E4 provides a base class like this :
>
> ------------------------------------------------------------------
> public abstract class BasePart {
>
>   @Inject
>   protected MDirtyable dirty;
>
>   @PostConstruct
>   public abstract void createControls(Composite parent);
>
> }
> ------------------------------------------------------------------
>
> After you could implement like this :
>
> ------------------------------------------------------------------
> public class MySavePart extends BasePart {
>
>   public void createControls(Composite parent) {
>     Button button = new Button(parent, SWT.PUSH);
>     button.addSelectionListener(new SelectionAdapter() {
>       @Override
>       public void widgetSelected(SelectionEvent e) {
>         dirty.setDirty(true);
>       }
>     });
>   }
>
> }
> ------------------------------------------------------------------
>
> It's a basic example, but if E4 doesn't provide this BasePart class, I
> think each people will create that to avoid duplicate the code. But perhaps
> I'm wrong.
>
> @Lars : it should be fantastic if you can send me the part about the
> editor of your chapter. I will follow you to buy it as soon as it will
> available (I have already the first edition).
>
> Regards Angelo
>
>
>
> 2013/9/6 Wim Jongman <[email protected]>
>
>> I think Angelo wants some base class which already implements dirty,
>> focus, memento, save as, issaveasallowed, editor input, etcetera. An editor
>> that is uniform to workbench requirements and that plays along well with
>> the 3.x editor lifecycle.
>>
>> Cheers,
>>
>> Wim
>>
>>
>> On Fri, Sep 6, 2013 at 4:07 PM, Lars Vogel <[email protected]> wrote:
>>
>>> Hi Angelo,
>>>
>>> I'm not sure if I understand your question correctly. Dirty and focus is
>>> handled via the application model.
>>>
>>> Best regards, Lars
>>>
>>>
>>> 2013/9/6 Angelo zerr <[email protected]>
>>>
>>>>  Hi E4 Team,
>>>>
>>>> I know this topic comes from every time, but I would like to know what
>>>> is the sate of E4 Editor.
>>>> My project 
>>>> CodeMirror-Eclipse<https://github.com/angelozerr/CodeMirror-Eclipse> 
>>>> provides
>>>> Eclipse 3.x EditorPart, but I would like to provide too Eclipse 4.x Editor.
>>>>
>>>> I would like to avoid developping my own Pojo class like ModelEditor.
>>>> E4 provides the capability to manage your editor with Pojo, it's a great
>>>> feature, but IMHO I think E4 should provide an abstract class for editor
>>>> like EditorPart which manages dirty, focus, after that E4 could provide
>>>> TextEditor class and a lot of project (JDT Java editor, WTP XML editor,
>>>> etc) could migrate to a pure E4 code (but I don't know if it's the goal of
>>>> E4 to remove 3.x EditorPart, View in the future?).
>>>>
>>>> Many thank's for your help.
>>>>
>>>> Regards Angelo
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> e4-dev mailing list
>>>> [email protected]
>>>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>>>
>>>>
>>>
>>> _______________________________________________
>>> e4-dev mailing list
>>> [email protected]
>>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>>
>>>
>>
>> _______________________________________________
>> e4-dev mailing list
>> [email protected]
>> https://dev.eclipse.org/mailman/listinfo/e4-dev
>>
>>
>
> _______________________________________________
> e4-dev mailing list
> [email protected]
> https://dev.eclipse.org/mailman/listinfo/e4-dev
>
>
_______________________________________________
e4-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/e4-dev

Reply via email to