/// <summary> /// Mezzanine layers. /// </summary> /// <param name="mezzanineLayerages"> The mezzanine layers. </param> public static void MezzanineRange(IEnumerable <Layerage> mezzanineLayerages) => LayerManager.MezzanineCore(null, mezzanineLayerages);
/// <summary> /// Remove all selected layerages. /// </summary> public static void RemoveAllSelected() => LayerManager.RemoveAllSelectedCore(LayerManager.RootLayerage);
/// <summary> /// Mezzanine a layerage. /// </summary> /// <param name="mezzanineLayerage"> The mezzanine layerage. </param> public static void Mezzanine(Layerage mezzanineLayerage) => LayerManager.MezzanineCore(mezzanineLayerage, null);
/// <summary> /// Remove a layerage. /// </summary> /// <param name="removeLayerage"> The remove Layerage. </param> public static void Remove(Layerage removeLayerage) { Layerage parents = LayerManager.GetParentsChildren(removeLayerage); parents.Children.Remove(removeLayerage); }
/// <summary> /// Find first layerage by <see cref="ILayer.Id"/>. /// </summary> /// <param name="layer"> The layer. </param> /// <returns> The found layerage. </returns> public static Layerage FindFirstLayerage(ILayer layer) => LayerManager.FindFirstLayerageCore(LayerManager.RootLayerage, layer);
/// <summary> /// Drag complete. /// </summary> /// <param name="destination"> The destination layerage. </param> /// <param name="source"> The source layerage. </param> /// <param name="destinationOverlayMode"> The destination OverlayMode. </param> /// <param name="sourceIsSelected"> The source SelectMode. </param> public static void DragComplete(Layerage destination, Layerage source, OverlayMode destinationOverlayMode, bool sourceIsSelected) { if (source is null) { return; } if (destination is null) { return; } ILayer destinationLayer = destination.Self; ILayer sourceLayer = source.Self; destinationLayer.Control.OverlayMode = OverlayMode.None; if (destinationLayer.IsSelected) { return; } if (destinationOverlayMode == OverlayMode.None) { return; } if (source == destination) { return; } if (sourceIsSelected == false) { switch (destinationOverlayMode) { case OverlayMode.Top: LayerManager.Insert(destination, source, isBottomInsert: false); break; case OverlayMode.Center: LayerManager.Add(destination, source); break; case OverlayMode.Bottom: LayerManager.Insert(destination, source, isBottomInsert: true); break; } } else { // Layerages IEnumerable <Layerage> selectedLayerages = LayerManager.GetAllSelected(); switch (destinationOverlayMode) { case OverlayMode.Top: LayerManager.InsertRange(destination, selectedLayerages, isBottomInsert: false); break; case OverlayMode.Center: LayerManager.AddRange(destination, selectedLayerages); break; case OverlayMode.Bottom: LayerManager.InsertRange(destination, selectedLayerages, isBottomInsert: true); break; } } }
/// <summary> /// Insert some layers to the top of destination layerage. /// </summary> /// <param name="destination"> The destination layerage. </param> /// <param name="sources"> The source layers. </param> /// <param name="isBottomInsert"> Insert to the top or bottom. </param> public static void InsertRange(Layerage destination, IEnumerable <Layerage> sources, bool isBottomInsert) => LayerManager.InsertCore(destination, null, sources, isBottomInsert);
/// <summary> /// Insert a layerage to the top of destination layerage. /// </summary> /// <param name="destination"> The destination layerage. </param> /// <param name="source"> The source layerage. </param> /// <param name="isBottomInsert"> Insert to the top or bottom. </param> public static void Insert(Layerage destination, Layerage source, bool isBottomInsert) => LayerManager.InsertCore(destination, source, null, isBottomInsert);