Gridarta Editor
net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R > Class Template Reference

Model class representing a folder of MapFiles. More...

+ Inheritance diagram for net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >:
+ Collaboration diagram for net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >:

Public Member Functions

void addFolderListener (@NotNull final MapFolderListener< G, A, R > listenerMap)
 Adds a MapFolderListener to be notified of events. More...
 
PickmapState< G, A, R > addPickmap (@NotNull final String name, @NotNull final MapReaderFactory< G, A > mapReaderFactory, @NotNull final MapManager< G, A, R > pickmapManager) throws InvalidNameException
 Adds a new PickmapState to this folder. More...
 
void firePickmapReverted (@NotNull final PickmapState< G, A, R > pickmapState, @NotNull final MapControl< G, A, R > oldPickmap)
 Notifies all listeners about a reverted pickmap. More...
 
File getDir ()
 Returns the base directory. More...
 
String getName ()
 Returns the name. More...
 
MapFolder< G, A, R > getParent ()
 Returns the parent folder. More...
 
int getPickmaps ()
 Returns the number of pickmaps in this folder. More...
 
void getUnsavedPickmaps (@NotNull final Collection< MapControl< G, A, R >> unsavedPickmaps)
 Returns all unsaved MapFiles in this folder. More...
 
Iterator< PickmapState< G, A, R > > iterator ()
 Returns an Iterator returning all pickmaps of this folder in arbitrary order. More...
 
 MapFolder (@Nullable final MapFolder< G, A, R > parent, @NotNull final String name, @NotNull final File baseDir, @NotNull final MapViewsManager< G, A, R > mapViewsManager) throws InvalidNameException
 Creates a new instance. More...
 
void removeAllPickmaps (final boolean deleteFile)
 Removes all PickmapState from this folder. More...
 
void removeFolderListener (@NotNull final MapFolderListener< G, A, R > listenerMap)
 Removes a MapFolderListener to be notified of events. More...
 
void removePickmap (@NotNull final PickmapState< G, A, R > pickmapState, final boolean deleteFile)
 Removes a PickmapState from this folder. More...
 

Private Attributes

final File baseDir
 The base directory for folder file names. More...
 
final EventListenerList2< MapFolderListener< G, A, R > > listeners = new EventListenerList2<>(MapFolderListener.class)
 The registered event listeners. More...
 
final MapViewsManager< G, A, R > mapViewsManager
 The MapViewsManager. More...
 
final String name
 The folder's name. More...
 
final MapFolder< G, A, R > parent
 The parent folder, or. More...
 
final List< PickmapState< G, A, R > > pickmapStates = new ArrayList<>()
 The pickmaps of this folder. More...
 
final Object sync = new Object()
 The synchronization object for accesses to pickmapStates. More...
 

Static Private Attributes

static final Pattern PATTERN_VALID_MAP_FOLDER_NAME = Pattern.compile("[-a-zA-Z_+ 0-9,]+")
 The Pattern that matches valid map folder names. More...
 

Detailed Description

Model class representing a folder of MapFiles.

A folder has a name and a base directory. The name is a unique identifier in the model; the base directory is the directory where all contained pickmaps are stored.

Author
Andreas Kirschbaum

Definition at line 47 of file MapFolder.java.

Constructor & Destructor Documentation

◆ MapFolder()

net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.MapFolder ( @Nullable final MapFolder< G, A, R >  parent,
@NotNull final String  name,
@NotNull final File  baseDir,
@NotNull final MapViewsManager< G, A, R >  mapViewsManager 
) throws InvalidNameException

Creates a new instance.

Parameters
parentthe parent folder, or
null
if it is a top-level folder
namethe name
baseDirthe base directory for folder file names
mapViewsManagerthe map views
Exceptions
InvalidNameExceptionif is not valid

Definition at line 104 of file MapFolder.java.

Member Function Documentation

◆ addFolderListener()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.addFolderListener ( @NotNull final MapFolderListener< G, A, R >  listenerMap)

Adds a MapFolderListener to be notified of events.

Parameters
listenerMapthe listener to add

Definition at line 229 of file MapFolder.java.

◆ addPickmap()

PickmapState<G, A, R> net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.addPickmap ( @NotNull final String  name,
@NotNull final MapReaderFactory< G, A >  mapReaderFactory,
@NotNull final MapManager< G, A, R >  pickmapManager 
) throws InvalidNameException

Adds a new PickmapState to this folder.

