swt - RCP overrided Composite dispose method not called -


i have created own compound composite extending composite class in e4 application.

i have override dispose method never gets called. if add dispose listener on compound composite or of widgets contains listener called.

could explain why?

here example.

public class mycomposite extends composite{ public mycomposite(){     this.adddisposelistener(new disposelistener(){          @override         public void widgetdisposed(disposeevent e) {             system.out.println("this printed");         }     }); }  @override public void dispose(){     system.out.println("this not printed");     super.dispose(); } } 

i have read javadoc dispose method , says:

note: method not called recursively on descendants of receiver. means that, widget implementers can not detect when widget being disposed of re-implementing method, should instead listen dispose event.

for behaviour seeing , javadoc above, seems dispose method can not override because ignored. interpretation correct?

for behaviour seeing , javadoc above, seems dispose method can not override because ignored. interpretation correct?

"can not overridden" strong, since technically can override it, correct. overriding not have desired effect have seen.

to handle disposal in composite, disposelistener correct way. see question: eclipse rcp: how , when correctly unsubscribe composite eventbroker?


Comments

Popular posts from this blog

html - Outlook 2010 Anchor (url/address/link) -

javascript - Why does running this loop 9 times take 100x longer than running it 8 times? -

Getting gateway time-out Rails app with Nginx + Puma running on Digital Ocean -