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 INCLUDED_STARMATH_SOURCE_OOXMLEXPORT_HXX
11 #define INCLUDED_STARMATH_SOURCE_OOXMLEXPORT_HXX
13 #include "wordexportbase.hxx"
15 #include <sax/fshelper.hxx>
16 #include <oox/core/filterbase.hxx>
17 #include <oox/export/utils.hxx>
20 Class implementing writing of formulas to OOXML.
22 class SmOoxmlExport
: public SmWordExportBase
25 SmOoxmlExport(const SmNode
* pIn
, oox::core::OoxmlVersion version
,
26 oox::drawingml::DocumentType documentType
);
27 void ConvertFromStarMath(const ::sax_fastparser::FSHelperPtr
& m_pSerializer
, const sal_Int8
);
30 void HandleVerticalStack(const SmNode
* pNode
, int nLevel
) override
;
31 void HandleText(const SmNode
* pNode
, int nLevel
) override
;
32 void HandleFractions(const SmNode
* pNode
, int nLevel
, const char* type
) override
;
33 void HandleRoot(const SmRootNode
* pNode
, int nLevel
) override
;
34 void HandleAttribute(const SmAttributNode
* pNode
, int nLevel
) override
;
35 void HandleOperator(const SmOperNode
* pNode
, int nLevel
) override
;
36 void HandleSubSupScriptInternal(const SmSubSupNode
* pNode
, int nLevel
, int flags
) override
;
37 void HandleMatrix(const SmMatrixNode
* pNode
, int nLevel
) override
;
38 void HandleBrace(const SmBraceNode
* pNode
, int nLevel
) override
;
39 void HandleVerticalBrace(const SmVerticalBraceNode
* pNode
, int nLevel
) override
;
40 void HandleBlank() override
;
41 ::sax_fastparser::FSHelperPtr m_pSerializer
;
42 oox::core::OoxmlVersion version
;
43 /// needed to determine markup for nested run properties
44 oox::drawingml::DocumentType
const m_DocumentType
;
49 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */