summaryrefslogtreecommitdiff
path: root/sw/source/filter/ww8/docxexport.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'sw/source/filter/ww8/docxexport.hxx')
-rw-r--r--sw/source/filter/ww8/docxexport.hxx34
1 files changed, 27 insertions, 7 deletions
diff --git a/sw/source/filter/ww8/docxexport.hxx b/sw/source/filter/ww8/docxexport.hxx
index 3cf1397ea9b5..4838d55868c4 100644
--- a/sw/source/filter/ww8/docxexport.hxx
+++ b/sw/source/filter/ww8/docxexport.hxx
@@ -1,3 +1,4 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/*************************************************************************
*
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -28,15 +29,16 @@
#ifndef _DOCXEXPORT_HXX_
#define _DOCXEXPORT_HXX_
-#include "docxattributeoutput.hxx"
#include "wrtww8.hxx"
#include <sax/fshelper.hxx>
+#include <sax/fastattribs.hxx>
#include <rtl/ustring.hxx>
#include <cstdio>
#include <vector>
+class DocxAttributeOutput;
class DocxExportFilter;
class SwNode;
class SwEndNode;
@@ -52,6 +54,10 @@ namespace oox {
namespace vml { class VMLExport; }
}
+namespace com { namespace sun { namespace star {
+ namespace frame { class XModel; }
+} } }
+
/// The class that does all the actual DOCX export-related work.
class DocxExport : public MSWordExportBase
{
@@ -80,15 +86,20 @@ class DocxExport : public MSWordExportBase
oox::vml::VMLExport *m_pVMLExport;
public:
+
+ DocxExportFilter& GetFilter() { return *m_pFilter; };
+ const DocxExportFilter& GetFilter() const { return *m_pFilter; };
+
/// Access to the attribute output class.
virtual AttributeOutputBase& AttrOutput() const;
/// Access to the sections/headers/footres.
virtual MSWordSections& Sections() const;
- /// Hack, unfortunately necessary at some places for now.
- /// FIXME remove it when possible.
- virtual bool HackIsWW8OrHigher() const { return true; }
+ /// Determines if the format is expected to support unicode.
+ virtual bool SupportsUnicode() const { return true; }
+
+ virtual bool ignoreAttributeForStyles( sal_uInt16 nWhich ) const;
/// Guess the script (asian/western).
virtual bool CollapseScriptsforWordOk( sal_uInt16 nScript, sal_uInt16 nWhich );
@@ -108,7 +119,7 @@ public:
/// Output the actual headers and footers.
virtual void WriteHeadersFooters( sal_uInt8 nHeadFootFlags,
- const SwFrmFmt& rFmt, const SwFrmFmt& rLeftFmt, const SwFrmFmt& rFirstPageFmt );
+ const SwFrmFmt& rFmt, const SwFrmFmt& rLeftFmt, const SwFrmFmt& rFirstPageFmt, sal_uInt8 nBreakCode );
/// Write the field
virtual void OutputField( const SwField* pFld, ww::eField eFldType,
@@ -116,6 +127,7 @@ public:
/// Write the data of the form field
virtual void WriteFormData( const ::sw::mark::IFieldmark& rFieldmark );
+ virtual void WriteHyperlinkData( const ::sw::mark::IFieldmark& rFieldmark );
virtual void DoComboBox(const rtl::OUString &rName,
const rtl::OUString &rHelp,
@@ -127,6 +139,9 @@ public:
virtual sal_uLong ReplaceCr( sal_uInt8 nChar );
+ /// Returns the relationd id
+ rtl::OString OutputChart( com::sun::star::uno::Reference< com::sun::star::frame::XModel >& xModel, sal_Int32 nCount );
+
protected:
/// Format-dependant part of the actual export.
virtual void ExportDocument_Impl();
@@ -146,10 +161,11 @@ protected:
/// Output SwOLENode
virtual void OutputOLENode( const SwOLENode& );
+ virtual void OutputLinkedOLE( const rtl::OUString& );
virtual void AppendSection( const SwPageDesc *pPageDesc, const SwSectionFmt* pFmt, sal_uLong nLnNum );
- virtual void SectionBreaksAndFrames( const SwTxtNode& rNode ) {}
+ virtual void SectionBreaksAndFrames( const SwTxtNode& /*rNode*/ ) {}
/// Get ready for a new section.
virtual void PrepareNewPageDesc( const SfxItemSet* pSet,
@@ -176,6 +192,9 @@ private:
/// Write docProps/core.xml
void WriteProperties();
+ /// All xml namespaces to be used at the top of any text .xml file (main doc, headers, footers,...)
+ sax_fastparser::XFastAttributeListRef MainXmlNamespaces( sax_fastparser::FSHelperPtr serializer );
+
public:
/// FIXME this is temporary, remotely reminding the method of the same
/// name in WW8Export.
@@ -200,4 +219,5 @@ private:
};
#endif // _DOCXEXPORT_HXX_
-/* vi:set tabstop=4 shiftwidth=4 expandtab: */
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab: */