Parameters
namethe map file name
mapReaderFactorythe map reader factory instance
pickmapManagerthe map manager for loading pickmaps
Returns
the newly created pickmap
Exceptions
InvalidNameExceptionif the pickmap name is invalid

Definition at line 155 of file MapFolder.java.

Referenced by net.sf.gridarta.gui.mapfiles.Loader< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.load().

+ Here is the caller graph for this function:

◆ firePickmapReverted()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.firePickmapReverted ( @NotNull final PickmapState< G, A, R >  pickmapState,
@NotNull final MapControl< G, A, R >  oldPickmap 
)

Notifies all listeners about a reverted pickmap.

Parameters
pickmapStatethe pickmap that was reverted
oldPickmapthe map control of the pickmap before reverting

Definition at line 256 of file MapFolder.java.

Referenced by net.sf.gridarta.gui.mapfiles.PickmapState< G, A, R >.revert().

+ Here is the caller graph for this function:

◆ getDir()

◆ getName()

◆ getParent()

MapFolder<G, A, R> net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getParent ( )

Returns the parent folder.

Returns
the parent folder, or
null
if this folder is a top-level folder

Definition at line 121 of file MapFolder.java.

Referenced by net.sf.gridarta.gui.mapfiles.MapFolderTree< G, A, R >.addMapFolder(), and net.sf.gridarta.gui.mapfiles.MapFolderTreeActions< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.doDeletePickmapFolder().

+ Here is the caller graph for this function:

◆ getPickmaps()

◆ getUnsavedPickmaps()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getUnsavedPickmaps ( @NotNull final Collection< MapControl< G, A, R >>  unsavedPickmaps)

Returns all unsaved MapFiles in this folder.

Parameters
unsavedPickmapsthe collection to add the unsaved pickmaps to

Definition at line 245 of file MapFolder.java.

◆ iterator()

Iterator<PickmapState<G, A, R> > net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.iterator ( )

Returns an Iterator returning all pickmaps of this folder in arbitrary order.

Returns
the iterator

Definition at line 213 of file MapFolder.java.

◆ removeAllPickmaps()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.removeAllPickmaps ( final boolean  deleteFile)

Removes all PickmapState from this folder.

Parameters
deleteFileif set, also remove the map file

Definition at line 194 of file MapFolder.java.

◆ removeFolderListener()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.removeFolderListener ( @NotNull final MapFolderListener< G, A, R >  listenerMap)

Removes a MapFolderListener to be notified of events.

Parameters
listenerMapthe listener to remove

Definition at line 237 of file MapFolder.java.

◆ removePickmap()

void net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.removePickmap ( @NotNull final PickmapState< G, A, R >  pickmapState,
final boolean  deleteFile 
)

Removes a PickmapState from this folder.

Parameters
pickmapStatethe pickmap to remove
deleteFileif set, also remove the map files

Definition at line 172 of file MapFolder.java.

Referenced by net.sf.gridarta.gui.mapfiles.PickmapState< G, A, R >.remove(), and net.sf.gridarta.gui.mapfiles.MapFolder< G, A, R >.removeAllPickmaps().

+ Here is the caller graph for this function:

Member Data Documentation

◆ baseDir

final File net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.baseDir
private

The base directory for folder file names.

Definition at line 82 of file MapFolder.java.

Referenced by net.sf.gridarta.gui.mapfiles.MapFolder< G, A, R >.MapFolder().

◆ listeners

final EventListenerList2<MapFolderListener<G, A, R> > net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.listeners = new EventListenerList2<>(MapFolderListener.class)
private

The registered event listeners.

Definition at line 58 of file MapFolder.java.

◆ mapViewsManager

◆ name

◆ parent

final MapFolder<G, A, R> net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.parent
private

◆ PATTERN_VALID_MAP_FOLDER_NAME

final Pattern net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.PATTERN_VALID_MAP_FOLDER_NAME = Pattern.compile("[-a-zA-Z_+ 0-9,]+")
staticprivate

The Pattern that matches valid map folder names.

Definition at line 53 of file MapFolder.java.

◆ pickmapStates

final List<PickmapState<G, A, R> > net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.pickmapStates = new ArrayList<>()
private

The pickmaps of this folder.

Definition at line 93 of file MapFolder.java.

◆ sync

final Object net.sf.gridarta.gui.mapfiles.MapFolder< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.sync = new Object()
private

The documentation for this class was generated from the following file: