Skip to content
Projeler
Gruplar
Parçacıklar
Yardım
Yükleniyor...
Oturum aç / Kaydol
Gezinmeyi değiştir
C
core
Proje
Proje
Ayrıntılar
Etkinlik
Cycle Analytics
Depo (repository)
Depo (repository)
Dosyalar
Kayıtlar (commit)
Dallar (branch)
Etiketler
Katkıda bulunanlar
Grafik
Karşılaştır
Grafikler
Konular (issue)
0
Konular (issue)
0
Liste
Pano
Etiketler
Kilometre Taşları
Birleştirme (merge) Talepleri
0
Birleştirme (merge) Talepleri
0
CI / CD
CI / CD
İş akışları (pipeline)
İşler
Zamanlamalar
Grafikler
Paketler
Paketler
Wiki
Wiki
Parçacıklar
Parçacıklar
Üyeler
Üyeler
Collapse sidebar
Close sidebar
Etkinlik
Grafik
Grafikler
Yeni bir konu (issue) oluştur
İşler
Kayıtlar (commit)
Konu (issue) Panoları
Kenar çubuğunu aç
LibreOffice
core
Commits
f6ef7e33
Kaydet (Commit)
f6ef7e33
authored
Kas 13, 2015
tarafından
Tomaž Vajngerl
Dosyalara gözat
Seçenekler
Dosyalara Gözat
İndir
Eposta Yamaları
Sade Fark
slideshow: add "glitter" slide transition
Change-Id: Ie89b64c4399cd0092eee579660c9fe85f8ca8e73
üst
1c482cb5
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
105 additions
and
9 deletions
+105
-9
Effects.xcu
officecfg/registry/data/org/openoffice/Office/UI/Effects.xcu
+13
-0
slidetransition.cxx
oox/source/ppt/slidetransition.cxx
+4
-0
slidetransitioncontext.cxx
oox/source/ppt/slidetransitioncontext.cxx
+1
-0
AllTransitions.odp
sd/qa/unit/data/AllTransitions.odp
+0
-0
export-tests.cxx
sd/qa/unit/export-tests.cxx
+4
-1
pptx-epptooxml.cxx
sd/source/filter/eppt/pptx-epptooxml.cxx
+13
-3
transitions-ogl.xml
sd/xml/transitions-ogl.xml
+3
-0
OGLTrans_TransitionImpl.cxx
...ource/engine/OGLTrans/generic/OGLTrans_TransitionImpl.cxx
+62
-5
OGLTrans_TransitionImpl.hxx
...ource/engine/OGLTrans/generic/OGLTrans_TransitionImpl.hxx
+1
-0
OGLTrans_TransitionerImpl.cxx
...rce/engine/OGLTrans/generic/OGLTrans_TransitionerImpl.cxx
+4
-0
No files found.
officecfg/registry/data/org/openoffice/Office/UI/Effects.xcu
Dosyayı görüntüle @
f6ef7e33
...
@@ -1605,6 +1605,14 @@
...
@@ -1605,6 +1605,14 @@
<value
xml:lang=
"en-US"
>
Ripple
</value>
<value
xml:lang=
"en-US"
>
Ripple
</value>
</prop>
</prop>
</node>
</node>
<node
oor:name=
"glitter"
oor:op=
"replace"
>
<prop
oor:name=
"Group"
oor:type=
"xs:string"
>
<value>
exciting
</value>
</prop>
<prop
oor:name=
"Label"
oor:type=
"xs:string"
>
<value
xml:lang=
"en-US"
>
Glitter
</value>
</prop>
</node>
</node>
</node>
<node
oor:name=
"TransitionVariants"
>
<node
oor:name=
"TransitionVariants"
>
<node
oor:name=
"plain"
oor:op=
"replace"
>
<node
oor:name=
"plain"
oor:op=
"replace"
>
...
@@ -2348,6 +2356,11 @@
...
@@ -2348,6 +2356,11 @@
<value>
ripple
</value>
<value>
ripple
</value>
</prop>
</prop>
</node>
</node>
<node
oor:name=
"glitter"
oor:op=
"replace"
>
<prop
oor:name=
"Set"
oor:type=
"xs:string"
>
<value>
glitter
</value>
</prop>
</node>
</node>
</node>
</node>
</node>
<node
oor:name=
"Presets"
>
<node
oor:name=
"Presets"
>
...
...
oox/source/ppt/slidetransition.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -413,6 +413,10 @@ namespace oox { namespace ppt {
...
@@ -413,6 +413,10 @@ namespace oox { namespace ppt {
mnTransitionType
=
TransitionType
::
MISCSHAPEWIPE
;
mnTransitionType
=
TransitionType
::
MISCSHAPEWIPE
;
mnTransitionSubType
=
TransitionSubType
::
HORIZONTAL
;
mnTransitionSubType
=
TransitionSubType
::
HORIZONTAL
;
break
;
break
;
case
P14_TOKEN
(
glitter
):
mnTransitionType
=
TransitionType
::
MISCSHAPEWIPE
;
mnTransitionSubType
=
TransitionSubType
::
DIAMOND
;
break
;
default
:
default
:
mnTransitionType
=
0
;
mnTransitionType
=
0
;
break
;
break
;
...
...
oox/source/ppt/slidetransitioncontext.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -131,6 +131,7 @@ SlideTransitionContext::~SlideTransitionContext() throw()
...
@@ -131,6 +131,7 @@ SlideTransitionContext::~SlideTransitionContext() throw()
case
PPT_TOKEN
(
wedge
):
case
PPT_TOKEN
(
wedge
):
case
P14_TOKEN
(
vortex
):
case
P14_TOKEN
(
vortex
):
case
P14_TOKEN
(
ripple
):
case
P14_TOKEN
(
ripple
):
case
P14_TOKEN
(
glitter
):
// CT_Empty
// CT_Empty
if
(
!
mbHasTransition
)
if
(
!
mbHasTransition
)
{
{
...
...
sd/qa/unit/data/AllTransitions.odp
Dosyayı görüntüle @
f6ef7e33
No preview for this file type
sd/qa/unit/export-tests.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -1424,8 +1424,11 @@ void SdExportTest::testExportTransitionsPPTX()
...
@@ -1424,8 +1424,11 @@ void SdExportTest::testExportTransitionsPPTX()
// RIPPLE
// RIPPLE
CPPUNIT_ASSERT
(
checkTransitionOnPage
(
xDoc
,
71
,
TransitionType
::
MISCSHAPEWIPE
,
TransitionSubType
::
HORIZONTAL
));
CPPUNIT_ASSERT
(
checkTransitionOnPage
(
xDoc
,
71
,
TransitionType
::
MISCSHAPEWIPE
,
TransitionSubType
::
HORIZONTAL
));
// GLITTER
CPPUNIT_ASSERT
(
checkTransitionOnPage
(
xDoc
,
72
,
TransitionType
::
MISCSHAPEWIPE
,
TransitionSubType
::
DIAMOND
));
// NEWSFLASH
// NEWSFLASH
CPPUNIT_ASSERT
(
checkTransitionOnPage
(
xDoc
,
7
2
,
TransitionType
::
ZOOM
,
TransitionSubType
::
ROTATEIN
));
CPPUNIT_ASSERT
(
checkTransitionOnPage
(
xDoc
,
7
3
,
TransitionType
::
ZOOM
,
TransitionSubType
::
ROTATEIN
));
}
}
CPPUNIT_TEST_SUITE_REGISTRATION
(
SdExportTest
);
CPPUNIT_TEST_SUITE_REGISTRATION
(
SdExportTest
);
...
...
sd/source/filter/eppt/pptx-epptooxml.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -523,15 +523,17 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
...
@@ -523,15 +523,17 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
sal_Int32
nTransition
=
0
;
sal_Int32
nTransition
=
0
;
const
char
*
pDirection
=
nullptr
;
const
char
*
pDirection
=
nullptr
;
const
char
*
pDirection14
=
nullptr
;
const
char
*
pOrientation
=
nullptr
;
const
char
*
pOrientation
=
nullptr
;
const
char
*
pThruBlk
=
nullptr
;
const
char
*
pThruBlk
=
nullptr
;
const
char
*
pSpokes
=
nullptr
;
const
char
*
pSpokes
=
nullptr
;
char
pSpokesTmp
[
2
]
=
"0"
;
char
pSpokesTmp
[
2
]
=
"0"
;
// p14
// p14
sal_Int32
nTransition14
=
0
;
sal_Int32
nTransition14
=
0
;
const
char
*
pDirection14
=
nullptr
;
const
char
*
pInverted
=
nullptr
;
const
char
*
pInverted
=
nullptr
;
const
char
*
pPattern
=
nullptr
;
// diamond or hexagon
//p15
//p15
const
char
*
pPresetTransition
=
nullptr
;
const
char
*
pPresetTransition
=
nullptr
;
...
@@ -581,13 +583,20 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
...
@@ -581,13 +583,20 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
pPresetTransition
=
"fallOver"
;
pPresetTransition
=
"fallOver"
;
bOOXmlSpecificTransition
=
true
;
bOOXmlSpecificTransition
=
true
;
break
;
break
;
case
animations
:
:
TransitionSubType
::
CORNERSIN
:
case
animations
:
:
TransitionSubType
::
CORNERSIN
:
// Inside turning cube
pInverted
=
"true"
;
pInverted
=
"true"
;
case
animations
:
:
TransitionSubType
::
CORNERSOUT
:
case
animations
:
:
TransitionSubType
::
CORNERSOUT
:
// Outside turning cube
nTransition
=
XML_fade
;
nTransition
=
XML_fade
;
nTransition14
=
XML_prism
;
nTransition14
=
XML_prism
;
bOOXmlSpecificTransition
=
true
;
bOOXmlSpecificTransition
=
true
;
break
;
break
;
case
animations
:
:
TransitionSubType
::
DIAMOND
:
// Glitter
nTransition
=
XML_fade
;
nTransition14
=
XML_glitter
;
pDirection14
=
"l"
;
pPattern
=
"hexagon"
;
bOOXmlSpecificTransition
=
true
;
break
;
}
}
break
;
break
;
}
}
...
@@ -644,6 +653,7 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
...
@@ -644,6 +653,7 @@ void PowerPointExport::WriteTransition( FSHelperPtr pFS )
pFS
->
singleElementNS
(
XML_p14
,
nTransition14
,
pFS
->
singleElementNS
(
XML_p14
,
nTransition14
,
XML_isInverted
,
pInverted
,
XML_isInverted
,
pInverted
,
XML_dir
,
pDirection14
,
XML_dir
,
pDirection14
,
XML_pattern
,
pPattern
,
FSEND
);
FSEND
);
}
}
else
if
(
pPresetTransition
)
else
if
(
pPresetTransition
)
...
...
sd/xml/transitions-ogl.xml
Dosyayı görüntüle @
f6ef7e33
...
@@ -64,6 +64,9 @@
...
@@ -64,6 +64,9 @@
</anim:par>
</anim:par>
<anim:par
pres:preset-id=
"ripple"
>
<anim:par
pres:preset-id=
"ripple"
>
<anim:transitionFilter
smil:type=
"miscShapeWipe"
smil:subtype=
"horizontal"
/>
<anim:transitionFilter
smil:type=
"miscShapeWipe"
smil:subtype=
"horizontal"
/>
</anim:par>
<anim:par
pres:preset-id=
"glitter"
>
<anim:transitionFilter
smil:type=
"miscShapeWipe"
smil:subtype=
"diamond"
/>
</anim:par>
</anim:par>
<anim:par
pres:preset-id=
"zoom-rotate-in"
>
<anim:par
pres:preset-id=
"zoom-rotate-in"
>
<anim:transitionFilter
smil:type=
"zoom"
smil:subtype=
"rotateIn"
/>
<anim:transitionFilter
smil:type=
"zoom"
smil:subtype=
"rotateIn"
/>
...
...
slideshow/source/engine/OGLTrans/generic/OGLTrans_TransitionImpl.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -836,6 +836,20 @@ std::shared_ptr<OGLTransitionImpl> makeHelix( sal_uInt16 nRows )
...
@@ -836,6 +836,20 @@ std::shared_ptr<OGLTransitionImpl> makeHelix( sal_uInt16 nRows )
return
makeSimpleTransition
(
aLeavingSlide
,
aEnteringSlide
);
return
makeSimpleTransition
(
aLeavingSlide
,
aEnteringSlide
);
}
}
float
fdiv
(
int
a
,
int
b
)
{
return
static_cast
<
float
>
(
a
)
/
b
;
}
glm
::
vec2
vec
(
float
x
,
float
y
,
float
nx
,
float
ny
)
{
x
=
x
<
0.0
?
0.0
:
x
;
x
=
x
>
nx
?
nx
:
x
;
y
=
y
<
0.0
?
0.0
:
y
;
y
=
y
>
ny
?
ny
:
y
;
return
glm
::
vec2
(
fdiv
(
x
,
nx
),
fdiv
(
y
,
ny
));
}
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNByMTileFlip
(
sal_uInt16
n
,
sal_uInt16
m
)
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNByMTileFlip
(
sal_uInt16
n
,
sal_uInt16
m
)
{
{
double
invN
(
1.0
/
static_cast
<
double
>
(
n
));
double
invN
(
1.0
/
static_cast
<
double
>
(
n
));
...
@@ -1649,11 +1663,6 @@ std::shared_ptr<OGLTransitionImpl> makeDissolve()
...
@@ -1649,11 +1663,6 @@ std::shared_ptr<OGLTransitionImpl> makeDissolve()
namespace
namespace
{
{
float
fdiv
(
int
a
,
int
b
)
{
return
static_cast
<
float
>
(
a
)
/
b
;
}
class
VortexTransition
:
public
ShaderTransition
class
VortexTransition
:
public
ShaderTransition
{
{
public
:
public
:
...
@@ -1863,6 +1872,54 @@ std::shared_ptr<OGLTransitionImpl> makeRipple()
...
@@ -1863,6 +1872,54 @@ std::shared_ptr<OGLTransitionImpl> makeRipple()
return
makeRippleTransition
(
aLeavingSlide
,
aEnteringSlide
,
aSettings
);
return
makeRippleTransition
(
aLeavingSlide
,
aEnteringSlide
,
aSettings
);
}
}
std
::
shared_ptr
<
OGLTransitionImpl
>
makeGlitter
()
{
const
int
NX
=
30
,
NY
=
30
;
Primitives_t
aLeavingSlide
;
Primitives_t
aEnteringSlide
;
for
(
int
y
=
0
;
y
<
NY
+
2
;
y
+=
2
)
{
for
(
int
x
=
0
;
x
<
NX
+
2
;
x
+=
2
)
{
Primitive
Slide
;
if
(
y
%
4
==
0
)
{
Slide
.
pushTriangle
(
vec
(
x
-
1
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
-
2
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
,
y
-
2
,
NX
,
NY
),
vec
(
x
+
1
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
+
1
,
y
-
1
,
NX
,
NY
),
vec
(
x
+
1
,
y
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
+
1
,
y
,
NX
,
NY
),
vec
(
x
,
y
+
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
,
y
+
1
,
NX
,
NY
),
vec
(
x
-
1
,
y
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
-
1
,
y
,
NX
,
NY
),
vec
(
x
-
1
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
}
else
{
Slide
.
pushTriangle
(
vec
(
x
-
2
,
y
-
1
,
NX
,
NY
),
vec
(
x
-
1
,
y
-
2
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
-
1
,
y
-
2
,
NX
,
NY
),
vec
(
x
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
,
y
,
NX
,
NY
),
vec
(
x
-
1
,
y
+
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
-
1
,
y
+
1
,
NX
,
NY
),
vec
(
x
-
2
,
y
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
Slide
.
pushTriangle
(
vec
(
x
-
2
,
y
,
NX
,
NY
),
vec
(
x
-
2
,
y
-
1
,
NX
,
NY
),
vec
(
x
,
y
+
0.5
,
NX
,
NY
));
}
glm
::
vec3
center
=
Slide
.
getVertices
()[
2
];
float
random
=
comphelper
::
rng
::
uniform_real_distribution
(
-
0.2
,
std
::
nextafter
(
0.2
,
DBL_MAX
));
Slide
.
Operations
.
push_back
(
makeSRotate
(
glm
::
vec3
(
0
,
1
,
0
),
center
,
180
,
true
,
fdiv
(
x
,
NX
)
+
random
,
1.0
));
aLeavingSlide
.
push_back
(
Slide
);
Slide
.
Operations
.
push_back
(
makeSRotate
(
glm
::
vec3
(
0
,
1
,
0
),
center
,
180
,
false
,
fdiv
(
x
,
NX
)
+
random
,
1.0
));
aEnteringSlide
.
push_back
(
Slide
);
}
}
return
makeSimpleTransition
(
aLeavingSlide
,
aEnteringSlide
);
}
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNewsflash
()
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNewsflash
()
{
{
Primitive
Slide
;
Primitive
Slide
;
...
...
slideshow/source/engine/OGLTrans/generic/OGLTrans_TransitionImpl.hxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -236,6 +236,7 @@ std::shared_ptr<OGLTransitionImpl> makeStatic();
...
@@ -236,6 +236,7 @@ std::shared_ptr<OGLTransitionImpl> makeStatic();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeDissolve
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeDissolve
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeVortex
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeVortex
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeRipple
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeRipple
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeGlitter
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNewsflash
();
std
::
shared_ptr
<
OGLTransitionImpl
>
makeNewsflash
();
/** 2D replacements
/** 2D replacements
...
...
slideshow/source/engine/OGLTrans/generic/OGLTrans_TransitionerImpl.cxx
Dosyayı görüntüle @
f6ef7e33
...
@@ -1432,6 +1432,7 @@ public:
...
@@ -1432,6 +1432,7 @@ public:
case
animations
:
:
TransitionSubType
::
CORNERSOUT
:
// 12
case
animations
:
:
TransitionSubType
::
CORNERSOUT
:
// 12
case
animations
:
:
TransitionSubType
::
VERTICAL
:
// 13
case
animations
:
:
TransitionSubType
::
VERTICAL
:
// 13
case
animations
:
:
TransitionSubType
::
HORIZONTAL
:
// 14
case
animations
:
:
TransitionSubType
::
HORIZONTAL
:
// 14
case
animations
:
:
TransitionSubType
::
DIAMOND
:
// 26
case
animations
:
:
TransitionSubType
::
CIRCLE
:
// 27
case
animations
:
:
TransitionSubType
::
CIRCLE
:
// 27
case
animations
:
:
TransitionSubType
::
FANOUTHORIZONTAL
:
// 55
case
animations
:
:
TransitionSubType
::
FANOUTHORIZONTAL
:
// 55
case
animations
:
:
TransitionSubType
::
ACROSS
:
// 108
case
animations
:
:
TransitionSubType
::
ACROSS
:
// 108
...
@@ -1520,6 +1521,9 @@ public:
...
@@ -1520,6 +1521,9 @@ public:
case
animations
:
:
TransitionSubType
::
ACROSS
:
case
animations
:
:
TransitionSubType
::
ACROSS
:
pTransition
=
makeNByMTileFlip
(
8
,
6
);
pTransition
=
makeNByMTileFlip
(
8
,
6
);
break
;
break
;
case
animations
:
:
TransitionSubType
::
DIAMOND
:
pTransition
=
makeGlitter
();
break
;
}
}
}
else
if
(
transitionType
==
animations
::
TransitionType
::
FADE
&&
transitionSubType
==
animations
::
TransitionSubType
::
CROSSFADE
)
{
}
else
if
(
transitionType
==
animations
::
TransitionType
::
FADE
&&
transitionSubType
==
animations
::
TransitionSubType
::
CROSSFADE
)
{
pTransition
=
makeFadeSmoothly
();
pTransition
=
makeFadeSmoothly
();
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment