[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Newsgroup Home]
[news.eclipse.platform.swt] Re: JFace Dialog - change default focus

Matthew Hall wrote:

You can cause the filter to be removed as the dialog is closed by adding a SWT.Dispose listener to the composite created in createDialogArea:

composite.addListener(SWT.Dispose, new Listener() {
   public void handleEvent(Event e) {
     display.removeListener(SWT.Traverse, overrideTraversalListener);
   }
});

We have overridden the buttonPressed() method (for other reasons) and this is where I'm removing the listener. Is this an acceptable alternative?


 protected void buttonPressed(int buttonId) {
   ...

   log.debug("Removing traverse filter");
   getShell().getDisplay().removeFilter(SWT.Traverse, listener);

   super.buttonPressed(buttonId);
 }