From fb0ecd64011922bc47716f77d4225bca3a8b0858 Mon Sep 17 00:00:00 2001 From: Khaled Hosny Date: Thu, 28 Sep 2023 12:08:20 +0300 Subject: starmath: Add Arabic functions to elements panel MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Change-Id: I9aa1bdd344dbca078aec683b5fcd93fd07d98521 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/157365 Tested-by: Jenkins Reviewed-by: خالد حسني --- starmath/inc/strings.hxx | 601 ++++++++++++++++-------------- starmath/source/ElementsDockingWindow.cxx | 55 ++- 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 SmElementDescr; +typedef std::tuple 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 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)); -- cgit