Search in sources :

Example 1 with AnimationInfoAtom

use of org.apache.poi.hslf.record.AnimationInfoAtom in project poi by apache.

the class MovieShape method createSpContainer.

/**
     * Create a new Placeholder and initialize internal structures
     *
     * @return the created <code>EscherContainerRecord</code> which holds shape data
     */
@Override
protected EscherContainerRecord createSpContainer(int idx, boolean isChild) {
    EscherContainerRecord ecr = super.createSpContainer(idx, isChild);
    setEscherProperty(EscherProperties.PROTECTION__LOCKAGAINSTGROUPING, 0x1000100);
    setEscherProperty(EscherProperties.FILL__NOFILLHITTEST, 0x10001);
    ExObjRefAtom oe = new ExObjRefAtom();
    InteractiveInfo info = new InteractiveInfo();
    InteractiveInfoAtom infoAtom = info.getInteractiveInfoAtom();
    infoAtom.setAction(InteractiveInfoAtom.ACTION_MEDIA);
    infoAtom.setHyperlinkType(InteractiveInfoAtom.LINK_NULL);
    AnimationInfo an = new AnimationInfo();
    AnimationInfoAtom anAtom = an.getAnimationInfoAtom();
    anAtom.setFlag(AnimationInfoAtom.Automatic, true);
    HSLFEscherClientDataRecord cldata = getClientData(true);
    cldata.addChild(oe);
    cldata.addChild(an);
    cldata.addChild(info);
    return ecr;
}
Also used : ExObjRefAtom(org.apache.poi.hslf.record.ExObjRefAtom) HSLFEscherClientDataRecord(org.apache.poi.hslf.record.HSLFEscherClientDataRecord) InteractiveInfoAtom(org.apache.poi.hslf.record.InteractiveInfoAtom) AnimationInfo(org.apache.poi.hslf.record.AnimationInfo) AnimationInfoAtom(org.apache.poi.hslf.record.AnimationInfoAtom) EscherContainerRecord(org.apache.poi.ddf.EscherContainerRecord) InteractiveInfo(org.apache.poi.hslf.record.InteractiveInfo)

Example 2 with AnimationInfoAtom

use of org.apache.poi.hslf.record.AnimationInfoAtom in project poi by apache.

the class MovieShape method setMovieIndex.

/**
     * Assign a movie to this shape
     *
     * @see org.apache.poi.hslf.usermodel.HSLFSlideShow#addMovie(String, int)
     * @param idx  the index of the movie
     */
public void setMovieIndex(int idx) {
    ExObjRefAtom oe = getClientDataRecord(RecordTypes.ExObjRefAtom.typeID);
    oe.setExObjIdRef(idx);
    AnimationInfo an = getClientDataRecord(RecordTypes.AnimationInfo.typeID);
    if (an != null) {
        AnimationInfoAtom ai = an.getAnimationInfoAtom();
        ai.setDimColor(0x07000000);
        ai.setFlag(AnimationInfoAtom.Automatic, true);
        ai.setFlag(AnimationInfoAtom.Play, true);
        ai.setFlag(AnimationInfoAtom.Synchronous, true);
        ai.setOrderID(idx + 1);
    }
}
Also used : ExObjRefAtom(org.apache.poi.hslf.record.ExObjRefAtom) AnimationInfo(org.apache.poi.hslf.record.AnimationInfo) AnimationInfoAtom(org.apache.poi.hslf.record.AnimationInfoAtom)

Aggregations

AnimationInfo (org.apache.poi.hslf.record.AnimationInfo)2 AnimationInfoAtom (org.apache.poi.hslf.record.AnimationInfoAtom)2 ExObjRefAtom (org.apache.poi.hslf.record.ExObjRefAtom)2 EscherContainerRecord (org.apache.poi.ddf.EscherContainerRecord)1 HSLFEscherClientDataRecord (org.apache.poi.hslf.record.HSLFEscherClientDataRecord)1 InteractiveInfo (org.apache.poi.hslf.record.InteractiveInfo)1 InteractiveInfoAtom (org.apache.poi.hslf.record.InteractiveInfoAtom)1