20 package net.sf.gridarta.model.archetypechooser;
22 import java.io.Serializable;
23 import java.util.Collection;
24 import java.util.Collections;
25 import java.util.HashSet;
31 import org.jetbrains.annotations.NotNull;
32 import org.jetbrains.annotations.Nullable;
85 listeners.
add(listener);
93 listeners.
remove(listener);
111 return Collections.unmodifiableSet(archetypes);
119 archetypes.add(archetype);
137 if (selectedArchetype != null && !archetypes.contains(selectedArchetype)) {
138 throw new IllegalArgumentException(
"selected archetype " + selectedArchetype.getAnimName() +
" is not part of the folder");
141 if (this.selectedArchetype == selectedArchetype) {
147 listener.selectedArchetypeChanged(selectedArchetype);
157 return archetypes.contains(archetype);
R getSelectedArchetype()
Returns the selected Archetype.
String getName()
Returns the folder name.
final Set< R > archetypes
The Archetypes in this folder.
T [] getListeners()
Returns an array of all the listeners.
final String name
The folder name.
A named folder within the ArchetypeChooserModel.
Collection< R > getArchetypes()
Returns the Archetypes.
ArchetypeChooserFolder(@NotNull final String name)
Creates a new instance.
Base package of all Gridarta classes.
Reflects a game object (object on a map).
void remove(@NotNull final T listener)
Removes a listener.
void setSelectedArchetype(@Nullable final R selectedArchetype)
Sets the selected Archetype.
GameObjects are the objects based on Archetypes found on maps.
void add(@NotNull final T listener)
Adds a listener.
void removeArchetypeChooserFolderListener(@NotNull final ArchetypeChooserFolderListener< G, A, R > listener)
Removes a listener to be notified of changes.
static final long serialVersionUID
The serial version UID.
final EventListenerList2< ArchetypeChooserFolderListener< G, A, R > > listeners
The registered listeners.
Type-safe version of EventListenerList.
Interface for listeners interested in ArchetypeChooserFolder related events.
boolean containsArchetype(@NotNull final R archetype)
Returns whether an Archetype is part of this folder.
void addArchetype(@NotNull final R archetype)
Adds an Archetype to this folder.
void addArchetypeChooserFolderListener(@NotNull final ArchetypeChooserFolderListener< G, A, R > listener)
Adds a listener to be notified of changes.
R selectedArchetype
The selected Archetype or.
Interface for MapArchObjects.