1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
3 * This file is part of the LibreOffice project.
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
10 #ifndef SM_RTFEXPORT_HXX
11 #define SM_RTFEXPORT_HXX
13 #include "wordexportbase.hxx"
15 #include <rtl/strbuf.hxx>
18 Class implementing writing of formulas to RTF.
20 class SmRtfExport
: public SmWordExportBase
23 SmRtfExport(const SmNode
* pIn
);
24 bool ConvertFromStarMath(OStringBuffer
& rBuffer
, rtl_TextEncoding nEncoding
);
26 virtual void HandleVerticalStack(const SmNode
* pNode
, int nLevel
);
27 virtual void HandleText(const SmNode
* pNode
, int nLevel
);
28 virtual void HandleFractions(const SmNode
* pNode
, int nLevel
, const char* type
= NULL
);
29 virtual void HandleRoot(const SmRootNode
* pNode
, int nLevel
);
30 virtual void HandleAttribute(const SmAttributNode
* pNode
, int nLevel
);
31 virtual void HandleOperator(const SmOperNode
* pNode
, int nLevel
);
32 virtual void HandleSubSupScriptInternal(const SmSubSupNode
* pNode
, int nLevel
, int flags
);
33 virtual void HandleMatrix(const SmMatrixNode
* pNode
, int nLevel
);
34 virtual void HandleBrace(const SmBraceNode
* pNode
, int nLevel
);
35 virtual void HandleVerticalBrace(const SmVerticalBraceNode
* pNode
, int nLevel
);
36 virtual void HandleBlank();
38 OStringBuffer
* m_pBuffer
;
39 rtl_TextEncoding m_nEncoding
;
45 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */