@Override public void layerRemoved(MapLayerListEvent event) { table.onRemoveLayer(event.getElement()); }
@Override public void layerChanged(MapLayerListEvent event) { table.repaint(event.getElement()); }
@Override public void layerAdded(MapLayerListEvent event) { if (event.getElement() == null) { List<Layer> layers = table.mapPane.getMapContent().layers(); for (Layer l : layers.subList(event.getFromIndex(), event.getToIndex() + 1)) { table.onAddLayer(l); } } else { table.onAddLayer(event.getElement()); } }
/** Called when a map layer has been removed */ @Override public void layerRemoved(MapLayerListEvent event) { paramsLock.writeLock().lock(); try { Layer layer = event.getElement(); if (layer instanceof ComponentListener) { removeComponentListener((ComponentListener) layer); } if (mapContent.layers().isEmpty()) { fullExtent = null; } else { setFullExtent(); } } finally { paramsLock.writeLock().unlock(); } drawLayers(false); repaint(); }
/** * Called when a new map layer has been added. Sets the layer as selected (for queries) and, if * the layer table is being used, adds the new layer to the table. */ @Override public void layerAdded(MapLayerListEvent event) { paramsLock.writeLock().lock(); try { Layer layer = event.getElement(); if (layer instanceof ComponentListener) { addComponentListener((ComponentListener) layer); } setFullExtent(); MapViewport viewport = mapContent.getViewport(); if (viewport.getBounds().isEmpty()) { viewport.setBounds(fullExtent); } } finally { paramsLock.writeLock().unlock(); } drawLayers(false); repaint(); }