/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package org.pepsoft.worldpainter.plugins; import org.pepsoft.worldpainter.layers.Layer; import org.pepsoft.worldpainter.layers.LayerEditor; /** * A provider of {@link LayerEditor}s. * * @author Pepijn Schmitz */ public interface LayerEditorProvider extends Plugin { /** * Create a layer editor for the specified layer type. May return * <code>null</code> in case this provider does not support the specified * layer type. * * @param <L> The type of layer for which an editor is requested. * @param layerType The class object of the layer type for which an editor * is requested. * @return A new editor for the specified layer type, or <code>null</code> * if this provider does not support the specified layer type. */ <L extends Layer> LayerEditor<L> createLayerEditor(Class<L> layerType); }