public class PaintersBag
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.util.LinkedHashMap<java.lang.String,java.lang.Boolean> |
activePainters |
protected java.util.LinkedHashMap<java.lang.String,java.lang.Integer> |
cacheMillis |
protected java.util.LinkedHashMap<java.lang.String,java.awt.image.BufferedImage> |
painterCaches |
protected java.util.LinkedHashMap<java.lang.String,java.lang.Integer> |
painterPriorities |
protected java.util.LinkedHashMap<java.lang.String,Renderer2DPainter> |
paintersByName |
protected StateRenderer2D |
renderer |
protected java.util.Vector<java.lang.String> |
sortByName |
protected java.util.Vector<java.lang.String> |
sortByPriority |
Constructor and Description |
---|
PaintersBag(StateRenderer2D renderer) |
Modifier and Type | Method and Description |
---|---|
void |
addPainter(java.lang.String name,
Renderer2DPainter painter,
int priority,
int cacheMillis)
Add a new painter
|
java.util.Vector<Renderer2DPainter> |
getPaintersSortedByName()
Retrieve the list of painters sorted by its name (alphabetical order)
|
java.util.Vector<Renderer2DPainter> |
getPaintersSortedByPriority()
Return a list of painters sorted by priority (lowest priority first)
|
java.util.Vector<Renderer2DPainter> |
getPostRenderPainters()
Retrieve post render painters
|
java.util.Vector<Renderer2DPainter> |
getPreRenderPainters()
Retrieve all pre-render painters
|
javax.swing.JPanel |
getSelectionPanel() |
void |
remove(Renderer2DPainter painter)
Remove a painter from this bag
|
void |
removePainter(java.lang.String name)
Remove a painter from this list of painters
|
void |
removePaintersOfType(java.lang.Class<?> c)
Remove all painters which extend the given class
|
void |
setPainterActive(java.lang.String name,
boolean active)
Set whether a painter should or not be active (painted)
|
void |
showSelectionDialog(java.awt.Window owner)
Show a window dialog where the user can select which painters are active
|
protected void |
sortThem()
Sort all the painters (according to priority and name)
|
protected java.util.LinkedHashMap<java.lang.String,Renderer2DPainter> paintersByName
protected java.util.LinkedHashMap<java.lang.String,java.lang.Boolean> activePainters
protected java.util.LinkedHashMap<java.lang.String,java.awt.image.BufferedImage> painterCaches
protected java.util.LinkedHashMap<java.lang.String,java.lang.Integer> painterPriorities
protected java.util.LinkedHashMap<java.lang.String,java.lang.Integer> cacheMillis
protected java.util.Vector<java.lang.String> sortByPriority
protected java.util.Vector<java.lang.String> sortByName
protected StateRenderer2D renderer
public PaintersBag(StateRenderer2D renderer)
public void addPainter(java.lang.String name, Renderer2DPainter painter, int priority, int cacheMillis)
name
- The name of the painter to be addedpainter
- The painter to be addedpriority
- The priority of the new painter - negative values mean pre render painterscacheMillis
- The minimum time between painting this layerpublic void removePainter(java.lang.String name)
name
- The name of the painter to be removedprotected void sortThem()
public void removePaintersOfType(java.lang.Class<?> c)
c
- The class / superclass of the painters to be removedpublic java.util.Vector<Renderer2DPainter> getPaintersSortedByPriority()
public java.util.Vector<Renderer2DPainter> getPaintersSortedByName()
public void setPainterActive(java.lang.String name, boolean active)
name
- The name of the painteractive
- true if the painter should be drawn or false otherwisepublic java.util.Vector<Renderer2DPainter> getPreRenderPainters()
public void remove(Renderer2DPainter painter)
painter
- The painter to be removed (if it is present) from this bagpublic java.util.Vector<Renderer2DPainter> getPostRenderPainters()
public void showSelectionDialog(java.awt.Window owner)
owner
- The window which will be parenting the created dialogpublic javax.swing.JPanel getSelectionPanel()
Copyright © 2004-2020 FEUP-LSTS and Neptus developers. All Rights Reserved.