20 #ifndef INCLUDED_SW_SOURCE_FILTER_WW8_DOCXEXPORT_HXX
21 #define INCLUDED_SW_SOURCE_FILTER_WW8_DOCXEXPORT_HXX
27 #include <rtl/ustring.hxx>
43 namespace drawingml {
class DrawingML; }
44 namespace vml {
class VMLExport; }
48 namespace frame {
class XModel; }
49 namespace drawing {
class XShape; }
50 namespace awt {
class XControlModel; }
153 OString
AddRelation(
const OUString& rType,
const OUString& rTarget );
170 virtual void WriteFormData( const ::sw::mark::IFieldmark& rFieldmark )
override;
173 virtual void DoComboBox(
const OUString &rName,
174 const OUString &rHelp,
175 const OUString &ToolTip,
176 const OUString &rSelected,
177 const css::uno::Sequence<OUString> &rListItems)
override;
186 std::pair<OString,OString>
WriteActiveXObject(
const uno::Reference<css::drawing::XShape>& rxShape,
187 const uno::Reference<awt::XControlModel>& rxControlModel);
190 void OutputDML( css::uno::Reference< css::drawing::XShape >
const & xShape );
276 std::shared_ptr<SwUnoCursor> & pCurrentPam,
SwPaM& rOriginalPam,
277 bool bDocm,
bool bTemplate);
291 const ::sax_fastparser::FSHelperPtr&
GetFS()
const {
return mpFS; }
303 #endif // INCLUDED_SW_SOURCE_FILTER_WW8_DOCXEXPORT_HXX
const DocxExportFilter & GetFilter() const
void WriteFootnotesEndnotes()
Write footnotes.xml and endnotes.xml.
std::unique_ptr< MSWordSections > m_pSections
Sections/headers/footers.
void InitStyles()
Setup pStyles and write styles.xml.
virtual void DoFormText(const SwInputField *pField) override
virtual void OutputLinkedOLE(const OUString &) override
std::unique_ptr< oox::vml::VMLExport > m_pVMLExport
Exporter of the VML shapes.
sal_Int32 m_nHeadersFootersInSection
Footer and Header counter in Section properties.
Class to collect and output the sections/headers/footers.
DocxAttributeOutput & DocxAttrOutput() const
Access to the derived attribute output class.
bool m_bDocm
If the result will be a .docm file or not.
The class that has handlers for various resource types when exporting as DOCX.
Handles DOCX export of drawings.
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
sal_Int32 m_nOLEObjects
OLE objects counter.
virtual bool DisallowInheritingOutlineNumbering(const SwFormat &rFormat) override
Return value indicates if an inherited outline numbering is suppressed.
virtual void AppendBookmarks(const SwTextNode &rNode, sal_Int32 nCurrentPos, sal_Int32 nLen) override
css::uno::Reference< css::xml::sax::XFastAttributeList > XFastAttributeListRef
std::pair< OString, OString > WriteActiveXObject(const uno::Reference< css::drawing::XShape > &rxShape, const uno::Reference< awt::XControlModel > &rxControlModel)
virtual bool PreferPageBreakBefore() const override
If saving page break is preferred as a paragraph attribute (yes) or as a special character (no)...
virtual ExportFormat GetExportFormat() const override
virtual void WriteHyperlinkData(const ::sw::mark::IFieldmark &rFieldmark) override
Base class of all fields.
exports com.sun.star. awt
void WriteSettings()
Write word/settings.xml.
DocxExport & operator=(const DocxExport &)=delete
void WriteFonts()
Write word/fontTable.xml.
virtual void WriteHeadersFooters(sal_uInt8 nHeadFootFlags, const SwFrameFormat &rFormat, const SwFrameFormat &rLeftFormat, const SwFrameFormat &rFirstPageFormat, sal_uInt8 nBreakCode) override
Output the actual headers and footers.
virtual void OutputGrfNode(const SwGrfNode &) override
Output SwGrfNode.
void WriteCustomXml()
Write customXml/item[n].xml and customXml/itemProps[n].xml.
bool isMirroredMargin()
return true if Page Layout is set as Mirrored
sax_fastparser::XFastAttributeListRef MainXmlNamespaces()
All xml namespaces to be used at the top of any text .xml file (main doc, headers, footers,...)
The class that does all the actual DOCX export-related work.
virtual void SectionBreaksAndFrames(const SwTextNode &) override
std::unique_ptr< DocxAttributeOutput > m_pAttrOutput
Attribute output for document.
const ww8::Frame * GetFloatingTableFrame() const
bool const m_bTemplate
Export is done into template (.dotx)
exports com.sun.star. frame
virtual bool ignoreAttributeForStyleDefaults(sal_uInt16 nWhich) const override
Used to filter out attributes that can be e.g. written to .doc but not to .docx.
virtual AttributeOutputBase & AttrOutput() const override
Access to the attribute output class.
OString OutputChart(css::uno::Reference< css::frame::XModel > const &xModel, sal_Int32 nCount,::sax_fastparser::FSHelperPtr const &m_pSerializer)
Returns the relationd id.
sal_Int32 m_nFooters
Footer counter.
void WritePostitFields()
Write comments.xml.
sal_Int32 m_nHeaders
Header counter.
const ww8::Frame * m_pFloatingTableFrame
Pointer to the Frame of a floating table it is nested in.
exports com.sun.star. drawing
OString WriteOLEObject(SwOLEObj &rObject, OUString &io_rProgID)
void WriteOutliner(const OutlinerParaObject &rOutliner, sal_uInt8 nTyp)
virtual void AppendSection(const SwPageDesc *pPageDesc, const SwSectionFormat *pFormat, sal_uLong nLnNum) override
void WriteHeaderFooter(const SwFormat *pFormat, bool bHeader, const char *pType)
Write reference to a header/footer + the actual xml containing the text.
OString AddRelation(const OUString &rType, const OUString &rTarget)
Returns the relationd id.
virtual MSWordSections & Sections() const override
Access to the sections/headers/footres.
virtual void AppendAnnotationMarks(const SwWW8AttrIter &rAttrs, sal_Int32 nCurrentPos, sal_Int32 nLen) override
virtual void WriteCR(ww8::WW8TableNodeInfoInner::Pointer_t) override
void WriteEmbeddings()
Write word/embeddings/Worksheet[n].xlsx.
PaM is Point and Mark: a selection of the document model.
const ::sax_fastparser::FSHelperPtr & GetFS() const
void WriteProperties()
Write docProps/core.xml.
virtual bool CollapseScriptsforWordOk(sal_uInt16 nScript, sal_uInt16 nWhich) override
Guess the script (asian/western).
virtual void WriteChar(sal_Unicode) override
DocxExportFilter & m_rFilter
Pointer to the filter that owns us.
void OutputDML(css::uno::Reference< css::drawing::XShape > const &xShape)
Writes the shape using drawingML syntax.
std::unique_ptr< oox::drawingml::DrawingML > m_pDrawingML
Access to the DrawingML writer.
virtual void DoComboBox(const OUString &rName, const OUString &rHelp, const OUString &ToolTip, const OUString &rSelected, const css::uno::Sequence< OUString > &rListItems) override
virtual void OutputOLENode(const SwOLENode &) override
Output SwOLENode.
void SetFS(::sax_fastparser::FSHelperPtr const &mpFS)
std::shared_ptr< FastSerializerHelper > FSHelperPtr
DocxSettingsData m_aSettings
virtual void OutputEndNode(const SwEndNode &) override
Output SwEndNode.
void setDefaultTabStop(int stop)
Set the document default tab stop.
DocxExport(DocxExportFilter &rFilter, SwDoc &rDocument, std::shared_ptr< SwUnoCursor > &pCurrentPam, SwPaM &rOriginalPam, bool bDocm, bool bTemplate)
Pass the pDocument, pCurrentPam and pOriginalPam to the base class.
DocxExportFilter & GetFilter()
std::unique_ptr< DocxSdrExport > m_pSdrExport
Exporter of drawings.
virtual void WriteNumbering() override
Write the numbering table.
SwTextNode is a paragraph in the document model.
virtual sal_uLong ReplaceCr(sal_uInt8 nChar) override
virtual void PrepareNewPageDesc(const SfxItemSet *pSet, const SwNode &rNd, const SwFormatPageDesc *pNewPgDescFormat, const SwPageDesc *pNewPgDesc) override
Get ready for a new section.
::sax_fastparser::FSHelperPtr m_pDocumentFS
Fast serializer for the document output.
oox::vml::VMLExport & VMLExporter()
Reference to the VMLExport instance for the main document.
virtual bool FieldsQuoted() const override
Determines if the import filter already quoted fields or not.
void WriteVBA()
Writes word/vbaProject.bin.
Make exporting a Writer Frame easy.
DocxSdrExport & SdrExporter()
Reference to the DocxSdrExport instance for the main document.
virtual ErrCode ExportDocument_Impl() override
Format-dependent part of the actual export.
void WriteTheme()
Write word/theme/theme1.xml.
virtual void WriteFormData(const ::sw::mark::IFieldmark &rFieldmark) override
Write the data of the form field.
void WriteDocVars(const sax_fastparser::FSHelperPtr &pFS)
Writes the part of settings.xml.
sal_Int32 m_nActiveXControls
ActiveX controls counter.
The physical access to the DOCX document (for writing).
std::shared_ptr< WW8TableNodeInfoInner > Pointer_t
virtual void OutputField(const SwField *pField, ww::eField eFieldType, const OUString &rFieldCmd, FieldFlags nMode=FieldFlags::All) override
Write the field.
::sax_fastparser::FSHelperPtr mpFS
Fast serializer to output the data.
bool evenAndOddHeaders
returns true if there are any non-default settings (i.e. something to write)
virtual void AppendBookmark(const OUString &rName) override
#define SAL_WARN(area, stream)
Base class for WW8Export and DocxExport.
virtual ~DocxExport() override
Destructor.
Ends a section of nodes in the document model.
void SetFloatingTableFrame(const ww8::Frame *pF)
Data to be written in the document settings part of the document.
virtual bool AddSectionBreaksForTOX() const override
Determines the Section Breaks are to be added for TOX Section.
virtual void ExportGrfBullet(const SwTextNode &) override
Base class of the Writer document model elements.
void WriteMainText()
FIXME this is temporary, remotely reminding the method of the same name in WW8Export.