diff options
author | Luboš Luňák <l.lunak@suse.cz> | 2011-11-29 19:58:24 +0100 |
---|---|---|
committer | Luboš Luňák <l.lunak@suse.cz> | 2011-11-29 21:20:28 +0100 |
commit | 6e91e7d4e7c283e40ae3f6a3fe520da392d84bb5 (patch) | |
tree | 3adf20dacb0220c02143ea5581b5660615b4a07b /starmath | |
parent | 49987bbb47962f46b2522345a764bb99fe5a742a (diff) |
implement m:func, m:limLow, m:limUpp
Diffstat (limited to 'starmath')
-rw-r--r-- | starmath/source/ooxmlimport.cxx | 30 | ||||
-rw-r--r-- | starmath/source/ooxmlimport.hxx | 3 |
2 files changed, 33 insertions, 0 deletions
diff --git a/starmath/source/ooxmlimport.cxx b/starmath/source/ooxmlimport.cxx index 6fc869c1d099..760505ca3cb9 100644 --- a/starmath/source/ooxmlimport.cxx +++ b/starmath/source/ooxmlimport.cxx @@ -102,6 +102,12 @@ OUString SmOoxmlImport::readOMathArg() return handleD(); case OPENING( M_TOKEN( f )): return handleF(); + case OPENING( M_TOKEN( func )): + return handleFunc(); + case OPENING( M_TOKEN( limLow )): + return handleLimLowUpp( LimLow ); + case OPENING( M_TOKEN( limUpp )): + return handleLimLowUpp( LimUpp ); case OPENING( M_TOKEN( r )): return handleR(); default: @@ -306,6 +312,30 @@ OUString SmOoxmlImport::handleF() } } +OUString SmOoxmlImport::handleFunc() +{ +//lim from{x rightarrow 1} x + stream.ensureOpeningTag( M_TOKEN( func )); + stream.ensureOpeningTag( M_TOKEN( fName )); + OUString fname = readOMathArg(); + stream.ensureClosingTag( M_TOKEN( fName )); + OUString ret = fname + STR( " {" ) + handleE() + STR( "}" ); + stream.ensureClosingTag( M_TOKEN( func )); + return ret; +} + +OUString SmOoxmlImport::handleLimLowUpp( LimLowUpp_t limlowupp ) +{ + int token = limlowupp == LimLow ? M_TOKEN( limLow ) : M_TOKEN( limUpp ); + stream.ensureOpeningTag( token ); + OUString e = handleE(); + stream.ensureOpeningTag( M_TOKEN( lim )); + OUString lim = readOMathArg(); + stream.ensureClosingTag( M_TOKEN( lim )); + stream.ensureClosingTag( token ); + return e + STR( " from {" ) + lim + STR( "}" ); +} + // NOT complete OUString SmOoxmlImport::handleR() { diff --git a/starmath/source/ooxmlimport.hxx b/starmath/source/ooxmlimport.hxx index a32cda34e325..af7d1ca964bc 100644 --- a/starmath/source/ooxmlimport.hxx +++ b/starmath/source/ooxmlimport.hxx @@ -50,6 +50,9 @@ private: rtl::OUString handleD(); rtl::OUString handleE(); rtl::OUString handleF(); + rtl::OUString handleFunc(); + enum LimLowUpp_t { LimLow, LimUpp }; + rtl::OUString handleLimLowUpp( LimLowUpp_t limlowupp ); rtl::OUString handleR(); rtl::OUString readOMathArg(); oox::formulaimport::XmlStream& stream; |