Version 6.1.4.1, tag libreoffice-6.1.4.1
[LibreOffice.git] / starmath / source / rtfexport.hxx
blob3a1dd4feb99581597d4eb9083989eab881a8d7c9
1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2 /*
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/.
8 */
10 #ifndef INCLUDED_STARMATH_SOURCE_RTFEXPORT_HXX
11 #define INCLUDED_STARMATH_SOURCE_RTFEXPORT_HXX
13 #include "wordexportbase.hxx"
15 #include <rtl/strbuf.hxx>
17 /**
18 Class implementing writing of formulas to RTF.
20 class SmRtfExport : public SmWordExportBase
22 public:
23 explicit SmRtfExport(const SmNode* pIn);
24 void ConvertFromStarMath(OStringBuffer& rBuffer, rtl_TextEncoding nEncoding);
26 private:
27 void HandleVerticalStack(const SmNode* pNode, int nLevel) override;
28 void HandleText(const SmNode* pNode, int nLevel) override;
29 void HandleFractions(const SmNode* pNode, int nLevel, const char* type) override;
30 void HandleRoot(const SmRootNode* pNode, int nLevel) override;
31 void HandleAttribute(const SmAttributNode* pNode, int nLevel) override;
32 void HandleOperator(const SmOperNode* pNode, int nLevel) override;
33 void HandleSubSupScriptInternal(const SmSubSupNode* pNode, int nLevel, int flags) override;
34 void HandleMatrix(const SmMatrixNode* pNode, int nLevel) override;
35 void HandleBrace(const SmBraceNode* pNode, int nLevel) override;
36 void HandleVerticalBrace(const SmVerticalBraceNode* pNode, int nLevel) override;
37 void HandleBlank() override;
39 OStringBuffer* m_pBuffer;
40 rtl_TextEncoding m_nEncoding;
43 #endif
45 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */