@Override
	public void removeLayoutListener(LayoutListener<V, E> listener) {
		Iterator<WeakReference<LayoutListener<V, E>>> iterator = listeners.iterator();
		for (; iterator.hasNext();) {
			WeakReference<LayoutListener<V, E>> reference = iterator.next();
			LayoutListener<V, E> layoutListener = reference.get();
			if (layoutListener == null) {
				iterator.remove();
			}

			if (layoutListener == listener) {
				iterator.remove();
			}
		}
	}
A wrapper that allows for existing Jung layouts to be used inside of the Visual Graph system. 

@param <V> the vertex type
@param <E> the edge type
Ghidra/Framework/Graph/src/main/java/ghidra/graph/viewer/layout/JungWrappingVisualGraphLayoutAdapter.java