diff options
| author | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-05-22 14:05:44 -0500 | 
|---|---|---|
| committer | Adrien Hopkins <ahopk127@my.yorku.ca> | 2021-05-22 14:05:44 -0500 | 
| commit | 8645325803f8580c823cc4c2cec2ad76906b52bb (patch) | |
| tree | fff893611dfd82aca4af5e677ab782045d5543d9 /src/org/unitConverter/converterGUI/DelegateListModel.java | |
| parent | 184b7cc697ffc2dcbd49cfb3d0fd7b14bdac8803 (diff) | |
| parent | 277500e27010839e03659870bc5890f1535aa8c8 (diff) | |
Merge branch 'develop' into feature-settings-tab
Diffstat (limited to 'src/org/unitConverter/converterGUI/DelegateListModel.java')
| -rw-r--r-- | src/org/unitConverter/converterGUI/DelegateListModel.java | 242 | 
1 files changed, 0 insertions, 242 deletions
| diff --git a/src/org/unitConverter/converterGUI/DelegateListModel.java b/src/org/unitConverter/converterGUI/DelegateListModel.java deleted file mode 100644 index b80f63d..0000000 --- a/src/org/unitConverter/converterGUI/DelegateListModel.java +++ /dev/null @@ -1,242 +0,0 @@ -/** - * Copyright (C) 2018 Adrien Hopkins - * - * This program is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the - * GNU Affero General Public License for more details. - * - * You should have received a copy of the GNU Affero General Public License - * along with this program.  If not, see <https://www.gnu.org/licenses/>. - */ -package org.unitConverter.converterGUI; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.Iterator; -import java.util.List; -import java.util.ListIterator; - -import javax.swing.AbstractListModel; - -/** - * A list model that delegates to a list. - * <p> - * It is recommended to use the delegate methods in DelegateListModel instead of the delegated list's methods because - * the delegate methods handle updating the list. - * </p> - *  - * @author Adrien Hopkins - * @since 2019-01-14 - * @since v0.1.0 - */ -final class DelegateListModel<E> extends AbstractListModel<E> implements List<E> { -	/** -	 * @since 2019-01-14 -	 * @since v0.1.0 -	 */ -	private static final long serialVersionUID = 8985494428224810045L; - -	/** -	 * The list that this model is a delegate to. -	 *  -	 * @since 2019-01-14 -	 * @since v0.1.0 -	 */ -	private final List<E> delegate; - -	/** -	 * Creates an empty {@code DelegateListModel}. -	 *  -	 * @since 2019-04-13 -	 */ -	public DelegateListModel() { -		this(new ArrayList<>()); -	} - -	/** -	 * Creates the {@code DelegateListModel}. -	 *  -	 * @param delegate -	 *            list to delegate -	 * @since 2019-01-14 -	 * @since v0.1.0 -	 */ -	public DelegateListModel(final List<E> delegate) { -		this.delegate = delegate; -	} - -	@Override -	public boolean add(final E element) { -		final int index = this.delegate.size(); -		final boolean success = this.delegate.add(element); -		this.fireIntervalAdded(this, index, index); -		return success; -	} - -	@Override -	public void add(final int index, final E element) { -		this.delegate.add(index, element); -		this.fireIntervalAdded(this, index, index); -	} - -	@Override -	public boolean addAll(final Collection<? extends E> c) { -		boolean changed = false; -		for (final E e : c) { -			if (this.add(e)) { -				changed = true; -			} -		} -		return changed; -	} - -	@Override -	public boolean addAll(final int index, final Collection<? extends E> c) { -		for (final E e : c) { -			this.add(index, e); -		} -		return !c.isEmpty(); // Since this is a list, it will always change if c has elements. -	} - -	@Override -	public void clear() { -		final int oldSize = this.delegate.size(); -		this.delegate.clear(); -		if (oldSize >= 1) { -			this.fireIntervalRemoved(this, 0, oldSize - 1); -		} -	} - -	@Override -	public boolean contains(final Object elem) { -		return this.delegate.contains(elem); -	} - -	@Override -	public boolean containsAll(final Collection<?> c) { -		for (final Object e : c) { -			if (!c.contains(e)) -				return false; -		} -		return true; -	} - -	@Override -	public E get(final int index) { -		return this.delegate.get(index); -	} - -	@Override -	public E getElementAt(final int index) { -		return this.delegate.get(index); -	} - -	@Override -	public int getSize() { -		return this.delegate.size(); -	} - -	@Override -	public int indexOf(final Object elem) { -		return this.delegate.indexOf(elem); -	} - -	@Override -	public boolean isEmpty() { -		return this.delegate.isEmpty(); -	} - -	@Override -	public Iterator<E> iterator() { -		return this.delegate.iterator(); -	} - -	@Override -	public int lastIndexOf(final Object elem) { -		return this.delegate.lastIndexOf(elem); -	} - -	@Override -	public ListIterator<E> listIterator() { -		return this.delegate.listIterator(); -	} - -	@Override -	public ListIterator<E> listIterator(final int index) { -		return this.delegate.listIterator(index); -	} - -	@Override -	public E remove(final int index) { -		final E returnValue = this.delegate.get(index); -		this.delegate.remove(index); -		this.fireIntervalRemoved(this, index, index); -		return returnValue; -	} - -	@Override -	public boolean remove(final Object o) { -		final int index = this.delegate.indexOf(o); -		final boolean returnValue = this.delegate.remove(o); -		this.fireIntervalRemoved(this, index, index); -		return returnValue; -	} - -	@Override -	public boolean removeAll(final Collection<?> c) { -		boolean changed = false; -		for (final Object e : c) { -			if (this.remove(e)) { -				changed = true; -			} -		} -		return changed; -	} - -	@Override -	public boolean retainAll(final Collection<?> c) { -		final int oldSize = this.size(); -		final boolean returnValue = this.delegate.retainAll(c); -		this.fireIntervalRemoved(this, this.size(), oldSize - 1); -		return returnValue; -	} - -	@Override -	public E set(final int index, final E element) { -		final E returnValue = this.delegate.get(index); -		this.delegate.set(index, element); -		this.fireContentsChanged(this, index, index); -		return returnValue; -	} - -	@Override -	public int size() { -		return this.delegate.size(); -	} - -	@Override -	public List<E> subList(final int fromIndex, final int toIndex) { -		return this.delegate.subList(fromIndex, toIndex); -	} - -	@Override -	public Object[] toArray() { -		return this.delegate.toArray(); -	} - -	@Override -	public <T> T[] toArray(final T[] a) { -		return this.delegate.toArray(a); -	} - -	@Override -	public String toString() { -		return this.delegate.toString(); -	} -} | 
