List of usage examples for org.eclipse.jface.internal.provisional.action IToolBarManager2 removePropertyChangeListener
public void removePropertyChangeListener(IPropertyChangeListener listener);
From source file:org.eclipse.rap.ui.interactiondesign.ConfigurableStack.java
License:Open Source License
private void addPropertyChangeListenerToToolBar(final IToolBarManager manager) { if (manager instanceof IToolBarManager2 && !hasListener(manager)) { final IToolBarManager2 manager2 = (IToolBarManager2) manager; final IPropertyChangeListener listener = new IPropertyChangeListener() { public void propertyChange(final PropertyChangeEvent event) { if (event.getProperty().equals(IToolBarManager2.PROP_LAYOUT)) { if (configAction != null) { configAction.fireToolBarChange(); }/*w w w .j a v a 2 s .com*/ } } }; manager2.addPropertyChangeListener(listener); final Control toolBar = manager2.getControl2(); if (toolBar != null) { // Remove all listeners from the manager and the manager from the list // to prevent memory leaks toolBar.addDisposeListener(new DisposeListener() { public void widgetDisposed(final DisposeEvent event) { toolBar.removeDisposeListener(this); manager2.removePropertyChangeListener(listener); if (managersWhoHasListeners != null) { managersWhoHasListeners.remove(manager); } } }); } } }