import org.simantics.g2d.element.handler.EdgeVisuals.EdgeEnd;
import org.simantics.g2d.element.handler.ElementHandler;
import org.simantics.g2d.element.handler.ElementLayerListener;
+import org.simantics.g2d.element.handler.ElementLayers;
import org.simantics.g2d.element.handler.TerminalTopology;
import org.simantics.g2d.element.impl.Element;
import org.simantics.g2d.layers.ILayer;
// If the element class is our own, there's no point in creating
// a copy of it.
- if (ec.contains(elementLayerListener))
- return ec;
+ /*if (ec.contains(elementLayerListener))
+ return ec;*/
List<ElementHandler> all = ec.getAll();
- List<ElementHandler> result = new ArrayList<ElementHandler>(all.size());
+ List<ElementHandler> result = new ArrayList<ElementHandler>(all);
for (ElementHandler eh : all) {
- if (eh instanceof ElementLayerListenerImpl)
+ if (eh instanceof ElementLayers)
result.add(elementLayerListener);
- else
- result.add(eh);
}
return ElementClass.compile(result, false).setId(ec.getId());
}
* A common handler for all elements that is used to listen to changes in
* element visibility and focusability on diagram layers.
*/
- class ElementLayerListenerImpl implements ElementLayerListener {
+ public class ElementLayerListenerImpl implements ElementLayerListener {
private static final long serialVersionUID = -3410052116598828129L;
@Override