Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
O
onlyoffice_core
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Boris Kocherov
onlyoffice_core
Commits
1beb5440
Commit
1beb5440
authored
May 15, 2017
by
ElenaSubbotina
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
OdfFormatWriter - transitions
parent
9a9ba4cc
Changes
18
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
361 additions
and
174 deletions
+361
-174
ASCOfficeOdfFile/src/docx/pptx_conversion_context.cpp
ASCOfficeOdfFile/src/docx/pptx_conversion_context.cpp
+1
-1
ASCOfficeOdfFile/src/odf/anim_elements.cpp
ASCOfficeOdfFile/src/odf/anim_elements.cpp
+12
-10
ASCOfficeOdfFile/src/odf/datatypes/smil_transitiontype.cpp
ASCOfficeOdfFile/src/odf/datatypes/smil_transitiontype.cpp
+78
-78
ASCOfficeOdfFileW/source/OdfFormat/object_package.cpp
ASCOfficeOdfFileW/source/OdfFormat/object_package.cpp
+5
-0
ASCOfficeOdfFileW/source/OdfFormat/odp_page_state.cpp
ASCOfficeOdfFileW/source/OdfFormat/odp_page_state.cpp
+1
-1
ASCOfficeOdfFileW/source/Oox2OdfConverter/DocxConverter.cpp
ASCOfficeOdfFileW/source/Oox2OdfConverter/DocxConverter.cpp
+23
-53
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.cpp
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.cpp
+156
-3
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.h
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.h
+19
-1
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/CornerDirectionTransition.h
.../PPTXFormat/Logic/Transitions/CornerDirectionTransition.h
+7
-3
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EightDirectionTransition.h
...e/PPTXFormat/Logic/Transitions/EightDirectionTransition.h
+6
-3
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EmptyTransition.h
...cePPTXFile/PPTXFormat/Logic/Transitions/EmptyTransition.h
+5
-2
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OptionalBlackTransition.h
...le/PPTXFormat/Logic/Transitions/OptionalBlackTransition.h
+9
-5
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OrientationTransition.h
...File/PPTXFormat/Logic/Transitions/OrientationTransition.h
+7
-4
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SideDirectionTransition.h
...le/PPTXFormat/Logic/Transitions/SideDirectionTransition.h
+6
-3
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SplitTransition.h
...cePPTXFile/PPTXFormat/Logic/Transitions/SplitTransition.h
+5
-2
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/WheelTransition.h
...cePPTXFile/PPTXFormat/Logic/Transitions/WheelTransition.h
+5
-2
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/ZoomTransition.h
...icePPTXFile/PPTXFormat/Logic/Transitions/ZoomTransition.h
+6
-3
Common/DocxFormat/Source/DocxFormat/WritingElement.h
Common/DocxFormat/Source/DocxFormat/WritingElement.h
+10
-0
No files found.
ASCOfficeOdfFile/src/docx/pptx_conversion_context.cpp
View file @
1beb5440
...
...
@@ -132,7 +132,7 @@ void pptx_conversion_context::process_layouts()
type
==
odf_types
::
presentation_class
::
header
||
type
==
odf_types
::
presentation_class
::
page_number
)
{
if
(
frame
->
idx_in_owner
<
0
)
if
(
frame
->
idx_in_owner
<
0
)
frame
->
idx_in_owner
=
last_idx_placeHolder
++
;
frame
->
pptx_convert_placeHolder
(
*
this
);
...
...
ASCOfficeOdfFile/src/odf/anim_elements.cpp
View file @
1beb5440
...
...
@@ -58,6 +58,7 @@ const wchar_t * anim_par::name = L"par";
void
anim_par
::
add_attributes
(
const
xml
::
attributes_wc_ptr
&
Attributes
)
{
attlist_
.
add_attributes
(
Attributes
);
}
void
anim_par
::
pptx_convert
(
oox
::
pptx_conversion_context
&
Context
)
...
...
@@ -98,6 +99,7 @@ const wchar_t * anim_seq::name = L"seq";
void
anim_seq
::
add_attributes
(
const
xml
::
attributes_wc_ptr
&
Attributes
)
{
attlist_
.
add_attributes
(
Attributes
);
}
void
anim_seq
::
pptx_convert
(
oox
::
pptx_conversion_context
&
Context
)
...
...
@@ -235,7 +237,7 @@ void anim_transitionFilter::pptx_convert(oox::pptx_conversion_context & Context)
case
smil_transition_type
:
:
randomBarWipe
:
type
=
L"randomBar"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"vertical"
)
dir
=
L"vert"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"horizontal"
)
dir
=
L"horz"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"horizontal"
)
dir
=
L"horz"
;
break
;
case
smil_transition_type
:
:
pushWipe
:
type
=
L"push"
;
...
...
@@ -306,7 +308,7 @@ void anim_transitionFilter::pptx_convert(oox::pptx_conversion_context & Context)
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"topLeft"
)
dir
=
L"rd"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"fromTopLeft"
)
dir
=
L"rd"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"fromBottomLeft"
)
dir
=
L"ru"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"fromBottomLeft"
)
dir
=
L"ru"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"fromTopRight"
)
dir
=
L"ld"
;
if
(
attlist_
.
smil_subtype_
.
get
()
==
L"fromBottomRight"
)
dir
=
L"lu"
;
...
...
ASCOfficeOdfFile/src/odf/datatypes/smil_transitiontype.cpp
View file @
1beb5440
This diff is collapsed.
Click to expand it.
ASCOfficeOdfFileW/source/OdfFormat/object_package.cpp
View file @
1beb5440
...
...
@@ -342,11 +342,14 @@ namespace odf_writer
CP_XML_ATTR
(
L"xmlns:tableooo"
,
L"http://openoffice.org/2009/table"
);
CP_XML_ATTR
(
L"xmlns:drawooo"
,
L"http://openoffice.org/2010/draw"
);
CP_XML_ATTR
(
L"xmlns:chartooo"
,
L"http://openoffice.org/2010/chart"
);
CP_XML_ATTR
(
L"xmlns:smil"
,
L"urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0"
);
CP_XML_ATTR
(
L"xmlns:anim"
,
L"urn:oasis:names:tc:opendocument:xmlns:animation:1.0"
);
CP_XML_ATTR
(
L"xmlns:calcext"
,
L"urn:org:documentfoundation:names:experimental:calc:xmlns:calcext:1.0"
);
CP_XML_ATTR
(
L"xmlns:field"
,
L"urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0"
);
CP_XML_ATTR
(
L"xmlns:formx"
,
L"urn:openoffice:names:experimental:ooxml-odf_writer-interop:xmlns:form:1.0"
);
CP_XML_ATTR
(
L"xmlns:loext"
,
L"urn:org:documentfoundation:names:experimental:office:xmlns:loext:1.0"
);
CP_XML_ATTR
(
L"xmlns:css3t"
,
L"http://www.w3.org/TR/css3-text/"
);
CP_XML_ATTR
(
L"office:version"
,
L"1.2"
);
//CP_XML_NODE(L"office:scripts");
...
...
@@ -402,6 +405,8 @@ namespace odf_writer
CP_XML_ATTR
(
L"xmlns:of"
,
L"urn:oasis:names:tc:opendocument:xmlns:of:1.2"
);
CP_XML_ATTR
(
L"xmlns:xhtml"
,
L"http://www.w3.org/1999/xhtml"
);
CP_XML_ATTR
(
L"xmlns:grddl"
,
L"http://www.w3.org/2003/g/data-view#"
);
CP_XML_ATTR
(
L"xmlns:smil"
,
L"urn:oasis:names:tc:opendocument:xmlns:smil-compatible:1.0"
);
CP_XML_ATTR
(
L"xmlns:anim"
,
L"urn:oasis:names:tc:opendocument:xmlns:animation:1.0"
);
CP_XML_ATTR
(
L"xmlns:officeooo"
,
L"http://openoffice.org/2009/office"
);
CP_XML_ATTR
(
L"xmlns:textooo"
,
L"http://openoffice.org/2013/office"
);
CP_XML_ATTR
(
L"xmlns:tableooo"
,
L"http://openoffice.org/2009/table"
);
...
...
ASCOfficeOdfFileW/source/OdfFormat/odp_page_state.cpp
View file @
1beb5440
...
...
@@ -191,7 +191,7 @@ void odp_page_state::set_transition_type(int val)
{
anim_transitionFilter
*
trans
=
dynamic_cast
<
anim_transitionFilter
*>
(
page_transaction
.
get
());
if
(
trans
)
trans
->
attlist_
.
smil_type_
=
odf_types
::
smil_transition_type
(
odf_types
::
smil_transition_type
::
dissolve
);
trans
->
attlist_
.
smil_type_
=
odf_types
::
smil_transition_type
(
(
odf_types
::
smil_transition_type
::
type
)
val
);
}
void
odp_page_state
::
set_transition_subtype
(
std
::
wstring
val
)
{
...
...
ASCOfficeOdfFileW/source/Oox2OdfConverter/DocxConverter.cpp
View file @
1beb5440
...
...
@@ -253,116 +253,88 @@ void DocxConverter::convert(OOX::WritingElement *oox_unknown)
{
case
OOX
:
:
et_w_ptab
:
{
OOX
::
Logic
::
CPTab
*
pT
=
dynamic_cast
<
OOX
::
Logic
::
CPTab
*>
(
oox_unknown
);
convert
(
pT
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CPTab
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_sdt
:
{
OOX
::
Logic
::
CSdt
*
pP
=
dynamic_cast
<
OOX
::
Logic
::
CSdt
*>
(
oox_unknown
);
convert
(
pP
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CSdt
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_fldSimple
:
{
OOX
::
Logic
::
CFldSimple
*
pFldS
=
dynamic_cast
<
OOX
::
Logic
::
CFldSimple
*>
(
oox_unknown
);
convert
(
pFldS
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CFldSimple
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_r
:
{
OOX
::
Logic
::
CRun
*
pRun
=
dynamic_cast
<
OOX
::
Logic
::
CRun
*>
(
oox_unknown
);
convert
(
pRun
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CRun
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_p
:
{
OOX
::
Logic
::
CParagraph
*
pP
=
dynamic_cast
<
OOX
::
Logic
::
CParagraph
*>
(
oox_unknown
);
convert
(
pP
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CParagraph
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_ins
:
{
OOX
::
Logic
::
CIns
*
pIns
=
dynamic_cast
<
OOX
::
Logic
::
CIns
*>
(
oox_unknown
);
convert
(
pIns
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CIns
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_del
:
{
OOX
::
Logic
::
CDel
*
pDel
=
dynamic_cast
<
OOX
::
Logic
::
CDel
*>
(
oox_unknown
);
convert
(
pDel
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CDel
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_smartTag
:
{
OOX
::
Logic
::
CSmartTag
*
pTag
=
dynamic_cast
<
OOX
::
Logic
::
CSmartTag
*>
(
oox_unknown
);
convert
(
pTag
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CSmartTag
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_pPr
:
{
OOX
::
Logic
::
CParagraphProperty
*
pPProp
=
dynamic_cast
<
OOX
::
Logic
::
CParagraphProperty
*>
(
oox_unknown
);
convert
(
pPProp
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CParagraphProperty
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_hyperlink
:
{
OOX
::
Logic
::
CHyperlink
*
pH
=
dynamic_cast
<
OOX
::
Logic
::
CHyperlink
*>
(
oox_unknown
);
convert
(
pH
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CHyperlink
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_rPr
:
{
OOX
::
Logic
::
CRunProperty
*
pRProp
=
dynamic_cast
<
OOX
::
Logic
::
CRunProperty
*>
(
oox_unknown
);
convert
(
pRProp
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CRunProperty
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_mc_alternateContent
:
{
OOX
::
Logic
::
CAlternateContent
*
pAltCont
=
dynamic_cast
<
OOX
::
Logic
::
CAlternateContent
*>
(
oox_unknown
);
convert
(
pAltCont
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CAlternateContent
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_drawing
:
{
OOX
::
Logic
::
CDrawing
*
pDrawing
=
dynamic_cast
<
OOX
::
Logic
::
CDrawing
*>
(
oox_unknown
);
convert
(
pDrawing
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CDrawing
*>
(
oox_unknown
));
}
break
;
//case OOX::et_c_chart:
//{
// PPTX::Logic::ChartRec* pChart = dynamic_cast<PPTX::Logic::ChartRec*>(oox_unknown);
// convert(pChart);
//}break;
//case OOX::et_w_Shape:
//{
// OOX::Logic::CShape* pShape = dynamic_cast<OOX::Logic::CShape*>(oox_unknown);
// convert(pShape);
//}break;
case
OOX
:
:
et_w_pict
:
{
OOX
::
Logic
::
CPicture
*
pPic
=
dynamic_cast
<
OOX
::
Logic
::
CPicture
*>
(
oox_unknown
);
convert
(
pPic
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CPicture
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_object
:
{
OOX
::
Logic
::
CObject
*
pObj
=
dynamic_cast
<
OOX
::
Logic
::
CObject
*>
(
oox_unknown
);
convert
(
pObj
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CObject
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_pic_pic
:
case
OOX
:
:
et_pic
:
case
OOX
:
:
et_p_pic
:
{
PPTX
::
Logic
::
Pic
*
pPic
=
dynamic_cast
<
PPTX
::
Logic
::
Pic
*>
(
oox_unknown
);
convert
(
pPic
);
convert
(
dynamic_cast
<
PPTX
::
Logic
::
Pic
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_GroupShape
:
case
OOX
:
:
et_p_ShapeTree
:
{
PPTX
::
Logic
::
SpTree
*
pGroupShape
=
dynamic_cast
<
PPTX
::
Logic
::
SpTree
*>
(
oox_unknown
);
convert
(
pGroupShape
);
convert
(
dynamic_cast
<
PPTX
::
Logic
::
SpTree
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_commentRangeEnd
:
{
OOX
::
Logic
::
CCommentRangeEnd
*
pCommEnd
=
dynamic_cast
<
OOX
::
Logic
::
CCommentRangeEnd
*>
(
oox_unknown
);
convert
(
pCommEnd
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CCommentRangeEnd
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_commentRangeStart
:
{
OOX
::
Logic
::
CCommentRangeStart
*
pCommStart
=
dynamic_cast
<
OOX
::
Logic
::
CCommentRangeStart
*>
(
oox_unknown
);
convert
(
pCommStart
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CCommentRangeStart
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_commentReference
:
{
convert
(
dynamic_cast
<
OOX
::
Logic
::
CCommentReference
*>
(
oox_unknown
));
//если нет Start - означает начало с предыдущего Run
convert
(
dynamic_cast
<
OOX
::
Logic
::
CCommentReference
*>
(
oox_unknown
));
//если нет Start - означает начало с предыдущего Run
}
break
;
case
OOX
:
:
et_w_footnoteReference
:
{
...
...
@@ -386,13 +358,11 @@ void DocxConverter::convert(OOX::WritingElement *oox_unknown)
}
break
;
case
OOX
:
:
et_w_tr
:
{
OOX
::
Logic
::
CTr
*
pRow
=
dynamic_cast
<
OOX
::
Logic
::
CTr
*>
(
oox_unknown
);
convert
(
pRow
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CTr
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_tc
:
{
OOX
::
Logic
::
CTc
*
pCell
=
dynamic_cast
<
OOX
::
Logic
::
CTc
*>
(
oox_unknown
);
convert
(
pCell
);
convert
(
dynamic_cast
<
OOX
::
Logic
::
CTc
*>
(
oox_unknown
));
}
break
;
case
OOX
:
:
et_w_bookmarkStart
:
{
...
...
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.cpp
View file @
1beb5440
...
...
@@ -42,6 +42,16 @@
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Timing/Seq.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Timing/CTn.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EmptyTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OrientationTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EightDirectionTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OptionalBlackTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SideDirectionTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/CornerDirectionTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/WheelTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SplitTransition.h"
#include "../../../ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/ZoomTransition.h"
#include <boost/lexical_cast.hpp>
#include "../OdfFormat/odp_conversion_context.h"
...
...
@@ -365,13 +375,18 @@ void PptxConverter::convert_slides()
convert_slide
(
&
slide
->
Layout
->
cSld
,
current_txStyles
,
true
,
bShowLayoutMasterSp
,
3
);
if
(
slide
->
Layout
->
transition
.
IsInit
())
convert
(
slide
->
Layout
->
transition
.
GetPointer
());
else
convert
(
slide
->
Master
->
transition
.
GetPointer
());
if
(
slide
->
Layout
->
timing
.
IsInit
())
convert
(
slide
->
Layout
->
timing
.
GetPointer
());
else
convert
(
slide
->
Master
->
timing
.
GetPointer
());
if
(
!
presentation
->
notesMasterIdLst
.
empty
())
{
rId
=
presentation
->
notesMasterIdLst
[
0
].
rid
.
get
();
smart_ptr
<
PPTX
::
NotesMaster
>
notes_master
=
((
*
presentation
)[
rId
]).
smart_dynamic_cast
<
PPTX
::
NotesMaster
>
();
convert
(
notes_master
.
operator
->
());
}
//add note master
odp_context
->
end_master_slide
();
m_mapMasters
.
insert
(
std
::
make_pair
(
master_name
,
master_style_name
));
...
...
@@ -490,6 +505,24 @@ void PptxConverter::convert(OOX::WritingElement *oox_unknown)
switch
(
oox_unknown
->
getType
())
{
case
OOX
:
:
et_p_EmptyTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
EmptyTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_OrientationTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
OrientationTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_EightDirectionTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
EightDirectionTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_OptionalBlackTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
OptionalBlackTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_CornerDirectionTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
CornerDirectionTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_SideDirectionTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
SideDirectionTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_WheelTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
WheelTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_SplitTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
SplitTransition
*>
(
oox_unknown
));
break
;
case
OOX
:
:
et_p_ZoomTransition
:
convert
(
dynamic_cast
<
PPTX
::
Logic
::
ZoomTransition
*>
(
oox_unknown
));
break
;
default:
{
OoxConverter
::
convert
(
oox_unknown
);
...
...
@@ -542,8 +575,7 @@ void PptxConverter::convert( PPTX::Logic::Transition *oox_transition )
if
(
oox_transition
->
dur
.
is_init
())
odp_context
->
current_slide
().
set_transition_duration
(
*
oox_transition
->
dur
);
odp_context
->
current_slide
().
set_transition_type
(
5
);
//convert(oox_transition->base.operator->());
convert
(
oox_transition
->
base
.
base
.
operator
->
());
//if (oox_transition->sndAc.is_init() && oox_transition->sndAc->stSnd.is_init())
//{
...
...
@@ -591,6 +623,127 @@ void PptxConverter::convert(PPTX::Logic::TimeNodeBase *oox_time_base)
odp_context
->
current_slide
().
end_timing_seq
();
}
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
EmptyTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
if
(
oox_transition
->
name
==
L"random"
)
odp_context
->
current_slide
().
set_transition_type
(
40
);
if
(
oox_transition
->
name
==
L"circle"
)
odp_context
->
current_slide
().
set_transition_type
(
16
);
if
(
oox_transition
->
name
==
L"dissolve"
)
odp_context
->
current_slide
().
set_transition_type
(
39
);
if
(
oox_transition
->
name
==
L"diamond"
)
{
odp_context
->
current_slide
().
set_transition_type
(
11
);
odp_context
->
current_slide
().
set_transition_subtype
(
L"diamond"
);
}
if
(
oox_transition
->
name
==
L"newsflash"
)
odp_context
->
current_slide
().
set_transition_type
(
5
);
if
(
oox_transition
->
name
==
L"plus"
)
odp_context
->
current_slide
().
set_transition_type
(
2
);
//??
if
(
oox_transition
->
name
==
L"wedge"
)
odp_context
->
current_slide
().
set_transition_type
(
24
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
OrientationTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
if
(
oox_transition
->
name
==
L"blinds"
)
odp_context
->
current_slide
().
set_transition_type
(
38
);
if
(
oox_transition
->
name
==
L"checker"
)
odp_context
->
current_slide
().
set_transition_type
(
37
);
if
(
oox_transition
->
name
==
L"comb"
)
{
odp_context
->
current_slide
().
set_transition_type
(
34
);
if
(
oox_transition
->
dir
.
IsInit
())
{
if
(
oox_transition
->
dir
->
get
()
==
L"horz"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"combHorizontal"
);
if
(
oox_transition
->
dir
->
get
()
==
L"vert"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"combVertical"
);
}
}
if
(
oox_transition
->
name
==
L"randomBar"
)
odp_context
->
current_slide
().
set_transition_type
(
40
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
EightDirectionTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
if
(
oox_transition
->
name
==
L"cover"
)
odp_context
->
current_slide
().
set_transition_type
(
1
);
if
(
oox_transition
->
name
==
L"pull"
)
odp_context
->
current_slide
().
set_transition_type
(
35
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
OptionalBlackTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
if
(
oox_transition
->
name
==
L"cut"
)
odp_context
->
current_slide
().
set_transition_type
(
36
);
if
(
oox_transition
->
name
==
L"fade"
)
odp_context
->
current_slide
().
set_transition_type
(
36
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
SideDirectionTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
std
::
wstring
dir
;
if
(
oox_transition
->
dir
.
IsInit
())
dir
=
oox_transition
->
dir
->
get
();
if
(
oox_transition
->
name
==
L"push"
)
{
odp_context
->
current_slide
().
set_transition_type
(
34
);
if
(
dir
==
L"d"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"fromTop"
);
if
(
dir
==
L"l"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"fromRight"
);
if
(
dir
==
L"r"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"fromLeft"
);
if
(
dir
==
L"u"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"fromBottom"
);
}
if
(
oox_transition
->
name
==
L"wipe"
)
odp_context
->
current_slide
().
set_transition_type
(
0
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
CornerDirectionTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
//name == strips
odp_context
->
current_slide
().
set_transition_type
(
4
);
if
(
oox_transition
->
dir
.
IsInit
())
{
if
(
oox_transition
->
dir
->
get
()
==
L"rd"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"horizontalLeft"
);
if
(
oox_transition
->
dir
->
get
()
==
L"lu"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"horizontalRight"
);
if
(
oox_transition
->
dir
->
get
()
==
L"ld"
)
odp_context
->
current_slide
().
set_transition_subtype
(
L"verticalRight"
);
}
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
WheelTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
//name == wheel
odp_context
->
current_slide
().
set_transition_type
(
21
);
switch
(
oox_transition
->
spokes
.
get_value_or
(
0
))
{
case
1
:
odp_context
->
current_slide
().
set_transition_subtype
(
L"oneBlade"
);
break
;
case
3
:
odp_context
->
current_slide
().
set_transition_subtype
(
L"threeBlade"
);
break
;
case
4
:
odp_context
->
current_slide
().
set_transition_subtype
(
L"fourBlade"
);
break
;
case
8
:
odp_context
->
current_slide
().
set_transition_subtype
(
L"eightBlade"
);
break
;
}
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
SplitTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
//name == split
odp_context
->
current_slide
().
set_transition_type
(
8
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
ZoomTransition
*
oox_transition
)
{
if
(
!
oox_transition
)
return
;
//name == zoom
odp_context
->
current_slide
().
set_transition_type
(
11
);
}
void
PptxConverter
::
convert
(
PPTX
::
Logic
::
CTn
*
oox_time_common
)
{
if
(
!
oox_time_common
)
return
;
...
...
ASCOfficeOdfFileW/source/Oox2OdfConverter/PptxConverter.h
View file @
1beb5440
...
...
@@ -69,7 +69,15 @@ namespace PPTX
class
TxStyles
;
class
TimeNodeBase
;
class
CTn
;
class
EmptyTransition
;
class
OrientationTransition
;
class
EightDirectionTransition
;
class
OptionalBlackTransition
;
class
CornerDirectionTransition
;
class
SideDirectionTransition
;
class
WheelTransition
;
class
SplitTransition
;
class
ZoomTransition
;
}
}
...
...
@@ -136,6 +144,16 @@ namespace Oox2Odf
void
convert
(
PPTX
::
Logic
::
Ln
*
oox_ln_border
,
std
::
wstring
&
odf_border
);
private:
void
convert
(
PPTX
::
Logic
::
EmptyTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
OrientationTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
EightDirectionTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
OptionalBlackTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
CornerDirectionTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
SideDirectionTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
WheelTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
SplitTransition
*
oox_transition
);
void
convert
(
PPTX
::
Logic
::
ZoomTransition
*
oox_transition
);
PPTX
::
Folder
*
pptx_document
;
PPTX
::
Presentation
*
presentation
;
cpdoccore
::
odf_writer
::
package
::
odf_document
*
output_document
;
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/CornerDirectionTransition.h
View file @
1beb5440
...
...
@@ -45,7 +45,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
CornerDirectionTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_CornerDirectionTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EightDirectionTransition.h
View file @
1beb5440
...
...
@@ -45,7 +45,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
EightDirectionTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_EightDirectionTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
@@ -60,7 +64,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:"
)
+
name
,
oAttr
);
}
public:
std
::
wstring
name
;
nullable_limit
<
Limit
::
EightDirectionVal
>
dir
;
protected:
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/EmptyTransition.h
View file @
1beb5440
...
...
@@ -44,7 +44,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
EmptyTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_EmptyTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
@@ -55,7 +59,6 @@ namespace PPTX
return
_T
(
"<p:"
)
+
name
+
_T
(
"/>"
);
}
public:
std
::
wstring
name
;
protected:
virtual
void
FillParentPointersForChilds
(){};
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OptionalBlackTransition.h
View file @
1beb5440
...
...
@@ -44,7 +44,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
OptionalBlackTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_OptionalBlackTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
@@ -59,9 +63,9 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:"
)
+
name
,
oAttr
);
}
public:
std
::
wstring
name
;
nullable_bool
thruBlk
;
protected:
virtual
void
FillParentPointersForChilds
(){};
};
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/OrientationTransition.h
View file @
1beb5440
...
...
@@ -45,7 +45,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
OrientationTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_OrientationTransition
;
}
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
@@ -60,7 +64,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:"
)
+
name
,
oAttr
);
}
public:
std
::
wstring
name
;
nullable_limit
<
Limit
::
Orient
>
dir
;
protected:
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SideDirectionTransition.h
View file @
1beb5440
...
...
@@ -45,7 +45,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
SideDirectionTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_SideDirectionTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
name
=
XmlUtils
::
GetNameNoNS
(
node
.
GetName
());
...
...
@@ -60,7 +64,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:"
)
+
name
,
oAttr
);
}
public:
std
::
wstring
name
;
nullable_limit
<
Limit
::
SideDirectionVal
>
dir
;
protected:
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/SplitTransition.h
View file @
1beb5440
...
...
@@ -46,7 +46,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
SplitTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_SplitTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
node
.
ReadAttributeBase
(
L"dir"
,
dir
);
...
...
@@ -62,7 +66,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:split"
),
oAttr
);
}
public:
nullable_limit
<
Limit
::
InOutDirectionVal
>
dir
;
nullable_limit
<
Limit
::
Orient
>
orient
;
protected:
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/WheelTransition.h
View file @
1beb5440
...
...
@@ -44,7 +44,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
WheelTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_WheelTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
node
.
ReadAttributeBase
(
L"spokes"
,
spokes
);
...
...
@@ -58,7 +62,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:wheel"
),
oAttr
);
}
public:
nullable_int
spokes
;
protected:
virtual
void
FillParentPointersForChilds
(){};
...
...
ASCOfficePPTXFile/PPTXFormat/Logic/Transitions/ZoomTransition.h
View file @
1beb5440
...
...
@@ -45,7 +45,11 @@ namespace PPTX
public:
PPTX_LOGIC_BASE
(
ZoomTransition
)
public:
virtual
OOX
::
EElementType
getType
()
const
{
return
OOX
::
et_p_ZoomTransition
;
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
node
)
{
node
.
ReadAttributeBase
(
L"dir"
,
dir
);
...
...
@@ -59,7 +63,6 @@ namespace PPTX
return
XmlUtils
::
CreateNode
(
_T
(
"p:zoom"
),
oAttr
);
}
public:
nullable_limit
<
Limit
::
InOutDirectionVal
>
dir
;
protected:
virtual
void
FillParentPointersForChilds
(){};
...
...
Common/DocxFormat/Source/DocxFormat/WritingElement.h
View file @
1beb5440
...
...
@@ -376,6 +376,16 @@ namespace OOX
et_p_br
,
et_p_MathPara
,
et_p_EmptyTransition
,
et_p_OrientationTransition
,
et_p_EightDirectionTransition
,
et_p_OptionalBlackTransition
,
et_p_CornerDirectionTransition
,
et_p_SideDirectionTransition
,
et_p_WheelTransition
,
et_p_SplitTransition
,
et_p_ZoomTransition
,
et_a_textFit
,
et_a_hyperlink
,
et_a_fld
,
...
...
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