private Widget CreateMaterialEffectsPane() { var pane = new ThemedScrollView { Padding = new Thickness { Right = 15, }, }; var list = new Widget { Layout = new VBoxLayout(), }; pane.Content.Layout = new VBoxLayout { Spacing = AttachmentMetrics.Spacing }; pane.Content.AddNode(list); var widgetFactory = new AttachmentWidgetFactory <Model3DAttachment.MaterialEffect>( w => new MaterialEffectRow(w, attachment.MaterialEffects), attachment.MaterialEffects); widgetFactory.AddHeader(MaterialEffectRow.CreateHeader()); widgetFactory.AddFooter(DeletableRow <Model3DAttachment.MaterialEffect> .CreateFooter(() => { attachment.MaterialEffects.Add(new Model3DAttachment.MaterialEffect { Name = "MaterialEffect", MaterialName = "MaterialName", Path = "MaterialPath", }); })); list.Components.Add(widgetFactory); return(pane); }
private static Widget CreateMaterialEffectsPane(Model3DAttachment attachment) { var pane = new ThemedScrollView(); pane.Content.Padding = new Thickness { Right = 10 }; var list = new Widget { Layout = new VBoxLayout(), }; pane.Content.Layout = new VBoxLayout { Spacing = AttachmentMetrics.Spacing }; pane.Content.AddNode(list); var widgetFactory = new AttachmentWidgetFactory <Model3DAttachment.MaterialEffect>( w => new MaterialEffectRow(w, attachment.MaterialEffects), attachment.MaterialEffects); widgetFactory.AddHeader(MaterialEffectRow.CreateHeader()); widgetFactory.AddFooter(DeletableRow <Model3DAttachment.MaterialEffect> .CreateFooter(() => { history.DoTransaction(() => { Core.Operations.InsertIntoList.Perform( attachment.MaterialEffects, attachment.MaterialEffects.Count, new Model3DAttachment.MaterialEffect { Name = "MaterialEffect", MaterialName = "MaterialName", Path = "MaterialPath", } ); }); })); list.Components.Add(widgetFactory); return(pane); }