/// <summary> /// Añade un control /// </summary> private void AddControl(UIElement control, AbstractPageItemModel pageItem) { // Le asigna la clave al control (control as FrameworkElement).Tag = pageItem.Key; // Cambia la visibilidad y opacidad del control if (pageItem.Visible) { control.Opacity = 1; } else { control.Opacity = 0; } if (pageItem.Opacity != 0) { control.Opacity = pageItem.Opacity; } // Inicializa un grupo de transformaciones control.RenderTransform = new TransformGroup(); // Asigna las propiedades ComicPageView.SetPageTop(control, pageItem.Dimensions.TopDefault); ComicPageView.SetPageLeft(control, pageItem.Dimensions.LeftDefault); ComicPageView.SetPageWidth(control, pageItem.Dimensions.WidthDefault); ComicPageView.SetPageHeight(control, pageItem.Dimensions.HeightDefault); Grid.SetZIndex(control, pageItem.ZIndex); // Añade el control a la vista Children.Add(control); // Añade el adorno si es necesario if (ShowAdorners) { AdornerLayer.GetAdornerLayer(control)?.Add(new FourCornersAdorner(control)); } }
/// <summary> /// Carga los atributos de un elemento /// </summary> internal void AssignAttributesPageItem(MLNode nodeML, AbstractPageItemModel item) { item.Dimensions = AssignDimensions(nodeML); item.Visible = nodeML.Attributes[ComicRepositoryConstants.TagVisible].Value.GetBool(true); item.Opacity = nodeML.Attributes[ComicRepositoryConstants.TagOpacity].Value.GetDouble(1); item.ZIndex = nodeML.Attributes[ComicRepositoryConstants.TagZIndex].Value.GetInt(1); if (!item.Visible) { item.Opacity = 0; } }
/// <summary> /// Convierte un modelo de brocha en una brocha de WPF /// </summary> internal static Brush GetBrush(AbstractPageItemModel pageItem, AbstractBaseBrushModel brush) { if (pageItem.Page == null) { return(null); } else { return(GetBrush(pageItem.Page, brush)); } }