Class ArchetypeChooserModel<G extends GameObject<G,​A,​R>,​A extends MapArchObject<A>,​R extends Archetype<G,​A,​R>>

  • All Implemented Interfaces:
    java.io.Serializable

    public class ArchetypeChooserModel<G extends GameObject<G,​A,​R>,​A extends MapArchObject<A>,​R extends Archetype<G,​A,​R>>
    extends java.lang.Object
    implements java.io.Serializable
    The view of the archetype chooser.
    See Also:
    Serialized Form
    • Constructor Detail

      • ArchetypeChooserModel

        public ArchetypeChooserModel()
    • Method Detail

      • addArchetypeChooserModelListener

        public void addArchetypeChooserModelListener​(@NotNull
                                                     @NotNull ArchetypeChooserModelListener<G,​A,​R> listener)
        Adds a listener to be notified of changes.
        Parameters:
        listener - the listener
      • removeArchetypeChooserModelListener

        public void removeArchetypeChooserModelListener​(@NotNull
                                                        @NotNull ArchetypeChooserModelListener<G,​A,​R> listener)
        Removes a listener to be notified of changes.
        Parameters:
        listener - the listener
      • addArchetype

        public void addArchetype​(@NotNull
                                 @NotNull java.lang.String panel,
                                 @NotNull
                                 @NotNull java.lang.String folder,
                                 @NotNull
                                 R archetype)
        Adds an Archetype to this model.
        Parameters:
        panel - the panel name to add to
        folder - the folder name to add to
        archetype - the archetype to add
      • getPanel

        @NotNull
        public @NotNull ArchetypeChooserPanel<G,​A,​R> getPanel​(@NotNull
                                                                          @NotNull java.lang.String panelName)
        Returns an ArchetypeChooserPanel by panel name. The panel is created if it does not yet exist.
        Parameters:
        panelName - the panel name
        Returns:
        the folder
      • getDirection

        @Nullable
        public @Nullable java.lang.Integer getDirection()
        Returns the default direction for game objects created from archetypes.
        Returns:
        the direction or null for default
      • setDirection

        public void setDirection​(@Nullable
                                 @Nullable java.lang.Integer direction)
        Sets the default direction for game objects created from archetypes.
        Parameters:
        direction - the direction or null for default
      • getDisplayMode

        @NotNull
        public @NotNull DisplayMode<G,​A,​R> getDisplayMode()
        Returns the current display mode.
        Returns:
        the current display mode
      • setDisplayMode

        public void setDisplayMode​(@NotNull
                                   @NotNull DisplayMode<G,​A,​R> displayMode)
        Updates the display mode.
        Parameters:
        displayMode - the new display mode