]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.g3d.vtk/src/org/simantics/g3d/vtk/common/SelectionHighlighter.java
Use generics type variable for mapping db object.
[simantics/3d.git] / org.simantics.g3d.vtk / src / org / simantics / g3d / vtk / common / SelectionHighlighter.java
index dec7421152fd683ed4da8fccfc1f8b2b1b45d0f0..69ed83e2d2dea1857494b445e2635dc0e4ed127e 100644 (file)
@@ -35,19 +35,19 @@ import vtk.vtkMapper;
 import vtk.vtkProp;
 import vtk.vtkProperty;
 
-public class SelectionHighlighter<E extends IG3DNode> implements ISelectionChangedListener{
+public class SelectionHighlighter<DBObject, E extends INode> implements ISelectionChangedListener{
 
        
        
-       VtkView panel;
-       VTKNodeMap<E> nodeMap;
+       protected VtkView panel;
+       protected VTKNodeMap<DBObject,E> nodeMap;
        
-       List<IG3DNode> selectedNodes = new ArrayList<IG3DNode>();
-       List<vtkActor> selectedActors = new ArrayList<vtkActor>();
+       protected List<IG3DNode> selectedNodes = new ArrayList<IG3DNode>();
+       protected List<vtkActor> selectedActors = new ArrayList<vtkActor>();
        
-       HighlightObjectType type = HighlightObjectType.Node;
+       protected HighlightObjectType type = HighlightObjectType.Node;
        
-       public SelectionHighlighter(VtkView panel, VTKNodeMap<E> nodeMap) {
+       public SelectionHighlighter(VtkView panel, VTKNodeMap<DBObject,E> nodeMap) {
                this.panel = panel;
                this.nodeMap = nodeMap;
        }
@@ -171,7 +171,7 @@ public class SelectionHighlighter<E extends IG3DNode> implements ISelectionChang
        }
        
        
-       protected void setColor(E node, boolean edge, double color[]) {
+       public void setColor(E node, boolean edge, double color[]) {
                for (vtkProp prop : nodeMap.getRenderObjects(node)) {
                        if (prop instanceof vtkActor) {
                                vtkActor act = (vtkActor)prop;