protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { ITextBlockRenderElement textBlockRenderElement; if (textBlockRenderElements.TryGetValue(factory, out textBlockRenderElement)) { return(textBlockRenderElement); } textBlockRenderElement = factory.CreateTextBlockRenderElement(this); textBlockRenderElement.Bounds = new Rect(VisualBounds.Size); textBlockRenderElement.FontFamily = this.FontFamily; textBlockRenderElement.Foreground = this.Foreground; textBlockRenderElement.FontSize = this.FontSize; textBlockRenderElement.FontStyle = this.FontStyle; textBlockRenderElement.FontStretch = this.FontStretch; textBlockRenderElement.FontWeight = this.FontWeight; textBlockRenderElement.Text = this.Text; textBlockRenderElement.TextAlignment = this.TextAlignment; textBlockRenderElement.TextTrimming = this.TextTrimming; textBlockRenderElement.TextWrapping = this.TextWrapping; textBlockRenderElements.Add(factory, textBlockRenderElement); return(textBlockRenderElement); }
public HtmlDrawingGeometryRenderElement(IRenderElementFactory factory, RenderQueue renderQueue, SvgValueConverter converter) : base(SvgDocument.CreateElement("path"), factory, renderQueue, converter) { this.factory = factory; this.renderQueue = renderQueue; this.converter = converter; }
public IVisualRenderElement GetRenderElement(IRenderElementFactory factory) { if (visualRenderElement == null) { renderElementFactory = factory; visualRenderElement = factory.CreateVisualRenderElement(this); visualRenderElement.Background = VisualBackground; visualRenderElement.Bounds = VisualBounds; visualRenderElement.Clip = VisualClip; visualRenderElement.ClipToBounds = VisualClipToBounds; visualRenderElement.IsHitTestVisible = VisualIsHitTestVisible; visualRenderElement.IsVisible = VisualIsVisible; visualRenderElement.Opacity = VisualOpacity; visualRenderElement.Transform = VisualTransform; object content = CreateRenderElementContentOverride(factory); if (content != null) { renderChildrenOffset = 1; visualRenderElement.InsertChild(0, content); } int index = 0; foreach (Visual child in VisualChildren) { child.GetRenderElement(factory); visualRenderElement.InsertChild(renderChildrenOffset + index, child.GetRenderElement(factory)); index++; } } return(visualRenderElement); }
private WpfVisualRenderElement(wpf::System.Windows.Controls.Canvas container, IRenderElementFactory factory, WpfValueConverter converter) : base(container) { this.container = container; this.factory = factory; this.converter = converter; }
public WpfImageRenderElement(IRenderElementFactory factory, WpfValueConverter converter) { this.factory = factory; this.converter = converter; image = new wpf::System.Windows.Controls.Image(); image.Stretch = wpf::System.Windows.Media.Stretch.Fill; }
public HtmlDrawingShapeRenderElement(HTMLElement htmlElement, IRenderElementFactory factory, RenderQueue renderQueue, SvgValueConverter converter) : base(htmlElement) { this.factory = factory; this.renderQueue = renderQueue; this.converter = converter; }
public WpfTextBlockRenderElement(IRenderElementFactory factory, WpfValueConverter converter) { this.factory = factory; this.converter = converter; textBlock = new wpf::System.Windows.Controls.TextBlock(); textBlock.Foreground = wpf::System.Windows.Media.Brushes.Red; }
public HtmlDrawingImageRenderElement(IRenderElementFactory htmlRenderElementFactory, RenderQueue renderQueue, SvgValueConverter svgValueConverter) : base(SvgDocument.CreateElement("image")) { this.factory = htmlRenderElementFactory; this.renderQueue = renderQueue; this.converter = svgValueConverter; }
public HtmlDrawingContainerRenderElement(IRenderElementFactory factory, RenderQueue renderQueue, SvgValueConverter converter) : base(SvgDocument.CreateElement("g"), renderQueue) { this.factory = factory; this.renderQueue = renderQueue; this.converter = converter; }
private IVisualRenderElement CreateRenderElement(IRenderElementFactory factory) { IVisualRenderElement visualRenderElement = factory.CreateVisualRenderElement(this); visualRenderElement.Background = VisualBackground; visualRenderElement.Bounds = VisualBounds; visualRenderElement.ClipToBounds = VisualClipToBounds; visualRenderElement.IsHitTestVisible = VisualIsHitTestVisible; visualRenderElement.IsVisible = VisualIsVisible; visualRenderElement.Opacity = VisualOpacity; visualRenderElement.Transform = VisualTransform; visualRenderElement.Content = CreateRenderElementContentOverride(factory); int index = 0; foreach (Visual child in VisualChildren) { child.GetRenderElement(factory); visualRenderElement.InsertChild(index, child.GetRenderElement(factory)); index++; } return(visualRenderElement); }
public RenderElementDrawingContext(IContainerRenderElement container, IRenderElementFactory factory) { this.container = container; this.factory = factory; this.availableChildren = container.Children?.ToList(); this.children = new List <object>(); }
public WpfDrawingImageElement(WpfRenderElementFactory factory, WpfValueConverter converter) { this.factory = factory; this.converter = converter; this.element = new wpf::System.Windows.Controls.Image { Stretch = wpf::System.Windows.Media.Stretch.Fill }; }
public HtmlDrawingTextRenderElement(IRenderElementFactory factory, RenderQueue renderQueue, SvgValueConverter svgValueConverter) : base(SvgDocument.CreateElement("text")) { this.factory = factory; this.renderQueue = renderQueue; this.converter = svgValueConverter; HtmlElement.SetAttribute("dy", "1em"); }
public void RemoveRenderElement(IRenderElementFactory factory) { visualRenderElements.Remove(factory); foreach (Visual child in VisualChildren) { child.RemoveRenderElement(factory); } }
public object GetRenderResource(IRenderElementFactory factory) { if (renderResource == null) { renderResource = factory.CreateTransformRenderResource(); renderResource.Matrix = Value; } return(renderResource); }
public WpfTextBoxRenderElement(IRenderElementFactory factory, WpfValueConverter converter) { this.factory = factory; this.converter = converter; bounds = Rect.Zero; fontFamily = FontFamily.Default; fontSize = 11; SetTextContentAdapter(); }
public HtmlImageRenderElement(IRenderElementFactory factory, RenderQueue renderQueue, HtmlValueConverter converter) { this.factory = factory; this.renderQueue = renderQueue; this.converter = converter; bounds = Rect.Zero; HtmlElement.SetHtmlBounds(Bounds, converter); }
public object GetRenderResource(IRenderElementFactory factory) { if (renderResource == null) { renderResource = factory.CreateGeometryRenderResource(); renderResource.Transform = Transform; renderResource.Data = GetRenderResourceData(); } return(renderResource); }
protected override object CreateRenderElementContentOverride(IRenderElementFactory factory) { if (drawingRenderElement == null) { renderElementFactory = factory; drawingRenderElement = factory.CreateDrawingRenderElement(this); RenderAsync(); } return(drawingRenderElement); }
private IImageRenderElement CreateRenderElement(IRenderElementFactory factory) { IImageRenderElement imageRenderElement = factory.CreateImageRenderElement(this); if (Source != null) { imageRenderElement.Bounds = GetStretchRect(Source.Size, VisualBounds.Size, Stretch, StretchDirection); imageRenderElement.Source = this.Source; } return(imageRenderElement); }
public void RemoveRenderElement(IRenderElementFactory factory) { if (this.factory != factory) { return; } this.factory = null; this.element = null; this.Factories = new IRenderElementFactory[0]; this.Elements = new T[0]; this.Count = 0; }
private IBorderRenderElement CreateRenderElement(IRenderElementFactory factory) { IBorderRenderElement borderRenderElement = factory.CreateBorderRenderElement(this); borderRenderElement.Background = Background; borderRenderElement.BorderBrush = BorderBrush; borderRenderElement.BorderThickness = BorderThickness; borderRenderElement.Bounds = new Rect(VisualSize); borderRenderElement.CornerRadius = CornerRadius; borderRenderElement.IsHitTestVisible = IsHitTestVisible; return(borderRenderElement); }
protected override object CreateRenderElementContentOverride(IRenderElementFactory factory) { if (imageRenderElement == null) { imageRenderElement = factory.CreateImageRenderElement(this); if (Source != null) { imageRenderElement.Bounds = GetStretchRect(Source.Size, VisualBounds.Size, Stretch, StretchDirection); imageRenderElement.Source = this.Source; } } return(imageRenderElement); }
public object GetRenderResource(IRenderElementFactory factory) { if (renderResource == null) { object resource = CreateRenderResource(factory); OnRenderResourceCreated(resource); if (renderResource == null) { throw new Granular.Exception("base.OnRenderResourceCreated was not called for \"{0}\"", GetType().Name); } } return(renderResource); }
public HtmlTextBoxRenderElement(IRenderElementFactory factory, RenderQueue renderQueue, HtmlValueConverter converter) { this.factory = factory; this.renderQueue = renderQueue; this.converter = converter; this.bounds = System.Windows.Rect.Empty; this.fontFamily = FontFamily.Default; Bridge.Html5.HTMLElement styleElement = Bridge.Html5.Document.CreateElement("style"); styleElement.TextContent = "::-ms-clear { width: 0px; height: 0px; }"; HtmlElement.AppendChild(styleElement); SetContentElement(); }
protected override object CreateRenderElementContentOverride(IRenderElementFactory factory) { if (borderRenderElement == null) { borderRenderElement = factory.CreateBorderRenderElement(this); borderRenderElement.Background = Background; borderRenderElement.BorderBrush = BorderBrush; borderRenderElement.BorderThickness = BorderThickness; borderRenderElement.Bounds = new Rect(VisualSize); borderRenderElement.CornerRadius = CornerRadius; borderRenderElement.IsHitTestVisible = IsHitTestVisible; } return(borderRenderElement); }
public HtmlGeometryRenderResource(IRenderElementFactory factory, RenderQueue renderQueue, SvgDefinitionContainer svgDefinitionContainer, SvgValueConverter converter) : base(SvgDocument.CreateElement("clipPath")) { this.factory = factory; this.renderQueue = renderQueue; this.svgDefinitionContainer = svgDefinitionContainer; this.converter = converter; this.pathHtmlElement = SvgDocument.CreateElement("path"); string elementName = $"clipPath{svgDefinitionContainer.GetNextId()}"; this.Uri = $"url(#{elementName})"; HtmlElement.SetAttribute("id", elementName); HtmlElement.AppendChild(pathHtmlElement); }
public IVisualRenderElement GetRenderElement(IRenderElementFactory factory) { IVisualRenderElement visualRenderElement; if (visualRenderElements.TryGetValue(factory, out visualRenderElement)) { return(visualRenderElement); } visualRenderElement = factory.CreateVisualRenderElement(this); visualRenderElement.Background = VisualBackground; visualRenderElement.Bounds = VisualBounds; visualRenderElement.ClipToBounds = VisualClipToBounds; visualRenderElement.IsHitTestVisible = VisualIsHitTestVisible; visualRenderElement.IsVisible = VisualIsVisible; visualRenderElement.Opacity = VisualOpacity; visualRenderElement.Transform = VisualTransform; int index = 0; foreach (Visual child in VisualChildren) { child.GetRenderElement(factory); visualRenderElement.InsertChild(index, child.GetRenderElement(factory)); index++; } object contentRenderElement = CreateContentRenderElementOverride(factory); if (contentRenderElement != null) { visualRenderElement.InsertChild(0, contentRenderElement); } if (visualRenderElements.Count == 0) { containsContentRenderElement = contentRenderElement != null; } else if (containsContentRenderElement != (contentRenderElement != null)) { throw new Granular.Exception("ContentRenderElement for type \"{0}\" must be created for all of the factories or none of them", GetType().Name); } visualRenderElements.Add(factory, visualRenderElement); return(visualRenderElement); }
public wpf::System.Windows.Media.Pen Convert(Pen pen, IRenderElementFactory factory) { if (pen == null) { return(null); } return(new wpf::System.Windows.Media.Pen(Convert(pen.Brush, factory), pen.Thickness) { //PenLineCap DashCap //DashStyle DashStyle //PenLineCap StartLineCap //PenLineCap EndLineCap //PenLineJoin LineJoin MiterLimit = pen.MiterLimit, }); }
protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { ITextBoxRenderElement textBoxRenderElement; if (textBoxRenderElements.TryGetValue(factory, out textBoxRenderElement)) { return(textBoxRenderElement); } textBoxRenderElement = factory.CreateTextBoxRenderElement(this); textBoxRenderElement.CaretIndex = this.CaretIndex; textBoxRenderElement.SelectionLength = this.SelectionLength; textBoxRenderElement.SelectionStart = this.SelectionStart; textBoxRenderElement.Text = this.Text; textBoxRenderElement.MaxLength = this.MaxLength; textBoxRenderElement.Bounds = new Rect(this.VisualSize); textBoxRenderElement.AcceptsReturn = this.AcceptsReturn; textBoxRenderElement.AcceptsTab = this.AcceptsTab; textBoxRenderElement.IsPassword = isPassword; textBoxRenderElement.IsReadOnly = this.IsReadOnly || !this.IsEnabled; textBoxRenderElement.IsHitTestVisible = this.IsHitTestVisible && this.IsEnabled; textBoxRenderElement.SpellCheck = this.spellCheck; textBoxRenderElement.HorizontalScrollBarVisibility = this.HorizontalScrollBarVisibility; textBoxRenderElement.VerticalScrollBarVisibility = this.VerticalScrollBarVisibility; textBoxRenderElement.Foreground = (Brush)GetValue(Control.ForegroundProperty); textBoxRenderElement.FontSize = (double)GetValue(Control.FontSizeProperty); textBoxRenderElement.FontFamily = (FontFamily)GetValue(Control.FontFamilyProperty); textBoxRenderElement.FontStretch = (FontStretch)GetValue(Control.FontStretchProperty); textBoxRenderElement.FontStyle = (FontStyle)GetValue(Control.FontStyleProperty); textBoxRenderElement.FontWeight = (FontWeight)GetValue(Control.FontWeightProperty); textBoxRenderElement.TextAlignment = (TextAlignment)GetValue(TextBox.TextAlignmentProperty); textBoxRenderElement.TextWrapping = (TextWrapping)GetValue(TextBox.TextWrappingProperty); textBoxRenderElement.TextChanged += (sender, e) => this.Text = textBoxRenderElement.Text; textBoxRenderElement.CaretIndexChanged += (sender, e) => this.CaretIndex = ((ITextBoxRenderElement)sender).CaretIndex; textBoxRenderElement.SelectionStartChanged += (sender, e) => this.SelectionStart = ((ITextBoxRenderElement)sender).SelectionStart; textBoxRenderElement.SelectionLengthChanged += (sender, e) => this.SelectionLength = ((ITextBoxRenderElement)sender).SelectionLength; textBoxRenderElements.Add(factory, textBoxRenderElement); InvalidateMeasure(); return(textBoxRenderElement); }
protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { ITextBlockRenderElement textBlockRenderElement; if (textBlockRenderElements.TryGetValue(factory, out textBlockRenderElement)) { return textBlockRenderElement; } textBlockRenderElement = factory.CreateTextBlockRenderElement(this); textBlockRenderElement.Bounds = new Rect(VisualBounds.Size); textBlockRenderElement.FontFamily = this.FontFamily; textBlockRenderElement.Foreground = this.Foreground; textBlockRenderElement.FontSize = this.FontSize; textBlockRenderElement.FontStyle = this.FontStyle; textBlockRenderElement.FontStretch = this.FontStretch; textBlockRenderElement.FontWeight = this.FontWeight; textBlockRenderElement.Text = this.Text; textBlockRenderElement.TextAlignment = this.TextAlignment; textBlockRenderElement.TextTrimming = this.TextTrimming; textBlockRenderElement.TextWrapping = this.TextWrapping; textBlockRenderElements.Add(factory, textBlockRenderElement); return textBlockRenderElement; }
protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { ITextBoxRenderElement textBoxRenderElement; if (textBoxRenderElements.TryGetValue(factory, out textBoxRenderElement)) { return textBoxRenderElement; } textBoxRenderElement = factory.CreateTextBoxRenderElement(this); textBoxRenderElement.CaretIndex = this.CaretIndex; textBoxRenderElement.SelectionLength = this.SelectionLength; textBoxRenderElement.SelectionStart = this.SelectionStart; textBoxRenderElement.Text = this.Text; textBoxRenderElement.MaxLength = this.MaxLength; textBoxRenderElement.Bounds = new Rect(this.VisualSize); textBoxRenderElement.AcceptsReturn = this.AcceptsReturn; textBoxRenderElement.AcceptsTab = this.AcceptsTab; textBoxRenderElement.IsPassword = isPassword; textBoxRenderElement.IsReadOnly = this.IsReadOnly || !this.IsEnabled; textBoxRenderElement.IsHitTestVisible = this.IsHitTestVisible && this.IsEnabled; textBoxRenderElement.SpellCheck = this.spellCheck; textBoxRenderElement.HorizontalScrollBarVisibility = this.HorizontalScrollBarVisibility; textBoxRenderElement.VerticalScrollBarVisibility = this.VerticalScrollBarVisibility; textBoxRenderElement.Foreground = (Brush)GetValue(Control.ForegroundProperty); textBoxRenderElement.FontSize = (double)GetValue(Control.FontSizeProperty); textBoxRenderElement.FontFamily = (FontFamily)GetValue(Control.FontFamilyProperty); textBoxRenderElement.FontStretch = (FontStretch)GetValue(Control.FontStretchProperty); textBoxRenderElement.FontStyle = (FontStyle)GetValue(Control.FontStyleProperty); textBoxRenderElement.FontWeight = (FontWeight)GetValue(Control.FontWeightProperty); textBoxRenderElement.TextAlignment = (TextAlignment)GetValue(TextBox.TextAlignmentProperty); textBoxRenderElement.TextWrapping = (TextWrapping)GetValue(TextBox.TextWrappingProperty); textBoxRenderElement.TextChanged += (sender, e) => this.Text = textBoxRenderElement.Text; textBoxRenderElement.CaretIndexChanged += (sender, e) => this.CaretIndex = ((ITextBoxRenderElement)sender).CaretIndex; textBoxRenderElement.SelectionStartChanged += (sender, e) => this.SelectionStart = ((ITextBoxRenderElement)sender).SelectionStart; textBoxRenderElement.SelectionLengthChanged += (sender, e) => this.SelectionLength = ((ITextBoxRenderElement)sender).SelectionLength; textBoxRenderElements.Add(factory, textBoxRenderElement); InvalidateMeasure(); return textBoxRenderElement; }
protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { IBorderRenderElement borderRenderElement; if (borderRenderElements.TryGetValue(factory, out borderRenderElement)) { return borderRenderElement; } borderRenderElement = factory.CreateBorderRenderElement(this); borderRenderElement.Background = Background; borderRenderElement.BorderBrush = BorderBrush; borderRenderElement.BorderThickness = BorderThickness; borderRenderElement.Bounds = new Rect(VisualSize); borderRenderElement.CornerRadius = CornerRadius; borderRenderElement.IsHitTestVisible = IsHitTestVisible; borderRenderElements.Add(factory, borderRenderElement); return borderRenderElement; }
protected virtual object CreateContentRenderElementOverride(IRenderElementFactory factory) { return null; }
public IVisualRenderElement GetRenderElement(IRenderElementFactory factory) { IVisualRenderElement visualRenderElement; if (visualRenderElements.TryGetValue(factory, out visualRenderElement)) { return visualRenderElement; } visualRenderElement = factory.CreateVisualRenderElement(this); visualRenderElement.Background = VisualBackground; visualRenderElement.Bounds = VisualBounds; visualRenderElement.ClipToBounds = VisualClipToBounds; visualRenderElement.IsHitTestVisible = VisualIsHitTestVisible; visualRenderElement.IsVisible = VisualIsVisible; visualRenderElement.Opacity = VisualOpacity; visualRenderElement.Transform = VisualTransform; int index = 0; foreach (Visual child in VisualChildren) { child.GetRenderElement(factory); visualRenderElement.InsertChild(index, child.GetRenderElement(factory)); index++; } object contentRenderElement = CreateContentRenderElementOverride(factory); if (contentRenderElement != null) { visualRenderElement.InsertChild(0, contentRenderElement); } if (visualRenderElements.Count == 0) { containsContentRenderElement = contentRenderElement != null; } else if (containsContentRenderElement != (contentRenderElement != null)) { throw new Granular.Exception("ContentRenderElement for type \"{0}\" must be created for all of the factories or none of them", GetType().Name); } visualRenderElements.Add(factory, visualRenderElement); return visualRenderElement; }
protected override object CreateContentRenderElementOverride(IRenderElementFactory factory) { IImageRenderElement imageRenderElement; if (imageRenderElements.TryGetValue(factory, out imageRenderElement)) { return imageRenderElement; } imageRenderElement = factory.CreateImageRenderElement(this); if (Source != null) { imageRenderElement.Bounds = GetStretchRect(Source.Size, VisualBounds.Size, Stretch, StretchDirection); imageRenderElement.Source = this.Source; } imageRenderElements.Add(factory, imageRenderElement); return imageRenderElement; }