public void WriteWidget(XmlWriter writer, inkWidget widget) { writer.WriteStartElement(widget.GetType().Name); WriteWidgetAttributes(writer, widget); if (widget is inkCompoundWidget compoundWidget) { var imc = (inkMultiChildren)compoundWidget.Children.GetValue(); foreach (var childHandle in imc.Children) { var child = (inkWidget)childHandle.GetValue(); WriteWidget(writer, child); } } writer.WriteEndElement(); }
public static inkControl CreateControl(this inkWidget widget, RDTWidgetView widgetView) { switch (widget) { case inkCanvasWidget Canvas: return(new inkCanvasControl(Canvas, widgetView)); case inkBasePanelWidget BasePanel: return(new inkBasePanelControl(BasePanel, widgetView)); case inkFlexWidget Flex: return(new inkFlexControl(Flex, widgetView)); case inkGridWidget Grid: return(new inkGridControl(Grid, widgetView)); case inkCompoundWidget Compound: return(new inkCompoundControl(Compound, widgetView)); case inkImageWidget Image: return(new inkImageControl(Image, widgetView)); case inkMaskWidget Mask: return(new inkMaskControl(Mask, widgetView)); case inkTextWidget Text: return(new inkTextControl(Text, widgetView)); case inkRectangleWidget Rectangle: return(new inkRectangleControl(Rectangle, widgetView)); case inkBorderWidget Border: return(new inkBorderControl(Border, widgetView)); default: return(new inkControl(widget, widgetView)); } }
public inkRectangleControl(inkWidget widget, RDTWidgetView widgetView) : base(widget, widgetView) { }
public inkWidgetSerializer(inkWidget widget) { Root = widget; }