/** * Propagates the <code>SelectionChangeEvent</code> as is (i.e. whithout * modifying its source) to the listeners. * * @param evt * the propagated <code>BeanChangeEvent</code> */ public void fireSelectionChange(SelectionChangeEvent evt) { if (listeners != null) { int[] oldSelection = evt.getOldSelection(); int[] newSelection = evt.getNewSelection(); if (oldSelection == null && newSelection == null) { return; } if (oldSelection != null && newSelection != null && Arrays.equals(oldSelection, newSelection)) { return; } for (ISelectionChangeListener listener : listeners) { if (inhibitedListeners == null || !inhibitedListeners.contains(listener)) { listener.selectionChange(evt); } } } }