void AddImageLayerToCanvas(CardImageLayer layer, Canvas canvas) { Image image; if (layer.LayerName == "Placeholder") { if (layer.PlaceholderWidth == 0) { layer.SetPlaceholderDetails(); } image = layer.PlaceImageIntoPlaceholder(); } else { image = layer.CreateImage(); } canvas.Children.Add(image); Panel.SetZIndex(image, layer.Index); }
public void Replace(CardImageLayer selectedLayer, CardImageLayer newImageLayer, Canvas canvas) { if (selectedLayer == newImageLayer) { return; } selectedLayer.Details.IsSelected = false; newImageLayer.Details.IsSelected = true; int indexOfExisting = GetIndexOfExisting(selectedLayer); if (indexOfExisting < 0) { return; } bool imageFound = false; for (int i = canvas.Children.Count - 1; i >= 0; i--) { if (selectedLayer.ImageMatches(canvas.Children[i])) { canvas.Children.RemoveAt(i); canvas.Children.Insert(i, newImageLayer.CreateImage()); imageFound = true; break; } } if (!imageFound) { System.Diagnostics.Debugger.Break(); } CardLayers.RemoveAt(indexOfExisting); CardLayers.Insert(indexOfExisting, newImageLayer); }