summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKhaled Hosny <khaled@libreoffice.org>2023-09-28 12:08:20 +0300
committerخالد حسني <khaled@libreoffice.org>2023-09-28 14:34:43 +0200
commitfb0ecd64011922bc47716f77d4225bca3a8b0858 (patch)
tree9390f791163e27f9ec0b1ab7cb68f84ddacee449
parent0eebe81f9def5f65e797281927e74ae20a4a6564 (diff)
starmath: Add Arabic functions to elements panel
Change-Id: I9aa1bdd344dbca078aec683b5fcd93fd07d98521 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157365 Tested-by: Jenkins Reviewed-by: خالد حسني <khaled@libreoffice.org>
-rw-r--r--starmath/inc/strings.hxx601
-rw-r--r--starmath/source/ElementsDockingWindow.cxx55
2 files changed, 354 insertions, 302 deletions
diff --git a/starmath/inc/strings.hxx b/starmath/inc/strings.hxx
index 4be4f1d144f5..cf8e7d5de2ce 100644
--- a/starmath/inc/strings.hxx
+++ b/starmath/inc/strings.hxx
@@ -20,294 +20,319 @@
inline constexpr OUStringLiteral RID_UNDOFORMATNAME = u"Format";
// clang-format off
-#define RID_PLUSX "+<?> "
-#define RID_MINUSX "-<?> "
-#define RID_PLUSMINUSX "+-<?> "
-#define RID_MINUSPLUSX "-+<?> "
-#define RID_NEGX "neg <?> "
-#define RID_XPLUSY "<?> + <?> "
-#define RID_XMINUSY "<?> - <?> "
-#define RID_XCDOTY "<?> cdot <?> "
-#define RID_XTIMESY "<?> times <?> "
-#define RID_XSYMTIMESY "<?> * <?> "
-#define RID_XSYMDIVIDEY "<?> / <?> "
-#define RID_XDIVY "<?> div <?> "
-#define RID_XOVERY "{<?>} over {<?>} "
-#define RID_FRACXY "frac {<?>} {<?>} "
-#define RID_XODIVIDEY "<?> odivide <?> "
-#define RID_XODOTY "<?> odot <?> "
-#define RID_XOMINUSY "<?> ominus <?> "
-#define RID_XOPLUSY "<?> oplus <?> "
-#define RID_XOTIMESY "<?> otimes <?> "
-#define RID_XANDY "<?> and <?> "
-#define RID_XORY "<?> or <?> "
-#define RID_XEQY "<?> = <?> "
-#define RID_XNEQY "<?> <> <?> "
-#define RID_XLTY "<?> < <?> "
-#define RID_XGTY "<?> > <?> "
-#define RID_XLEY "<?> <= <?> "
-#define RID_XGEY "<?> >= <?> "
-#define RID_XLESLANTY "<?> leslant <?> "
-#define RID_XGESLANTY "<?> geslant <?> "
-#define RID_XLLY "<?> << <?> "
-#define RID_XGGY "<?> >> <?> "
-#define RID_XDEFY "<?> def <?> "
-#define RID_XEQUIVY "<?> equiv <?> "
-#define RID_XAPPROXY "<?> approx <?> "
-#define RID_XSIMY "<?> sim <?> "
-#define RID_XSIMEQY "<?> simeq <?> "
-#define RID_XPROPY "<?> prop <?> "
-#define RID_XORTHOY "<?> ortho <?> "
-#define RID_XPARALLELY "<?> parallel <?> "
-#define RID_XTOWARDY "<?> toward <?> "
-#define RID_XTRANSLY "<?> transl <?> "
-#define RID_XTRANSRY "<?> transr <?> "
-#define RID_XINY "<?> in <?> "
-#define RID_XNOTINY "<?> notin <?> "
-#define RID_XOWNSY "<?> owns <?> "
-#define RID_XUNIONY "<?> union <?> "
-#define RID_XINTERSECTIONY "<?> intersection <?> "
-#define RID_XSETMINUSY "<?> setminus <?> "
-#define RID_XSETQUOTIENTY "<?> setquotient <?> "
-#define RID_XSUBSETY "<?> subset <?> "
-#define RID_XSUBSETEQY "<?> subseteq <?> "
-#define RID_XSUPSETY "<?> supset <?> "
-#define RID_XSUPSETEQY "<?> supseteq <?> "
-#define RID_XNSUBSETY "<?> nsubset <?> "
-#define RID_XNSUBSETEQY "<?> nsubseteq <?> "
-#define RID_XNSUPSETY "<?> nsupset <?> "
-#define RID_XNSUPSETEQY "<?> nsupseteq <?> "
-#define RID_FUNCX "func <?>(<?>) "
-#define RID_ABSX "abs{<?>} "
-#define RID_FACTX "fact{<?>} "
-#define RID_SQRTX "sqrt{<?>} "
-#define RID_NROOTXY "nroot{<?>}{<?>} "
-#define RID_EX "func e^{<?>} "
-#define RID_EXPX "exp(<?>) "
-#define RID_LNX "ln(<?>) "
-#define RID_LOGX "log(<?>) "
-#define RID_SINX "sin(<?>) "
-#define RID_COSX "cos(<?>) "
-#define RID_TANX "tan(<?>) "
-#define RID_COTX "cot(<?>) "
-#define RID_ARCSINX "arcsin(<?>) "
-#define RID_ARCCOSX "arccos(<?>) "
-#define RID_ARCTANX "arctan(<?>) "
-#define RID_ARCCOTX "arccot(<?>) "
-#define RID_SINHX "sinh(<?>) "
-#define RID_COSHX "cosh(<?>) "
-#define RID_TANHX "tanh(<?>) "
-#define RID_COTHX "coth(<?>) "
-#define RID_ARSINHX "arsinh(<?>) "
-#define RID_ARCOSHX "arcosh(<?>) "
-#define RID_ARTANHX "artanh(<?>) "
-#define RID_ARCOTHX "arcoth(<?>) "
-#define RID_OPERX "oper oper <?> "
-#define RID_OPER_FROMX "oper oper from{<?>} <?> "
-#define RID_OPER_TOX "oper oper to{<?>} <?> "
-#define RID_OPER_FROMTOX "oper oper from{<?>} to{<?>} <?> "
-#define RID_SUMX "sum <?> "
-#define RID_SUM_FROMX "sum from{<?>} <?> "
-#define RID_SUM_TOX "sum to{<?>} <?> "
-#define RID_SUM_FROMTOX "sum from{<?>} to{<?>} <?> "
-#define RID_MAJX "maj <?> "
-#define RID_MAJ_FROMX "maj from{<?>} <?> "
-#define RID_MAJ_TOX "maj to{<?>} <?> "
-#define RID_MAJ_FROMTOX "maj from{<?>} to{<?>} <?> "
-#define RID_PRODX "prod <?> "
-#define RID_PROD_FROMX "prod from{<?>} <?> "
-#define RID_PROD_TOX "prod to{<?>} <?> "
-#define RID_PROD_FROMTOX "prod from{<?>} to{<?>} <?> "
-#define RID_COPRODX "coprod <?> "
-#define RID_COPROD_FROMX "coprod from{<?>} <?> "
-#define RID_COPROD_TOX "coprod to{<?>} <?> "
-#define RID_COPROD_FROMTOX "coprod from{<?>} to{<?>} <?> "
-#define RID_LIMX "lim <?> "
-#define RID_LIM_FROMX "lim from{<?>} <?> "
-#define RID_LIM_TOX "lim to{<?>} <?> "
-#define RID_LIM_FROMTOX "lim from{<?>} to{<?>} <?> "
-#define RID_LIMINFX "liminf <?> "
-#define RID_LIMINF_FROMX "liminf from{<?>} <?> "
-#define RID_LIMINF_TOX "liminf to{<?>} <?> "
-#define RID_LIMINF_FROMTOX "liminf from{<?>} to{<?>} <?> "
-#define RID_LIMSUPX "limsup <?> "
-#define RID_LIMSUP_FROMX "limsup from{<?>} <?> "
-#define RID_LIMSUP_TOX "limsup to{<?>} <?> "
-#define RID_LIMSUP_FROMTOX "limsup from{<?>} to{<?>} <?> "
-#define RID_HADDX "hadd <?> "
-#define RID_HADD_FROMX "hadd from{<?>} <?> "
-#define RID_HADD_TOX "hadd to{<?>} <?> "
-#define RID_HADD_FROMTOX "hadd from{<?>} to{<?>} <?> "
-#define RID_EXISTS "exists "
-#define RID_NOTEXISTS "notexists "
-#define RID_FORALL "forall "
-#define RID_INTX "int <?> "
-#define RID_INT_FROMX "int from{<?>} <?> "
-#define RID_INT_TOX "int to{<?>} <?> "
-#define RID_INT_FROMTOX "int from{<?>} to{<?>} <?> "
-#define RID_IINTX "iint <?> "
-#define RID_IINT_FROMX "iint from{<?>} <?> "
-#define RID_IINT_TOX "iint to{<?>} <?> "
-#define RID_IINT_FROMTOX "iint from{<?>} to{<?>} <?> "
-#define RID_IIINTX "iiint <?> "
-#define RID_IIINT_FROMX "iiint from{<?>} <?> "
-#define RID_IIINT_TOX "iiint to{<?>} <?> "
-#define RID_IIINT_FROMTOX "iiint from{<?>} to{<?>} <?> "
-#define RID_LINTX "lint <?> "
-#define RID_LINT_FROMX "lint from{<?>} <?> "
-#define RID_LINT_TOX "lint to{<?>} <?> "
-#define RID_LINT_FROMTOX "lint from{<?>} to{<?>} <?> "
-#define RID_LLINTX "llint <?> "
-#define RID_LLINT_FROMX "llint from{<?>} <?> "
-#define RID_LLINT_TOX "llint to{<?>} <?> "
-#define RID_LLINT_FROMTOX "llint from{<?>} to{<?>} <?> "
-#define RID_LLLINTX "lllint <?> "
-#define RID_LLLINT_FROMX "lllint from{<?>} <?> "
-#define RID_LLLINT_TOX "lllint to{<?>} <?> "
-#define RID_LLLINT_FROMTOX "lllint from{<?>} to{<?>} <?> "
-#define RID_FROMX "from{<?>} <?> "
-#define RID_TOX "to{<?>} <?> "
-#define RID_FROMXTOY "from{<?>} to{<?>} <?> "
-#define RID_ACUTEX "acute <?> "
-#define RID_BARX "bar <?> "
-#define RID_BREVEX "breve <?> "
-#define RID_CHECKX "check <?> "
-#define RID_CIRCLEX "circle <?> "
-#define RID_DOTX "dot <?> "
-#define RID_DDOTX "ddot <?> "
-#define RID_DDDOTX "dddot <?> "
-#define RID_GRAVEX "grave <?> "
-#define RID_HATX "hat <?> "
-#define RID_TILDEX "tilde <?> "
-#define RID_VECX "vec <?> "
-#define RID_HARPOONX "harpoon <?> "
-#define RID_UNDERLINEX "underline {<?>} "
-#define RID_OVERLINEX "overline {<?>} "
-#define RID_OVERSTRIKEX "overstrike {<?>} "
-#define RID_PHANTOMX "phantom {<?>} "
-#define RID_BOLDX "bold <?> "
-#define RID_ITALX "ital <?> "
-#define RID_SIZEXY "size <?> {<?>} "
-#define RID_FONTXY "font <?> {<?>} "
-#define RID_COLORX_BLACK "color black {<?>} "
-#define RID_COLORX_BLUE "color blue {<?>} "
-#define RID_COLORX_GREEN "color green {<?>} "
-#define RID_COLORX_RED "color red {<?>} "
-#define RID_COLORX_AQUA "color aqua {<?>} "
-#define RID_COLORX_FUCHSIA "color fuchsia {<?>} "
-#define RID_COLORX_GRAY "color gray {<?>} "
-#define RID_COLORX_LIME "color lime {<?>} "
-#define RID_COLORX_MAROON "color maroon {<?>} "
-#define RID_COLORX_NAVY "color navy {<?>} "
-#define RID_COLORX_OLIVE "color olive {<?>} "
-#define RID_COLORX_PURPLE "color purple {<?>} "
-#define RID_COLORX_SILVER "color silver {<?>} "
-#define RID_COLORX_TEAL "color teal {<?>} "
-#define RID_COLORX_YELLOW "color yellow {<?>} "
-#define RID_COLORX_RGB "color rgb 0 0 0 {<?>} "
-#define RID_COLORX_RGBA "color rgba 0 0 0 0 {<?>} "
-#define RID_COLORX_HEX "color hex 000000 {<?>} "
-#define RID_COLORX_CORAL "color coral {<?>} "
-#define RID_COLORX_CRIMSON "color crimson {<?>} "
-#define RID_COLORX_MIDNIGHT "color midnightblue {<?>} "
-#define RID_COLORX_VIOLET "color violet {<?>} "
-#define RID_COLORX_ORANGE "color orange {<?>} "
-#define RID_COLORX_ORANGERED "color orangered {<?>} "
-#define RID_COLORX_SEAGREEN "color seagreen {<?>} "
-#define RID_COLORX_INDIGO "color indigo {<?>} "
-#define RID_COLORX_HOTPINK "color hotpink {<?>} "
-#define RID_COLORX_LAVENDER "color lavender {<?>} "
-#define RID_COLORX_SNOW "color snow {<?>} "
-#define RID_LRGROUPX "{<?>} "
-#define RID_LRPARENTX "(<?>) "
-#define RID_LRBRACKETX "[<?>] "
-#define RID_LRDBRACKETX "ldbracket <?> rdbracket "
-#define RID_LRBRACEX "lbrace <?> rbrace "
-#define RID_LRANGLEX "langle <?> rangle "
-#define RID_LRCEILX "lceil <?> rceil "
-#define RID_LRFLOORX "lfloor <?> rfloor "
-#define RID_LRLINEX "lline <?> rline "
-#define RID_LRDLINEX "ldline <?> rdline "
-#define RID_LMRANGLEXY "langle <?> mline <?> rangle "
-#define RID_SLRPARENTX "left ( <?> right ) "
-#define RID_SLRBRACKETX "left [ <?> right ] "
-#define RID_SLRDBRACKETX "left ldbracket <?> right rdbracket "
-#define RID_SLRBRACEX "left lbrace <?> right rbrace "
-#define RID_SLRANGLEX "left langle <?> right rangle "
-#define RID_SLRCEILX "left lceil <?> right rceil "
-#define RID_SLRFLOORX "left lfloor <?> right rfloor "
-#define RID_SLRLINEX "left lline <?> right rline "
-#define RID_SLRDLINEX "left ldline <?> right rdline "
-#define RID_SLMRANGLEXY "left langle <?> mline <?> right rangle "
-#define RID_XOVERBRACEY "{<?>} overbrace {<?>} "
-#define RID_XUNDERBRACEY "{<?>} underbrace {<?>} "
-#define RID_EVALX "evaluate <?> "
-#define RID_EVAL_FROMX "evaluate {<?>} from{<?>} "
-#define RID_EVAL_TOX "evaluate {<?>} to{<?>} "
-#define RID_EVAL_FROMTOX "evaluate {<?>} from{<?>} to{<?>} "
-#define RID_RSUBX "<?>_{<?>} "
-#define RID_RSUPX "<?>^{<?>} "
-#define RID_LSUBX "<?> lsub{<?>} "
-#define RID_LSUPX "<?> lsup{<?>} "
-#define RID_CSUBX "<?> csub{<?>} "
-#define RID_CSUPX "<?> csup{<?>} "
-#define RID_SBLANK "` "
-#define RID_BLANK "~ "
-#define RID_NEWLINE "newline "
-#define RID_BINOMXY "binom{<?>}{<?>} "
-#define RID_STACK "stack{<?> # <?> # <?>} "
-#define RID_MATRIX "matrix{<?> # <?> ## <?> # <?>} "
-#define RID_ALIGNLX "alignl <?> "
-#define RID_ALIGNCX "alignc <?> "
-#define RID_ALIGNRX "alignr <?> "
-#define RID_ALEPH "aleph "
-#define RID_EMPTYSET "emptyset "
-#define RID_RE "Re "
-#define RID_IM "Im "
-#define RID_INFINITY "infinity "
-#define RID_PARTIAL "partial "
-#define RID_NABLA "nabla "
-#define RID_WP "wp "
-#define RID_LAPLACE "laplace "
-#define RID_BACKEPSILON "backepsilon "
-#define RID_FOURIER "fourier "
-#define RID_DOTSAXIS "dotsaxis "
-#define RID_DOTSUP "dotsup "
-#define RID_DOTSDOWN "dotsdown "
-#define RID_DOTSLOW "dotslow "
-#define RID_DOTSVERT "dotsvert "
-#define RID_XCIRCY "<?> circ <?> "
-#define RID_XWIDESLASHY "{<?>} wideslash {<?>} "
-#define RID_XWIDEBSLASHY "{<?>} widebslash {<?>} "
-#define RID_XDIVIDESY "<?> divides <?> "
-#define RID_XNDIVIDESY "<?> ndivides <?> "
-#define RID_DLARROW "<?> dlarrow <?> "
-#define RID_DLRARROW "<?> dlrarrow <?> "
-#define RID_DRARROW "<?> drarrow <?> "
-#define RID_SETN "setN "
-#define RID_SETZ "setZ "
-#define RID_SETQ "setQ "
-#define RID_SETR "setR "
-#define RID_SETC "setC "
-#define RID_WIDEHATX "widehat {<?>} "
-#define RID_WIDETILDEX "widetilde {<?>} "
-#define RID_WIDEVECX "widevec {<?>} "
-#define RID_WIDEHARPOONX "wideharpoon {<?>} "
-#define RID_HBAR "hbar "
-#define RID_LAMBDABAR "lambdabar "
-#define RID_LEFTARROW "leftarrow "
-#define RID_RIGHTARROW "rightarrow "
-#define RID_UPARROW "uparrow "
-#define RID_DOWNARROW "downarrow "
-#define RID_NOSPACE "nospace {<?>} "
-#define RID_XPRECEDESY "<?> prec <?> "
-#define RID_XPRECEDESEQUALY "<?> preccurlyeq <?> "
-#define RID_XPRECEDESEQUIVY "<?> precsim <?> "
-#define RID_XSUCCEEDSY "<?> succ <?> "
-#define RID_XSUCCEEDSEQUALY "<?> succcurlyeq <?> "
-#define RID_XSUCCEEDSEQUIVY "<?> succsim <?> "
-#define RID_XNOTPRECEDESY "<?> nprec <?> "
-#define RID_XNOTSUCCEEDSY "<?> nsucc <?> "
+#define RID_PLUSX u"+<?> "
+#define RID_MINUSX u"-<?> "
+#define RID_PLUSMINUSX u"+-<?> "
+#define RID_MINUSPLUSX u"-+<?> "
+#define RID_NEGX u"neg <?> "
+#define RID_XPLUSY u"<?> + <?> "
+#define RID_XMINUSY u"<?> - <?> "
+#define RID_XCDOTY u"<?> cdot <?> "
+#define RID_XTIMESY u"<?> times <?> "
+#define RID_XSYMTIMESY u"<?> * <?> "
+#define RID_XSYMDIVIDEY u"<?> / <?> "
+#define RID_XDIVY u"<?> div <?> "
+#define RID_XOVERY u"{<?>} over {<?>} "
+#define RID_FRACXY u"frac {<?>} {<?>} "
+#define RID_XODIVIDEY u"<?> odivide <?> "
+#define RID_XODOTY u"<?> odot <?> "
+#define RID_XOMINUSY u"<?> ominus <?> "
+#define RID_XOPLUSY u"<?> oplus <?> "
+#define RID_XOTIMESY u"<?> otimes <?> "
+#define RID_XANDY u"<?> and <?> "
+#define RID_XORY u"<?> or <?> "
+#define RID_XEQY u"<?> = <?> "
+#define RID_XNEQY u"<?> <> <?> "
+#define RID_XLTY u"<?> < <?> "
+#define RID_XGTY u"<?> > <?> "
+#define RID_XLEY u"<?> <= <?> "
+#define RID_XGEY u"<?> >= <?> "
+#define RID_XLESLANTY u"<?> leslant <?> "
+#define RID_XGESLANTY u"<?> geslant <?> "
+#define RID_XLLY u"<?> << <?> "
+#define RID_XGGY u"<?> >> <?> "
+#define RID_XDEFY u"<?> def <?> "
+#define RID_XEQUIVY u"<?> equiv <?> "
+#define RID_XAPPROXY u"<?> approx <?> "
+#define RID_XSIMY u"<?> sim <?> "
+#define RID_XSIMEQY u"<?> simeq <?> "
+#define RID_XPROPY u"<?> prop <?> "
+#define RID_XORTHOY u"<?> ortho <?> "
+#define RID_XPARALLELY u"<?> parallel <?> "
+#define RID_XTOWARDY u"<?> toward <?> "
+#define RID_XTRANSLY u"<?> transl <?> "
+#define RID_XTRANSRY u"<?> transr <?> "
+#define RID_XINY u"<?> in <?> "
+#define RID_XNOTINY u"<?> notin <?> "
+#define RID_XOWNSY u"<?> owns <?> "
+#define RID_XUNIONY u"<?> union <?> "
+#define RID_XINTERSECTIONY u"<?> intersection <?> "
+#define RID_XSETMINUSY u"<?> setminus <?> "
+#define RID_XSETQUOTIENTY u"<?> setquotient <?> "
+#define RID_XSUBSETY u"<?> subset <?> "
+#define RID_XSUBSETEQY u"<?> subseteq <?> "
+#define RID_XSUPSETY u"<?> supset <?> "
+#define RID_XSUPSETEQY u"<?> supseteq <?> "
+#define RID_XNSUBSETY u"<?> nsubset <?> "
+#define RID_XNSUBSETEQY u"<?> nsubseteq <?> "
+#define RID_XNSUPSETY u"<?> nsupset <?> "
+#define RID_XNSUPSETEQY u"<?> nsupseteq <?> "
+#define RID_FUNCX u"func <?>(<?>) "
+#define RID_ABSX u"abs{<?>} "
+#define RID_FACTX u"fact{<?>} "
+#define RID_SQRTX u"sqrt{<?>} "
+#define RID_NROOTXY u"nroot{<?>}{<?>} "
+#define RID_EX u"func e^{<?>} "
+#define RID_EXPX u"exp(<?>) "
+#define RID_LNX u"ln(<?>) "
+#define RID_LOGX u"log(<?>) "
+#define RID_SINX u"sin(<?>) "
+#define RID_COSX u"cos(<?>) "
+#define RID_TANX u"tan(<?>) "
+#define RID_COTX u"cot(<?>) "
+#define RID_ARCSINX u"arcsin(<?>) "
+#define RID_ARCCOSX u"arccos(<?>) "
+#define RID_ARCTANX u"arctan(<?>) "
+#define RID_ARCCOTX u"arccot(<?>) "
+#define RID_SINHX u"sinh(<?>) "
+#define RID_COSHX u"cosh(<?>) "
+#define RID_TANHX u"tanh(<?>) "
+#define RID_COTHX u"coth(<?>) "
+#define RID_ARSINHX u"arsinh(<?>) "
+#define RID_ARCOSHX u"arcosh(<?>) "
+#define RID_ARTANHX u"artanh(<?>) "
+#define RID_ARCOTHX u"arcoth(<?>) "
+#define RID_OPERX u"oper oper <?> "
+#define RID_OPER_FROMX u"oper oper from{<?>} <?> "
+#define RID_OPER_TOX u"oper oper to{<?>} <?> "
+#define RID_OPER_FROMTOX u"oper oper from{<?>} to{<?>} <?> "
+#define RID_SUMX u"sum <?> "
+#define RID_SUM_FROMX u"sum from{<?>} <?> "
+#define RID_SUM_TOX u"sum to{<?>} <?> "
+#define RID_SUM_FROMTOX u"sum from{<?>} to{<?>} <?> "
+#define RID_MAJX u"maj <?> "
+#define RID_MAJ_FROMX u"maj from{<?>} <?> "
+#define RID_MAJ_TOX u"maj to{<?>} <?> "
+#define RID_MAJ_FROMTOX u"maj from{<?>} to{<?>} <?> "
+#define RID_PRODX u"prod <?> "
+#define RID_PROD_FROMX u"prod from{<?>} <?> "
+#define RID_PROD_TOX u"prod to{<?>} <?> "
+#define RID_PROD_FROMTOX u"prod from{<?>} to{<?>} <?> "
+#define RID_COPRODX u"coprod <?> "
+#define RID_COPROD_FROMX u"coprod from{<?>} <?> "
+#define RID_COPROD_TOX u"coprod to{<?>} <?> "
+#define RID_COPROD_FROMTOX u"coprod from{<?>} to{<?>} <?> "
+#define RID_LIMX u"lim <?> "
+#define RID_LIM_FROMX u"lim from{<?>} <?> "
+#define RID_LIM_TOX u"lim to{<?>} <?> "
+#define RID_LIM_FROMTOX u"lim from{<?>} to{<?>} <?> "
+#define RID_LIMINFX u"liminf <?> "
+#define RID_LIMINF_FROMX u"liminf from{<?>} <?> "
+#define RID_LIMINF_TOX u"liminf to{<?>} <?> "
+#define RID_LIMINF_FROMTOX u"liminf from{<?>} to{<?>} <?> "
+#define RID_LIMSUPX u"limsup <?> "
+#define RID_LIMSUP_FROMX u"limsup from{<?>} <?> "
+#define RID_LIMSUP_TOX u"limsup to{<?>} <?> "
+#define RID_LIMSUP_FROMTOX u"limsup from{<?>} to{<?>} <?> "
+#define RID_HADDX u"hadd <?> "
+#define RID_HADD_FROMX u"hadd from{<?>} <?> "
+#define RID_HADD_TOX u"hadd to{<?>} <?> "
+#define RID_HADD_FROMTOX u"hadd from{<?>} to{<?>} <?> "
+#define RID_EXISTS u"exists "
+#define RID_NOTEXISTS u"notexists "
+#define RID_FORALL u"forall "
+#define RID_INTX u"int <?> "
+#define RID_INT_FROMX u"int from{<?>} <?> "
+#define RID_INT_TOX u"int to{<?>} <?> "
+#define RID_INT_FROMTOX u"int from{<?>} to{<?>} <?> "
+#define RID_IINTX u"iint <?> "
+#define RID_IINT_FROMX u"iint from{<?>} <?> "
+#define RID_IINT_TOX u"iint to{<?>} <?> "
+#define RID_IINT_FROMTOX u"iint from{<?>} to{<?>} <?> "
+#define RID_IIINTX u"iiint <?> "
+#define RID_IIINT_FROMX u"iiint from{<?>} <?> "
+#define RID_IIINT_TOX u"iiint to{<?>} <?> "
+#define RID_IIINT_FROMTOX u"iiint from{<?>} to{<?>} <?> "
+#define RID_LINTX u"lint <?> "
+#define RID_LINT_FROMX u"lint from{<?>} <?> "
+#define RID_LINT_TOX u"lint to{<?>} <?> "
+#define RID_LINT_FROMTOX u"lint from{<?>} to{<?>} <?> "
+#define RID_LLINTX u"llint <?> "
+#define RID_LLINT_FROMX u"llint from{<?>} <?> "
+#define RID_LLINT_TOX u"llint to{<?>} <?> "
+#define RID_LLINT_FROMTOX u"llint from{<?>} to{<?>} <?> "
+#define RID_LLLINTX u"lllint <?> "
+#define RID_LLLINT_FROMX u"lllint from{<?>} <?> "
+#define RID_LLLINT_TOX u"lllint to{<?>} <?> "
+#define RID_LLLINT_FROMTOX u"lllint from{<?>} to{<?>} <?> "
+#define RID_FROMX u"from{<?>} <?> "
+#define RID_TOX u"to{<?>} <?> "
+#define RID_FROMXTOY u"from{<?>} to{<?>} <?> "
+#define RID_ACUTEX u"acute <?> "
+#define RID_BARX u"bar <?> "
+#define RID_BREVEX u"breve <?> "
+#define RID_CHECKX u"check <?> "
+#define RID_CIRCLEX u"circle <?> "
+#define RID_DOTX u"dot <?> "
+#define RID_DDOTX u"ddot <?> "
+#define RID_DDDOTX u"dddot <?> "
+#define RID_GRAVEX u"grave <?> "
+#define RID_HATX u"hat <?> "
+#define RID_TILDEX u"tilde <?> "
+#define RID_VECX u"vec <?> "
+#define RID_HARPOONX u"harpoon <?> "
+#define RID_UNDERLINEX u"underline {<?>} "
+#define RID_OVERLINEX u"overline {<?>} "
+#define RID_OVERSTRIKEX u"overstrike {<?>} "
+#define RID_PHANTOMX u"phantom {<?>} "
+#define RID_BOLDX u"bold <?> "
+#define RID_ITALX u"ital <?> "
+#define RID_SIZEXY u"size <?> {<?>} "
+#define RID_FONTXY u"font <?> {<?>} "
+#define RID_COLORX_BLACK u"color black {<?>} "
+#define RID_COLORX_BLUE u"color blue {<?>} "
+#define RID_COLORX_GREEN u"color green {<?>} "
+#define RID_COLORX_RED u"color red {<?>} "
+#define RID_COLORX_AQUA u"color aqua {<?>} "
+#define RID_COLORX_FUCHSIA u"color fuchsia {<?>} "
+#define RID_COLORX_GRAY u"color gray {<?>} "
+#define RID_COLORX_LIME u"color lime {<?>} "
+#define RID_COLORX_MAROON u"color maroon {<?>} "
+#define RID_COLORX_NAVY u"color navy {<?>} "
+#define RID_COLORX_OLIVE u"color olive {<?>} "
+#define RID_COLORX_PURPLE u"color purple {<?>} "
+#define RID_COLORX_SILVER u"color silver {<?>} "
+#define RID_COLORX_TEAL u"color teal {<?>} "
+#define RID_COLORX_YELLOW u"color yellow {<?>} "
+#define RID_COLORX_RGB u"color rgb 0 0 0 {<?>} "
+#define RID_COLORX_RGBA u"color rgba 0 0 0 0 {<?>} "
+#define RID_COLORX_HEX u"color hex 000000 {<?>} "
+#define RID_COLORX_CORAL u"color coral {<?>} "
+#define RID_COLORX_CRIMSON u"color crimson {<?>} "
+#define RID_COLORX_MIDNIGHT u"color midnightblue {<?>} "
+#define RID_COLORX_VIOLET u"color violet {<?>} "
+#define RID_COLORX_ORANGE u"color orange {<?>} "
+#define RID_COLORX_ORANGERED u"color orangered {<?>} "
+#define RID_COLORX_SEAGREEN u"color seagreen {<?>} "
+#define RID_COLORX_INDIGO u"color indigo {<?>} "
+#define RID_COLORX_HOTPINK u"color hotpink {<?>} "
+#define RID_COLORX_LAVENDER u"color lavender {<?>} "
+#define RID_COLORX_SNOW u"color snow {<?>} "
+#define RID_LRGROUPX u"{<?>} "
+#define RID_LRPARENTX u"(<?>) "
+#define RID_LRBRACKETX u"[<?>] "
+#define RID_LRDBRACKETX u"ldbracket <?> rdbracket "
+#define RID_LRBRACEX u"lbrace <?> rbrace "
+#define RID_LRANGLEX u"langle <?> rangle "
+#define RID_LRCEILX u"lceil <?> rceil "
+#define RID_LRFLOORX u"lfloor <?> rfloor "
+#define RID_LRLINEX u"lline <?> rline "
+#define RID_LRDLINEX u"ldline <?> rdline "
+#define RID_LMRANGLEXY u"langle <?> mline <?> rangle "
+#define RID_SLRPARENTX u"left ( <?> right ) "
+#define RID_SLRBRACKETX u"left [ <?> right ] "
+#define RID_SLRDBRACKETX u"left ldbracket <?> right rdbracket "
+#define RID_SLRBRACEX u"left lbrace <?> right rbrace "
+#define RID_SLRANGLEX u"left langle <?> right rangle "
+#define RID_SLRCEILX u"left lceil <?> right rceil "
+#define RID_SLRFLOORX u"left lfloor <?> right rfloor "
+#define RID_SLRLINEX u"left lline <?> right rline "
+#define RID_SLRDLINEX u"left ldline <?> right rdline "
+#define RID_SLMRANGLEXY u"left langle <?> mline <?> right rangle "
+#define RID_XOVERBRACEY u"{<?>} overbrace {<?>} "
+#define RID_XUNDERBRACEY u"{<?>} underbrace {<?>} "
+#define RID_EVALX u"evaluate <?> "
+#define RID_EVAL_FROMX u"evaluate {<?>} from{<?>} "
+#define RID_EVAL_TOX u"evaluate {<?>} to{<?>} "
+#define RID_EVAL_FROMTOX u"evaluate {<?>} from{<?>} to{<?>} "
+#define RID_RSUBX u"<?>_{<?>} "
+#define RID_RSUPX u"<?>^{<?>} "
+#define RID_LSUBX u"<?> lsub{<?>} "
+#define RID_LSUPX u"<?> lsup{<?>} "
+#define RID_CSUBX u"<?> csub{<?>} "
+#define RID_CSUPX u"<?> csup{<?>} "
+#define RID_SBLANK u"` "
+#define RID_BLANK u"~ "
+#define RID_NEWLINE u"newline "
+#define RID_BINOMXY u"binom{<?>}{<?>} "
+#define RID_STACK u"stack{<?> # <?> # <?>} "
+#define RID_MATRIX u"matrix{<?> # <?> ## <?> # <?>} "
+#define RID_ALIGNLX u"alignl <?> "
+#define RID_ALIGNCX u"alignc <?> "
+#define RID_ALIGNRX u"alignr <?> "
+#define RID_ALEPH u"aleph "
+#define RID_EMPTYSET u"emptyset "
+#define RID_RE u"Re "
+#define RID_IM u"Im "
+#define RID_INFINITY u"infinity "
+#define RID_PARTIAL u"partial "
+#define RID_NABLA u"nabla "
+#define RID_WP u"wp "
+#define RID_LAPLACE u"laplace "
+#define RID_BACKEPSILON u"backepsilon "
+#define RID_FOURIER u"fourier "
+#define RID_DOTSAXIS u"dotsaxis "
+#define RID_DOTSUP u"dotsup "
+#define RID_DOTSDOWN u"dotsdown "
+#define RID_DOTSLOW u"dotslow "
+#define RID_DOTSVERT u"dotsvert "
+#define RID_XCIRCY u"<?> circ <?> "
+#define RID_XWIDESLASHY u"{<?>} wideslash {<?>} "
+#define RID_XWIDEBSLASHY u"{<?>} widebslash {<?>} "
+#define RID_XDIVIDESY u"<?> divides <?> "
+#define RID_XNDIVIDESY u"<?> ndivides <?> "
+#define RID_DLARROW u"<?> dlarrow <?> "
+#define RID_DLRARROW u"<?> dlrarrow <?> "
+#define RID_DRARROW u"<?> drarrow <?> "
+#define RID_SETN u"setN "
+#define RID_SETZ u"setZ "
+#define RID_SETQ u"setQ "
+#define RID_SETR u"setR "
+#define RID_SETC u"setC "
+#define RID_WIDEHATX u"widehat {<?>} "
+#define RID_WIDETILDEX u"widetilde {<?>} "
+#define RID_WIDEVECX u"widevec {<?>} "
+#define RID_WIDEHARPOONX u"wideharpoon {<?>} "
+#define RID_HBAR u"hbar "
+#define RID_LAMBDABAR u"lambdabar "
+#define RID_LEFTARROW u"leftarrow "
+#define RID_RIGHTARROW u"rightarrow "
+#define RID_UPARROW u"uparrow "
+#define RID_DOWNARROW u"downarrow "
+#define RID_NOSPACE u"nospace {<?>} "
+#define RID_XPRECEDESY u"<?> prec <?> "
+#define RID_XPRECEDESEQUALY u"<?> preccurlyeq <?> "
+#define RID_XPRECEDESEQUIVY u"<?> precsim <?> "
+#define RID_XSUCCEEDSY u"<?> succ <?> "
+#define RID_XSUCCEEDSEQUALY u"<?> succcurlyeq <?> "
+#define RID_XSUCCEEDSEQUIVY u"<?> succsim <?> "
+#define RID_XNOTPRECEDESY u"<?> nprec <?> "
+#define RID_XNOTSUCCEEDSY u"<?> nsucc <?> "
+#define RID_ARALOGX u"لو(<?>) "
+#define RID_ARASINX u"حا(<?>) "
+#define RID_ARACOSX u"حتا(<?>) "
+#define RID_ARATANX u"طا(<?>) "
+#define RID_ARACOTX u"طتا(<?>) "
+#define RID_ARASECX u"ٯا(<?>) "
+#define RID_ARACSCX u"ٯتا(<?>) "
+#define RID_ARASINHX u"حاز(<?>) "
+#define RID_ARACOSHX u"حتاز(<?>) "
+#define RID_ARATANHX u"طاز(<?>) "
+#define RID_ARACOTHX u"طتاز(<?>) "
+#define RID_ARASECHX u"ٯاز(<?>) "
+#define RID_ARACSCHX u"ٯتاز(<?>) "
+#define RID_ARASIN2X u"جا(<?>) "
+#define RID_ARACOS2X u"جتا(<?>) "
+#define RID_ARATAN2X u"ظا(<?>) "
+#define RID_ARACOT2X u"ظتا(<?>) "
+#define RID_ARASEC2X u"قا(<?>) "
+#define RID_ARACSC2X u"قتا(<?>) "
+#define RID_ARASINH2X u"جاز(<?>) "
+#define RID_ARACOSH2X u"جتاز(<?>) "
+#define RID_ARATANH2X u"ظاز(<?>) "
+#define RID_ARACOTH2X u"ظتاز(<?>) "
+#define RID_ARASECH2X u"قاز(<?>) "
+#define RID_ARACSCH2X u"قتاز(<?>) "
// clang-format on
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
diff --git a/starmath/source/ElementsDockingWindow.cxx b/starmath/source/ElementsDockingWindow.cxx
index 149211950444..dad659a11c43 100644
--- a/starmath/source/ElementsDockingWindow.cxx
+++ b/starmath/source/ElementsDockingWindow.cxx
@@ -44,7 +44,7 @@
namespace
{
// element, element help, element visual, element visual's translatable
-typedef std::tuple<std::string_view, TranslateId, std::u16string_view, TranslateId> SmElementDescr;
+typedef std::tuple<std::u16string_view, TranslateId, std::u16string_view, TranslateId> SmElementDescr;
// SmParser 5 elements
@@ -158,6 +158,7 @@ const SmElementDescr s_a5FunctionsList[] =
{RID_LNX, RID_LNX_HELP, {}, {}},
{RID_EXPX, RID_EXPX_HELP, {}, {}},
{RID_LOGX, RID_LOGX_HELP, {}, {}},
+ {RID_ARALOGX, RID_SINX_HELP, {}, {}},
{},
{RID_SINX, RID_SINX_HELP, {}, {}},
{RID_COSX, RID_COSX_HELP, {}, {}},
@@ -168,6 +169,32 @@ const SmElementDescr s_a5FunctionsList[] =
{RID_TANHX, RID_TANHX_HELP, {}, {}},
{RID_COTHX, RID_COTHX_HELP, {}, {}},
{},
+ {RID_ARASINX, RID_SINX_HELP, {}, {}},
+ {RID_ARACOSX, RID_COSX_HELP, {}, {}},
+ {RID_ARATANX, RID_TANX_HELP, {}, {}},
+ {RID_ARACOTX, RID_COTX_HELP, {}, {}},
+ {RID_ARASECX, RID_COTX_HELP, {}, {}},
+ {RID_ARACSCX, RID_COTX_HELP, {}, {}},
+ {RID_ARASINHX, RID_SINHX_HELP, {}, {}},
+ {RID_ARACOSHX, RID_COSHX_HELP, {}, {}},
+ {RID_ARATANHX, RID_TANHX_HELP, {}, {}},
+ {RID_ARACOTHX, RID_COTHX_HELP, {}, {}},
+ {RID_ARASECHX, RID_COTX_HELP, {}, {}},
+ {RID_ARACSCHX, RID_COTX_HELP, {}, {}},
+ {},
+ {RID_ARASIN2X, RID_SINX_HELP, {}, {}},
+ {RID_ARACOS2X, RID_COSX_HELP, {}, {}},
+ {RID_ARATAN2X, RID_TANX_HELP, {}, {}},
+ {RID_ARACOT2X, RID_COTX_HELP, {}, {}},
+ {RID_ARASEC2X, RID_COTX_HELP, {}, {}},
+ {RID_ARACSC2X, RID_COTX_HELP, {}, {}},
+ {RID_ARASINH2X, RID_SINHX_HELP, {}, {}},
+ {RID_ARACOSH2X, RID_COSHX_HELP, {}, {}},
+ {RID_ARATANH2X, RID_TANHX_HELP, {}, {}},
+ {RID_ARACOTH2X, RID_COTHX_HELP, {}, {}},
+ {RID_ARASECH2X, RID_COTX_HELP, {}, {}},
+ {RID_ARACSCH2X, RID_COTX_HELP, {}, {}},
+ {},
{RID_ARCSINX, RID_ARCSINX_HELP, {}, {}},
{RID_ARCCOSX, RID_ARCCOSX_HELP, {}, {}},
{RID_ARCTANX, RID_ARCTANX_HELP, {}, {}},
@@ -408,18 +435,18 @@ const SmElementDescr s_a5OthersList[] =
const SmElementDescr s_a5ExamplesList[] =
{
- {"{func e}^{i %pi} + 1 = 0", RID_EXAMPLE_EULER_IDENTITY_HELP, {}, {}},
- {"C = %pi cdot d = 2 cdot %pi cdot r", RID_EXAMPLE_CIRCUMFERENCE_HELP, {}, {}},
- {"c = sqrt{ a^2 + b^2 }", RID_EXAMPLE_PYTHAGOREAN_THEO_HELP, {}, {}},
- {"vec F = m times vec a", RID_EXAMPLE_2NEWTON, {}, {}},
- {"E = m c^2", RID_EXAMPLE_MASS_ENERGY_EQUIV_HELP, {}, {}},
- {"G_{%mu %nu} + %LAMBDA g_{%mu %nu}= frac{8 %pi G}{c^4} T_{%mu %nu}", RID_EXAMPLE_GENERAL_RELATIVITY_HELP, {}, {}},
- {"%DELTA t' = { %DELTA t } over sqrt{ 1 - v^2 over c^2 }", RID_EXAMPLE_SPECIAL_RELATIVITY_HELP, {}, {}},
- {"d over dt left( {partial L}over{partial dot q} right) = {partial L}over{partial q}", RID_EXAMPLE_EULER_LAGRANGE_HELP, {}, {}},
- {"int from a to b f'(x) dx = f(b) - f(a)", RID_EXAMPLE_FTC_HELP, {}, {}},
- {"ldline %delta bold{r}(t) rdline approx e^{%lambda t} ldline %delta { bold{r} }_0 rdline", RID_EXAMPLE_CHAOS_HELP, {}, {}},
- {"f(x) = sum from { n=0 } to { infinity } { {f^{(n)}(x_0) } over { fact{n} } (x-x_0)^n }", RID_EXAMPLE_A_TAYLOR_SERIES_HELP, {}, {}},
- {"f(x) = {1} over { %sigma sqrt{2 %pi} } func e^-{ {(x-%mu)^2} over {2 %sigma^2} }", RID_EXAMPLE_GAUSS_DISTRIBUTION_HELP, {}, {}},
+ {u"{func e}^{i %pi} + 1 = 0", RID_EXAMPLE_EULER_IDENTITY_HELP, {}, {}},
+ {u"C = %pi cdot d = 2 cdot %pi cdot r", RID_EXAMPLE_CIRCUMFERENCE_HELP, {}, {}},
+ {u"c = sqrt{ a^2 + b^2 }", RID_EXAMPLE_PYTHAGOREAN_THEO_HELP, {}, {}},
+ {u"vec F = m times vec a", RID_EXAMPLE_2NEWTON, {}, {}},
+ {u"E = m c^2", RID_EXAMPLE_MASS_ENERGY_EQUIV_HELP, {}, {}},
+ {u"G_{%mu %nu} + %LAMBDA g_{%mu %nu}= frac{8 %pi G}{c^4} T_{%mu %nu}", RID_EXAMPLE_GENERAL_RELATIVITY_HELP, {}, {}},
+ {u"%DELTA t' = { %DELTA t } over sqrt{ 1 - v^2 over c^2 }", RID_EXAMPLE_SPECIAL_RELATIVITY_HELP, {}, {}},
+ {u"d over dt left( {partial L}over{partial dot q} right) = {partial L}over{partial q}", RID_EXAMPLE_EULER_LAGRANGE_HELP, {}, {}},
+ {u"int from a to b f'(x) dx = f(b) - f(a)", RID_EXAMPLE_FTC_HELP, {}, {}},
+ {u"ldline %delta bold{r}(t) rdline approx e^{%lambda t} ldline %delta { bold{r} }_0 rdline", RID_EXAMPLE_CHAOS_HELP, {}, {}},
+ {u"f(x) = sum from { n=0 } to { infinity } { {f^{(n)}(x_0) } over { fact{n} } (x-x_0)^n }", RID_EXAMPLE_A_TAYLOR_SERIES_HELP, {}, {}},
+ {u"f(x) = {1} over { %sigma sqrt{2 %pi} } func e^-{ {(x-%mu)^2} over {2 %sigma^2} }", RID_EXAMPLE_GAUSS_DISTRIBUTION_HELP, {}, {}},
};
const std::vector<TranslateId> s_a5Categories{
@@ -603,7 +630,7 @@ void SmElementsControl::addElements(int nCategory)
}
else
{
- OUString aElement(OUString::createFromAscii(element));
+ OUString aElement(element);
OUString aVisual(elementVisual.empty() ? aElement : OUString(elementVisual));
if (visualTranslatable)
aVisual = aVisual.replaceFirst("$1", SmResId(visualTranslatable));