/** * A convenience method to connect listeners to the given * <code>listElement</code>. * * @param listElement the list element to connect change listeners to * @return the listener that was connected to the <code>listElement</code> * or <code>null</code> if no listener was registered * @throws IllegalStateException if this list has been disposed and is * thus no longer in a state to be managing listener registrations on * list elements */ private EventListener connectElement(E listElement) { // listeners cannot be installed on null listElements if (listElement == null) return null; // use the elementConnector to install a listener on the listElement final EventListener listener = this.elementConnector.installListener(listElement); // test if the new listener transfers us from single event mode to multi event mode if (this.singleListenerMode && listener != null) { if (this.singleEventListener == null) this.singleEventListener = listener; else if (listener != this.singleEventListener) this.switchToMultiListenerMode(); } return listener; }
/** * A convenience method to connect listeners to the given * <code>listElement</code>. * * @param listElement the list element to connect change listeners to * @return the listener that was connected to the <code>listElement</code> * or <code>null</code> if no listener was registered * @throws IllegalStateException if this list has been disposed and is * thus no longer in a state to be managing listener registrations on * list elements */ private EventListener connectElement(E listElement) { // listeners cannot be installed on null listElements if (listElement == null) return null; // use the elementConnector to install a listener on the listElement final EventListener listener = this.elementConnector.installListener(listElement); // test if the new listener transfers us from single event mode to multi event mode if (this.singleListenerMode && listener != null) { if (this.singleEventListener == null) this.singleEventListener = listener; else if (listener != this.singleEventListener) this.switchToMultiListenerMode(); } return listener; }
/** * A convenience method to connect listeners to the given * <code>listElement</code>. * * @param listElement the list element to connect change listeners to * @return the listener that was connected to the <code>listElement</code> * or <code>null</code> if no listener was registered * @throws IllegalStateException if this list has been disposed and is * thus no longer in a state to be managing listener registrations on * list elements */ private EventListener connectElement(E listElement) { // listeners cannot be installed on null listElements if (listElement == null) return null; // use the elementConnector to install a listener on the listElement final EventListener listener = this.elementConnector.installListener(listElement); // test if the new listener transfers us from single event mode to multi event mode if (this.singleListenerMode && listener != null) { if (this.singleEventListener == null) this.singleEventListener = listener; else if (listener != this.singleEventListener) this.switchToMultiListenerMode(); } return listener; }