]> gerrit.simantics Code Review - simantics/3d.git/blobdiff - org.simantics.g3d.vtk/src/org/simantics/g3d/vtk/common/AbstractVTKNodeMap.java
Use generics type variable for mapping db object.
[simantics/3d.git] / org.simantics.g3d.vtk / src / org / simantics / g3d / vtk / common / AbstractVTKNodeMap.java
index efb4c07b151d95b4ee336984f861c8dc094de69c..953ef198b2d43cbbd18c7f7285596fffaf88935c 100644 (file)
@@ -48,12 +48,12 @@ import org.simantics.utils.ui.ExceptionUtils;
 
 import vtk.vtkProp;
 
-public abstract class AbstractVTKNodeMap<E extends INode> implements VTKNodeMap<E>, IMappingListener, RenderListener, NodeListener, UndoRedoSupport.ChangeListener{
+public abstract class AbstractVTKNodeMap<DBObject,E extends INode> implements VTKNodeMap<DBObject,E>, IMappingListener, RenderListener, NodeListener, UndoRedoSupport.ChangeListener{
 
        private static final boolean DEBUG = false;
        
        protected Session session;
-       protected IMapping<Object,E> mapping;
+       protected IMapping<DBObject,E> mapping;
        protected VtkView view;
        
        protected MapList<E, vtkProp> nodeToActor = new MapList<E, vtkProp>();
@@ -66,7 +66,7 @@ public abstract class AbstractVTKNodeMap<E extends INode> implements VTKNodeMap<
        protected int redoOpCount = 0;
        protected boolean runUndo = false;
        protected boolean runRedo = false;
-       public AbstractVTKNodeMap(Session session, IMapping<Object,E> mapping, VtkView view, ParentNode<E> rootNode) {
+       public AbstractVTKNodeMap(Session session, IMapping<DBObject,E> mapping, VtkView view, ParentNode<E> rootNode) {
                this.session = session;
                this.mapping = mapping;
                this.view = view;
@@ -321,10 +321,11 @@ public abstract class AbstractVTKNodeMap<E extends INode> implements VTKNodeMap<
        
        protected void reset(ReadGraph graph) throws MappingException {
                if (DEBUG) System.out.println("Reset");
+               
                synchronized (syncMutex) {
                        graphUpdates = true;
                        mapping.getRangeModified().clear();
-                       for (Object o : mapping.getDomain())
+                       for (DBObject o : mapping.getDomain())
                                mapping.domainModified(o);
                        mapping.updateRange(graph);
                        graphModified.clear();
@@ -341,7 +342,7 @@ public abstract class AbstractVTKNodeMap<E extends INode> implements VTKNodeMap<
                } else {
                        synchronized (syncMutex) {
                                graphUpdates = true;
-                               for (Object domainObject : mapping.getDomainModified()) {
+                               for (DBObject domainObject : mapping.getDomainModified()) {
                                        E rangeObject = mapping.get(domainObject);
                                        if (rangeObject != null)
                                                graphModified.add(rangeObject);
@@ -664,7 +665,7 @@ public abstract class AbstractVTKNodeMap<E extends INode> implements VTKNodeMap<
                
        }
        
-       public IMapping<Object,E> getMapping() {
+       public IMapping<DBObject,E> getMapping() {
                return mapping;
        }