Good one! It would make sense for the annotation processor the go down the class structure. Why not?
Regards, Wim On Fri, Sep 6, 2013 at 5:16 PM, Konstantin Komissarchik < [email protected]> wrote: > No stake in the particular topic in question, but I do want to clarify the > statement regarding annotations…**** > > ** ** > > > the problem is that annotations are not inherited**** > > ** ** > > Java semantics on annotation inheritance are only relevant when it comes > to describing semantics of the built-in lookup methods, such as > Class.getAnnotation(). There is nothing stopping a framework that processes > the annotation from implementing its own semantics and in fact many > frameworks do just that. All you need to do is traverse the type hierarchy, > collect the relevant annotations and apply your own rules on shadowing and > merging, depending on what’s appropriate for the annotation in question.** > ** > > ** ** > > Thanks,**** > > ** ** > > - Konstantin**** > > ** ** > > ** ** > > *From:* [email protected] [mailto:[email protected]] *On > Behalf Of *Lars Vogel > *Sent:* Friday, September 06, 2013 7:59 AM > *To:* E4 Project developer mailing list > *Subject:* Re: [e4-dev] What about E4 Editor?**** > > ** ** > > 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 > >
_______________________________________________ e4-dev mailing list [email protected] https://dev.eclipse.org/mailman/listinfo/e4-dev
