internal static ShapeCollection CreateForSlide(SlidePart slidePart, SCSlide slide) { var phService = new PlaceholderService(slidePart.SlideLayoutPart); var transformFactory = new LocationParser(phService); var geometryFactory = new GeometryFactory(phService); var shapeContextBuilder = new ShapeContext.Builder(slidePart); var chartGrFrameHandler = new ChartGraphicFrameHandler(); var tableGrFrameHandler = new TableGraphicFrameHandler(shapeContextBuilder, transformFactory); var oleGrFrameHandler = new OleGraphicFrameHandler(shapeContextBuilder, transformFactory); var pShapeHandler = new AutoShapeCreator(shapeContextBuilder, transformFactory); var pictureHandler = new PictureHandler(shapeContextBuilder, transformFactory, geometryFactory); var sdkGroupShapeHandler = new PGroupShapeHandler(shapeContextBuilder, transformFactory, geometryFactory, slidePart); pShapeHandler.Successor = sdkGroupShapeHandler; sdkGroupShapeHandler.Successor = oleGrFrameHandler; oleGrFrameHandler.Successor = pictureHandler; pictureHandler.Successor = chartGrFrameHandler; chartGrFrameHandler.Successor = tableGrFrameHandler; P.ShapeTree shapeTree = slidePart.Slide.CommonSlideData.ShapeTree; var shapes = new List <IShape>(shapeTree.Count()); foreach (OpenXmlCompositeElement compositeElement in shapeTree.OfType <OpenXmlCompositeElement>()) { IShape shape = pShapeHandler.Create(compositeElement, slide); if (shape != null) { shapes.Add(shape); } } return(new ShapeCollection(shapes)); }
/// <summary> /// Creates collection of the shapes from sdk shape tree. /// </summary> /// <param name="sdkShapeTree"></param> /// <returns></returns> public IList <ShapeEx> FromTree(P.ShapeTree sdkShapeTree) { var sldPhFontService = new SlidePlaceholderFontService(_sdkSldPart); var phService = new PlaceholderService(_sdkSldPart.SlideLayoutPart); var transformFactory = new InnerTransformFactory(phService); var shapeBuilder = new ShapeEx.Builder(); var sdkShapeHandler = new SdkShapeHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); var sdkGroupShapeHandler = new SdkGroupShapeHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); var oleGrFrameHandler = new OleGraphicFrameHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); var pictureHandler = new PictureHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); var chartGrFrameHandler = new ChartGraphicFrameHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); var tableGrFrameHandler = new TableGraphicFrameHandler(_preSettings, sldPhFontService, _sdkSldPart, transformFactory, shapeBuilder); sdkShapeHandler.Successor = sdkGroupShapeHandler; sdkGroupShapeHandler.Successor = oleGrFrameHandler; // OLE objects handler must be before pictures handler, cause OLE container can contain p:pic elements, thereby defining OLE as a picture oleGrFrameHandler.Successor = pictureHandler; pictureHandler.Successor = chartGrFrameHandler; chartGrFrameHandler.Successor = tableGrFrameHandler; var shapes = new List <ShapeEx>(sdkShapeTree.Count()); foreach (var openXmlElement in sdkShapeTree) { var shape = sdkShapeHandler.Create(openXmlElement); if (shape != null) { shapes.Add(shape); } } return(shapes); }
public void CantGetInexistingPlaceholder() { IPlaceholderRepository repository = A.Fake <IPlaceholderRepository>(); A.CallTo(() => repository.Find(A <string> ._)).Returns(null); ILogger <PlaceholderService> logger = A.Fake <ILogger <PlaceholderService> >(); PlaceholderService sut = new PlaceholderService(repository, logger); Placeholder result = sut.Get("test"); result.Should().Be(null); }
public void GetPlaceholderType_Test() { var ms = new MemoryStream(Properties.Resources._008); var xmlDoc = PresentationDocument.Open(ms, false); var sldPart = xmlDoc.PresentationPart.SlideParts.First(); var spId3 = sldPart.Slide.CommonSlideData.ShapeTree.Elements <DocumentFormat.OpenXml.Presentation.Shape>().Single(sp => sp.GetId() == 3); // ACT var phXml = PlaceholderService.PlaceholderDataFrom(spId3); // CLOSE xmlDoc.Close(); // ASSERT Assert.Equal(PlaceholderType.DateAndTime, phXml.PlaceholderType); }
public void CanGetAllPlaceholders() { List <Placeholder> placeholders = new List <Placeholder> { new Placeholder("1"), new Placeholder("2") }; IPlaceholderRepository repository = A.Fake <IPlaceholderRepository>(); A.CallTo(() => repository.Find()).Returns(placeholders); ILogger <PlaceholderService> logger = A.Fake <ILogger <PlaceholderService> >(); PlaceholderService sut = new PlaceholderService(repository, logger); List <Placeholder> result = sut.Get(); result.Should().NotContainNulls(); result.Should().ContainEquivalentOf(new Placeholder("1")); result.Should().ContainEquivalentOf(new Placeholder("2")); }
public IList <ShapeEx> FromSldPart(SlidePart sdkSldPart) { var sldPhFontService = new PlaceholderFontService(sdkSldPart); //TODO: make DI var phService = new PlaceholderService(sdkSldPart.SlideLayoutPart); var transformFactory = new LocationParser(phService); var geometryFactory = new GeometryFactory(phService); var shapeContextBuilder = new ShapeContext.Builder(_preSettings, sldPhFontService, sdkSldPart); var chartGrFrameHandler = new ChartGraphicFrameHandler(shapeContextBuilder, transformFactory); var tableGrFrameHandler = new TableGraphicFrameHandler(shapeContextBuilder, transformFactory); var oleGrFrameHandler = new OleGraphicFrameHandler(shapeContextBuilder, transformFactory); var sdkShapeHandler = new SdkShapeHandler(shapeContextBuilder, transformFactory, geometryFactory); var pictureHandler = new PictureHandler(shapeContextBuilder, transformFactory, geometryFactory, sdkSldPart); var sdkGroupShapeHandler = new SdkGroupShapeHandler(shapeContextBuilder, transformFactory, geometryFactory, sdkSldPart); sdkShapeHandler.Successor = sdkGroupShapeHandler; sdkGroupShapeHandler.Successor = oleGrFrameHandler; // OLE objects handler must be before pictures handler, cause OLE container can contain p:pic elements, // thereby defining OLE as a picture oleGrFrameHandler.Successor = pictureHandler; pictureHandler.Successor = chartGrFrameHandler; chartGrFrameHandler.Successor = tableGrFrameHandler; var sdkShapeTree = sdkSldPart.Slide.CommonSlideData.ShapeTree; var shapes = new List <ShapeEx>(sdkShapeTree.Count()); foreach (var openXmlElement in sdkShapeTree) { var shape = sdkShapeHandler.Create(openXmlElement); if (shape != null) { shapes.Add(shape); } } return(shapes); }
public PhotoAPISteps(PhotoActions photoActions, Photo photoModel, PlaceholderService placeholderService) { this.photoActions = photoActions; this.photoModel = photoModel; this.placeholderService = TestConfiguration.GetConfiguration().TestDataCollection.PlaceholderService; }
public PhotoController(IClient client, ServiceConfiguration serviceConfiguration) : base(client, serviceConfiguration) { this.placeholderService = this.ServiceConfiguration.PlaceholderService; }