public void RemoveLayer(DmiEXLayer l) { if (_layers.Count == 1) { throw new WarningException("You can't remove the only Layer of the image"); } l.IndexChanged -= SortLayers; l.Changed -= OnImageChanged; _layers.Remove(l); LayerListChanged?.Invoke(this, EventArgs.Empty); }
public DmiEXLayer AddLayer(DmiEXLayer l) { if (_layers.Contains(l)) { throw new ArgumentException("Layer already part of image"); } ClearIndex(l.Index); _layers.Add(l); SortLayers(); l.IndexChanged += SortLayers; l.Changed += OnImageChanged; //any change on the layer means a change on the image LayerListChanged?.Invoke(this, EventArgs.Empty); return(l); }