20#ifndef INCLUDED_SW_SOURCE_FILTER_WW8_RTFEXPORT_HXX 
   21#define INCLUDED_SW_SOURCE_FILTER_WW8_RTFEXPORT_HXX 
   76                               sal_Int32 nLen) 
override;
 
  101                             bool bEvenAndOddHeaders) 
override;
 
  108    void WriteFormData(const ::sw::mark::IFieldmark& rFieldmark) 
override;
 
  111    void DoComboBox(
const OUString& rName, 
const OUString& rHelp, 
const OUString& ToolTip,
 
  112                    const OUString& rSelected,
 
  113                    const css::uno::Sequence<OUString>& rListItems) 
override;
 
  130                            bool bExtraPageBreak = 
false) 
override;
 
  155              SwPaM& rOriginalPam, 
Writer* pWriter, 
bool bOutOutlineOnly = 
false);
 
  189    void OutUnicode(std::string_view pToken, std::u16string_view rContent, 
bool bUpr = 
false);
 
  190    void OutDateTime(std::string_view pStr, 
const css::util::DateTime& rDT);
 
  197    sal_uInt16 
GetRedline(
const OUString& rAuthor);
 
  200    void InsStyle(sal_uInt16 nId, 
const OString& rStyle);
 
  225                           bool bTitlepg = 
false);
 
Base class for WW8Export and DocxExport.
 
Class to collect and output the sections/headers/footers.
 
The class that has handlers for various resource types when exporting as RTF.
 
The physical access to the RTF document (for writing).
 
The class that does all the actual RTF export-related work.
 
void WriteNumbering() override
Write the numbering table.
 
void OutDateTime(std::string_view pStr, const css::util::DateTime &rDT)
 
sal_uInt16 GetColor(const Color &rColor) const
 
void WriteUserPropValue(std::u16string_view rValue)
Writes a single user property value.
 
void SetCurrentEncoding(rtl_TextEncoding eCurrentEncoding)
 
void OutputGrfNode(const SwGrfNode &rGrfNode) override
Output SwGrfNode.
 
SwNodeOffset m_nCurrentNodeIndex
Index of the current SwTextNode, if any.
 
void WriteRevTab()
Write the revision table.
 
void OutputEndNode(const SwEndNode &rEndNode) override
Output SwEndNode.
 
std::unique_ptr< MSWordSections > m_pSections
Sections/headers/footers.
 
std::unique_ptr< RtfAttributeOutput > m_pAttrOutput
Attribute output for document.
 
void WriteFormData(const ::sw::mark::IFieldmark &rFieldmark) override
Write the data of the form field.
 
void WriteHeaderFooter(const SfxPoolItem &rItem, bool bHeader)
 
RtfExport & operator=(const RtfExport &)=delete
 
RtfColorTable m_aColTable
 
void WriteChar(sal_Unicode c) override
 
RtfExport(const RtfExport &)=delete
 
void setStream()
From now on, let Strm() return a memory stream, not a real one.
 
rtl_TextEncoding GetDefaultEncoding() const
 
std::map< OUString, sal_uInt16 > m_aRedlineTable
 
std::unique_ptr< RtfSdrExport > m_pSdrExport
 
void OutPageDescription(const SwPageDesc &rPgDsc, bool bCheckForFirstPage)
 
const SfxItemSet * m_pFirstPageItemSet
Item set of the first page during export of a follow page format.
 
void OutputOLENode(const SwOLENode &rOLENode) override
Output SwOLENode.
 
RtfExport(RtfExportFilter *pFilter, SwDoc &rDocument, std::shared_ptr< SwUnoCursor > &pCurrentPam, SwPaM &rOriginalPam, Writer *pWriter, bool bOutOutlineOnly=false)
Pass the pDocument, pCurrentPam and pOriginalPam to the base class.
 
MSWordSections & Sections() const override
Access to the sections/headers/footres.
 
void AppendAnnotationMarks(const SwWW8AttrIter &rAttrs, sal_Int32 nCurrentPos, sal_Int32 nLen) override
 
void WriteHeadersFooters(sal_uInt8 nHeadFootFlags, const SwFrameFormat &rFormat, const SwFrameFormat &rLeftHeaderFormat, const SwFrameFormat &rLeftFooterFormat, const SwFrameFormat &rFirstPageFormat, sal_uInt8 nBreakCode, bool bEvenAndOddHeaders) override
Output the actual headers and footers.
 
std::unique_ptr< SvMemoryStream > m_pStream
If set, then Strm() returns this stream, instead of m_pWriter's stream.
 
