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
bb37e348
Commit
bb37e348
authored
Dec 23, 2017
by
ElenaSubbotina
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
6b5e03df
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
79 additions
and
78 deletions
+79
-78
Common/DocxFormat/Source/DocxFormat/Comments.h
Common/DocxFormat/Source/DocxFormat/Comments.h
+79
-78
No files found.
Common/DocxFormat/Source/DocxFormat/Comments.h
View file @
bb37e348
...
@@ -51,18 +51,17 @@ namespace OOX
...
@@ -51,18 +51,17 @@ namespace OOX
{
{
public:
public:
WritingElement_AdditionConstructors
(
CComment
)
WritingElement_AdditionConstructors
(
CComment
)
CComment
()
CComment
()
{
{
}
}
virtual
~
CComment
()
virtual
~
CComment
()
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
public:
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
ReadAttributes
(
oReader
);
ReadAttributes
(
oReader
);
...
@@ -75,74 +74,74 @@ namespace OOX
...
@@ -75,74 +74,74 @@ namespace OOX
std
::
wstring
sName
=
oReader
.
GetName
();
std
::
wstring
sName
=
oReader
.
GetName
();
WritingElement
*
pItem
=
NULL
;
WritingElement
*
pItem
=
NULL
;
/*if (
_T("w:altChunk") ==
sName )
/*if (
L"w:altChunk" ==
sName )
pItem = new Logic::AltChunk( oItem );
pItem = new Logic::AltChunk( oItem );
else */
if
(
_T
(
"w:bookmarkEnd"
)
==
sName
)
else */
if
(
L"w:bookmarkEnd"
==
sName
)
pItem
=
new
Logic
::
CBookmarkEnd
(
oReader
);
pItem
=
new
Logic
::
CBookmarkEnd
(
oReader
);
else
if
(
_T
(
"w:bookmarkStart"
)
==
sName
)
else
if
(
L"w:bookmarkStart"
==
sName
)
pItem
=
new
Logic
::
CBookmarkStart
(
oReader
);
pItem
=
new
Logic
::
CBookmarkStart
(
oReader
);
else
if
(
_T
(
"w:commentRangeEnd"
)
==
sName
)
else
if
(
L"w:commentRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CCommentRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CCommentRangeEnd
(
oReader
);
else
if
(
_T
(
"w:commentRangeStart"
)
==
sName
)
else
if
(
L"w:commentRangeStart"
==
sName
)
pItem
=
new
Logic
::
CCommentRangeStart
(
oReader
);
pItem
=
new
Logic
::
CCommentRangeStart
(
oReader
);
//else if (
_T("w:customXml") ==
sName )
//else if (
L"w:customXml" ==
sName )
// pItem = new Logic::CCustomXml( oReader );
// pItem = new Logic::CCustomXml( oReader );
else
if
(
_T
(
"w:customXmlDelRangeEnd"
)
==
sName
)
else
if
(
L"w:customXmlDelRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlDelRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlDelRangeEnd
(
oReader
);
else
if
(
_T
(
"w:customXmlDelRangeStart"
)
==
sName
)
else
if
(
L"w:customXmlDelRangeStart"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlDelRangeStart
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlDelRangeStart
(
oReader
);
else
if
(
_T
(
"w:customXmlInsRangeEnd"
)
==
sName
)
else
if
(
L"w:customXmlInsRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlInsRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlInsRangeEnd
(
oReader
);
else
if
(
_T
(
"w:customXmlInsRangeStart"
)
==
sName
)
else
if
(
L"w:customXmlInsRangeStart"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlInsRangeStart
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlInsRangeStart
(
oReader
);
else
if
(
_T
(
"w:customXmlMoveFromRangeEnd"
)
==
sName
)
else
if
(
L"w:customXmlMoveFromRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlMoveFromRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlMoveFromRangeEnd
(
oReader
);
else
if
(
_T
(
"w:customXmlMoveFromRangeStart"
)
==
sName
)
else
if
(
L"w:customXmlMoveFromRangeStart"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlMoveFromRangeStart
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlMoveFromRangeStart
(
oReader
);
else
if
(
_T
(
"w:customXmlMoveToRangeEnd"
)
==
sName
)
else
if
(
L"w:customXmlMoveToRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlMoveToRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlMoveToRangeEnd
(
oReader
);
else
if
(
_T
(
"w:customXmlMoveToRangeStart"
)
==
sName
)
else
if
(
L"w:customXmlMoveToRangeStart"
==
sName
)
pItem
=
new
Logic
::
CCustomXmlMoveToRangeStart
(
oReader
);
pItem
=
new
Logic
::
CCustomXmlMoveToRangeStart
(
oReader
);
else
if
(
_T
(
"w:del"
)
==
sName
)
else
if
(
L"w:del"
==
sName
)
pItem
=
new
Logic
::
CDel
(
oReader
);
pItem
=
new
Logic
::
CDel
(
oReader
);
else
if
(
_T
(
"w:ins"
)
==
sName
)
else
if
(
L"w:ins"
==
sName
)
pItem
=
new
Logic
::
CIns
(
oReader
);
pItem
=
new
Logic
::
CIns
(
oReader
);
else
if
(
_T
(
"w:moveFrom"
)
==
sName
)
else
if
(
L"w:moveFrom"
==
sName
)
pItem
=
new
Logic
::
CMoveFrom
(
oReader
);
pItem
=
new
Logic
::
CMoveFrom
(
oReader
);
else
if
(
_T
(
"w:moveFromRangeEnd"
)
==
sName
)
else
if
(
L"w:moveFromRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CMoveFromRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CMoveFromRangeEnd
(
oReader
);
else
if
(
_T
(
"w:moveFromRangeStart"
)
==
sName
)
else
if
(
L"w:moveFromRangeStart"
==
sName
)
pItem
=
new
Logic
::
CMoveFromRangeStart
(
oReader
);
pItem
=
new
Logic
::
CMoveFromRangeStart
(
oReader
);
else
if
(
_T
(
"w:moveTo"
)
==
sName
)
else
if
(
L"w:moveTo"
==
sName
)
pItem
=
new
Logic
::
CMoveTo
(
oReader
);
pItem
=
new
Logic
::
CMoveTo
(
oReader
);
else
if
(
_T
(
"w:moveToRangeEnd"
)
==
sName
)
else
if
(
L"w:moveToRangeEnd"
==
sName
)
pItem
=
new
Logic
::
CMoveToRangeEnd
(
oReader
);
pItem
=
new
Logic
::
CMoveToRangeEnd
(
oReader
);
else
if
(
_T
(
"w:moveToRangeStart"
)
==
sName
)
else
if
(
L"w:moveToRangeStart"
==
sName
)
pItem
=
new
Logic
::
CMoveToRangeStart
(
oReader
);
pItem
=
new
Logic
::
CMoveToRangeStart
(
oReader
);
else
if
(
_T
(
"m:oMath"
)
==
sName
)
else
if
(
L"m:oMath"
==
sName
)
pItem
=
new
Logic
::
COMath
(
oReader
);
pItem
=
new
Logic
::
COMath
(
oReader
);
else
if
(
_T
(
"m:oMathPara"
)
==
sName
)
else
if
(
L"m:oMathPara"
==
sName
)
pItem
=
new
Logic
::
COMathPara
(
oReader
);
pItem
=
new
Logic
::
COMathPara
(
oReader
);
else
if
(
_T
(
"w:p"
)
==
sName
)
else
if
(
L"w:p"
==
sName
)
pItem
=
new
Logic
::
CParagraph
(
oReader
);
pItem
=
new
Logic
::
CParagraph
(
oReader
);
else
if
(
_T
(
"w:permEnd"
)
==
sName
)
else
if
(
L"w:permEnd"
==
sName
)
pItem
=
new
Logic
::
CPermEnd
(
oReader
);
pItem
=
new
Logic
::
CPermEnd
(
oReader
);
else
if
(
_T
(
"w:permStart"
)
==
sName
)
else
if
(
L"w:permStart"
==
sName
)
pItem
=
new
Logic
::
CPermStart
(
oReader
);
pItem
=
new
Logic
::
CPermStart
(
oReader
);
else
if
(
_T
(
"w:proofErr"
)
==
sName
)
else
if
(
L"w:proofErr"
==
sName
)
pItem
=
new
Logic
::
CProofErr
(
oReader
);
pItem
=
new
Logic
::
CProofErr
(
oReader
);
else
if
(
_T
(
"w:sdt"
)
==
sName
)
else
if
(
L"w:sdt"
==
sName
)
pItem
=
new
Logic
::
CSdt
(
oReader
);
pItem
=
new
Logic
::
CSdt
(
oReader
);
else
if
(
_T
(
"w:tbl"
)
==
sName
)
else
if
(
L"w:tbl"
==
sName
)
pItem
=
new
Logic
::
CTbl
(
oReader
);
pItem
=
new
Logic
::
CTbl
(
oReader
);
if
(
pItem
)
if
(
pItem
)
m_arrItems
.
push_back
(
pItem
);
m_arrItems
.
push_back
(
pItem
);
}
}
}
}
virtual
std
::
wstring
toXML
()
const
virtual
std
::
wstring
toXML
()
const
{
{
std
::
wstring
sResult
=
_T
(
""
)
;
std
::
wstring
sResult
=
L""
;
return
sResult
;
return
sResult
;
}
}
...
@@ -160,7 +159,7 @@ namespace OOX
...
@@ -160,7 +159,7 @@ namespace OOX
std
::
wstring
getTextArr
(
const
std
::
list
<
WritingElement
*
>
&
arrItems
,
bool
&
bFirstPar
)
const
std
::
wstring
getTextArr
(
const
std
::
list
<
WritingElement
*
>
&
arrItems
,
bool
&
bFirstPar
)
const
{
{
std
::
wstring
sRes
;
std
::
wstring
sRes
;
for
(
std
::
list
<
WritingElement
*>::
const_iterator
it
=
m_arrItems
.
begin
();
it
!=
m_
arrItems
.
end
();
it
++
)
for
(
std
::
list
<
WritingElement
*>::
const_iterator
it
=
arrItems
.
begin
();
it
!=
arrItems
.
end
();
it
++
)
{
{
WritingElement
*
item
=
*
it
;
WritingElement
*
item
=
*
it
;
if
(
item
==
NULL
)
continue
;
if
(
item
==
NULL
)
continue
;
...
@@ -221,7 +220,7 @@ namespace OOX
...
@@ -221,7 +220,7 @@ namespace OOX
if
(
bFirstPar
)
if
(
bFirstPar
)
bFirstPar
=
false
;
bFirstPar
=
false
;
else
else
sRes
+=
_T
(
"
\n
"
)
;
sRes
+=
L"
\n
"
;
OOX
::
Logic
::
CParagraph
*
pParagraph
=
static_cast
<
OOX
::
Logic
::
CParagraph
*>
(
item
);
OOX
::
Logic
::
CParagraph
*
pParagraph
=
static_cast
<
OOX
::
Logic
::
CParagraph
*>
(
item
);
sRes
+=
getTextArr
(
pParagraph
->
m_arrItems
,
bFirstPar
);
sRes
+=
getTextArr
(
pParagraph
->
m_arrItems
,
bFirstPar
);
}
}
...
@@ -234,7 +233,7 @@ namespace OOX
...
@@ -234,7 +233,7 @@ namespace OOX
break
;
break
;
case
OOX
:
:
et_w_cr
:
case
OOX
:
:
et_w_cr
:
case
OOX
:
:
et_w_br
:
case
OOX
:
:
et_w_br
:
sRes
+=
_T
(
"
\n
"
)
;
sRes
+=
L"
\n
"
;
break
;
break
;
case
OOX
:
:
et_w_nonBreakHyphen
:
case
OOX
:
:
et_w_nonBreakHyphen
:
{
{
...
@@ -243,7 +242,7 @@ namespace OOX
...
@@ -243,7 +242,7 @@ namespace OOX
break
;
break
;
}
}
case
OOX
:
:
et_w_tab
:
case
OOX
:
:
et_w_tab
:
sRes
+=
_T
(
" "
)
;
sRes
+=
L" "
;
break
;
break
;
case
OOX
:
:
et_w_sym
:
case
OOX
:
:
et_w_sym
:
{
{
...
@@ -271,14 +270,13 @@ namespace OOX
...
@@ -271,14 +270,13 @@ namespace OOX
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
// Читаем атрибуты
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
_T
(
"w:author"
)
,
m_oAuthor
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
L"w:author"
,
m_oAuthor
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w:date"
)
,
m_oDate
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w:date"
,
m_oDate
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"oodata"
)
,
m_oOOData
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"oodata"
,
m_oOOData
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w:id"
)
,
m_oId
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w:id"
,
m_oId
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w:initials"
)
,
m_oInitials
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w:initials"
,
m_oInitials
)
WritingElement_ReadAttributes_End
(
oReader
)
WritingElement_ReadAttributes_End
(
oReader
)
}
}
public:
public:
...
@@ -309,7 +307,10 @@ namespace OOX
...
@@ -309,7 +307,10 @@ namespace OOX
virtual
~
CComments
()
virtual
~
CComments
()
{
{
for
(
size_t
i
=
0
,
length
=
m_arrComments
.
size
();
i
<
length
;
++
i
)
for
(
size_t
i
=
0
,
length
=
m_arrComments
.
size
();
i
<
length
;
++
i
)
{
if
(
m_arrComments
[
i
])
delete
m_arrComments
[
i
];
if
(
m_arrComments
[
i
])
delete
m_arrComments
[
i
];
m_arrComments
[
i
]
=
NULL
;
}
m_arrComments
.
clear
();
m_arrComments
.
clear
();
}
}
virtual
void
read
(
const
CPath
&
oFilePath
)
virtual
void
read
(
const
CPath
&
oFilePath
)
...
@@ -325,13 +326,13 @@ namespace OOX
...
@@ -325,13 +326,13 @@ namespace OOX
return
;
return
;
std
::
wstring
sName
=
oReader
.
GetName
();
std
::
wstring
sName
=
oReader
.
GetName
();
if
(
_T
(
"w:comments"
)
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
if
(
L"w:comments"
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
{
{
int
nNumberingDepth
=
oReader
.
GetDepth
();
int
nNumberingDepth
=
oReader
.
GetDepth
();
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
{
{
sName
=
oReader
.
GetName
();
sName
=
oReader
.
GetName
();
if
(
_T
(
"w:comment"
)
==
sName
)
if
(
L"w:comment"
==
sName
)
m_arrComments
.
push_back
(
new
CComment
(
oReader
)
);
m_arrComments
.
push_back
(
new
CComment
(
oReader
)
);
}
}
}
}
...
@@ -367,19 +368,19 @@ namespace OOX
...
@@ -367,19 +368,19 @@ namespace OOX
virtual
~
CCommentExt
()
virtual
~
CCommentExt
()
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
ReadAttributes
(
oReader
);
ReadAttributes
(
oReader
);
if
(
!
oReader
.
IsEmptyNode
()
)
if
(
!
oReader
.
IsEmptyNode
()
)
oReader
.
ReadTillEnd
();
oReader
.
ReadTillEnd
();
}
}
virtual
std
::
wstring
toXML
()
const
virtual
std
::
wstring
toXML
()
const
{
{
std
::
wstring
sResult
=
_T
(
""
)
;
std
::
wstring
sResult
=
L""
;
return
sResult
;
return
sResult
;
}
}
...
@@ -390,12 +391,11 @@ namespace OOX
...
@@ -390,12 +391,11 @@ namespace OOX
private:
private:
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
// Читаем атрибуты
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
_T
(
"w15:paraId"
),
m_oParaId
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
L"w15:paraId"
,
m_oParaId
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w15:paraIdParent"
),
m_oParaIdParent
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w15:paraIdParent"
,
m_oParaIdParent
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w15:done"
),
m_oDone
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w15:done"
,
m_oDone
)
WritingElement_ReadAttributes_End
(
oReader
)
WritingElement_ReadAttributes_End
(
oReader
)
}
}
public:
public:
...
@@ -418,7 +418,10 @@ namespace OOX
...
@@ -418,7 +418,10 @@ namespace OOX
virtual
~
CCommentsExt
()
virtual
~
CCommentsExt
()
{
{
for
(
size_t
i
=
0
,
length
=
m_arrComments
.
size
();
i
<
length
;
++
i
)
for
(
size_t
i
=
0
,
length
=
m_arrComments
.
size
();
i
<
length
;
++
i
)
{
if
(
m_arrComments
[
i
])
delete
m_arrComments
[
i
];
if
(
m_arrComments
[
i
])
delete
m_arrComments
[
i
];
m_arrComments
[
i
]
=
NULL
;
}
m_arrComments
.
clear
();
m_arrComments
.
clear
();
}
}
virtual
void
read
(
const
CPath
&
oFilePath
)
virtual
void
read
(
const
CPath
&
oFilePath
)
...
@@ -434,13 +437,13 @@ namespace OOX
...
@@ -434,13 +437,13 @@ namespace OOX
return
;
return
;
std
::
wstring
sName
=
oReader
.
GetName
();
std
::
wstring
sName
=
oReader
.
GetName
();
if
(
_T
(
"w15:commentsEx"
)
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
if
(
L"w15:commentsEx"
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
{
{
int
nNumberingDepth
=
oReader
.
GetDepth
();
int
nNumberingDepth
=
oReader
.
GetDepth
();
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
{
{
sName
=
oReader
.
GetName
();
sName
=
oReader
.
GetName
();
if
(
_T
(
"w15:commentEx"
)
==
sName
)
if
(
L"w15:commentEx"
==
sName
)
m_arrComments
.
push_back
(
new
CCommentExt
(
oReader
)
);
m_arrComments
.
push_back
(
new
CCommentExt
(
oReader
)
);
}
}
}
}
...
@@ -476,10 +479,10 @@ namespace OOX
...
@@ -476,10 +479,10 @@ namespace OOX
virtual
~
CPresenceInfo
()
virtual
~
CPresenceInfo
()
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
ReadAttributes
(
oReader
);
ReadAttributes
(
oReader
);
...
@@ -488,7 +491,7 @@ namespace OOX
...
@@ -488,7 +491,7 @@ namespace OOX
}
}
virtual
std
::
wstring
toXML
()
const
virtual
std
::
wstring
toXML
()
const
{
{
std
::
wstring
sResult
=
_T
(
""
)
;
std
::
wstring
sResult
=
L""
;
return
sResult
;
return
sResult
;
}
}
...
@@ -499,11 +502,10 @@ namespace OOX
...
@@ -499,11 +502,10 @@ namespace OOX
private:
private:
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
// Читаем атрибуты
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
_T
(
"w15:providerId"
),
m_oProviderId
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
L"w15:providerId"
,
m_oProviderId
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
_T
(
"w15:userId"
),
m_oUserId
)
WritingElement_ReadAttributes_Read_else_if
(
oReader
,
L"w15:userId"
,
m_oUserId
)
WritingElement_ReadAttributes_End
(
oReader
)
WritingElement_ReadAttributes_End
(
oReader
)
}
}
public:
public:
...
@@ -522,10 +524,10 @@ namespace OOX
...
@@ -522,10 +524,10 @@ namespace OOX
virtual
~
CPerson
()
virtual
~
CPerson
()
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
virtual
void
fromXML
(
XmlUtils
::
CXmlNode
&
oNode
)
{
{
}
}
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
virtual
void
fromXML
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
ReadAttributes
(
oReader
);
ReadAttributes
(
oReader
);
...
@@ -536,13 +538,13 @@ namespace OOX
...
@@ -536,13 +538,13 @@ namespace OOX
while
(
oReader
.
ReadNextSiblingNode
(
nParentDepth
)
)
while
(
oReader
.
ReadNextSiblingNode
(
nParentDepth
)
)
{
{
std
::
wstring
sName
=
oReader
.
GetName
();
std
::
wstring
sName
=
oReader
.
GetName
();
if
(
_T
(
"w15:presenceInfo"
)
==
sName
)
if
(
L"w15:presenceInfo"
==
sName
)
m_oPresenceInfo
=
oReader
;
m_oPresenceInfo
=
oReader
;
}
}
}
}
virtual
std
::
wstring
toXML
()
const
virtual
std
::
wstring
toXML
()
const
{
{
std
::
wstring
sResult
=
_T
(
""
)
;
std
::
wstring
sResult
=
L""
;
return
sResult
;
return
sResult
;
}
}
...
@@ -553,10 +555,9 @@ namespace OOX
...
@@ -553,10 +555,9 @@ namespace OOX
private:
private:
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
void
ReadAttributes
(
XmlUtils
::
CXmlLiteReader
&
oReader
)
{
{
// Читаем атрибуты
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Start
(
oReader
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
_T
(
"w15:author"
),
m_oAuthor
)
WritingElement_ReadAttributes_Read_if
(
oReader
,
L"w15:author"
,
m_oAuthor
)
WritingElement_ReadAttributes_End
(
oReader
)
WritingElement_ReadAttributes_End
(
oReader
)
}
}
public:
public:
...
@@ -592,13 +593,13 @@ namespace OOX
...
@@ -592,13 +593,13 @@ namespace OOX
return
;
return
;
std
::
wstring
sName
=
oReader
.
GetName
();
std
::
wstring
sName
=
oReader
.
GetName
();
if
(
_T
(
"w15:people"
)
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
if
(
L"w15:people"
==
sName
&&
!
oReader
.
IsEmptyNode
()
)
{
{
int
nNumberingDepth
=
oReader
.
GetDepth
();
int
nNumberingDepth
=
oReader
.
GetDepth
();
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
while
(
oReader
.
ReadNextSiblingNode
(
nNumberingDepth
)
)
{
{
sName
=
oReader
.
GetName
();
sName
=
oReader
.
GetName
();
if
(
_T
(
"w15:person"
)
==
sName
)
if
(
L"w15:person"
==
sName
)
m_arrPeoples
.
push_back
(
new
CPerson
(
oReader
)
);
m_arrPeoples
.
push_back
(
new
CPerson
(
oReader
)
);
}
}
}
}
...
...
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