public void testRemovesListenerAfterLastListenerIsRemoved() throws Exception { ListChangeEventTracker listener = new ListChangeEventTracker(); list.addListChangeListener(listener); assertTrue(bean.changeSupport.hasListeners(propertyName)); list.removeListChangeListener(listener); assertFalse(bean.changeSupport.hasListeners(propertyName)); }
private void removed(E input) { listeners.elementRemoved(input); IObservableList<E> observable = elementToObservable.remove(input); if (observable != null) { observable.removeListChangeListener(listChangeListener); for (E element : observable) { removed(element); } observable.dispose(); } }
/** @param list */ private void setInput(IObservableList list) { if (list == null) { list = new WritableList(SWTObservables.getRealm(Display.getDefault())); } if (observableList != null) { observableList.removeListChangeListener(listener); } knownElements.clear(); observableList = list; knownElements.addAll(list); observableList.addListChangeListener(listener); }
public void dispose() { observableList.removeListChangeListener(listener); }