Kaydet (Commit) 40af04ce authored tarafından Kohei Yoshida's avatar Kohei Yoshida

fdo#62116: Handle field objects with formats correctly.

Field objects can have formats applied to them, and when they do, they
appear inside a <text:span> element.

Change-Id: I7b4346389f393a4ddf708670b2c524a6594128b5
üst 665cd87e
...@@ -75,24 +75,25 @@ void ScXMLCellTextParaContext::PushSpan(const OUString& rSpan, const OUString& r ...@@ -75,24 +75,25 @@ void ScXMLCellTextParaContext::PushSpan(const OUString& rSpan, const OUString& r
mrParentCxt.PushParagraphSpan(rSpan, rStyleName); mrParentCxt.PushParagraphSpan(rSpan, rStyleName);
} }
void ScXMLCellTextParaContext::PushFieldSheetName() void ScXMLCellTextParaContext::PushFieldSheetName(const OUString& rStyleName)
{ {
mrParentCxt.PushParagraphFieldSheetName(); mrParentCxt.PushParagraphFieldSheetName(rStyleName);
} }
void ScXMLCellTextParaContext::PushFieldDate() void ScXMLCellTextParaContext::PushFieldDate(const OUString& rStyleName)
{ {
mrParentCxt.PushParagraphFieldDate(); mrParentCxt.PushParagraphFieldDate(rStyleName);
} }
void ScXMLCellTextParaContext::PushFieldTitle() void ScXMLCellTextParaContext::PushFieldTitle(const OUString& rStyleName)
{ {
mrParentCxt.PushParagraphFieldDocTitle(); mrParentCxt.PushParagraphFieldDocTitle(rStyleName);
} }
void ScXMLCellTextParaContext::PushFieldURL(const OUString& rURL, const OUString& rRep) void ScXMLCellTextParaContext::PushFieldURL(
const OUString& rURL, const OUString& rRep, const OUString& rStyleName)
{ {
mrParentCxt.PushParagraphFieldURL(rURL, rRep); mrParentCxt.PushParagraphFieldURL(rURL, rRep, rStyleName);
} }
ScXMLCellTextSpanContext::ScXMLCellTextSpanContext( ScXMLCellTextSpanContext::ScXMLCellTextSpanContext(
...@@ -145,6 +146,43 @@ void ScXMLCellTextSpanContext::Characters(const OUString& rChars) ...@@ -145,6 +146,43 @@ void ScXMLCellTextSpanContext::Characters(const OUString& rChars)
SvXMLImportContext* ScXMLCellTextSpanContext::CreateChildContext( SvXMLImportContext* ScXMLCellTextSpanContext::CreateChildContext(
sal_uInt16 nPrefix, const OUString& rLocalName, const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/) sal_uInt16 nPrefix, const OUString& rLocalName, const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/)
{ {
if (!maContent.isEmpty())
{
mrParentCxt.PushSpan(maContent, maStyleName);
maContent = OUString();
}
const SvXMLTokenMap& rTokenMap = GetScImport().GetCellTextSpanElemTokenMap();
switch (rTokenMap.Get(nPrefix, rLocalName))
{
case XML_TOK_CELL_TEXT_SPAN_ELEM_SHEET_NAME:
{
ScXMLCellFieldSheetNameContext* p = new ScXMLCellFieldSheetNameContext(GetScImport(), nPrefix, rLocalName, mrParentCxt);
p->SetStyleName(maStyleName);
return p;
}
case XML_TOK_CELL_TEXT_SPAN_ELEM_DATE:
{
ScXMLCellFieldDateContext* p = new ScXMLCellFieldDateContext(GetScImport(), nPrefix, rLocalName, mrParentCxt);
p->SetStyleName(maStyleName);
return p;
}
case XML_TOK_CELL_TEXT_SPAN_ELEM_TITLE:
{
ScXMLCellFieldTitleContext* p = new ScXMLCellFieldTitleContext(GetScImport(), nPrefix, rLocalName, mrParentCxt);
p->SetStyleName(maStyleName);
return p;
}
case XML_TOK_CELL_TEXT_SPAN_ELEM_URL:
{
ScXMLCellFieldURLContext* p = new ScXMLCellFieldURLContext(GetScImport(), nPrefix, rLocalName, mrParentCxt);
p->SetStyleName(maStyleName);
return p;
}
default:
;
}
return new SvXMLImportContext(GetImport(), nPrefix, rLocalName); return new SvXMLImportContext(GetImport(), nPrefix, rLocalName);
} }
...@@ -155,6 +193,11 @@ ScXMLCellFieldSheetNameContext::ScXMLCellFieldSheetNameContext( ...@@ -155,6 +193,11 @@ ScXMLCellFieldSheetNameContext::ScXMLCellFieldSheetNameContext(
{ {
} }
void ScXMLCellFieldSheetNameContext::SetStyleName(const OUString& rStyleName)
{
maStyleName = rStyleName;
}
void ScXMLCellFieldSheetNameContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/) void ScXMLCellFieldSheetNameContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/)
{ {
// <text:sheet-name> has no attributes (that I'm aware of). // <text:sheet-name> has no attributes (that I'm aware of).
...@@ -162,7 +205,7 @@ void ScXMLCellFieldSheetNameContext::StartElement(const uno::Reference<xml::sax: ...@@ -162,7 +205,7 @@ void ScXMLCellFieldSheetNameContext::StartElement(const uno::Reference<xml::sax:
void ScXMLCellFieldSheetNameContext::EndElement() void ScXMLCellFieldSheetNameContext::EndElement()
{ {
mrParentCxt.PushFieldSheetName(); mrParentCxt.PushFieldSheetName(maStyleName);
} }
void ScXMLCellFieldSheetNameContext::Characters(const OUString& /*rChars*/) void ScXMLCellFieldSheetNameContext::Characters(const OUString& /*rChars*/)
...@@ -182,13 +225,18 @@ ScXMLCellFieldDateContext::ScXMLCellFieldDateContext( ...@@ -182,13 +225,18 @@ ScXMLCellFieldDateContext::ScXMLCellFieldDateContext(
{ {
} }
void ScXMLCellFieldDateContext::SetStyleName(const OUString& rStyleName)
{
maStyleName = rStyleName;
}
void ScXMLCellFieldDateContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/) void ScXMLCellFieldDateContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/)
{ {
} }
void ScXMLCellFieldDateContext::EndElement() void ScXMLCellFieldDateContext::EndElement()
{ {
mrParentCxt.PushFieldDate(); mrParentCxt.PushFieldDate(maStyleName);
} }
void ScXMLCellFieldDateContext::Characters(const OUString& /*rChars*/) void ScXMLCellFieldDateContext::Characters(const OUString& /*rChars*/)
...@@ -208,13 +256,18 @@ ScXMLCellFieldTitleContext::ScXMLCellFieldTitleContext( ...@@ -208,13 +256,18 @@ ScXMLCellFieldTitleContext::ScXMLCellFieldTitleContext(
{ {
} }
void ScXMLCellFieldTitleContext::SetStyleName(const OUString& rStyleName)
{
maStyleName = rStyleName;
}
void ScXMLCellFieldTitleContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/) void ScXMLCellFieldTitleContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& /*xAttrList*/)
{ {
} }
void ScXMLCellFieldTitleContext::EndElement() void ScXMLCellFieldTitleContext::EndElement()
{ {
mrParentCxt.PushFieldTitle(); mrParentCxt.PushFieldTitle(maStyleName);
} }
void ScXMLCellFieldTitleContext::Characters(const OUString& /*rChars*/) void ScXMLCellFieldTitleContext::Characters(const OUString& /*rChars*/)
...@@ -234,6 +287,11 @@ ScXMLCellFieldURLContext::ScXMLCellFieldURLContext( ...@@ -234,6 +287,11 @@ ScXMLCellFieldURLContext::ScXMLCellFieldURLContext(
{ {
} }
void ScXMLCellFieldURLContext::SetStyleName(const OUString& rStyleName)
{
maStyleName = rStyleName;
}
void ScXMLCellFieldURLContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& xAttrList) void ScXMLCellFieldURLContext::StartElement(const uno::Reference<xml::sax::XAttributeList>& xAttrList)
{ {
if (!xAttrList.is()) if (!xAttrList.is())
...@@ -266,7 +324,7 @@ void ScXMLCellFieldURLContext::StartElement(const uno::Reference<xml::sax::XAttr ...@@ -266,7 +324,7 @@ void ScXMLCellFieldURLContext::StartElement(const uno::Reference<xml::sax::XAttr
void ScXMLCellFieldURLContext::EndElement() void ScXMLCellFieldURLContext::EndElement()
{ {
mrParentCxt.PushFieldURL(maURL, maRep); mrParentCxt.PushFieldURL(maURL, maRep, maStyleName);
} }
void ScXMLCellFieldURLContext::Characters(const OUString& rChars) void ScXMLCellFieldURLContext::Characters(const OUString& rChars)
......
...@@ -32,10 +32,10 @@ public: ...@@ -32,10 +32,10 @@ public:
sal_uInt16 nPrefix, const OUString& rLocalName, const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); sal_uInt16 nPrefix, const OUString& rLocalName, const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList);
void PushSpan(const OUString& rSpan, const OUString& rStyleName); void PushSpan(const OUString& rSpan, const OUString& rStyleName);
void PushFieldSheetName(); void PushFieldSheetName(const OUString& rStyleName);
void PushFieldDate(); void PushFieldDate(const OUString& rStyleName);
void PushFieldTitle(); void PushFieldTitle(const OUString& rStyleName);
void PushFieldURL(const OUString& rURL, const OUString& rRep); void PushFieldURL(const OUString& rURL, const OUString& rRep, const OUString& rStyleName);
}; };
/** /**
...@@ -62,9 +62,12 @@ public: ...@@ -62,9 +62,12 @@ public:
class ScXMLCellFieldSheetNameContext : public ScXMLImportContext class ScXMLCellFieldSheetNameContext : public ScXMLImportContext
{ {
ScXMLCellTextParaContext& mrParentCxt; ScXMLCellTextParaContext& mrParentCxt;
OUString maStyleName;
public: public:
ScXMLCellFieldSheetNameContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent); ScXMLCellFieldSheetNameContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent);
void SetStyleName(const OUString& rStyleName);
virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList);
virtual void EndElement(); virtual void EndElement();
virtual void Characters(const OUString& rChars); virtual void Characters(const OUString& rChars);
...@@ -78,9 +81,12 @@ public: ...@@ -78,9 +81,12 @@ public:
class ScXMLCellFieldDateContext : public ScXMLImportContext class ScXMLCellFieldDateContext : public ScXMLImportContext
{ {
ScXMLCellTextParaContext& mrParentCxt; ScXMLCellTextParaContext& mrParentCxt;
OUString maStyleName;
public: public:
ScXMLCellFieldDateContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent); ScXMLCellFieldDateContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent);
void SetStyleName(const OUString& rStyleName);
virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList);
virtual void EndElement(); virtual void EndElement();
virtual void Characters(const OUString& rChars); virtual void Characters(const OUString& rChars);
...@@ -94,9 +100,12 @@ public: ...@@ -94,9 +100,12 @@ public:
class ScXMLCellFieldTitleContext : public ScXMLImportContext class ScXMLCellFieldTitleContext : public ScXMLImportContext
{ {
ScXMLCellTextParaContext& mrParentCxt; ScXMLCellTextParaContext& mrParentCxt;
OUString maStyleName;
public: public:
ScXMLCellFieldTitleContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent); ScXMLCellFieldTitleContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent);
void SetStyleName(const OUString& rStyleName);
virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList);
virtual void EndElement(); virtual void EndElement();
virtual void Characters(const OUString& rChars); virtual void Characters(const OUString& rChars);
...@@ -105,16 +114,19 @@ public: ...@@ -105,16 +114,19 @@ public:
}; };
/** /**
* This context handles <text:a> element inside <text:p>. * This context handles <text:a> element inside <text:p> or <text:span>.
*/ */
class ScXMLCellFieldURLContext : public ScXMLImportContext class ScXMLCellFieldURLContext : public ScXMLImportContext
{ {
ScXMLCellTextParaContext& mrParentCxt; ScXMLCellTextParaContext& mrParentCxt;
OUString maStyleName;
OUString maURL; OUString maURL;
OUString maRep; OUString maRep;
public: public:
ScXMLCellFieldURLContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent); ScXMLCellFieldURLContext(ScXMLImport& rImport, sal_uInt16 nPrefix, const OUString& rLName, ScXMLCellTextParaContext& rParent);
void SetStyleName(const OUString& rStyleName);
virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList); virtual void StartElement(const com::sun::star::uno::Reference<com::sun::star::xml::sax::XAttributeList>& xAttrList);
virtual void EndElement(); virtual void EndElement();
virtual void Characters(const OUString& rChars); virtual void Characters(const OUString& rChars);
......
...@@ -337,6 +337,26 @@ void ScXMLTableRowCellContext::PushParagraphSpan(const OUString& rSpan, const OU ...@@ -337,6 +337,26 @@ void ScXMLTableRowCellContext::PushParagraphSpan(const OUString& rSpan, const OU
sal_Int32 nEnd = nBegin + rSpan.getLength(); sal_Int32 nEnd = nBegin + rSpan.getLength();
maParagraph.append(rSpan); maParagraph.append(rSpan);
PushFormat(nBegin, nEnd, rStyleName);
}
void ScXMLTableRowCellContext::PushParagraphField(SvxFieldData* pData, const OUString& rStyleName)
{
maFields.push_back(new Field(pData));
Field& rField = maFields.back();
sal_Int32 nPos = maParagraph.getLength();
maParagraph.append(sal_Unicode('\1')); // Placeholder text for inserted field item.
rField.maSelection.nStartPara = mnCurParagraph;
rField.maSelection.nEndPara = mnCurParagraph;
rField.maSelection.nStartPos = nPos;
rField.maSelection.nEndPos = nPos+1;
PushFormat(nPos, nPos+1, rStyleName);
}
void ScXMLTableRowCellContext::PushFormat(sal_Int32 nBegin, sal_Int32 nEnd, const OUString& rStyleName)
{
if (rStyleName.isEmpty()) if (rStyleName.isEmpty())
return; return;
...@@ -559,38 +579,26 @@ void ScXMLTableRowCellContext::PushParagraphSpan(const OUString& rSpan, const OU ...@@ -559,38 +579,26 @@ void ScXMLTableRowCellContext::PushParagraphSpan(const OUString& rSpan, const OU
rFmt.maItemSet.Put(*pPoolItem); rFmt.maItemSet.Put(*pPoolItem);
} }
void ScXMLTableRowCellContext::PushParagraphField(SvxFieldData* pData) void ScXMLTableRowCellContext::PushParagraphFieldDate(const OUString& rStyleName)
{
maFields.push_back(new Field(pData));
Field& rField = maFields.back();
sal_Int32 nPos = maParagraph.getLength();
maParagraph.append(sal_Unicode('\1')); // Placeholder text for inserted field item.
rField.maSelection.nStartPara = mnCurParagraph;
rField.maSelection.nEndPara = mnCurParagraph;
rField.maSelection.nStartPos = nPos;
rField.maSelection.nEndPos = nPos+1;
}
void ScXMLTableRowCellContext::PushParagraphFieldDate()
{ {
PushParagraphField(new SvxDateField); PushParagraphField(new SvxDateField, rStyleName);
} }
void ScXMLTableRowCellContext::PushParagraphFieldSheetName() void ScXMLTableRowCellContext::PushParagraphFieldSheetName(const OUString& rStyleName)
{ {
SCTAB nTab = GetScImport().GetTables().GetCurrentCellPos().Tab(); SCTAB nTab = GetScImport().GetTables().GetCurrentCellPos().Tab();
PushParagraphField(new SvxTableField(nTab)); PushParagraphField(new SvxTableField(nTab), rStyleName);
} }
void ScXMLTableRowCellContext::PushParagraphFieldDocTitle() void ScXMLTableRowCellContext::PushParagraphFieldDocTitle(const OUString& rStyleName)
{ {
PushParagraphField(new SvxFileField); PushParagraphField(new SvxFileField, rStyleName);
} }
void ScXMLTableRowCellContext::PushParagraphFieldURL(const OUString& rURL, const OUString& rRep) void ScXMLTableRowCellContext::PushParagraphFieldURL(
const OUString& rURL, const OUString& rRep, const OUString& rStyleName)
{ {
PushParagraphField(new SvxURLField(rURL, rRep, SVXURLFORMAT_REPR)); PushParagraphField(new SvxURLField(rURL, rRep, SVXURLFORMAT_REPR), rStyleName);
} }
void ScXMLTableRowCellContext::PushParagraphEnd() void ScXMLTableRowCellContext::PushParagraphEnd()
......
...@@ -118,7 +118,9 @@ class ScXMLTableRowCellContext : public ScXMLImportContext ...@@ -118,7 +118,9 @@ class ScXMLTableRowCellContext : public ScXMLImportContext
bool IsPossibleErrorString() const; bool IsPossibleErrorString() const;
void PushParagraphField(SvxFieldData* pData); void PushParagraphField(SvxFieldData* pData, const OUString& rStyleName);
void PushFormat(sal_Int32 nBegin, sal_Int32 nEnd, const OUString& rStyleName);
public: public:
...@@ -136,10 +138,10 @@ public: ...@@ -136,10 +138,10 @@ public:
::com::sun::star::xml::sax::XAttributeList>& xAttrList ); ::com::sun::star::xml::sax::XAttributeList>& xAttrList );
void PushParagraphSpan(const OUString& rSpan, const OUString& rStyleName); void PushParagraphSpan(const OUString& rSpan, const OUString& rStyleName);
void PushParagraphFieldDate(); void PushParagraphFieldDate(const OUString& rStyleName);
void PushParagraphFieldSheetName(); void PushParagraphFieldSheetName(const OUString& rStyleName);
void PushParagraphFieldDocTitle(); void PushParagraphFieldDocTitle(const OUString& rStyleName);
void PushParagraphFieldURL(const OUString& rURL, const OUString& rRep); void PushParagraphFieldURL(const OUString& rURL, const OUString& rRep, const OUString& rStyleName);
void PushParagraphEnd(); void PushParagraphEnd();
void SetAnnotation( const ScAddress& rPosition ); void SetAnnotation( const ScAddress& rPosition );
......
...@@ -1860,6 +1860,24 @@ const SvXMLTokenMap& ScXMLImport::GetCellTextParaElemTokenMap() ...@@ -1860,6 +1860,24 @@ const SvXMLTokenMap& ScXMLImport::GetCellTextParaElemTokenMap()
return *pCellTextParaElemTokenMap; return *pCellTextParaElemTokenMap;
} }
const SvXMLTokenMap& ScXMLImport::GetCellTextSpanElemTokenMap()
{
if (!pCellTextSpanElemTokenMap)
{
static SvXMLTokenMapEntry aMap[] =
{
{ XML_NAMESPACE_TEXT, XML_SHEET_NAME, XML_TOK_CELL_TEXT_SPAN_ELEM_SHEET_NAME },
{ XML_NAMESPACE_TEXT, XML_DATE, XML_TOK_CELL_TEXT_SPAN_ELEM_DATE },
{ XML_NAMESPACE_TEXT, XML_TITLE, XML_TOK_CELL_TEXT_SPAN_ELEM_TITLE },
{ XML_NAMESPACE_TEXT, XML_A, XML_TOK_CELL_TEXT_SPAN_ELEM_URL },
XML_TOKEN_MAP_END
};
pCellTextSpanElemTokenMap = new SvXMLTokenMap(aMap);
}
return *pCellTextSpanElemTokenMap;
}
const SvXMLTokenMap& ScXMLImport::GetCellTextSpanAttrTokenMap() const SvXMLTokenMap& ScXMLImport::GetCellTextSpanAttrTokenMap()
{ {
if (!pCellTextSpanAttrTokenMap) if (!pCellTextSpanAttrTokenMap)
...@@ -2013,6 +2031,7 @@ ScXMLImport::ScXMLImport( ...@@ -2013,6 +2031,7 @@ ScXMLImport::ScXMLImport(
pDataPilotMemberAttrTokenMap( 0 ), pDataPilotMemberAttrTokenMap( 0 ),
pConsolidationAttrTokenMap( 0 ), pConsolidationAttrTokenMap( 0 ),
pCellTextParaElemTokenMap(NULL), pCellTextParaElemTokenMap(NULL),
pCellTextSpanElemTokenMap(NULL),
pCellTextSpanAttrTokenMap(NULL), pCellTextSpanAttrTokenMap(NULL),
pCellTextURLAttrTokenMap(NULL), pCellTextURLAttrTokenMap(NULL),
aTables(*this), aTables(*this),
...@@ -2153,6 +2172,7 @@ ScXMLImport::~ScXMLImport() throw() ...@@ -2153,6 +2172,7 @@ ScXMLImport::~ScXMLImport() throw()
delete pDataPilotMemberAttrTokenMap; delete pDataPilotMemberAttrTokenMap;
delete pConsolidationAttrTokenMap; delete pConsolidationAttrTokenMap;
delete pCellTextParaElemTokenMap; delete pCellTextParaElemTokenMap;
delete pCellTextSpanElemTokenMap;
delete pCellTextSpanAttrTokenMap; delete pCellTextSpanAttrTokenMap;
delete pCellTextURLAttrTokenMap; delete pCellTextURLAttrTokenMap;
......
...@@ -694,6 +694,17 @@ enum ScXMLCellTextParaElemTokens ...@@ -694,6 +694,17 @@ enum ScXMLCellTextParaElemTokens
XML_TOK_CELL_TEXT_URL XML_TOK_CELL_TEXT_URL
}; };
/**
* Tokens for elements that come under <text:span>
*/
enum ScXMLCellTextSpanElemTokens
{
XML_TOK_CELL_TEXT_SPAN_ELEM_SHEET_NAME,
XML_TOK_CELL_TEXT_SPAN_ELEM_DATE,
XML_TOK_CELL_TEXT_SPAN_ELEM_TITLE,
XML_TOK_CELL_TEXT_SPAN_ELEM_URL
};
/** /**
* Tokens for attributes for <text:span> * Tokens for attributes for <text:span>
*/ */
...@@ -877,6 +888,7 @@ class ScXMLImport: public SvXMLImport, boost::noncopyable ...@@ -877,6 +888,7 @@ class ScXMLImport: public SvXMLImport, boost::noncopyable
SvXMLTokenMap *pDataPilotMemberAttrTokenMap; SvXMLTokenMap *pDataPilotMemberAttrTokenMap;
SvXMLTokenMap *pConsolidationAttrTokenMap; SvXMLTokenMap *pConsolidationAttrTokenMap;
SvXMLTokenMap *pCellTextParaElemTokenMap; SvXMLTokenMap *pCellTextParaElemTokenMap;
SvXMLTokenMap *pCellTextSpanElemTokenMap;
SvXMLTokenMap *pCellTextSpanAttrTokenMap; SvXMLTokenMap *pCellTextSpanAttrTokenMap;
SvXMLTokenMap *pCellTextURLAttrTokenMap; SvXMLTokenMap *pCellTextURLAttrTokenMap;
...@@ -1045,6 +1057,7 @@ public: ...@@ -1045,6 +1057,7 @@ public:
const SvXMLTokenMap& GetDataPilotMemberAttrTokenMap(); const SvXMLTokenMap& GetDataPilotMemberAttrTokenMap();
const SvXMLTokenMap& GetConsolidationAttrTokenMap(); const SvXMLTokenMap& GetConsolidationAttrTokenMap();
const SvXMLTokenMap& GetCellTextParaElemTokenMap(); const SvXMLTokenMap& GetCellTextParaElemTokenMap();
const SvXMLTokenMap& GetCellTextSpanElemTokenMap();
const SvXMLTokenMap& GetCellTextSpanAttrTokenMap(); const SvXMLTokenMap& GetCellTextSpanAttrTokenMap();
const SvXMLTokenMap& GetCellTextURLAttrTokenMap(); const SvXMLTokenMap& GetCellTextURLAttrTokenMap();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment