2011-08-11 04:38:19 -04:00
|
|
|
/*
|
|
|
|
* ====================================================================
|
|
|
|
* Licensed to the Apache Software Foundation (ASF) under one or more
|
|
|
|
* contributor license agreements. See the NOTICE file distributed with
|
|
|
|
* this work for additional information regarding copyright ownership.
|
|
|
|
* The ASF licenses this file to You under the Apache License, Version 2.0
|
|
|
|
* (the "License"); you may not use this file except in compliance with
|
|
|
|
* the License. You may obtain a copy of the License at
|
|
|
|
*
|
|
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
|
|
*
|
|
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
|
|
* See the License for the specific language governing permissions and
|
|
|
|
* limitations under the License.
|
|
|
|
* ====================================================================
|
|
|
|
*/
|
|
|
|
|
|
|
|
package org.apache.poi.xslf.usermodel;
|
|
|
|
|
2015-12-31 17:10:17 -05:00
|
|
|
import org.apache.poi.POIXMLException;
|
2015-07-09 18:46:29 -04:00
|
|
|
import org.apache.poi.sl.usermodel.ConnectorShape;
|
2015-12-31 17:10:17 -05:00
|
|
|
import org.apache.poi.sl.usermodel.Placeholder;
|
2011-08-11 04:38:19 -04:00
|
|
|
import org.apache.poi.util.Beta;
|
|
|
|
import org.openxmlformats.schemas.drawingml.x2006.main.CTNonVisualDrawingProps;
|
|
|
|
import org.openxmlformats.schemas.drawingml.x2006.main.CTPresetGeometry2D;
|
|
|
|
import org.openxmlformats.schemas.drawingml.x2006.main.CTShapeProperties;
|
2011-10-28 10:25:53 -04:00
|
|
|
import org.openxmlformats.schemas.drawingml.x2006.main.STShapeType;
|
2011-08-11 04:38:19 -04:00
|
|
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTConnector;
|
|
|
|
import org.openxmlformats.schemas.presentationml.x2006.main.CTConnectorNonVisual;
|
|
|
|
|
|
|
|
/**
|
2011-10-24 07:07:59 -04:00
|
|
|
* Specifies a connection shape.
|
2011-08-11 04:38:19 -04:00
|
|
|
*
|
|
|
|
* @author Yegor Kozlov
|
|
|
|
*/
|
|
|
|
@Beta
|
2015-08-24 19:15:14 -04:00
|
|
|
public class XSLFConnectorShape extends XSLFSimpleShape
|
|
|
|
implements ConnectorShape<XSLFShape,XSLFTextParagraph> {
|
2011-08-11 04:38:19 -04:00
|
|
|
|
2011-10-24 07:07:59 -04:00
|
|
|
/*package*/ XSLFConnectorShape(CTConnector shape, XSLFSheet sheet) {
|
2011-08-11 04:38:19 -04:00
|
|
|
super(shape, sheet);
|
|
|
|
}
|
|
|
|
|
|
|
|
/**
|
|
|
|
* @param shapeId 1-based shapeId
|
|
|
|
*/
|
|
|
|
static CTConnector prototype(int shapeId) {
|
|
|
|
CTConnector ct = CTConnector.Factory.newInstance();
|
|
|
|
CTConnectorNonVisual nvSpPr = ct.addNewNvCxnSpPr();
|
|
|
|
CTNonVisualDrawingProps cnv = nvSpPr.addNewCNvPr();
|
|
|
|
cnv.setName("Connector " + shapeId);
|
|
|
|
cnv.setId(shapeId + 1);
|
|
|
|
nvSpPr.addNewCNvCxnSpPr();
|
|
|
|
nvSpPr.addNewNvPr();
|
|
|
|
CTShapeProperties spPr = ct.addNewSpPr();
|
|
|
|
CTPresetGeometry2D prst = spPr.addNewPrstGeom();
|
|
|
|
prst.setPrst(STShapeType.LINE);
|
|
|
|
prst.addNewAvLst();
|
2015-08-15 07:57:57 -04:00
|
|
|
/* CTLineProperties ln = */ spPr.addNewLn();
|
2011-08-11 04:38:19 -04:00
|
|
|
return ct;
|
|
|
|
}
|
|
|
|
|
2011-10-21 09:17:33 -04:00
|
|
|
|
2011-11-10 08:59:16 -05:00
|
|
|
/**
|
2011-12-09 11:48:38 -05:00
|
|
|
* YK: shadows of lines are suppressed for now.
|
2011-11-10 08:59:16 -05:00
|
|
|
*/
|
|
|
|
@Override
|
|
|
|
public XSLFShadow getShadow() {
|
|
|
|
return null;
|
|
|
|
}
|
2011-11-14 08:00:13 -05:00
|
|
|
|
2015-12-31 17:10:17 -05:00
|
|
|
@Override
|
|
|
|
public void setPlaceholder(Placeholder placeholder) {
|
|
|
|
throw new POIXMLException("A connector shape can't be a placeholder.");
|
|
|
|
}
|
2011-08-11 04:38:19 -04:00
|
|
|
}
|