diff options
author | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-01-06 20:53:52 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.co.uk> | 2014-01-06 21:13:31 +0100 |
commit | c0d5d26ad74cc7b6470d1e0c8951bee548c7ba17 (patch) | |
tree | 7c1131acc845611b58e0c396081acdd616c04e61 /sw/source/filter/ww8/docxsdrexport.hxx | |
parent | 9ca4e6e1940a22cf82cc492da6a3ce0b3d8e0e80 (diff) |
DocxAttributeOutput: factor out writeVMLTextFrame() into DocxSdrExport
Given that DocxSdrExport doesn't know DocxAttributeOutput this requires
also moving a number of data members into that class, which is probably
also a good thing.
Change-Id: I7e9c7def505e11e5e27a2bf86544d2b66d9b3f86
Diffstat (limited to 'sw/source/filter/ww8/docxsdrexport.hxx')
-rw-r--r-- | sw/source/filter/ww8/docxsdrexport.hxx | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/sw/source/filter/ww8/docxsdrexport.hxx b/sw/source/filter/ww8/docxsdrexport.hxx index 069a98c49237..70054b4c4117 100644 --- a/sw/source/filter/ww8/docxsdrexport.hxx +++ b/sw/source/filter/ww8/docxsdrexport.hxx @@ -24,10 +24,25 @@ class Size; class Point; class SdrObject; +namespace sw +{ +class Frame; +} class SwFrmFmt; +class SwNode; class DocxExport; +/// Helper class, so that the DocxExport::RestoreData() call will always happen. +class ExportDataSaveRestore +{ +private: + DocxExport& m_rExport; +public: + ExportDataSaveRestore(DocxExport& rExport, sal_uLong nStt, sal_uLong nEnd, sw::Frame* pParentFrame); + ~ExportDataSaveRestore(); +}; + /// Handles DOCX export of drawings. class DocxSdrExport { @@ -38,6 +53,20 @@ public: ~DocxSdrExport(); void setSerializer(sax_fastparser::FSHelperPtr pSerializer); + /// When exporting fly frames, this holds the real size of the frame. + const Size* getFlyFrameSize(); + bool getTextFrameSyntax(); + sax_fastparser::FastAttributeList*& getFlyAttrList(); + void setFlyAttrList(sax_fastparser::FastAttributeList* pAttrList); + /// Attributes of the next v:textbox element. + sax_fastparser::FastAttributeList* getTextboxAttrList(); + OStringBuffer& getTextFrameStyle(); + /// Same, as DocxAttributeOutput::m_bBtLr, but for textframe rotation. + bool getFrameBtLr(); + void setFrameBtLr(bool bFrameBtLr); + sax_fastparser::FastAttributeList*& getFlyFillAttrList(); + sax_fastparser::FastAttributeList* getFlyWrapAttrList(); + void setFlyWrapAttrList(sax_fastparser::FastAttributeList* pAttrList); void startDMLAnchorInline(const SwFrmFmt* pFrmFmt, const Size& rSize); void endDMLAnchorInline(const SwFrmFmt* pFrmFmt); @@ -49,6 +78,10 @@ public: void writeDiagram(const SdrObject* sdrObject, const Size& size); /// Write <a:effectLst>, the effect list. void writeDMLEffectLst(const SwFrmFmt& rFrmFmt); + /// Writes text frame in VML format. + void writeVMLTextFrame(sw::Frame* pParentFrame); + /// Undo the text direction mangling done by the frame btLr handler in writerfilter::dmapper::DomainMapper::lcl_startCharacterGroup() + bool checkFrameBtlr(SwNode* pStartNode, sax_fastparser::FastAttributeList* pTextboxAttrList = 0, sax_fastparser::FastAttributeList* pBodyPrAttrList = 0); }; #endif // INCLUDED_SW_SOURCE_FILTER_WW8_DOCXSDREXPORT_HXX |