Gridarta Editor
net.sf.gridarta.model.face.FaceObjectProviders Class Reference

Provider for faces of GameObjects and Archetypes. More...

+ Collaboration diagram for net.sf.gridarta.model.face.FaceObjectProviders:

Public Member Functions

void addFaceObjectProvidersListener (@NotNull final FaceObjectProvidersListener listener)
 Adds a FaceObjectProvidersListener to be notified about changes. More...
 
 FaceObjectProviders (final int doubleFaceOffset, @NotNull final FaceObjects faceObjects, @NotNull final ResourceIcons resourceIcons)
 Creates a new instance. More...
 
ImageIcon getDisplayIcon (@NotNull final NamedObject namedObject)
 Returns the display icon for a NamedObject. More...
 
ImageIcon getDouble (@NotNull final GameObject<?, ?, ?> gameObject)
 Returns the double face for a GameObject as an {}. More...
 
ImageIcon getImageIconForFacename (@NotNull final String faceObjName)
 Returns the ImageIcon for a given face object name. More...
 
ImageIcon getStretched (@NotNull final GameObject<?, ?, ?> gameObject, final long stretch)
 Returns the stretched face for a GameObject as an {}. More...
 
ImageIcon getTrans (@NotNull final GameObject<?, ?, ?> gameObject)
 Returns the transparent face for a GameObject as an {}. More...
 
ImageIcon getTransDouble (@NotNull final GameObject<?, ?, ?> gameObject)
 Returns the transparent double face for a GameObject as an {}. More...
 
void reloadAll ()
 Reloads all providers provided by this FaceObjects. More...
 
void removeFaceObjectProvidersListener (@NotNull final FaceObjectProvidersListener listener)
 Removes a FaceObjectProvidersListener to be notified about changes. More...
 
void setNormal (@NotNull final FaceProvider normalFaceProvider)
 Sets the normal FaceProvider. More...
 

Package Functions

public< G extends GameObject< G, A, R >, A extends MapArchObject< A >, R extends Archetype< G, A, R > > ImageIcon getFace (@NotNull final BaseObject< G, A, R, ?> baseObject)
 Returns the face of a BaseObject as an ImageIcon. More...
 

Private Member Functions

ImageIcon getFace (@Nullable final String faceName, final boolean hasUndefinedArchetype, @NotNull final FaceProvider singleFaceProvider, @NotNull final FaceProvider doubleFaceProvider, final long stretch)
 Returns the ImageIcon of a face with a certain face name. More...
 

Private Attributes

final FilterFaceProvider doubleAlphaFaceProvider
 The face provider for transparent double faces. More...
 
final FilterFaceProvider doubleFaceProvider
 The face provider for double faces. More...
 
final Collection< FaceObjectProvidersListenerfaceObjectProvidersListeners = new CopyOnWriteArrayList<>()
 The FaceObjectProvidersListeners to notify about changes. More...
 
final FaceObjects faceObjects
 The FaceObjects instance for looking up face names. More...
 
FaceProvider normalFaceProvider
 The face provider for normal faces. More...
 
final ResourceIcons resourceIcons
 The ResourceIcons for creating icons. More...
 
final FilterFaceProvider stretchedFaceProvider
 The face provider for stretched floor faces. More...
 

Static Private Attributes

static final FilterFaceProvider ALPHA = new FilterFaceProvider(AlphaImageFilterInstance.ALPHA_FILTER)
 The face provider for alpha faces. More...
 
static final FilterFaceProvider BLUE = new FilterFaceProvider(BLUE_FILTER)
 The face provider for blue faces. More...
 
static final ImageFilter BLUE_FILTER = new ColourFilter(ColourFilter.BLUE_MASK)
 The filter to make images blue. More...
 
static final FilterFaceProvider GRAY = new FilterFaceProvider(GRAY_FILTER)
 The face provider for GRAY faces. More...
 
static final ImageFilter GRAY_FILTER = new GrayFilter(false, GRAY_PERCENTAGE)
 The filter to make gray-scaled images. More...
 
static final int GRAY_PERCENTAGE = 50
 The gray level for gray-scaled images; 100=darkest gray, 0=lightest gray. More...
 
static final FilterFaceProvider GREEN = new FilterFaceProvider(GREEN_FILTER)
 The face provider for green faces. More...
 
static final ImageFilter GREEN_FILTER = new ColourFilter(ColourFilter.GREEN_MASK)
 The filter to make images green. More...
 
static final FilterFaceProvider GRID = new FilterFaceProvider(GRID_FILTER)
 The face provider for grid faces. More...
 
static final ImageFilter GRID_FILTER
 The filter using a full alpha grid instead of alpha blending. More...
 
static final FilterFaceProvider RED = new FilterFaceProvider(RED_FILTER)
 The face provider for red faces. More...
 
static final ImageFilter RED_FILTER = new ColourFilter(ColourFilter.RED_MASK)
 The filter to make images red. More...
 

Detailed Description

Provider for faces of GameObjects and Archetypes.

The face can be the "normal" (default) face or a filtered variant such as (semi-)transparent and/or double height.

Author
Christian Hujer
Andreas Kirschbaum

Definition at line 46 of file FaceObjectProviders.java.

Constructor & Destructor Documentation

◆ FaceObjectProviders()

net.sf.gridarta.model.face.FaceObjectProviders.FaceObjectProviders ( final int  doubleFaceOffset,
@NotNull final FaceObjects  faceObjects,
@NotNull final ResourceIcons  resourceIcons 
)

Creates a new instance.

Parameters
doubleFaceOffsetthe offset for shifting double faces
faceObjectsthe face objects instance
resourceIconsthe resource icons for creating icons

Definition at line 185 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.doubleAlphaFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.doubleFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.faceObjects, net.sf.gridarta.model.face.FaceObjectProviders.resourceIcons, and net.sf.gridarta.model.face.FaceObjectProviders.stretchedFaceProvider.

Member Function Documentation

◆ addFaceObjectProvidersListener()

◆ getDisplayIcon()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getDisplayIcon ( @NotNull final NamedObject  namedObject)

Returns the display icon for a NamedObject.

Parameters
namedObjectthe named object
Returns
display icon of this AbstractNamedObject

Definition at line 377 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.getImageIconForFacename().

Referenced by net.sf.gridarta.gui.data.NamedNodeTreeCellRenderer.getTreeCellRendererComponent(), net.sf.gridarta.var.crossfire.gui.map.renderer.SmoothingRenderer.paintSmooth(), and net.sf.gridarta.gui.utils.AnimTreeChooseAction.updateIconLabel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getDouble()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getDouble ( @NotNull final GameObject<?, ?, ?>  gameObject)

Returns the double face for a GameObject as an {}.

Parameters
gameObjectthe game object
Returns
the image icon

Definition at line 291 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.doubleFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.getFace(), and net.sf.gridarta.model.face.FaceObjectProviders.normalFaceProvider.

Referenced by net.sf.gridarta.model.gameobject.DefaultIsoGameObject< TestGameObject, TestMapArchObject, TestArchetype >.getDoubleImage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getFace() [1/2]

public<G extends GameObject<G, A, R>, A extends MapArchObject<A>, R extends Archetype<G, A, R> > ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getFace ( @NotNull final BaseObject< G, A, R, ?>  baseObject)
package

Returns the face of a BaseObject as an ImageIcon.

Parameters
baseObjectthe base object to get the face for
Returns
the face of the base object as an icon or
null
if no face could be found

Definition at line 251 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.normalFaceProvider.

Referenced by net.sf.gridarta.gui.dialog.replace.ReplaceDialog< G, A, R >.display(), net.sf.gridarta.model.face.FaceObjectProviders.getDouble(), net.sf.gridarta.gui.dialog.gameobjectattributes.GameObjectAttributesDialog< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getFace(), net.sf.gridarta.gui.dialog.plugin.parameter.archetype.ArchComboBoxCellRenderer.getListCellRendererComponent(), net.sf.gridarta.gui.panel.archetypechooser.ArchetypeNameCellRenderer< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getListCellRendererComponent(), net.sf.gridarta.gui.panel.archetypechooser.ArchetypeIconCellRenderer< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getListCellRendererComponent(), net.sf.gridarta.gui.panel.archetypechooser.DisplayNameCellRenderer< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getListCellRendererComponent(), net.sf.gridarta.gui.dialog.goexit.MapListCellRenderer.getListCellRendererComponent(), net.sf.gridarta.gui.panel.selectedsquare.CellRenderer< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.getListCellRendererComponent(), net.sf.gridarta.model.baseobject.AbstractBaseObject< G, A, R, G >.getNormalImage(), net.sf.gridarta.model.face.FaceObjectProviders.getStretched(), net.sf.gridarta.model.face.FaceObjectProviders.getTrans(), net.sf.gridarta.model.face.FaceObjectProviders.getTransDouble(), net.sf.gridarta.gui.dialog.plugin.parameter.archetype.ArchComboBoxEditor< G extends GameObject< G, A, R, A extends MapArchObject< A, R extends Archetype< G, A, R >.setItem(), and net.sf.gridarta.gui.dialog.replace.ReplaceDialog< G, A, R >.updateArchSelection().

+ Here is the caller graph for this function:

◆ getFace() [2/2]

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getFace ( @Nullable final String  faceName,
final boolean  hasUndefinedArchetype,
@NotNull final FaceProvider  singleFaceProvider,
@NotNull final FaceProvider  doubleFaceProvider,
final long  stretch 
)
private

◆ getImageIconForFacename()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getImageIconForFacename ( @NotNull final String  faceObjName)

Returns the ImageIcon for a given face object name.

Parameters
faceObjNamethe face object name
Returns
the image icon or
null
if not found

Definition at line 367 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceProvider.getImageIconForFacename(), and net.sf.gridarta.model.face.FaceObjectProviders.normalFaceProvider.

Referenced by net.sf.gridarta.model.face.FaceObjectProviders.getDisplayIcon(), net.sf.gridarta.model.baseobject.AbstractBaseObject< G, A, R, G >.setObjectFace(), and net.sf.gridarta.gui.utils.FaceTreeChooseAction.updateIconLabel().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getStretched()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getStretched ( @NotNull final GameObject<?, ?, ?>  gameObject,
final long  stretch 
)

Returns the stretched face for a GameObject as an {}.

Parameters
gameObjectthe game object
Returns
the image icon

Definition at line 316 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.ALPHA, net.sf.gridarta.model.face.FaceObjectProviders.getFace(), and net.sf.gridarta.model.face.FaceObjectProviders.stretchedFaceProvider.

Referenced by net.sf.gridarta.model.gameobject.DefaultIsoGameObject< TestGameObject, TestMapArchObject, TestArchetype >.getStretchedImage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTrans()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getTrans ( @NotNull final GameObject<?, ?, ?>  gameObject)

Returns the transparent face for a GameObject as an {}.

Parameters
gameObjectthe game object
Returns
the image icon

Definition at line 280 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.ALPHA, and net.sf.gridarta.model.face.FaceObjectProviders.getFace().

Referenced by net.sf.gridarta.model.gameobject.DefaultIsoGameObject< TestGameObject, TestMapArchObject, TestArchetype >.getTransparentImage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ getTransDouble()

ImageIcon net.sf.gridarta.model.face.FaceObjectProviders.getTransDouble ( @NotNull final GameObject<?, ?, ?>  gameObject)

Returns the transparent double face for a GameObject as an {}.

Parameters
gameObjectthe game object
Returns
the image icon

Definition at line 305 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.ALPHA, net.sf.gridarta.model.face.FaceObjectProviders.doubleAlphaFaceProvider, and net.sf.gridarta.model.face.FaceObjectProviders.getFace().

Referenced by net.sf.gridarta.model.gameobject.DefaultIsoGameObject< TestGameObject, TestMapArchObject, TestArchetype >.getTransparentDoubleImage().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ reloadAll()

◆ removeFaceObjectProvidersListener()

void net.sf.gridarta.model.face.FaceObjectProviders.removeFaceObjectProvidersListener ( @NotNull final FaceObjectProvidersListener  listener)

Removes a FaceObjectProvidersListener to be notified about changes.

Parameters
listenerthe listener

Definition at line 206 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.faceObjectProvidersListeners.

◆ setNormal()

void net.sf.gridarta.model.face.FaceObjectProviders.setNormal ( @NotNull final FaceProvider  normalFaceProvider)

Sets the normal FaceProvider.

The normal face provider also serves as parent for all other face providers.

Parameters
normalFaceProviderface the provider that provides normal images

Definition at line 231 of file FaceObjectProviders.java.

References net.sf.gridarta.model.face.FaceObjectProviders.ALPHA, net.sf.gridarta.model.face.FaceObjectProviders.BLUE, net.sf.gridarta.model.face.FaceObjectProviders.doubleAlphaFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.doubleFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.GRAY, net.sf.gridarta.model.face.FaceObjectProviders.GREEN, net.sf.gridarta.model.face.FaceObjectProviders.GRID, net.sf.gridarta.model.face.FaceObjectProviders.normalFaceProvider, net.sf.gridarta.model.face.FaceObjectProviders.RED, net.sf.gridarta.model.face.FilterFaceProvider.setParent(), and net.sf.gridarta.model.face.FaceObjectProviders.stretchedFaceProvider.

Referenced by net.sf.gridarta.var.daimonin.resource.DefaultResources.readCollectedInt(), net.sf.gridarta.var.atrinik.resource.DefaultResources.readCollectedInt(), net.sf.gridarta.var.crossfire.resource.DefaultResources.readCollectedInt(), net.sf.gridarta.var.daimonin.resource.DefaultResources.readFilesInt(), net.sf.gridarta.var.atrinik.resource.DefaultResources.readFilesInt(), net.sf.gridarta.var.crossfire.resource.DefaultResources.readFilesInt(), net.sf.gridarta.model.mapmodel.TestMapModelCreator.TestMapModelCreator(), and net.sf.gridarta.model.gameobject.GameObjectFactoryTest.testUpdateFaceInformation().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

Member Data Documentation

◆ ALPHA

◆ BLUE

final FilterFaceProvider net.sf.gridarta.model.face.FaceObjectProviders.BLUE = new FilterFaceProvider(BLUE_FILTER)
staticprivate

◆ BLUE_FILTER

final ImageFilter net.sf.gridarta.model.face.FaceObjectProviders.BLUE_FILTER = new ColourFilter(ColourFilter.BLUE_MASK)
staticprivate

The filter to make images blue.

Definition at line 94 of file FaceObjectProviders.java.

◆ doubleAlphaFaceProvider

◆ doubleFaceProvider

◆ faceObjectProvidersListeners

final Collection<FaceObjectProvidersListener> net.sf.gridarta.model.face.FaceObjectProviders.faceObjectProvidersListeners = new CopyOnWriteArrayList<>()
private

◆ faceObjects

final FaceObjects net.sf.gridarta.model.face.FaceObjectProviders.faceObjects
private

◆ GRAY

final FilterFaceProvider net.sf.gridarta.model.face.FaceObjectProviders.GRAY = new FilterFaceProvider(GRAY_FILTER)
staticprivate

◆ GRAY_FILTER

final ImageFilter net.sf.gridarta.model.face.FaceObjectProviders.GRAY_FILTER = new GrayFilter(false, GRAY_PERCENTAGE)
staticprivate

The filter to make gray-scaled images.

Definition at line 58 of file FaceObjectProviders.java.

◆ GRAY_PERCENTAGE

final int net.sf.gridarta.model.face.FaceObjectProviders.GRAY_PERCENTAGE = 50
staticprivate

The gray level for gray-scaled images; 100=darkest gray, 0=lightest gray.

Definition at line 52 of file FaceObjectProviders.java.

◆ GREEN

final FilterFaceProvider net.sf.gridarta.model.face.FaceObjectProviders.GREEN = new FilterFaceProvider(GREEN_FILTER)
staticprivate

◆ GREEN_FILTER

final ImageFilter net.sf.gridarta.model.face.FaceObjectProviders.GREEN_FILTER = new ColourFilter(ColourFilter.GREEN_MASK)
staticprivate

The filter to make images green.

Definition at line 82 of file FaceObjectProviders.java.

◆ GRID

final FilterFaceProvider net.sf.gridarta.model.face.FaceObjectProviders.GRID = new FilterFaceProvider(GRID_FILTER)
staticprivate

◆ GRID_FILTER

final ImageFilter net.sf.gridarta.model.face.FaceObjectProviders.GRID_FILTER
staticprivate
Initial value:
= new RGBImageFilter() {
@Override
public int filterRGB(final int x, final int y, final int rgb) {
return (x + y) % 2 == 0 ? rgb & ColourFilter.RED_GREEN_BLUE_MASK : rgb;
}
@NotNull
@Override
public RGBImageFilter clone() {
return (RGBImageFilter) super.clone();
}
}

The filter using a full alpha grid instead of alpha blending.

Definition at line 106 of file FaceObjectProviders.java.

◆ normalFaceProvider

◆ RED

final FilterFaceProvider net.sf.gridarta.model.face.FaceObjectProviders.RED = new FilterFaceProvider(RED_FILTER)
staticprivate

◆ RED_FILTER

final ImageFilter net.sf.gridarta.model.face.FaceObjectProviders.RED_FILTER = new ColourFilter(ColourFilter.RED_MASK)
staticprivate

The filter to make images red.

Definition at line 70 of file FaceObjectProviders.java.

◆ resourceIcons

final ResourceIcons net.sf.gridarta.model.face.FaceObjectProviders.resourceIcons
private

◆ stretchedFaceProvider


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