void OutUnicode(std::string_view pToken, std::u16string_view rContent, bool bUpr=false)
 
void OutputTextNode(SwTextNode &rNode) override
Output SwTextNode is depending on outline export mode.
 
void InsColorLine(const SvxBoxItem &rBox)
 
void AppendBookmark(const OUString &rName) override
 
void WriteUserPropType(int nType)
Writes a single user property type.
 
void AppendBookmarks(const SwTextNode &rNode, sal_Int32 nCurrentPos, sal_Int32 nLen, const SwRedlineData *pSwRedlineData=nullptr) override
 
bool GetRTFFlySyntax() const
 
OString getStream()
Get the contents of the memory stream as a string.
 
void WriteUserProps()
Writes the userprops group: user defined document properties.
 
rtl_TextEncoding m_eCurrentEncoding
 
bool FieldsQuoted() const override
Determines if the import filter already quoted fields or not.
 
AttributeOutputBase & AttrOutput() const override
Access to the attribute output class.
 
void DoFormText(const SwInputField *pField) override
 
void OutputField(const SwField *pField, ww::eField eFieldType, const OUString &rFieldCmd, FieldFlags nMode=FieldFlags::All) override
Write the field.
 
ExportFormat GetExportFormat() const override
 
bool PreferPageBreakBefore() const override
If saving page break is preferred as a paragraph attribute (yes) or as a special character (no).
 
void BuildNumbering()
This is necessary to have the numbering table ready before the main text is being processed.
 
ErrCode ExportDocument_Impl() override
Format-dependent part of the actual export.
 
void PrepareNewPageDesc(const SfxItemSet *pSet, const SwNode &rNd, const SwFormatPageDesc *pNewPgDescFormat, const SwPageDesc *pNewPgDesc, bool bExtraPageBreak=false) override
Get ready for a new section.
 
void OutputLinkedOLE(const OUString &rLink) override
 
void AppendSection(const SwPageDesc *pPageDesc, const SwSectionFormat *pFormat, sal_uLong nLnNum) override
 
sal_uInt16 GetRedline(const OUString &rAuthor)
 
rtl_TextEncoding GetCurrentEncoding() const
 
bool m_bRTFFlySyntax
This is used by OutputFlyFrame_Impl() to control the written syntax.
 
bool AddSectionBreaksForTOX() const override
Determines the Section Breaks are to be added for TOX Section.
 
bool DisallowInheritingOutlineNumbering(const SwFormat &rFormat) override
Return value indicates if an inherited outline numbering is suppressed.
 
void SectionBreaksAndFrames(const SwTextNode &) override
 
void resetStream()
Return back to the real stream.
 
void WritePageDescTable()
Writes the writer-specific \pgdsctbl group.
 
void DoComboBox(const OUString &rName, const OUString &rHelp, const OUString &ToolTip, const OUString &rSelected, const css::uno::Sequence< OUString > &rListItems) override
 
void WriteFootnoteSettings()
 
RtfSdrExport & SdrExporter() const
Access to the Rtf Sdr exporter.
 
void InsColor(const Color &rCol)
 
void ExportGrfBullet(const SwTextNode &rNd) override
 
~RtfExport() override
Destructor.
 
void SetRTFFlySyntax(bool bRTFFlySyntax)
 
RtfExportFilter * m_pFilter
Pointer to the filter that owns us.
 
std::map< sal_uInt16, OString > m_aStyTable
 
void WriteCR(ww8::WW8TableNodeInfoInner::Pointer_t) override
 
bool CollapseScriptsforWordOk(sal_uInt16 nScript, sal_uInt16 nWhich) override
Guess the script (asian/western).
 
void WriteHyperlinkData(const ::sw::mark::IFieldmark &rFieldmark) override
 
void WriteDocVars()
Writes document variables.
 
OString * GetStyle(sal_uInt16 nId)
 
sal_uInt64 ReplaceCr(sal_uInt8 nChar) override
 
SwNodeOffset GetCurrentNodeIndex() const
 
const SfxItemSet * GetFirstPageItemSet() const
 
void InsStyle(sal_uInt16 nId, const OString &rStyle)
 
rtl_TextEncoding m_eDefaultEncoding
 
Handles export of drawings using RTF markup.
 
Ends a section of nodes in the document model.
 
Base class of all fields.
 
Pagedescriptor Client of SwPageDesc that is "described" by the attribute.
 
Base class of the Writer document model elements.
 
PaM is Point and Mark: a selection of the document model.
 
SwTextNode is a paragraph in the document model.
 
std::map< sal_uInt16, Color > RtfColorTable