summaryrefslogtreecommitdiff
path: root/sd
diff options
context:
space:
mode:
authorMayank Gupta <techfreakworm@gmail.com>2016-03-30 11:47:01 +0530
committerMichael Stahl <mstahl@redhat.com>2016-06-10 12:14:40 +0200
commit16ddfa21d6e92af6d2ce30a3d80f7184d3a462af (patch)
tree73eed291a8e81c0971db0d3422b1c044843aef4e /sd
parent5cf68b0eac1a81ebcb2fa8f0e90fc4f7e350bd3a (diff)
Slideshow: Add 'Oval' Shape Transition variant
Committer's note: There is no Oval or Ellipse transition in MSO formats, so fallback to circle on export to those. Change-Id: Ibc3d617d3bb94bdd0702bb4d60ce5fbe2eea8e24 Reviewed-on: https://gerrit.libreoffice.org/23661 Tested-by: Jenkins <ci@libreoffice.org> Reviewed-by: jan iversen <jani@documentfoundation.org> Tested-by: jan iversen <jani@documentfoundation.org>
Diffstat (limited to 'sd')
-rw-r--r--sd/qa/unit/data/AllTransitions.odpbin13757 -> 15719 bytes
-rw-r--r--sd/qa/unit/export-tests.cxx4
-rw-r--r--sd/source/filter/eppt/pptx-epptbase.cxx8
-rw-r--r--sd/xml/effects.xml16
-rw-r--r--sd/xml/transitions.xml6
5 files changed, 33 insertions, 1 deletions
diff --git a/sd/qa/unit/data/AllTransitions.odp b/sd/qa/unit/data/AllTransitions.odp
index dfb8d2ace8e6..8922a0756d4b 100644
--- a/sd/qa/unit/data/AllTransitions.odp
+++ b/sd/qa/unit/data/AllTransitions.odp
Binary files differ
diff --git a/sd/qa/unit/export-tests.cxx b/sd/qa/unit/export-tests.cxx
index 150e0b524fc0..0dd47e5c4ff3 100644
--- a/sd/qa/unit/export-tests.cxx
+++ b/sd/qa/unit/export-tests.cxx
@@ -1502,6 +1502,10 @@ void SdExportTest::testExportTransitionsPPTX()
// NEWSFLASH
CPPUNIT_ASSERT(checkTransitionOnPage(xDoc, 74, TransitionType::ZOOM, TransitionSubType::ROTATEIN));
+ // OVAL VERTICAL - cannot be exported to PPTX so fallback to circle
+ //CPPUNIT_ASSERT(checkTransitionOnPage(xDoc, 76, TransitionType::ELLIPSEWIPE, TransitionSubType::VERTICAL));
+ CPPUNIT_ASSERT(checkTransitionOnPage(xDoc, 76, TransitionType::ELLIPSEWIPE, TransitionSubType::CIRCLE));
+
xDocShRef->DoClose();
}
diff --git a/sd/source/filter/eppt/pptx-epptbase.cxx b/sd/source/filter/eppt/pptx-epptbase.cxx
index 7bd4b658cc3d..85db3a1e2c99 100644
--- a/sd/source/filter/eppt/pptx-epptbase.cxx
+++ b/sd/source/filter/eppt/pptx-epptbase.cxx
@@ -798,7 +798,13 @@ sal_Int8 PPTWriterBase::GetTransition( sal_Int16 nTransitionType, sal_Int16 nTra
break;
case TransitionType::ELLIPSEWIPE :
{
- nPPTTransitionType = PPT_TRANSITION_TYPE_CIRCLE;
+ switch( nTransitionSubtype ) {
+ case TransitionSubType::VERTICAL:
+ case TransitionSubType::HORIZONTAL:
+ // no ellipse or oval in PPT or OOXML, fallback to circle
+ default:
+ nPPTTransitionType = PPT_TRANSITION_TYPE_CIRCLE;
+ }
}
break;
case TransitionType::FOURBOXWIPE :
diff --git a/sd/xml/effects.xml b/sd/xml/effects.xml
index bef5e0580b94..b7789383ed27 100644
--- a/sd/xml/effects.xml
+++ b/sd/xml/effects.xml
@@ -91,6 +91,22 @@
</anim:par>
<anim:par smil:begin="indefinite" smil:fill="hold">
<anim:par smil:begin="0" smil:fill="hold">
+ <anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-oval" pres:preset-sub-type="in">
+ <anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
+ <anim:transitionFilter smil:dur="2" smil:type="ellipseWipe" smil:subtype="vertical" smil:direction="reverse"/>
+ </anim:par>
+ </anim:par>
+ </anim:par>
+ <anim:par smil:begin="indefinite" smil:fill="hold">
+ <anim:par smil:begin="0" smil:fill="hold">
+ <anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-oval" pres:preset-sub-type="out">
+ <anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
+ <anim:transitionFilter smil:dur="2" smil:type="ellipseWipe" smil:subtype="vertical"/>
+ </anim:par>
+ </anim:par>
+ </anim:par>
+ <anim:par smil:begin="indefinite" smil:fill="hold">
+ <anim:par smil:begin="0" smil:fill="hold">
<anim:par pres:preset-property="Direction" smil:begin="0" smil:fill="hold" pres:node-type="on-click" pres:preset-class="entrance" pres:preset-id="ooo-entrance-fly-in-slow" pres:preset-sub-type="from-bottom">
<anim:set smil:begin="0" smil:dur="0.001" smil:fill="hold" smil:attributeName="visibility" smil:to="visible"/>
<anim:animate smil:dur="5" smil:fill="hold" smil:attributeName="x" smil:values="x;x" smil:keyTimes="0;1"/>
diff --git a/sd/xml/transitions.xml b/sd/xml/transitions.xml
index 8b96d7959e0e..cefcab31cf36 100644
--- a/sd/xml/transitions.xml
+++ b/sd/xml/transitions.xml
@@ -107,6 +107,12 @@
<anim:par pres:preset-id="shape-circle">
<anim:transitionFilter smil:type="ellipseWipe" smil:subtype="circle"/>
</anim:par>
+ <anim:par pres:preset-id="shape-oval-horizontal">
+ <anim:transitionFilter smil:type="ellipseWipe" smil:subtype="horizontal"/>
+ </anim:par>
+ <anim:par pres:preset-id="shape-oval-vertical">
+ <anim:transitionFilter smil:type="ellipseWipe" smil:subtype="vertical"/>
+ </anim:par>
<!-- <anim:par pres:preset-id="circle-in"> -->
<!-- <anim:transitionFilter smil:type="ellipseWipe" smil:subtype="circle" smil:direction="reverse"/> -->
<!-- </anim:par> -->