From 2400245e94fd9da9788d196e7afdbad878f4097b Mon Sep 17 00:00:00 2001 From: "Jan W. Krieger" Date: Sun, 10 Feb 2019 22:21:19 +0100 Subject: [PATCH] - reworked how MTsubscriptNode/MTsuperscriptNode operate, also when the previous node was a brace (i.e. special shifts of sub/superscript) - improved documentation - fixed a bug in \overbrace --- ...thtext_MTlistNode_getSizeInternal_frac.cdr | Bin 42872 -> 0 bytes ...thtext_MTlistNode_getSizeInternal_frac.png | Bin 38493 -> 0 bytes doc/images/jkqtmathtext_node_geo.cdr | Bin 0 -> 19150 bytes doc/images/jkqtmathtext_node_geo.png | Bin 0 -> 35717 bytes ...mathtext_subscriptnode_getSizeInternal.cdr | Bin 0 -> 22905 bytes ...mathtext_subscriptnode_getSizeInternal.png | Bin 0 -> 59831 bytes ...thtext_superscriptnode_getSizeInternal.cdr | Bin 0 -> 24022 bytes ...thtext_superscriptnode_getSizeInternal.png | Bin 0 -> 79611 bytes examples/jkqtmathtext_test/testform.cpp | 2 +- lib/jkqtmathtext/jkqtmathtext.cpp | 515 +++++++++--------- lib/jkqtmathtext/jkqtmathtext.h | 337 +++++++----- 11 files changed, 468 insertions(+), 386 deletions(-) delete mode 100644 doc/images/jkqtmathtext_MTlistNode_getSizeInternal_frac.cdr delete mode 100644 doc/images/jkqtmathtext_MTlistNode_getSizeInternal_frac.png create mode 100644 doc/images/jkqtmathtext_node_geo.cdr create mode 100644 doc/images/jkqtmathtext_node_geo.png create mode 100644 doc/images/jkqtmathtext_subscriptnode_getSizeInternal.cdr create mode 100644 doc/images/jkqtmathtext_subscriptnode_getSizeInternal.png create mode 100644 doc/images/jkqtmathtext_superscriptnode_getSizeInternal.cdr create mode 100644 doc/images/jkqtmathtext_superscriptnode_getSizeInternal.png diff --git a/doc/images/jkqtmathtext_MTlistNode_getSizeInternal_frac.cdr b/doc/images/jkqtmathtext_MTlistNode_getSizeInternal_frac.cdr deleted file mode 100644 index 7744a8acce21510b4a8d7c2041d5569cc2a96cc7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42872 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%0DQY}Cm2MXofEfNVBVH=g`z6*A%?tTXYc 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 literal 0 HcmV?d00001 diff --git a/doc/images/jkqtmathtext_subscriptnode_getSizeInternal.cdr b/doc/images/jkqtmathtext_subscriptnode_getSizeInternal.cdr new file mode 100644 index 0000000000000000000000000000000000000000..5dd078c89c7c92ec137c4adf6d5d20711e538b0f GIT binary patch literal 22905 zcmdSA19xOm*DjilZFH=TIyNe{oen#;tqMA}I<{@wPIqi~Y+F?)?{~g)&$xHo^8?Nv zqc+x_bJbpJ&6;?gUCMG$(AW?V@DLDIHL{BOK#!!+YC%;&fKKe`t`5%h2tpM(Z)u@80v zkuEJWw9;jn(x{YN`m6O^WU%5Tuwizr(ikm&+{a;8ZZp%fGkEB3ydL~U%!t%AGGC1~ zj>w2epg(<|P6zz)9pv}C!bt1g2Ke>-?e;LgY<~i#x?KLvKI-!u426n5t5ZzF1xX+N& zkk=6JkoJ((klB!gIL0odsQ893Hf0S(#lE<>Hzhv?WC83zbXn}R$b!^@#51Kec?Nj~ z838!~nGU56`K2(2RFhbf#72x|&~e~#a2wj}7mP?x^jVZyoLRhC!W;AgxLu4PvLOg@ zp&{uZ_#u`d^dZk7o*|R)*>Ej!4r53P$b?^MfoajUKmapJ{WG`Oz}@RA#LTd<9R9b+nZ=| zVb}&966=2c4`FNn10Qj_6Bl`QnXU}7Zi+uV5fzn2{OXZdCm7qvk z#*>in-Iv*AU56uriSaP9M1nlB4=jq6R zG{58kOSsr+0qZ4hYuhlRy;GF##_s>`scHwb_H!!Z;9Y9>hu6P!mMLw;K-G|cICqAeL<8<6ZEWHM`peL1R$f_g(C zRCG8rF43uGMNq50pNpw!B;&8h?BbX1@|Mn~h1~t40qZT3!q8177g)}8C<66sYr~3) z0DAC`#`oorXSOfht67uJw?k>db69fb67nHhsV=!FM$V}7f5rhf4<1QnU7|j-TUbh3 z246mGx)*3D$S_?plxv(piLaU(hI_0y>ODRid$U^M%%uE^{g~PiZPlcd^|lLlh5IHA zNbSHrmb3^jsRAQLuqT6dK?@7EZeYwKylLZZ$RWtuGg?}i9hBm!_Q0i<9L_ej#i8r^ zX{~gI-?)gImD8-Uxyh=Eh3_^_FUup>C3a?qXd-S&M357Iw{!pG+5=KF+(9aeNxe*| z{sPEh=jJb(^iF2Jm$KhI#&R0u3YukCIqmumw&O2XMsJniil6uq-pz@qYGKj&EQ-RG zfc(Wp5iZrB&YCXKut*hsW#S)8c>ER4n0E2n6)pL!>fR^lR(M( zCoHgVW1)+-7N*(beGRq#;0-;uxl_{wchTxQ5MkIWo2D@ zcsX^jL<<|0vbvZ>j1$3B87-`w#|EgCVwmJDn5ovKxk^eCHM;zPX=51@(-krVG zg~)ncZ4%d2N?lXS!;JsMKOf*V^+xkcq%9DgByqNd8=^&3yKS#Z-Qcz~i*dC~X&>kT z@V^=$a!2#3Qat+z+!Wg?Ykbnzrr&-`zk5=Z(_ihoq$KpQrAJEi7uSQ;k#D+&xP`(| z&TJH9*Y$>EwZ|{3`xUw{({Q!9W}w`^ow>ZZpBg}Wv4sPp|NR-b4#@M+$|ywyZEegn zJh+ci^{Avr{0V`ZsxV>vW5O%2p!)QTMzUX>B8MS2P4Hb>^@uB^YDqA@xwIO)^bOPF zr~2Jr16Q@IUPUDCbh0Gr?ahZ!f*f!rGwqI)*kqm_T6WWY3DTr>o4tSo=lh~46aTc?>UPdO8R?Z~TQr%um~8g;s&AXIJXwQMK)@2Rz?StysA zS@Dwc;3%d|`Obi&Kc}9X^iNKrl|sQ!?~+Wn(5VLHM{neCBD41H%BA#myfd7bc_;Vb zPZ4hr7&pAPmGJ3{$_nL{9~~6C!sG$)XT8Tb_5#m?cjddbq0c@ z{*7oBL2J57Fui1|LD4&QCvvJeOYy)`>4>_*Vq0FVtiYug$sOPAw*k&!F7qZmf!@y< zwr!%|HhV{={n+0}KD8_i$aG$@hkB5U^o9>WYO0^*%v3Y-=i~-*C-j~B>-QQ;O!7x! zTvm_KQ^hYioXqzCn;*AD>8V-5AseV@$ibqH=B4_>#-*ssp&@#Er~IoYZyktcr!V zn7!Kf+Y`bhw{Rc4Z*489OK0T@BP1jD8PUx3vl`dqkXeN zKc5Vcn`Yl2QwrJ910a_!(h5vN;N2oy|Mbpj7n40Km#*njon02Fk~r}y!QU^h5?m+T zmwD2XZ4djQ``RGW=s!5OF3@KS=CA&HQtx9dZtE)VV|)8k9TuI9f)Y#ha^zY;1v}Yc zkS+@yKixS_q(e~gWp0g@i`*GA#A*?Pl$AZgwF%05nu4LowSnixQ^iMA9eNeYds$>D zZR=$Q3(C6>LsX9v77~~!xjch+avv;&#;&LX&2n_)MF?EX7BKvnxMN)r+brp25p<-kJjVNAb|oNpj2S^gr>C<1n;NMBC=vidzqfi^&ova1k+BEpNCdPm<{xKUlDnk#{!f_F8Skv@L=@y?;rGkj`Nwj0(O;sDkr6c0~pg|%X4p6CC-e_zZT!c!M~Lf#!HH7Dh`hN zi$#)+%agmjBPeXJylcgZDHML#;)pL;YEvFa0_p1 zm)9)5mRP*iZmzV!t-$O4S-kH}FD{CoVr5$&k5DTt%V+ptN{@J{C%W7FHAy|60u{aD zsL*A@-RKxcSah~G^zPYJ(_Y1#Wg-YU=u+&>awxVB;*vE_X(^e@At3nKB)3mz2*^2{ zU{oH>!#VU|Ud5b9=o%kzIe!uE4?m#x9+AItG_G>GN#M&lk8;mBWe>1vqzzj;ABcug zWBSW7hqF>=-;z*MwI{_W8_7xKCEJw5jTJvQlz+RRqWz@GTPE;xR^kcM;IC$R3{0sW za3`Gj3yKqR5hM`o=0PW~k>mNEN}P_~nt(Ard*h^5I9RY}Ort}}L8BB$l*`Y`G{PrH zZ5+r+eo_-L7m+7o_jiT6D$&wn!u>0uVxy&tC5+uak~Tb1BO?A7|34rpO@G8EF>YjT zW~WCDPhuC-cDJx<=TjX^#xR|JIaDhZP(qQ&=-wA}%Sa^deppWofPP=OkIU301^a^q zL8(SOo@{O=Uf&_yG!`WOZz6d>s=n?TcIvu&Jsq+ld=Cjt@KEaR0ge^{^5xVP9*HAkR9zh3H`z2GUdJ0-MI8?8Tx;Zl;dQsibKvR&CJ(kd%*AuyDzfEWV3-+`AHFbf(ejdl*?^# zm{)UHZMDFYS{D1RF`Y_*OPaLzs-n#UEedFFlCtofU7WAP#df+(xaGu4CUnqNsJ}jY z7kb^Bl=>*UAe=biMO)IgG^1C2Ugk(X_JW4D#Uf!!s3yW@ONwjCAaRANC6`Uwz~esS z8FnO0oe?*x5r16?N;f$n)`F)cxB9c!6SYGa;&s~G9CO=RZGsKnBASbpJk?@n+iCYe zyBr0H8X_j}TO-UK*7zoq4r3*J1h=xL*s+ZjwORwaG>A8N)RFXSG! z#||xEpTf=4YG4PGZ$H^jQkp|6m7fMnsUxgP%*o&9O^PghFQ!@ISUtXZM{8${KKp-n znevKecCkyjRL)#|`ii7hs}=29-15aukRt8|$8o@9=+RXo^&VF8;cMlpXEZTS+zm)I z%~{XBIqXpIR@9D9%~_6=W8J$-1dDoPSgM(|m2uK3nLoqJ5$IJ@$~7WRn{zh8-xB0I zAK`OX*8SI|_$6=z%FC?cDDtSN_0*Hpt7e--F-Ky{a^0voaV+v1ll_rdLcZgAy|*p2 zqjwSO8@Ff8x8#F%)%EW=^dUIYZaG=4F-MViXjko1aFZPtbu~1rX)s^k?+CG)v>+W3 z;$Rxw{1?f5Pq?t2jk+}R5o-P{eQ+9fLdlGt<*laqiwtXfc%vohl(?0C)T>wc2bt4t z{kqkD+88A$pAH(R#r7c0y^%V$uI)ZCcGErULFYJAe8Y$8`AMz))XHlue%NKE>VK-b}1???mug&B9baiMm-K0~W9_d&PS(hrS z3dNPp$V?fya0pWMo8ZRVXCV~t=F_tXI^F;mpcJ%d*rJEv5H_h#WwwfN$a)esA#)Hm zWiiED4B&k23jPD7BcngKhj$BzNQOP3H(>cv%`(W9`A=Mp3#$f_%O)XqF>f;1CJ!<< zXJL%nA{+eYJPqX)qUq&aj5Zf#0@#wzH`=A|$#>{zmq^9B)+(EKnLQ+xx0)Bnnsswz zc9K1$6YI6sL-^8yfSc7#u79D1LNH}EUA^=_eK>46<|k!T!TRcN`;L{(0-gb z<0Eg!gQ%H&8b&rY2C0LMcM-1@(gvu7#^udeZNkqSSjG)^Y>SrtX3!+C&=Pr(UuO(# z8S}bp36q3#0Ja300|g6__VFDF7kQVUQD%O@>^L>Q@B4L%ymAN0|BJc7FQ;B1nKbVs z?sJ!jk7bxK7bdXAF#}rqYxn=cL9Ow(B#dE;y9m5p%?XJjxOR~{eDO3u3eN3*ufH7s zILcei*-Wwk%UgXkhMD*=!%n}O1(qa`U6g1$#Z>dVAkRHG8T;kx!OgYint&kGYcBFP zeT;%MrOyJIoLX9r@??`;T8_|{%?)@K%pdKhCn!g3FrS^WC1l9g@2Gg}f&VKSF)TW1&tI@Z+(YOU*qQ9Wz8fVe*$z`R=M4(wYTvZ>wsu-rO$y)CI_I9~rj58HZ0e`|Tfh(Ealw z6vG+qzZJos{kE;kPj)jv6S79%P?I-X-qop7_iPJ*kJHM7^4NQ8 zE=Z>D$}?I)Hfcq0^tTP>y1(H+Vp6n|7uh|&j4R+4S@$K?m&-w_o4F-wOV*^9o{+vS zs5z$qlQ$)@%&D*D>>OCe*^h?0`*$kEb%)Qt1n zEtz^}N{U(ul(6P58MJ*YGnHrJW~x%GtcASFX4qed9)aj=@TO;zTix?pG?tjKe=IS9 zZl8CSnHHX&o8^c_?s!fc&Zy!FNkXNtaiVer1gNfFx*5zx&IpT0UyHR~=d5>CzYzG1 zFSw|H#3QQVK6f~}kJM{dCqb-FLTMGz| zdqkYANVS3?%wABvRZ{d&lPgoRqis1Y+TM;`T&7uVZ&&?jnn8u~Xn|D#w(A z?t$hwQB9Fut#K`pP4Ko^GTZJhcXHFc{d;3P;2N1%t}Mc%?yPH`B^u)O>!CzJT&iAf zzbC&3t!YCy)XR7M%VGC6g7>PumF_6lX&!GEt~xYs(x+rE^0+|H7mY`r0pvM4!9&_8 zr9^>PKgbUqj``W#JsV*dZ=(B5?7AX`xFA2gbXm@L6JR_RNm$NBo`y*a%vDYClq=%; z&NL@4zs!@}n_(9lrB&=4JB z&Oi(QE5}#XdMM>7=T%pjVAnMU@br8ab)tOqkRpZCs3#ss-br|gG8}5|3W0h2YsJ-R{Mf#V!ve9 zn|b0tK|##-iy`T*cH3`hHZp$En?&9#(CNap|$!D{m8LUAp!na8B3W!KI zMy%OiFmVen#mYpOgCK@&4P79V|C_ae|1Z{t4MZDLO#}hK1px&?{>huznYkL7ezG;p zu9j|g#`Z>5wl4qsl*!o6@gn=l1!pxq^xzil4bQgPrnN<{Q@7b>xuZnyU~{$p59ed- zh4wl-lsPOct27Hsc$WBAVbSnBh9s9M{QRs&Wn4s4a*S`kmAih|IBz`7W&Eggn9+cM z_Rf86bL)7!KUq2uIP%#(nLqNo9S(yP;!?gL2YtvVKPOyYNx=%SqCeO7_xc)MpKhc5 zMHhu95B|SmS4FEfPv9OKbGG))v>3gJlb5rTSCEyRhwZ|pm=rggou^O&IH^Pv!jF$b zIp-XV8LR}aD{Ujrv#=@TyVU&_Y?6A9Za>1?pwuzS*imaCtR_HiiVt0k+$Q7?cUl&*?Y;AqukXLgThcKO!F`RWC=9{s!t;rJo^g1h;w zV}CiymUfiA23%%$#7x2nXywDJjTeJy1zAoXKpozwhrcD z4x`gCn0kam2oW0#6;ozI&2I>{_^x6TZ@_?vPxdoRc{o5W`_O)~3@{c4OY}CIEIcxL zZjtGc*|((|N28pXXN?_F5zJ5fz0rAyssW8SAlctR_*NL?rtwqkLO5V$!?$K{ZIU(X z;jowL)-Pyjg{}*YB5s^GSS&E~b$$Kw!OuQNP&akrPD5v{A9vzyOq#? z8&u}o5_{e`lc3HQ-6%Sr>^8Y)S*BKtLJ4JxoKV;(jDVp%L2S_foe59}MZ0P*+EocNt)r_r0|UjG`;CI_&{o*iJT#d=J>wc$g$sy`B& zD*7Uvl3x@uCxXZNn}qLQDI)m5KhR;MH&yrXJZptcb<%CYBR9FnL8YfAzj5DMtH`S3 zXvCnf>&U_+TOR-#uUEeJZ%Uy1SqDMMw?>N8w1s<|xHx7OqAtVG=Dx^d(%1JxtvCGC z%d&Hk=N(<8roqH8Zu^UE;6lq?ppuew#vFYQDG;3)5K4#sLa`>n5bcN)S=|MIJ;_*e zBe&248ES>z2AklCLcxD1h)8xEn1&CpKWjA7~!~7f200Pg^ha z?y49n*JXBw#TywL>nBTUGM(aEt*T(`_p5xf-|RTpJ39i2Sq*3p4i1v%8=Z#8)uuU8 z-Hgwd(qH5C{HaoZ^Pgzf%~wa!5uF1v0P@xcm$Kn?Fkr;4qf1r9p>m6s?fXS!unAeyAyl-!C!NI{LCB?ZsUZ+*V zytblE_4Q6$TY@AcIf1T>3=EVM6iT^VQIWACBb_*|Bz|#Pa-oaB*-*c|5;nLn4L|S;E_8do%KlB6a)`go(m1sFFCZVBu6YBa zM=TC!Ub7iqh`~cf^a}~v0A7D7Ac{DMvawsqcvqusG6k>d8UfH_(t6TzrI>N{GOa zgn_%&xOX9kP~j6LKK9TtE4~yA1$1=qsRy`iO9El^B?g>&%g+!RA#_W*4fXM|HW;%v zrg*(_JZ@Xl*R9Md8lvE;7+cTzPA$LU;8~gbJwD$gwsjl$T+@3}ONUc)-0n|aD<1d0 zZh0PT)~|H+U&|MNh5`47F_m>i=mAI2rir@RUbJFUAujx@6leqvOX$NZDq>i!D9Ang zkvI99CmEe4T#7rClgfuELfz^2m%NX$F;}M@NAYmczfeeMs{2PMJMpMsxUDy#_jx5= z_&Z!LntSHLhXZw^ZrNb?uywwYst*kpkz)KD4<+B8vvihxj@Q0&h&%0%Fc{ibw@=T* z{1o&{g9`e4(u5aPQ*T-%>Q&-*18Y_cUv7fYrV~>87Xu;Puxod(Z8&Yds{+u2(fkhH z17n3U{*6O{$(-KV&+cQX8s62Q-4pHfpgFPWTqT)I-!fw2FMRMmBa)9%!~wC-Pn9v5 z!w@N5UQ2Hp&40O0bt4tq%yF^ zn9hv9ue|D9@)wn`i;FcWxkXFMuUJaaap{^Kkx`*|=RYQDVwAy^_~{^0+#ei6)Z8P* zU4@~Uc#>~suXx#xT2?m{_bFe6G@VXQ4-1evKm|uZ6U7&<_wZ$$3*ZWg67UM8xyU-I z_yriW$yutzJy~|*?_(>OL_e@-^%3|lHdW1KkGCJuQlH=TZK=)kc*^c47M+caR5@59 zN*?SaHEA=jyS4kl@a3S7V^_I9ho7k9eKdyM`c;a8*<*^(|5^Br{t2^)1U1X+B!A$& zea@6plr2Ya_Tl}B^CXwO;9*~2rgvc!_2HuKqdWAGG=j#?WiT!MM7HUo1I0*G{dl9# z{4L5W5)%qhe6+)%w%1=r=>w?%M}n5x^{>%V8&>Y8V>x2h%SyR-q21UP5`Kz6BjJ}< zl$rfF>awUJ{s?+LZXeZ(ViW(;5EUswp8xik*I(Bc^5B1bt)dHfyN{M9)a?`iK9!af z!$HG(0pAQu8>4J~xVxLGH^tTFCN|3H>G>$y*JO7Gb#{j3=K9;%=t@b2g_WiT1rKdu2czOmWH%|rxg(Z~Ll=st(r5Gsx+uI`~&HW`eIyBVL(E$Sk^XcNlf`cU`MzyjU zH#)B%PR9z&sk-5+=sq+xej7A2a0%J$oE^pS1u7ha|K(H0re?=qG$guMYJIha6O4+I z3&x*)%FN7nNs6!`kC_N`p`<9x^IynVS>e&u1swZVPloHOy@nN%Pz#QuDED>Gn$MN$ zDA#rvFvPwyKMQ}!ZxsZ^oz!DF>UaZjEQ|Byo7VO9w;mo)=*r8-^fZ3PnD^$@p{tHY zR4jLjiaNog0L?UT8brYO>FLL8IsCplD%ufhb#NE__sFZ6>AD;o929pK>mJIs3U(JN z^LuT2CVMeO``FL?Jf;m6r1x>(Tjsz*l^LAH{_!~#*blXo_SH2RXLONBoI|DK5m3e# zGrqu|Kh<834YJa!5?WelX4+q)&0NvT*e3c#+PE82&n|oXx)r6xwytB%7tF=Qj;{0K zh24bBFk+3B`S3&u=!E-D@f+9^!i zOl$nnnFlW{MDzSq$ULKn)jD;&B0N1JDI@QVUGMzCC;w5avnBU&v=|E-l|t)f*PQhK z;Sa8C^0Zes;HscgCQEO1d5S$GcXCq4`oRL8{e|s{V(eB3(j>ns2G!r;kqRNpsCBDV z)%eenhvDFi6-Oy+z7~1PzUh&F3ew)Zw;%e}=#JcVBDr#z&b`4>0zGOjU!9^@*8&U2cTmzx3{vg?qM#1Vz*W3@~4A!UuJZ>E!u0}lRBOWRP+K&@n! zN!0doSNvh?B>UVv)OTAH-*8{{dv~EL^mls}ozXJn#i{vZ$K0usLFyt-)S=6@;24F$wcX|B?tZeAhB`u{kpNz} zFKT;fd((IBrm3o_wv=s-O%1h}e6XVu&G}5%2TlT`L!9F!MQODujnfz7oJA+5#DD0; zlLQVg|LqozDJb~PjCkU!0_%UxVR>eil0tpw52?V=r8Fc%`f-eUi5ucdYd+&$lu0m|Ng7SCla-I0r-MT?EaSxnL*$SXJ~3JR;;M! z%2j;xYVQhm<`=5b_+QDKrQa6xac}b)^x7}aa~v?$z1hmA1}Xiy8+NKH!dC6Q0NsdB zFa`ilE>?hKn3#kD!mxs-Bjb5oMU$w&Exn*K`GY@{Y;55YS&-c2V?#<)U?=NV2;6SP z#hx`$JZ%?VR7N1?1ZmNFkw5txz3FQlukEFaa}EgUPV-zyg0GAzt)+ZyMqVdUHM8sx z*5Y@P?7=0n z_i}%~3e5eYqmm1t(GA7GH!OZi%(Dn*DcJS7Zk~@={&}i{1k;Q(^kY3lQ%f|sIqr^J zg=pY#aB6*4W67B0Jor`x={+*8fJ-C>o$D0-(R3S8gzqD?Hy&%T$iEGa^T2j4Z0!9s ziE<2Tbq{lfiz$F3!()N@TRfHqL^6zksPf4Z`|Anmjl=!0r#4nKC9EE{(_QJdu;=C` zL5?uFU`)i!t7P@xnxO}|QsdKF{}b1?^;UB@FU&pj&dilDKY=6ZsQX9x!a-4#z|D36 zrls<9%|hWacqQvAF9$tg@IV*)3J|4FC=ulrrM<=J^ta#3+&m@ogCpUIDg-~pz zE358J`;Fu8*4E8dH?`FcMuJLYPy49PXZ=V{o*TvOQH{n3R;(Hs8?r&0r< zzzXdHHVd*F*{;#|U~Kp2%wIx?d2ip}M#K*tO~M`T4P`K?u&rsu)w5BQd`bY)43u7z zO^EMI%nC|#?@2CKp~!x$f>2x zs;XP)-OQz5O~NPwX8-+~_I671R~diUc>&K$OOV-t>txAa+p9e{R|xYn>bttR#6?F+ z>iuF7sY0qq-q_ek;3XrQ+1!LeFzV*{bB71?Hpdfmb9V{}Rq6Q*Wji|K-Z6xzwMH1^uuT{GXwo@O)wCW-ktcmGSoObO!sI5w>W?4>2Hq`uB(*%L~FQOf~kF zR>MnQ8=C5y>1)fb?{7!)!^5RTz;iM-(qg&FS10r4E$)xUsE&Lbwst0!L`34ETH+pu z$shn99}zPkJze*opE8W&PXG{ZL()+?WY+}uDfFFd?dQ**P{mKJiSh5I&F zA57~oOF}}2Jb|zQ`pODplf5bJ93jVRmL|r1k&dDw?1Q1Gn?O^DVRw4D$4lloZL#AgIuv7D2(}?A8VuH zGclqi)j-(7dmI`XD#$6AVA#t{gMpO9icvDkgPjd%pC+(0h4+r~9 zT-76NZ&951D@)n3E$yH?4_u7;CC#v}1kkQjIvN~Kl6n3pBcR1PAQKiwNSzb>*ccUF zqO$~oGJkV82vhPpMbMWb=qaReN0&Phe?Mu0wwn#$oAct4o9T7s%Q9?`Ao+oA_10_u zk(&E{112l-e?RgUIev|qZBYWhuiA86R=|i#+(-8D-kFoFT`XOe%&@s|9D3+4g1@XZ?vAPZ{8Z}q0w5K;W- zCiim8iqn444sUlf}C!8kt~BO`=Tz|* zom>VPfj@x^>e}lri|1x2@e1gvHR-4>|@bUmG9M#xr?F)=pZd@ z&ue3DG3i?y>6(06y3!Wn+>1klrE5RlPtHIxO|Be#yyAQ!rv&u=TW7qR89RN){6p}u zOBnn#%)CHiZr79a!}jNobjjW(^PnuK(__Re#8U4&BaO}0ahYpzIgHn%tuyZ{jkq`$ z_(fK)x9UW(hp&z{u{wr`q$pnSD-OmHCQ=D_11j%0y96{INjC4l`9Q^#mN)6#z=>8J zg@pzUoNEckkXENX&8>oG`w-KaTZ~I}STj$YAUR~Rj?i%mfH}=&z{^O))@py+EL(BDOiCeoSe?rtw)Dpmc&0}gN8Zb|mE?P5&+U_iOY~+ZZ9?vq@?8WU}H1e0LnPR{8oC}@z3p~z$I^p_|^S^|~Ep=fEew8=( z6@^_TQV}Rbe)&DMAfyeub|1H-#Wk-#O8Nap;(Na<^DP+#5I`dG6xisbJZoCJs0=pc zJ=Ox-ZP^@J_rh`1#+P{oy?BGRi1_if$FdRy%J!)4KOqH_%EC`c{Now$-O*jipq0z4 z*;V@>#_7fE)27S=jH+`3EaxL6{J0qi^YfwNE+2%as`5a&Q)BoX&uZ5s4!gF4DO@!awI#xD{m9c(3+*e=Std47L500<9weuV|;* z{UUU&|0UP7c&6GvTpRlh}L4A!a2M@Q>}l3r=##B;a((_6Qke?eB)*BKnv@cYz3R)#X+ei|Q~@BQ{V z`}8zMNzla7<8s^BAmOk77}fMP__w0NC;B9>I1wi4_TF@C6Y`&SrB55-7P87r5{y~= z3~m2Y__I;pVSJkKH=ocNu9qj&e=Q>Tt#r=dF=^6WzdsjQm*I1WsIO=KTNO5#^Y#C& zNd6eEJ(ROoesq4%I{g!sY5f4#$h!9Eq;~N4WL1{n!JR>axIK*pPW$VL)lJG5lDDJu z<^Erg7QRaU3O`PX-&=Ym8mPbGr}xbAP&c>U{*C&-f^b6@9kV$AfBAoNon2~i=y{+2 z5#zdsfFS-qaGj1u7G|vf#dH3A(j?SQc?2Q6t>>^G{RPcfOyB>_T20?fzt~iq@4tw4 zQJkN@c$~S+X<4^x#e%i%`zp`E8}!W?Ho*mz+Jq&|(1d6V{@WK!OvnowL?PMYUl6OX zPj6Fh?Wf&u`pJ=3-5w6zy0wDaFFBrr{9A*)9-IJhgVA8l3m6nLE(`*I$KQbnoS&f2 z|6v=}MLCEz2LM_<)6^)@DhRpOJFp zeZ?qk!>go)156C7^Ptkbk7vLrk1I0CU35Yl{7C*G4rRNe1vHNLs4OIAF^P(C!H8UL z_*hQeBW}L-4*F~AhGc!B0e8%W+0$&Fsg>^4Uj_e!;tTYe(lV#D&jey}12575wr_nP z^yE&FGF`)Y=BqQnwdcKt?}Ur)XG;EtKyfcT*IE>b#Z}Lh%PV9m$Skn6Rk8Nz#tHHKEYNDTdVPkEBvQ; zvj;`MZSHMCYMbiH#TBq??IGw5_+F3va_Bmf?vl`%|K9!YtMyyw)i9Lel)>wJ^o2cO zy702a04{6Ynd(0N591+2wAKySwDWD+;fL)z==T;84-1c$w#Gxr$#qna^taRVQ=OD1 z0oyn7V`hz*VmVnC&5OMqxQmYqob2qC9ch(J>iUMtLXeDm2~W2X z*oG2up41Slm}KpA2vTQBS$aDCP$U zF_%N{di}E@?bl4u;QqO}@rmEOm7ECIbL>x)v#V6bcptPi**c^`ZHiM<)&4*YGKlBx zufakM%=i9>clO#l2O?LBGNFHksT9>H&LZVUb*g_(!Sf|~2Ol;aypj4*B#!HYhm{$S zDv!WcXChix_B+PYmaJXsUym#tP)v|$xO*HYcx{P5Z2XWb*V65Tbg+vTP@L|a)wS@j zVB)PdgFtB0&=52!C~Hd?N4Fg^N+b~H`8(jT`E5Du})1&@!@`2;{Jsnl6Vq| zq=I=w99bZo#q3?-KNKMh?0BZkoFGM=c7{ULPD}j`BDu9SE;AEoU?7x%0393`6&0ow6L{$%(C5>Hfs9U)qmK+ux9;~Z z>izG51Pzk)=Ibfr4anG@E%G1>Kt;hsOqH3U7Ubl5_qCk0M^=;lp33)SMU+0d)Gd4z z+UXUih)|L~zal+8Kke}Eh4H~HDbAPp^&S(W@L9WmV$WG1QtRPiDl@YKiUeBLPb9kh z<o~`1$!obIh8TIJZ`T4LxP&oN{cnLr?DHLr!sK!Yjpj$Z(E0n{8Wg z_RcRHZ(;HZ3J;Hh5>Q@`@4Tp_PxmY*%=%qv>Dtc+%F5H3PqM|BC-S>}|MEoh4W02} zit;dz(>@$-a7`v}Nfqm*lDC zAqHjkG-F3;HNLl^eGLL4RSYISMkn+I^@R&(K)gflztYI&tv@7=Jx;6ZlTo?lTqt0fls=+3N?#)t+vT z5b{#b^&$i)t+CYjwNgAee_aUmyGYOplW5>Vz|ZMl=2?*TqO-^$G?oEeHhA?BTK9U} z?9ORm`jW{vCDF*VNFlyqy4g3SK@~sq#Wo`9cOK610k}IOBTi^_Wy5DXt2K0>N-OjI z2!g4_*1P{mg5Ge$f=dwaDlc#a_SPbb`p3w^4v1P0BMcB{qw$nE8R9_zR92ZLyx+|J zoXb@KQ3TU=^Ez}C zEjJd5$WG!qETlUjc6g`E)}hQizaD`3M%G9D)0l$epE7aeQp_OOL+Ju{f;O#La9K{Q z%CWqW1T8gGLA3^s&$;${Nj@*;w`QGg6x{3=dW&oCql!L%A+18jRn_c8uM&r;)zs^r zBT+g(-@_(wEge6h1uqlxynC#+wXRUs4dnKk7jMMnUQio;o9y3qn-^(D1)o`$;)@Qr zCP=4n1vtA+d{<5hQJR2vw7hyU@+E_=UQ26>bj=bci=3bp1k`NG>Upf96e?c`M zyGDb*e|T_lazlbgzV*T%L{PBZ)Q24t0D}0rnVG3Hj{TM?DcBIT`FkMV{QN+lUY6$* zhZB*NldCMnbN40p_5H|jB{fh7zO~GA(%Y1)N6vR=2o10QYE1?=Hl7|kvU;HtV39A; z|Kl&Ot_ofsrx{|p?(O=k1>U}Ki~y0oE6Gi_?d=la5WCDzkpzp=kBv`$+`Na#rPloF zCSz|Gn!zgAGGmx_*fE0#Py1s7GNl4xrqW}LSIj) zUgDU#o12^K>*?6O>rf80dO&QAjsJv_MAFft(E(TKAko21G!)^zs0J-vrVY4Ujcq#&070;}hbPkW^mLl%Q7_328@20;f3LQP9z=WATcb{L3Ii!NNOS5_k)g-qH7h?GWRzzPjsU;H zY&w1!(U9`W3{472_esWLA_&#~p^k^g8~?PFyT}`QZn5#>qTtxddhlW3@`8r~ z*Hi0vMVFa-MtE27Z5@ymRjEMh*{6&-J3bBe13gvBmX4;-Zz_2qr`c6)OPXH z^&E0kB>`W(0p}Y8H(%d?&5RMdL=_$I*L;_60SoQEAq3f%PXaoSpRYI57gZzY#fGOw z2WM4coEct&+wc3%A?Y-vx6#|Wak)l5lCQC?D$qWGq(F;gM#8R( z5!tQo)3Y6|mk(Wzf?IDfoK_IWL~$l>-rwzKs7##w5Tux6RXY_Hv9?bbq`n>a6@GtL zz{g)8ESNzFuzA!Y(~!e*SW9u{(ETNJSP3O#J~fB#@KEOyE);=t){YoXTnklDoq{as z>PFSIn3&tSk)jjcT0r^oH3IlvyZ0yG!@dFTnk4bt>%TR%7i7&eYgpC4`lM;q7$HfS zpFTGB$qS?GAw)~Q(6$6v_4>#Xgc3C`lt99eyu4Dfl)U6IYg-_e7dIP|hNy%P7~LWQ(bo0~u-M!;Jp3lI$@QMD zeYTJ5QdV{*;b6A*nBD01Y_wg@cH+@@7$dQ^=_U6SMn`w~E{M~s6WV=2K7Ln|Sx;0(wV2%TN>o7r z1y={T2QrEWv<^znXI)Cg<%ji#(y+y6CiO`Leo6`!(+&K@zT@{)u?;l_bBKf~X8LdA z#t&EZ!j2EH&c~Q^bO#f7^SM^nJg&{O8jb@b=ykham>7Sq>lAv@yWUd9j8@(8(Y*Yt z;g7kdRRNB7d!eBQ(Fl-A+daa5Sit%4uq@v$R~otrUU_0z^lDqr7!_|44?yD0*RpCW zo$II$xgO}j>-@3%rfI^JA%$20RjNp@%f2MM8o#7>R%H224(fe`sIb=oz92=Kw77et zZ&5i-m`boTTTYywd!uJ9rU5=Nb=u1&rF*&$?_4?V^x2<+6Bh*G?};7SW@T?i-i6+4 za!rGadp37#SH$V>*`rW-v4(ix@P_TuP^xZrFjN1sCSax({IwOWuJ=vWYpEXJ%Lx-M zpdreri-Gl`rA0{za*c-O|K3ZBm3T1n`|L~|cKtqId-PK8rj?|*I?`ko6W3uSj*(@Q z%Si8+Fy_1IYuo*-z=B>Io=CaOFA7S%EjXgR0eQ`>auM^&hhz#*3ni+aF_01W(Tn8& zpnlwg&KcP*b0b8q_}ZCZ_l}P>q$iYV=PtH=Kq8*PE)j_P-n*?H+|5;1j^~Nx=j0I5(x#-Q?rjDPjE>TjzI@r1 z5%Lv`CzhPJ9uP_=D99YtPUWz| zKD_>7O5Fz=cfLM8ComWW-XyB!z*;&(2IOqYyk^FG9|~<=R2$1QFc@)gT?G&kf5_Vj z*7l0;2=1J30QlctCB`R`l9GguNVEqbgEW!<8q3SeA7!V9u2AssUIB}bk7dO_;%hhg zHhb?RsyI4wl*{FQ#E20-JkUTLDuOrSGxT1y^rG1q+j|T~xja*fY1w&fD^I|^>J^~ zG9#wPh_0`1&4P3^HE$-(0OP~s2n(1He&xqzavBd66%IiuIY+9+ux@Eh(um3$SIM{s za+%gk+$Qa@LD`V1c3(W)M>n-PWo2c_aSH|UXH!%BUblAc0F&m7jI@Z}*rB1&uC6rg zwTTIJpfgwOs&d9Iogn@qm9W$ss5a8zFu%Av9ImM-ugK2I8hyi&j!mv|{A4N{_1AVF z<^Tn0qU%~_8oKM%B*kU8`M7}QLM9G27OBLSS|4@%#me;LlACY5e#uWze?}b>*_H3m zV0}lY!j%7>CJkfUaT`S6tRJszqfgQ zVSQp&)ewbgn}X30a*S9?0^A?nJ{1;TLCn;wyk44yWv|@xamEj5%qCpZ#~>|-N4+-B z0?0#psI7gf{Uz`fncw2#B_$KL1W@9JdWxo{DwihFirZ+qr8v^d4|ZH(=<^(ddWLG2 zhM-TH$Y{B*lDzVzRif^8zfN+mV&4)6#RZZJ9H({JdR;Z|KoyK6-N)~=pxsrH&a9=c z$#v{elOEWfa9=6B)?>eIUG1>mL_fuRx1SIHsl5ITdXlJW*|6o4^ZZtYqbypc+knf6 zN!BXYs!O*y{p=xOOqgEDM4H1PQHLcAaR=`KBYfPX)M!QOJ?B!yqpZd!m%;k=bG6&b z)^pW81DCmXdz&f6EJ7{|SPd9e4~)(bW`Ti}V#!hHU*XxbA$7-^Yc!ipa@}tu9qF7- z!@KZy$PQ5iZSIVBJGsLIuwi*;h}uIbkF-cNIbTr^KKz2x&O*15C7s2$@27`s#VDOR zC6O`94EgHrHvu~vU8D!!U-}iDOEP=wUuN_4GjUlao5(mU;42h<0qzrTHIA!(x|md_ zih(>t(0rlhuHrII-fMjciYJJ{C6UMAQdCo}bl-ZXq$H;X)OtRGBO?unEhO{LMT(_b z`p6Dr-h-W9Y@{;ur};ofT@{(Si-QM6lCmHvv16+ChAdz$OMSEMB}0!)S+$vpQj(SQbDABJ?FTu=ka#NNm0_!fT(UCJ%DZKl@%LBce3-oWX_*5}1fKw-K zkTZA|$LKzsh9KTXV}a+NeXbyAtGjd{O~?cT%FGzI0DT-NV8kZc#~H<-JorykHH54G zglJavW@d&Yy9}3|sTo zqX>K`CHH5GLiO2|*aAepF1)<=z3>f=ACMljisOkF7?Mv1N|K5Vbth+cKD_~B`qxWf zGW5Tv(B4;tXu!2H$f9NukWteBU7p9Z`N?~eYkpY$bE=jPw3IpE09k~zGmfa3EwrBm zNpKz%jSv?%ZwKdXP-Jd{pT6!_#bb z$9J9x6wlbNPk5Z~Bz=o6Oxvuthy+o1amBJdfm9?rQzovXH0MK0TsiD5xErM8^ zs<&4%wYPVkR2Hs}3Xf6$Bv|vcILPZtKAlxV4YDMpg=7$J|MfT~m|@!Jz@C%gsS%$T zD}rq#j%f~I3+@TsbI8rWSeBzTrTO2x*W;O+ltiO-J8qNs%*>`M>#)BT$hHy;!g%p{ zNw0qH7&0aZi*@Lix_$*R&FBvHSql2j=71F%rLoLt{|%n}M?|3<|o z>Ifb%jmVEK41UEFPbAAQu45oKFc7NSvQqDACzq>|Kw2|#b z%l>#2BqaCpiJ1@JGiwkFceegSYpO>d9JnHY^{*D|9fiR7w`)V^J&EfDvgDl`>4OI( z|8#BqC!dSk&)MlvUqfqA1V3m;&o5xS%UxQrTjZCdrePT|xpdNnM%_DEz4_BYex;jz zSEd*JU#y0fM%!rc{Pb>>467vU^)Mw4i1u2|^N7;Nj1ixYL`4$xRi{Qr?k~KSvzy1j z$Ba<3gSVVrC@&`HM|my;$oiZjc_h(Sw0#BNoxj_Y^OI7&ukvoSz-=>$3 z(@qk0UVYH20UV=;)6)50)05b(sK5Y28s#aZB1s~UM}9ksG*$Y@D9Z|PO_Z8O7z{`5 zO3;E@>nh(5mhon)fgDqtN*6b9R5K-b*nP>VrmRhxYFg8P4U^}El;E-QA#j&uB;Vx+ zI54Vqcw%SS&6$rHr#108n%OaEz%K_Jsuu(7r6JPKI&ZRn^DNAw_NVK#k3lro#+pF! zeuAOJ{Ddr5+>DtBA#cBi!@>@ym|Ok4a&N^_@5^_e8qP(eoL>zh?tgB+%)^Ol zgH2*xj*VG#2-8%#*WiUF+-MMA7mFMVe(@HG+k7ZLDw9!^iaW?9+DV(9p=s|-;1$4J z2aSTiHiLJm=>VC}1at@7w8PVZ%sx_tIYYUFThOr|6z92&lerE;4I8O<-LYeoMxU5Z z^N4U>NN(R&>Yi$^K zZ)~E7iP#Bzos+7HR;0;UtdY*1^w}K61z9Dky1nc=rkI#t0&KBG2f|$@R7=I~C(*MK zF>BN%Y;^H3Z{z$-rAkNnBx*GzRkfF8ESB?82q|X@s|bD{Mnt-5Z?S5Y3}n>jRC}A_ z8DR;EsWK_LIyBN)pnw=Sp_k)YgQ>&#(Q1)&x<`KCgmq!vg!VSkev66+4S^V+ubLaB-=dbJOVUMvS73?+w}oO8DII#-cLt$ z^)$IM!&)KDJ#>zdN!sLd>e};}A8X8`h1?0XVIAzGP2aY0^Nvj;l9Ohdyps>Eb@=X> zO#~KCV|Ai>b(!jr%=6_$7X}jaQ*H+maRdWSRPjx z4Gl>L?ZN)teF05wQd5YvyGOog`bCJyf?JyNjA?m$`bZJ(V*O z8jXa<$gq4@7AVY5iT*-ZindsYFR7H9sWO>P%GNNcOR)kRy`Fn&21k4TEhmIYoipBy zegQtu)BCHvi{Elx9J>i`X@<&YrNqF^?D2y8BRLO)}J^ZWK?~ zu*Id^KRu;I4}Od%B7y*xph`;;`O>>*T?Cr)f&}6A&jL5kzvj|&|ug3$L{RYazJLh zh>KqmzAGF*PkQ)OAlS<9HoHrGYF=T+(%}&iw4A|zjffU(PV65~u{AuC!R>wYcq@%N zlJ|0wZ)HZP*c6-r9(G%gSFml&HfRx?{pv=ZJ!;c7AH?&XpaI-NzmEqsH>bc;8I6pZ zB6RprCRjpHF3B7zG?U_h8zeEqU8)igPMTcEPSWk#v>|P<-*VlfpQH_jan@f0(OgS=jSqo@XVkmyJ-pjfj7)-oK?taqAH+ zj8yZ_ksTA+o$Os4J%3BCp{{0dRD)H8i+yZlyg`TmyMVf;;;72lE69jSlMWWH`*fqa zW^L0(Jp?i`d@-UjtT)lLfr88le~2u_`~TPSMUwbO`)`$f|3>)ldF6jk|AMU6`yZ?1 z@6_@?vdsU4`!jUoZ@40%{|@(mfgFEA{b?%whC*%#WD9)t52*hv@i$lhg!pq4{hs{4 q5M?_5fcWQ@`V-<$3H}Y?r1uYbs;i)({~kg|UYSS|L&(7g5B>+(sCS|O literal 0 HcmV?d00001 diff --git a/doc/images/jkqtmathtext_subscriptnode_getSizeInternal.png b/doc/images/jkqtmathtext_subscriptnode_getSizeInternal.png new file mode 100644 index 0000000000000000000000000000000000000000..49cb6ad6a5fb266d70c14030e36b8404d19f9285 GIT binary patch literal 59831 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 vJ)*Hd7BN1cse>Ds!T#`1LY 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 NpA1A3Y{q}S{ST)>s09E3 literal 0 HcmV?d00001 diff --git a/doc/images/jkqtmathtext_superscriptnode_getSizeInternal.png b/doc/images/jkqtmathtext_superscriptnode_getSizeInternal.png new file mode 100644 index 0000000000000000000000000000000000000000..3edd1bf131dd2a13211b05a02d5bb8b68ecc8b0f GIT binary patch literal 79611 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≧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 f2ST{*z$2Mi>7t*x!?`UKsetupUi(this); + ui->cmbTestset->addItem("subsuperscript test", "$r_{123}^2$\\ \\ $r^2_{123}$\\ \\ $\\left(\\stackrel{a}{b}\\right)_{123}^2$\\ \\ $\\left(\\stackrel{a}{b}\\right)^2_{123}$\\ \\ $r_{\\frac{1}{2}}^2$\\ \\ $r^2_{\\frac{1}{2}}$\\ \\ $r^{\\frac{1}{2}}_2$\\ \\ $r_2^{\\frac{1}{2}}$\\ \\ $\\left(\\stackrel{a}{b}\\right)_2^{\\frac{1}{2}}$\\ \\ $\\left(\\stackrel{a}{b}\\right)^{\\frac{1}{2}}_2$"); ui->cmbTestset->addItem("simple relations", "$a{\\leq}b$, $a{\\geq}b$, $a{\\equiv}b$, $a=b$, $a{\\neq}b$, $ab$"); ui->cmbTestset->addItem("simple relations in different modes", "math: $a{\\leq}b$, math/no braces: $a\\leq b$, no math: a{\\leq}b, no math/no braces: a\\leq b"); ui->cmbTestset->addItem("named symbols 1", "ll: $\\ll$\\ gg: $\\gg$\\ leq: $\\leq$\\ geq: $\\geq$\\ pm: $\\pm$\\ mp: $\\mp$\\ "); @@ -41,7 +42,6 @@ TestForm::TestForm(QWidget *parent) : ui->cmbTestset->addItem("math: bf", "$\\mathbf{ABCDEFGHIJKLMNOPQRSTUVWXYZ120}$"); ui->cmbTestset->addItem("math: rm", "$\\mathrm{ABCDEFGHIJKLMNOPQRSTUVWXYZ120}$"); ui->cmbTestset->addItem("math: cal", "$\\mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZ120}$"); - ui->cmbTestset->addItem("subsuperscript test", "$r_{123}^2$\\ \\ $r^2_{123}$\\ \\ $\\left(a\\right)_{123}^2$\\ \\ $\\left(a\\right)^2_{123}$\\ \\ $r_{\\frac{1}{2}}^2$\\ \\ $r^2_{\\frac{1}{2}}$\\ \\ $r^{\\frac{1}{2}}_2$\\ \\ $r_2^{\\frac{1}{2}}$\\ \\ $\\left(a\\right)_2^{\\frac{1}{2}}$\\ \\ $\\left(a\\right)^{\\frac{1}{2}}_2$"); ui->cmbTestset->addItem("subscript test", "$r_{123}\\ \\ r_{\\frac{1}{2}}$"); ui->cmbTestset->addItem("subscript0 test", "$r_{123}$"); ui->cmbTestset->addItem("subscript1 test", "$r_{123}\\ $"); diff --git a/lib/jkqtmathtext/jkqtmathtext.cpp b/lib/jkqtmathtext/jkqtmathtext.cpp index 952709fd59..e1f8a3c474 100644 --- a/lib/jkqtmathtext/jkqtmathtext.cpp +++ b/lib/jkqtmathtext/jkqtmathtext.cpp @@ -198,10 +198,10 @@ JKQTMathText::MTnode::MTnode(JKQTMathText* parent) { JKQTMathText::MTnode::~MTnode() = default; -void JKQTMathText::MTnode::getSize(QPainter &painter, JKQTMathText::MTenvironment currentEv, double &width, double &baselineHeight, double &overallHeight, double &strikeoutPos) +void JKQTMathText::MTnode::getSize(QPainter &painter, JKQTMathText::MTenvironment currentEv, double &width, double &baselineHeight, double &overallHeight, double &strikeoutPos, const MTnodeSize* prevNodeSize) { double w=width, b=baselineHeight, o=overallHeight, s=strikeoutPos; - getSizeInternal(painter, currentEv, w, b, o, s); + getSizeInternal(painter, currentEv, w, b, o, s, prevNodeSize); if (w<1e5) width=w; if (b<1e5) baselineHeight=b; @@ -213,6 +213,10 @@ bool JKQTMathText::MTnode::toHtml(QString &/*html*/, JKQTMathText::MTenvironment return false; } +bool JKQTMathText::MTnode::getDrawBoxes() const { + return this->drawBoxes; +} + void JKQTMathText::MTnode::doDrawBoxes(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { if (drawBoxes) { @@ -263,7 +267,7 @@ JKQTMathText::MTtextNode::MTtextNode(JKQTMathText* parent, const QString& textIn JKQTMathText::MTtextNode::~MTtextNode() = default; -void JKQTMathText::MTtextNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTtextNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFont f=currentEv.getFont(parent); if (currentEv.insideMath && (text=="(" || text=="[" || text=="|" || text=="]" || text==")" || text=="<" || text==">" || text==QString(QChar(0x2329)) || text==QString(QChar(0x232A)) || text==QString(QChar(0x2308)) || @@ -274,7 +278,7 @@ void JKQTMathText::MTtextNode::getSizeInternal(QPainter& painter, JKQTMathText:: QString txt=textTransform(text, currentEv, true); QFontMetricsF fm(f, painter.device()); QRectF br=fm.boundingRect(txt); - QRectF tbr=parent->getTBR(f, txt, painter.device()); //fm.tightBoundingRect(txt); + QRectF tbr=parent->getTightBoundingRect(f, txt, painter.device()); //fm.tightBoundingRect(txt); if (txt=="|") { br=fm.boundingRect("X"); tbr=QRect(0,0,fm.width("X"), fm.ascent());//fm.boundingRect("X"); @@ -293,7 +297,7 @@ void JKQTMathText::MTtextNode::getSizeInternal(QPainter& painter, JKQTMathText:: strikeoutPos=fm.strikeOutPos()*1.1; } -double JKQTMathText::MTtextNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTtextNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); double width=0; double baselineHeight=0; @@ -479,7 +483,7 @@ QString JKQTMathText::MTinstruction1Node::getTypeName() const return QLatin1String("MTinstruction1Node(")+name+")"; } -void JKQTMathText::MTinstruction1Node::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTinstruction1Node::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { JKQTMathText::MTenvironment ev=currentEv; setupMTenvironment(ev); @@ -494,7 +498,7 @@ void JKQTMathText::MTinstruction1Node::getSizeInternal(QPainter& painter, JKQTMa } } -double JKQTMathText::MTinstruction1Node::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTinstruction1Node::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); JKQTMathText::MTenvironment ev=currentEv; @@ -578,39 +582,49 @@ JKQTMathText::MTsubscriptNode::~MTsubscriptNode() { if (child!=nullptr) delete child; } -void JKQTMathText::MTsubscriptNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTsubscriptNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { JKQTMathText::MTenvironment ev=currentEv; ev.fontSize=ev.fontSize*parent->getSubsuperSizeFactor(); - QFontMetricsF fm(ev.getFont(parent), painter.device()); - double shift=parent->getSubShiftFactor()*parent->getTBR(ev.getFont(parent), "M", painter.device()).height(); - child->getSize(painter, ev, width, baselineHeight, overallHeight, strikeoutPos); - QFontMetricsF fmouter(currentEv.getFont(parent), painter.device()); - QRectF tbr=parent->getTBR(currentEv.getFont(parent), "M", painter.device()); - overallHeight=tbr.height()+shift+(overallHeight-baselineHeight); - baselineHeight=tbr.height(); - strikeoutPos=fmouter.strikeOutPos(); - if (currentEv.italic) width=width-double(fm.width(' '))*parent->getItalicCorrectionFactor(); + QFontMetricsF fm(ev.getFont(parent), painter.device()); + QRectF tbr=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()); + double shift=parent->getSubShiftFactor()*tbr.height(); + + if (prevNodeSize!=nullptr && prevNodeSize->overallHeight-prevNodeSize->baselineHeight>shift) { + shift=-1.0*(prevNodeSize->overallHeight-prevNodeSize->baselineHeight-shift); + } + + double yshift=baselineHeight-shift; + baselineHeight=shift; + strikeoutPos=fm.strikeOutPos()+yshift; + if (currentEv.italic && prevNodeSize==nullptr) width=width-double(fm.width(' '))*parent->getItalicCorrectionFactor(); } -double JKQTMathText::MTsubscriptNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTsubscriptNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); JKQTMathText::MTenvironment ev=currentEv; ev.fontSize=ev.fontSize*parent->getSubsuperSizeFactor(); - QFontMetricsF fm(ev.getFont(parent), painter.device()); + QRectF tbr=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()); - double shift=parent->getSubShiftFactor()*parent->getTBR(ev.getFont(parent), "M", painter.device()).height(); + double width=0, baselineHeight=0, overallHeight=0, strikeoutPos=0; + child->getSize(painter, ev, width, baselineHeight, overallHeight, strikeoutPos); + double shift=parent->getSubShiftFactor()*tbr.height(); + + if (prevNodeSize!=nullptr && prevNodeSize->overallHeight-prevNodeSize->baselineHeight>shift) { + qDebug()<<"oldshift="<overallHeight="<overallHeight<<", prevNodeSize->baselineHeight="<baselineHeight; + shift=-1.0*(prevNodeSize->overallHeight-prevNodeSize->baselineHeight-shift); + qDebug()<<"newshift="<getItalicCorrectionFactor(); + return child->draw(painter, xx, y+yshift, ev);//+0.5*fm.boundingRect("A").width(); } QString JKQTMathText::MTsubscriptNode::getTypeName() const @@ -648,7 +662,7 @@ JKQTMathText::MTsqrtNode::~MTsqrtNode() { if (child!=nullptr) delete child; } -void JKQTMathText::MTsqrtNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTsqrtNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFontMetricsF fm(currentEv.getFont(parent), painter.device()); child->getSize(painter, currentEv, width, baselineHeight, overallHeight, strikeoutPos); @@ -658,7 +672,7 @@ void JKQTMathText::MTsqrtNode::getSizeInternal(QPainter& painter, JKQTMathText:: width=width+fm.boundingRect("A").width()*2; // 1.53 } -double JKQTMathText::MTsqrtNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTsqrtNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); double width=0, baselineHeight=0, overallHeight=0, sp=0; child->getSize(painter, currentEv, width, baselineHeight, overallHeight, sp); @@ -741,14 +755,14 @@ QString JKQTMathText::MTfracNode::getTypeName() const return "MTfracNode"; } -void JKQTMathText::MTfracNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTfracNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFontMetricsF fm(currentEv.getFont(parent), painter.device()); JKQTMathText::MTenvironment ev1=currentEv; JKQTMathText::MTenvironment ev2=currentEv; double xh=fm.xHeight(); //tightBoundingRect("x").height(); double sp=xh; - double Ah=parent->getTBR(currentEv.getFont(parent), "M", painter.device()).height();//fm.ascent(); + double Ah=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()).height();//fm.ascent(); double xw=fm.boundingRect("x").width(); if (mode==MTFMunderbrace || mode==MTFMoverbrace) { @@ -813,7 +827,7 @@ void JKQTMathText::MTfracNode::getSizeInternal(QPainter& painter, JKQTMathText:: } } -double JKQTMathText::MTfracNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTfracNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); QFont f=currentEv.getFont(parent); QFontMetricsF fm(f, painter.device()); @@ -821,10 +835,10 @@ double JKQTMathText::MTfracNode::draw(QPainter& painter, double x, double y, JKQ JKQTMathText::MTenvironment ev2=currentEv; - double xh=parent->getTBR(f, "x", painter.device()).height(); //fm.xHeight(); + double xh=parent->getTightBoundingRect(f, "x", painter.device()).height(); //fm.xHeight(); double xw=fm.boundingRect("x").width(); double lw=qMax(0.0,ceil(currentEv.fontSize/16.0));//fm.lineWidth(); - double Ah=parent->getTBR(f, "M", painter.device()).height();//fm.ascent(); + double Ah=parent->getTightBoundingRect(f, "M", painter.device()).height();//fm.ascent(); double bw=Ah/2.0; if (mode==MTFMunderbrace || mode==MTFMoverbrace) { @@ -885,12 +899,13 @@ double JKQTMathText::MTfracNode::draw(QPainter& painter, double x, double y, JKQ } else if (mode==MTFMoverbrace) { double ybrace=y-ascent1-bw/2.0; - painter.save(); auto __finalpaint=JKQTPFinally([&painter]() {painter.restore();}); - painter.translate(x+xw/2.0+(width1)/2.0, ybrace); - painter.rotate(180); - QPainterPath path=makeHBracePath(0,0, width, bw); - painter.drawPath(path); - + { + painter.save(); auto __finalpaint=JKQTPFinally([&painter]() {painter.restore();}); + painter.translate(x+xw/2.0+(width1)/2.0, ybrace); + painter.rotate(180); + QPainterPath path=makeHBracePath(0,0, width, bw); + painter.drawPath(path); + } child1->draw(painter, x+xw/2.0+(width-width1)/2.0, y, ev1); child2->draw(painter, x+xw/2.0+(width-width2)/2.0, y-ascent1-bw-descent2, ev2); @@ -951,7 +966,7 @@ QString JKQTMathText::MTmatrixNode::getTypeName() const return "MTmatrixNode"; } -void JKQTMathText::MTmatrixNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTmatrixNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFontMetricsF fm(currentEv.getFont(parent), painter.device()); JKQTMathText::MTenvironment ev1=currentEv; @@ -993,7 +1008,7 @@ void JKQTMathText::MTmatrixNode::getSizeInternal(QPainter& painter, JKQTMathText strikeoutPos=xh; } -double JKQTMathText::MTmatrixNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTmatrixNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); QFontMetricsF fm(currentEv.getFont(parent), painter.device()); @@ -1088,7 +1103,7 @@ JKQTMathText::MTdecoratedNode::~MTdecoratedNode() { if (child!=nullptr) delete child; } -void JKQTMathText::MTdecoratedNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTdecoratedNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFontMetricsF fm(currentEv.getFont(parent), painter.device()); double wc=fm.boundingRect("A").width(); double dheightfactor=1.0+parent->getDecorationHeightFactor()*2.0; @@ -1100,7 +1115,7 @@ void JKQTMathText::MTdecoratedNode::getSizeInternal(QPainter& painter, JKQTMathT width=width+0.3*wc; } -double JKQTMathText::MTdecoratedNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTdecoratedNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); MTenvironment ev=currentEv; double width=0, baselineHeight=0, overallHeight=0, strikeoutPos=0; @@ -1248,39 +1263,47 @@ JKQTMathText::MTsuperscriptNode::~MTsuperscriptNode() { if (child!=nullptr) delete child; } -void JKQTMathText::MTsuperscriptNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTsuperscriptNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { JKQTMathText::MTenvironment ev=currentEv; ev.fontSize=ev.fontSize*parent->getSubsuperSizeFactor(); QFontMetricsF fm(currentEv.getFont(parent), painter.device()); + QRectF tbr=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()); child->getSize(painter, ev, width, baselineHeight, overallHeight, strikeoutPos); - double shift=0;//parent->getSuperShiftFactor()*fm.ascent(); - overallHeight=overallHeight+shift; - strikeoutPos=fm.strikeOutPos(); - if (currentEv.italic) width=width+double(fm.width(' '))*parent->getItalicCorrectionFactor(); + double shift=parent->getSuperShiftFactor()*tbr.height(); + + if (prevNodeSize!=nullptr && prevNodeSize->baselineHeight>tbr.height()) { + shift=prevNodeSize->baselineHeight-(overallHeight-baselineHeight)-shift; + } + + double yshift=shift+overallHeight-baselineHeight; + baselineHeight=overallHeight=overallHeight+shift; + strikeoutPos=strikeoutPos-yshift; + if (currentEv.italic && prevNodeSize==nullptr) width=width+double(fm.width(' '))*parent->getItalicCorrectionFactor(); } -double JKQTMathText::MTsuperscriptNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTsuperscriptNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); JKQTMathText::MTenvironment ev=currentEv; ev.fontSize=ev.fontSize*parent->getSubsuperSizeFactor(); - double cwidth, cbaselineHeight, coverallheight, cStrikeoutPos; - child->getSize(painter, ev, cwidth, cbaselineHeight, coverallheight, cStrikeoutPos); + double cWidth, cBaselineHeight, cOverallHeight, cStrikeoutPos; + child->getSize(painter, ev, cWidth, cBaselineHeight, cOverallHeight, cStrikeoutPos); QFontMetricsF fm(currentEv.getFont(parent), painter.device()); + QRectF tbr=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()); + double shift=parent->getSuperShiftFactor()*tbr.height(); - double shift=0;//parent->getSuperShiftFactor()*fm.ascent(); - //double shift=ev.; + if (prevNodeSize!=nullptr && prevNodeSize->baselineHeight>tbr.height()) { + shift=prevNodeSize->baselineHeight-(cOverallHeight-cBaselineHeight)-shift; + } + + double yshift=shift+cOverallHeight-cBaselineHeight; double xx=x; - if (currentEv.italic) xx=xx+double(fm.width(' '))*parent->getItalicCorrectionFactor(); + if (currentEv.italic && prevNodeSize==nullptr) xx=xx+double(fm.width(' '))*parent->getItalicCorrectionFactor(); - return child->draw(painter, xx, y-shift, ev);//+0.5*fm.boundingRect("A").width(); + return child->draw(painter, xx, y-yshift, ev);//+0.5*fm.boundingRect("A").width(); } -bool JKQTMathText::MTsuperscriptNode::isSubOrSuper() -{ - return true; -} QString JKQTMathText::MTsuperscriptNode::getTypeName() const { @@ -1321,7 +1344,7 @@ JKQTMathText::MTbraceNode::~MTbraceNode() { if (child!=nullptr) delete child; } -void JKQTMathText::MTbraceNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTbraceNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { JKQTMathText::MTenvironment ev=currentEv; child->getSize(painter, currentEv, width, baselineHeight, overallHeight, strikeoutPos); @@ -1339,7 +1362,7 @@ void JKQTMathText::MTbraceNode::getSizeInternal(QPainter& painter, JKQTMathText: } -double JKQTMathText::MTbraceNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTbraceNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { //std::cout<<"drawing brace-node: '"<0) painter.drawLine(l); painter.drawPath(path); } else if (openbrace=="#" || openbrace=="||") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; QLineF l(xnew+brace_fraction*bracewidth, y1, xnew+brace_fraction*bracewidth, y2); if (l.length()>0) painter.drawLine(l); l=QLineF(xnew+brace_fraction*bracewidth-1.5*lw, y1, xnew+brace_fraction*bracewidth-1.5*lw, y2); if (l.length()>0) painter.drawLine(l); } else if (openbrace=="<") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+brace_fraction*bracewidth, y1); path.lineTo(xnew, (y2+y1)/2.0); path.lineTo(xnew+brace_fraction*bracewidth, y2); @@ -1441,62 +1464,62 @@ double JKQTMathText::MTbraceNode::draw(QPainter& painter, double x, double y, JK painter.setPen(p); if (closebrace==")") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+(1.0-brace_fraction)*bracewidth, y1); path.cubicTo(xnew+bracewidth, (y1+y2)/2.0+fabs(y1-y2)/6.0, xnew+bracewidth, (y1+y2)/2.0-fabs(y1-y2)/6.0 , xnew+(1.0-brace_fraction)*bracewidth, y2); painter.drawPath(path); } else if (closebrace=="]") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+(1.0-brace_fraction)*bracewidth, y1); path.lineTo(xnew+bracewidth-lw/2.0, y1); path.lineTo(xnew+bracewidth-lw/2.0, y2); path.lineTo(xnew+(1.0-brace_fraction)*bracewidth, y2); painter.drawPath(path); } else if (closebrace=="}") { - QPainterPath path=makeHBracePath(0,0,coverallHeight, bracewidth*brace_fraction); + QPainterPath path=makeHBracePath(0,0,cOverallHeight, bracewidth*brace_fraction); painter.save(); auto __finalpaint=JKQTPFinally([&painter]() {painter.restore();}); - painter.translate(xnew+bracewidth*brace_fraction, y-cbaselineHeight+coverallHeight/2.0); + painter.translate(xnew+bracewidth*brace_fraction, y-cBaselineHeight+cOverallHeight/2.0); painter.rotate(270); painter.drawPath(path); } else if (closebrace=="_") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+(1.0-brace_fraction)*bracewidth, y1); path.lineTo(xnew+bracewidth, y1); path.lineTo(xnew+bracewidth, y2); painter.drawPath(path); } else if (closebrace=="~") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+bracewidth, y1); path.lineTo(xnew+bracewidth, y2); path.lineTo(xnew+(1.0-brace_fraction)*bracewidth, y2); painter.drawPath(path); } else if (closebrace=="|") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; QLineF l(xnew+(1.0-brace_fraction)*bracewidth, y1, xnew+(1.0-brace_fraction)*bracewidth, y2); if (l.length()>0) painter.drawLine(l); painter.drawPath(path); } else if (closebrace=="#" || closebrace=="||") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; QLineF l(xnew+(1.0-brace_fraction)*bracewidth, y1, xnew+(1.0-brace_fraction)*bracewidth, y2); if (l.length()>0) painter.drawLine(l); l=QLineF(xnew+(1.0-brace_fraction)*bracewidth+1.5*lw, y1, xnew+(1.0-brace_fraction)*bracewidth+1.5*lw, y2); if (l.length()>0) painter.drawLine(l); } else if (closebrace==">") { QPainterPath path; - double y1=y+(coverallHeight-cbaselineHeight); - double y2=y-cbaselineHeight; + double y1=y+(cOverallHeight-cBaselineHeight); + double y2=y-cBaselineHeight; path.moveTo(xnew+(1.0-brace_fraction)*bracewidth, y1); path.lineTo(xnew+bracewidth, (y2+y1)/2.0); path.lineTo(xnew+(1.0-brace_fraction)*bracewidth, y2); @@ -1595,23 +1618,27 @@ QString JKQTMathText::MTlistNode::getTypeName() const return "MTlistNode"; } -void JKQTMathText::MTlistNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTlistNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { width=0; overallHeight=0; baselineHeight=0; strikeoutPos=0; QFontMetricsF fm(currentEv.getFont(parent)); - QRectF tbr=parent->getTBR(currentEv.getFont(parent), "M", painter.device()); + QRectF tbr=parent->getTightBoundingRect(currentEv.getFont(parent), "M", painter.device()); double xnew=0; bool wasBrace=false; for (int i=0; igetSize(painter, currentEv, w1, bh, oh, sp); - //qDebug()<<"i="<getTypeName()<<" w1="<getTypeName()<<" w2="<getSize(painter, currentEv, w1, bh, oh, sp, prevNodeSizePtr); + if (bh>baselineHeight) { + overallHeight=overallHeight+bh-baselineHeight; + baselineHeight=bh; + strikeoutPos=sp; + } + if (baselineHeight+oh-bh>overallHeight) { + overallHeight=baselineHeight+oh-bh; + strikeoutPos=sp; } - //qDebug()<<"sub_super: sub: "<getTypeName()<<" w1="<getTypeName()<<" w2="<getSuperShiftFactor()*tbr.height()+(oh-bh);//((overallHeight-baselineHeight)+(oh-bh)); - if (wasBrace) { - shift=baselineHeight-parent->getSuperShiftFactor()*tbr.height()+(oh-bh); - } - //qDebug()<<"+++ super: bh="<baselineHeight) { - double lheight=overallHeight-baselineHeight; - baselineHeight=shift+bh; - overallHeight=baselineHeight+lheight; - } - //qDebug()<<"### super"; - //qDebug()<<"### subsupop: super overallHeight="<overallHeight-baselineHeight) { - overallHeight=baselineHeight+shift+(oh-bh); - } - //qDebug()<<"### sub"; - //qDebug()<<"### subsupop: sub overallHeight="<getTBR(currentEv.getFont(parent), "M", painter.device()); bool wasBrace=false; for (int i=0; i0 && wasBrace) { + nodes[i-1]->getSize(painter, currentEv, prevNodeSize.width, prevNodeSize.baselineHeight, prevNodeSize.overallHeight, prevNodeSize.strikeoutPos); + prevNodeSizePtr=&prevNodeSize; + } + + MTsymbolNode* smb=dynamic_cast(nodes[i]); // if we find a subscript/superscript node we check whether the next node is super/subscript // if so, we typeset them at the same x-psotion, so sub/superscripts appear correctly if (dynamic_cast(nodes[i])) { - double ccwidth=0, ccbaselineHeight=0, ccoverallHeight=0, ccstrieoutPos=0; - nodes[i]->getSize(painter, currentEv, ccwidth, ccbaselineHeight, ccoverallHeight, ccstrieoutPos); if (i+1(nodes[i+1])) { // is this subscript? - double shift=-parent->getSuperShiftFactor()*tbr.height(); - if (wasBrace) { - shift=-cbaselineHeight+parent->getSuperShiftFactor()*tbr.height(); - } //painter.setPen(QPen("red")); - //painter.drawEllipse(xnew-4,ynew+shift-(ccoverallHeight-ccbaselineHeight)-4,8,8); - double xnew1=nodes[i]->draw(painter, xnew, ynew+shift-(ccoverallHeight-ccbaselineHeight), currentEv); + //painter.drawEllipse(xnew-4,ynew+shift-(ccOverallHeight-ccBaselineHeight)-4,8,8); + double xnew1=nodes[i]->draw(painter, xnew, ynew, currentEv, prevNodeSizePtr); i++; //painter.setPen(QPen("magenta")); //painter.drawEllipse(xnew-4,ynew-4,8,8); - double xnew2=nodes[i]->draw(painter, xnew, ynew, currentEv); + double xnew2=nodes[i]->draw(painter, xnew, ynew, currentEv, prevNodeSizePtr); //i++; xnew=qMax(xnew1, xnew2); doDraw=false; @@ -1864,20 +1873,13 @@ double JKQTMathText::MTlistNode::draw(QPainter& painter, double x, double y, JKQ } else if (dynamic_cast(nodes[i])) { if (i+1(nodes[i+1])) { // is this subscript? + //painter.setPen(QPen("red")); + //painter.drawEllipse(xnew-4,ynew+shift-(ccOverallHeight-ccBaselineHeight)-4,8,8); + double xnew1=nodes[i]->draw(painter, xnew, ynew, currentEv, prevNodeSizePtr); + i++; //painter.setPen(QPen("magenta")); //painter.drawEllipse(xnew-4,ynew-4,8,8); - double xnew1=nodes[i]->draw(painter, xnew, ynew, currentEv); - i++; - double ccwidth=0, ccbaselineHeight=0, ccoverallHeight=0, ccstrieoutPos=0; - nodes[i]->getSize(painter, currentEv, ccwidth, ccbaselineHeight, ccoverallHeight, ccstrieoutPos); - //QRectF tbr=fm.tightBoundingRect("M"); - double shift=-parent->getSuperShiftFactor()*tbr.height(); - if (wasBrace) { - shift=-cbaselineHeight+parent->getSuperShiftFactor()*tbr.height(); - } - //painter.setPen(QPen("red")); - //painter.drawEllipse(xnew-4,ynew+shift-(ccoverallHeight-ccbaselineHeight)-4,8,8); - double xnew2=nodes[i]->draw(painter, xnew, ynew+shift-(ccoverallHeight-ccbaselineHeight), currentEv); + double xnew2=nodes[i]->draw(painter, xnew, ynew, currentEv, prevNodeSizePtr); //i++; xnew=qMax(xnew1, xnew2); doDraw=false; @@ -1959,25 +1961,10 @@ double JKQTMathText::MTlistNode::draw(QPainter& painter, double x, double y, JKQ } } } - - nodes[i]->getSize(painter, currentEv, cwidth, cbaselineHeight, coverallHeight, cstrieoutPos); } if (i(nodes[i])) { // is this superscript? - double ccwidth=0, ccbaselineHeight=0, ccoverallHeight=0, ccstrieoutPos=0; - nodes[i]->getSize(painter, currentEv, ccwidth, ccbaselineHeight, ccoverallHeight, ccstrieoutPos); - //QRectF tbr=fm.tightBoundingRect("M"); - double shift=-parent->getSuperShiftFactor()*tbr.height(); - if (wasBrace) { - shift=-cbaselineHeight+parent->getSuperShiftFactor()*tbr.height(); - } - //painter.setPen(QPen("red")); - //painter.drawEllipse(xnew-4,ynew+shift-(ccoverallHeight-ccbaselineHeight)-4,8,8); - xnew=nodes[i]->draw(painter, xnew, ynew+shift-(ccoverallHeight-ccbaselineHeight), currentEv); - } else { - xnew=nodes[i]->draw(painter, xnew, ynew, currentEv); - } + xnew=nodes[i]->draw(painter, xnew, ynew, currentEv, prevNodeSizePtr); } wasBrace=dynamic_cast(nodes[i]); } @@ -2746,7 +2733,7 @@ QFont JKQTMathText::MTsymbolNode::getFontName(symbolFont f, QFont& fi) { return fr; } -void JKQTMathText::MTsymbolNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) { +void JKQTMathText::MTsymbolNode::getSizeInternal(QPainter& painter, JKQTMathText::MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize) { QFont f=currentEv.getFont(parent); f=getFontName(font, f); f.setPointSizeF(f.pointSizeF()*fontFactor); @@ -2757,7 +2744,7 @@ void JKQTMathText::MTsymbolNode::getSizeInternal(QPainter& painter, JKQTMathText QFontMetricsF fm(f, painter.device()); QString symb=symbol; width=0; - if (currentEv.insideMath) width=qMax(parent->getTBR(f, symb, painter.device()).width(),parent->getTBR(f, "i", painter.device()).width());//fm.width(symbol); + if (currentEv.insideMath) width=qMax(parent->getTightBoundingRect(f, symb, painter.device()).width(),parent->getTightBoundingRect(f, "i", painter.device()).width());//fm.width(symbol); else width=fm.boundingRect(symb).width();//fm.width(symbol); width=qMax(fm.width("j"), width); @@ -2765,20 +2752,20 @@ void JKQTMathText::MTsymbolNode::getSizeInternal(QPainter& painter, JKQTMathText width=fm.width("a"); if (symbolName=="|") width=fm.width("1")*0.8; else if (symbolName=="infty") width=fm.width("M"); - else if (symbolName=="quad") width=parent->getTBR(f, "M", painter.device()).width(); - else if (symbolName==" ") width=parent->getTBR(f, "x", painter.device()).width(); - else if (symbolName==";") width=parent->getTBR(f, "x", painter.device()).width()*0.75; - else if (symbolName==":") width=parent->getTBR(f, "x", painter.device()).width()*0.5; - else if (symbolName==",") width=parent->getTBR(f, "x", painter.device()).width()*0.25; - else if (symbolName=="!") width=-parent->getTBR(f, "x", painter.device()).width()*0.25; - else if (symbolName=="longleftarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } - else if (symbolName=="longrightarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } - else if (symbolName=="Longleftarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } - else if (symbolName=="Longrightarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } - else if (symbolName=="longleftrightarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } - else if (symbolName=="Longleftrightarrow") { width=parent->getTBR(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="quad") width=parent->getTightBoundingRect(f, "M", painter.device()).width(); + else if (symbolName==" ") width=parent->getTightBoundingRect(f, "x", painter.device()).width(); + else if (symbolName==";") width=parent->getTightBoundingRect(f, "x", painter.device()).width()*0.75; + else if (symbolName==":") width=parent->getTightBoundingRect(f, "x", painter.device()).width()*0.5; + else if (symbolName==",") width=parent->getTightBoundingRect(f, "x", painter.device()).width()*0.25; + else if (symbolName=="!") width=-parent->getTightBoundingRect(f, "x", painter.device()).width()*0.25; + else if (symbolName=="longleftarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="longrightarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="Longleftarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="Longrightarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="longleftrightarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } + else if (symbolName=="Longleftrightarrow") { width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.5; symb="x"; } } - QRectF tbr=parent->getTBR(f, symb, painter.device()); + QRectF tbr=parent->getTightBoundingRect(f, symb, painter.device()); overallHeight=tbr.height();// fm.height(); baselineHeight=tbr.height()-tbr.bottom(); if (exactAscent) { @@ -2798,7 +2785,7 @@ void JKQTMathText::MTsymbolNode::getSizeInternal(QPainter& painter, JKQTMathText } -double JKQTMathText::MTsymbolNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv) { +double JKQTMathText::MTsymbolNode::draw(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv, const MTnodeSize* prevNodeSize) { doDrawBoxes(painter, x, y, currentEv); double width=0; double baselineHeight=0; @@ -2837,7 +2824,7 @@ double JKQTMathText::MTsymbolNode::draw(QPainter& painter, double x, double y, J // if the symbol has been recognized in the constructor: draw the symbol painter.drawText(QPointF(x+shift, y+yfactor*overallHeight), symbol); double xx=x+shift; - double yy=y-fm.xHeight()-(parent->getTBR(f, "M", painter.device()).height()-fm.xHeight())/3.0; + double yy=y-fm.xHeight()-(parent->getTightBoundingRect(f, "M", painter.device()).height()-fm.xHeight())/3.0; QLineF l(xx, yy, xx+xwi/3.0+((currentEv.italic)?(xwi/3.0):0), yy); if (drawBar&&l.length()>0) painter.drawLine(l); @@ -2872,43 +2859,43 @@ double JKQTMathText::MTsymbolNode::draw(QPainter& painter, double x, double y, J } else if (symbolName==",") { // 25% space } else if (symbolName=="!") { // -25% space } else if (symbolName=="longleftarrow") { - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, true, false); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, true, false); painter.drawPath(path); } else if (symbolName=="longrightarrow"){ - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, false, true); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, false, true); painter.drawPath(path); } else if (symbolName=="Longleftarrow") { - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, true, false); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, true, false); painter.drawPath(path); } else if (symbolName=="Longrightarrow") { - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, false, true); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, false, true); painter.drawPath(path); } else if (symbolName=="longleftrightarrow") { - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, true, true); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, true, true); painter.drawPath(path); } else if (symbolName=="Longleftrightarrow") { - double width=parent->getTBR(f, "X", painter.device()).width()*3.0; - double dx=parent->getTBR(f, "X", painter.device()).width()*0.25; - double ypos=y-parent->getTBR(f, "x", painter.device()).height()/2.0; - QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTBR(f, "M", painter.device()).height()*0.5, true, true); + double width=parent->getTightBoundingRect(f, "X", painter.device()).width()*3.0; + double dx=parent->getTightBoundingRect(f, "X", painter.device()).width()*0.25; + double ypos=y-parent->getTightBoundingRect(f, "x", painter.device()).height()/2.0; + QPainterPath path=makeDArrow(x+shift+dx, ypos, width, parent->getTightBoundingRect(f, "M", painter.device()).height()*0.5, true, true); painter.drawPath(path); } else { // draw a box to indicate an unavailable symbol - QRectF tbr=parent->getTBR(f, "M", painter.device()); + QRectF tbr=parent->getTightBoundingRect(f, "M", painter.device()); painter.drawRect(QRectF(x+shift,y-tbr.height(), xwi, tbr.height()*0.8)); } painter.setPen(pold); @@ -3199,15 +3186,15 @@ JKQTMathText::JKQTMathText(QObject* parent): default_brace_factor=brace_factor=1.04; default_subsuper_size_factor=subsuper_size_factor=0.7; default_italic_correction_factor=italic_correction_factor=0.4; - default_sub_shift_factor=sub_shift_factor=0.6; - default_super_shift_factor=super_shift_factor=0.5; + default_sub_shift_factor=sub_shift_factor=0.4; + default_super_shift_factor=super_shift_factor=0.6; default_brace_shrink_factor=brace_shrink_factor=0.6; default_fontColor=fontColor=QColor("black"); default_useSTIXfonts=useSTIXfonts=false; default_useXITSfonts=useXITSfonts=false; default_useASANAfonts=useASANAfonts=false; default_frac_factor=frac_factor=0.9; - default_frac_shift_factor=frac_shift_factor=0.5; + default_frac_shift_factor=frac_shift_factor=0.4; default_underbrace_factor=underbrace_factor=0.75; default_undersetFactor=undersetFactor=0.7; default_decoration_height_factor=decoration_height_factor=0.2; @@ -4039,7 +4026,7 @@ JKQTMathText::MTnode* JKQTMathText::parseLatexString(bool get, const QString& qu QList JKQTMathText::tbrs=QList(); QHash JKQTMathText::tbrh=QHash(); -QRectF JKQTMathText::getTBR(const QFont &fm, const QString &text, QPaintDevice *pd) +QRectF JKQTMathText::getTightBoundingRect(const QFont &fm, const QString &text, QPaintDevice *pd) { JKQTMathText::tbrDataH dh(fm, text, pd); if (pd) { @@ -4406,3 +4393,5 @@ void initJKQTMathTextResources() { Q_INIT_RESOURCE(xits); } + +JKQTMathText::MTnodeSize::MTnodeSize(): width(0), baselineHeight(0),overallHeight(0),strikeoutPos() {} diff --git a/lib/jkqtmathtext/jkqtmathtext.h b/lib/jkqtmathtext/jkqtmathtext.h index c2298848e1..c56c3e090a 100644 --- a/lib/jkqtmathtext/jkqtmathtext.h +++ b/lib/jkqtmathtext/jkqtmathtext.h @@ -666,51 +666,110 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { protected: /** \brief the available fonts */ - enum MTenvironmentFont { MTEroman, MTEsans, MTEtypewriter, MTEscript, MTEblackboard, MTEcaligraphic }; + enum MTenvironmentFont { + MTEroman, + MTEsans, + MTEtypewriter, + MTEscript, + MTEblackboard, + MTEcaligraphic + }; /** \brief describes the current drawing environment (base fontname ...) */ struct MTenvironment { MTenvironment(); + /** \brief current font color */ QColor color; + /** \brief current font */ MTenvironmentFont font; + /** \brief current font size [pt] */ double fontSize; + /** \brief is the text currently bold? */ bool bold; + /** \brief is the text currently italic? */ bool italic; + /** \brief is the text currently in small caps? */ bool smallCaps; + /** \brief is the text currently underlined? */ bool underlined; + /** \brief is the text currently overlined? */ bool overline; + /** \brief is the text currently stroke through? */ bool strike; + /** \brief is the text currently are we inside a math environment? */ bool insideMath; + /** \brief build a QFont object from the settings in this object */ QFont getFont(JKQTMathText* parent) const; + /** \brief generate a HTML prefix that formats the text after it according to the settings in this object + * + * \param defaultEv environment before applying the current object (to detect changes) + * \see toHtmlAfter() + */ QString toHtmlStart(MTenvironment defaultEv) const; + /** \brief generate a HTML postfix that formats the text in front of it according to the settings in this object + * + * \param defaultEv environment before applying the current object (to detect changes) + * \see toHtmlAfter() + */ QString toHtmlAfter(MTenvironment defaultEv) const; }; + /** \brief beschreibt die Größe eines Knotens */ + struct MTnodeSize { + MTnodeSize(); + double width; + double baselineHeight; + double overallHeight; + double strikeoutPos; + }; + public: - /** \brief subclass representing one node in the syntax tree */ + /** \brief subclass representing one node in the syntax tree + * + * \image html jkqtmathtext_node_geo.png + */ class MTnode { public: MTnode(JKQTMathText* parent); virtual ~MTnode(); - /** \brief determine the size of the node, calls getSizeInternal() implementation of the actual type \see getSizeInternal() */ - void getSize(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos); - /** \brief draw the contents at the designated position. returns the x position which to use for the next part of the text */ - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv)=0; - /** \brief returns true if node is subscript or superscript node */ - virtual bool isSubOrSuper() { return false; } - /** \brief convert node to HTML and returns \c true on success */ + /** \brief determine the size of the node, calls getSizeInternal() implementation of the actual type \see getSizeInternal() + * + * \param painter painter to use for determining the size + * \param currentEv current environment object + * \param[out] width width of the block/node + * \param[out] baselineHeight distance from the bottom of the block/node-box to the baseline + * \param[out] overallHeight overall height (bottom to top) of the node, the ascent is \c overallHeight-baselineHeight + * \param[out] strikeoutPos position of the strikeout-line + * \param[in] prevNodeSize optional parameter, describing the size of the previous node (on the left). This may be used for layout of some nodes (e.g. sub/super to move correctly next to large parantheses ...) + * + */ + void getSize(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr); + /** \brief draw the contents at the designated position + * + * \param painter QPainter to use + * \param x x-position, where the drawing starts [Pixel] + * \param y Y-position of the baseline, where the drawing starts [Pixel] + * \param currentEv JKQTMathText::MTenvironment object describing the current drawing environment/settings + * \param[in] prevNodeSize optional parameter, describing the size of the previous node (on the left). This may be used for layout of some nodes (e.g. sub/super to move correctly next to large parantheses ...) + * \return the x position which to use for the next part of the text + */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr)=0; + /** \brief convert node to HTML and returns \c true on success + * \param[out] html new HTML code is APPENDED to this string + * \param currentEv JKQTMathText::MTenvironment object describing the current drawing environment/settings + * \param defaultEv JKQTMathText::MTenvironment object describing the default drawing environment/settings when starting to interpret a node tree + * \return \c true on success + */ virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - /*! \brief returns the property drawBoxes ( \copybrief drawBoxes ). - \details Description of the parameter drawBoxes is:
\copydoc drawBoxes
. - \see drawBoxes for more information */ - inline bool getDrawBoxes() const { - return this->drawBoxes; - } + /** \brief returns the drawing of colored boxes (for DEBUGGING) around the actual output of the node is enabled */ + bool getDrawBoxes() const; + /** \brief enables the drawing of colored boxes (for DEBUGGING) around the actual output of the node */ virtual void setDrawBoxes(bool draw); + /** \brief return the name of this class as a string */ virtual QString getTypeName() const; protected: /** \brief determine the size of the node, overwrite this function in derived classes @@ -721,12 +780,22 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { * \param[out] baselineHeight distance from the bottom of the block/node-box to the baseline * \param[out] overallHeight overall height (bottom to top) of the node, the ascent is \c overallHeight-baselineHeight * \param[out] strikeoutPos position of the strikeout-line + * \param[in] prevNodeSize optional parameter, describing the size of the previous node (on the left). This may be used for layout of some nodes (e.g. sub/super to move correctly next to large parantheses ...) * */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos)=0; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr)=0; + /** \brief parent JKQTMathText object (required for several drawing operations */ JKQTMathText* parent; + /** \brief enables the drawing of colored boxes (for DEBUGGING) around the actual output of the node */ bool drawBoxes; + /** \brief draws colored boxes (for DEBUGGING) around the actual output of the node + * + * \param painter QPainter to use + * \param x x-position, where the drawing starts [Pixel] + * \param y Y-position of the baseline, where the drawing starts [Pixel] + * \param currentEv JKQTMathText::MTenvironment object describing the current drawing environment/settings + */ void doDrawBoxes(QPainter& painter, double x, double y, JKQTMathText::MTenvironment currentEv); }; @@ -734,9 +803,11 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTtextNode: public MTnode { public: MTtextNode(JKQTMathText* parent, const QString& text, bool addWhitespace, bool stripInnerWhitepace=false); - virtual ~MTtextNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); + virtual ~MTtextNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; /*! \brief returns the property text ( \copybrief text ). \details Description of the parameter text is:
\copydoc text
. \see text for more information */ @@ -746,8 +817,9 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { virtual QString getTypeName() const override ; protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; QString text; + /** \brief transforms the text before sizing/drawing (may e.g. exchange special letters for other unicode symbols etc.) */ virtual QString textTransform(const QString& text, JKQTMathText::MTenvironment currentEv, bool forSize=false); }; @@ -755,28 +827,35 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTplainTextNode: public MTtextNode { public: MTplainTextNode(JKQTMathText* parent, const QString& text, bool addWhitespace, bool stripInnerWhitepace=false); - virtual QString getTypeName() const; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; protected: - virtual QString textTransform(const QString& text, JKQTMathText::MTenvironment currentEv, bool forSize=false); + /** \copydoc MTtextNode::textTransform() */ + virtual QString textTransform(const QString& text, JKQTMathText::MTenvironment currentEv, bool forSize=false) override; }; /** \brief subclass representing one whitepsace node in the syntax tree */ class MTwhitespaceNode: public MTtextNode { public: MTwhitespaceNode(JKQTMathText* parent); - virtual ~MTwhitespaceNode(); - virtual QString getTypeName() const; + virtual ~MTwhitespaceNode() override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; /** \brief convert node to HTML and returns \c true on success */ - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; }; /** \brief subclass representing one symbol (e.g. \c \\alpha , \c \\cdot ...) node in the syntax tree */ class MTsymbolNode: public MTnode { public: MTsymbolNode(JKQTMathText* parent, const QString& name, bool addWhitespace); - virtual ~MTsymbolNode(); - virtual QString getTypeName() const; - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); + virtual ~MTsymbolNode() override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; /*! \brief returns the property symbolName ( \copybrief symbolName ). \details Description of the parameter symbolName is:
\copydoc symbolName
. \see symbolName for more information */ @@ -785,7 +864,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; /** \brief this string will be sent to the drawText method with properly set fonts */ QString symbol; /** \brief the symbol name supplied to the constructor */ @@ -812,18 +891,20 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { }; /** \brief subclass representing a list of nodes in the syntax tree - * - * \image html jkqtmathtext_MTlistNode_getSizeInternal_frac.png */ class MTlistNode: public MTnode { public: MTlistNode(JKQTMathText* parent); - virtual ~MTlistNode(); - virtual QString getTypeName() const; - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); + virtual ~MTlistNode() override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; void addNode(MTnode* n) { nodes.append(n); } - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; /*! \brief returns the property nodes ( \copybrief nodes ). \details Description of the parameter nodes is:
\copydoc nodes
. \see nodes for more information */ @@ -832,7 +913,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; QList nodes; QSet subsupOperations; }; @@ -841,16 +922,18 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTinstruction1Node: public MTnode { public: MTinstruction1Node(JKQTMathText* parent, const QString& name, MTnode* child, const QStringList& parameters=QStringList()); - virtual ~MTinstruction1Node(); - virtual QString getTypeName() const; - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); + virtual ~MTinstruction1Node() override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; /** \brief convert node to HTML and returns \c true on success */ - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ - inline MTnode* getChild() const { + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; + /*! \brief returns the child node */ + inline MTnode* getChild() const { return this->child; } /*! \brief returns the property name ( \copybrief name ). @@ -867,7 +950,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; bool setupMTenvironment(JKQTMathText::MTenvironment &ev); MTnode* child; @@ -877,49 +960,56 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { - /** \brief subclass representing an subscript node with exactly one argument in the syntax tree */ + /** \brief subclass representing an subscript node with exactly one argument in the syntax tree + * + * \image html jkqtmathtext_subscriptnode_getSizeInternal.png + */ class MTsubscriptNode: public MTnode { public: MTsubscriptNode(JKQTMathText* parent, MTnode* child); - virtual ~MTsubscriptNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - /** \brief returns true if node is subscript or superscript node */ - virtual bool isSubOrSuper() ; - virtual QString getTypeName() const; - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ - inline MTnode* getChild() const { + virtual ~MTsubscriptNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; /*! \brief returns the child node */ + inline MTnode* getChild() const { return this->child; } - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child; }; - /** \brief subclass representing an superscript node with exactly one argument in the syntax tree */ + /** \brief subclass representing an superscript node with exactly one argument in the syntax tree + * + * \image html jkqtmathtext_subscriptnode_getSizeInternal.png + * + * \note a MTlistNode might modify the positioning slightly for special cases (e.g. \c \\int , \c \\sum ... or after braces) + */ class MTsuperscriptNode: public MTnode { public: MTsuperscriptNode(JKQTMathText* parent, MTnode* child); - virtual ~MTsuperscriptNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - /** \brief returns true if node is subscript or superscript node */ - virtual bool isSubOrSuper(); - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ + virtual ~MTsuperscriptNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /*! \brief returns the child node */ inline MTnode* getChild() const { return this->child; } - virtual QString getTypeName() const; - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child; }; @@ -927,15 +1017,17 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTbraceNode: public MTnode { public: MTbraceNode(JKQTMathText* parent, const QString& openbrace, const QString& closebrace, MTnode* child, bool showRightBrace=true); - virtual ~MTbraceNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); - virtual QString getTypeName() const; - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ - inline MTnode* getChild() const { + virtual ~MTbraceNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; + /** \copydoc MTnode::getTypeName() */ + virtual QString getTypeName() const override; + /*! \brief returns the child node */ + inline MTnode* getChild() const { return this->child; } /*! \brief returns the property openbrace ( \copybrief openbrace ). @@ -958,7 +1050,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child; QString openbrace; QString closebrace; @@ -972,15 +1064,16 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTsqrtNode: public MTnode { public: MTsqrtNode(JKQTMathText* parent, MTnode* child, int degree=2); - virtual ~MTsqrtNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); + virtual ~MTsqrtNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; virtual QString getTypeName() const ; - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ - inline MTnode* getChild() const { + /*! \brief returns the child node */ + inline MTnode* getChild() const { return this->child; } /*! \brief returns the property degree ( \copybrief degree ). @@ -991,7 +1084,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child; int degree; }; @@ -1013,21 +1106,20 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTfracNode: public MTnode { public: MTfracNode(JKQTMathText* parent, MTnode* child_top, MTnode* child_bottom, MTfracMode mode); - virtual ~MTfracNode(); + virtual ~MTfracNode() override; virtual QString getTypeName() const ; - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); - /*! \brief returns the property child1 ( \copybrief child1 ). - \details Description of the parameter child1 is:
\copydoc child1
. - \see child1 for more information */ - inline MTnode* getChild1() const { + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; + /*! \brief returns the 1st child node */ + inline MTnode* getChild1() const { return this->child1; } - /*! \brief returns the property child2 ( \copybrief child2 ). - \details Description of the parameter child2 is:
\copydoc child2
. - \see child2 for more information */ - inline MTnode* getChild2() const { + /*! \brief returns the 2nd child node */ + inline MTnode* getChild2() const { return this->child2; } /*! \brief returns the property mode ( \copybrief mode ). @@ -1038,7 +1130,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child1; MTnode* child2; MTfracMode mode; @@ -1049,13 +1141,12 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { public: MTmatrixNode(JKQTMathText* parent, QVector > children); virtual ~MTmatrixNode() override; + /** \copydoc MTnode::getTypeName() */ virtual QString getTypeName() const override; - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv) override; + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; - /*! \brief returns the property children ( \copybrief children ). - \details Description of the parameter children is:
\copydoc children
. - \see children for more information */ - inline QVector > getChildren() const { + /*! \brief returns the child nodes */ + inline QVector > getChildren() const { return this->children; } /*! \brief returns the property columns ( \copybrief columns ). @@ -1072,8 +1163,9 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; - virtual void setDrawBoxes(bool draw); + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; QVector > children; int columns; int lines; @@ -1099,15 +1191,16 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { class MTdecoratedNode: public MTnode { public: MTdecoratedNode(JKQTMathText* parent, MTdecoration decoration, MTnode* child); - virtual ~MTdecoratedNode(); - virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv); - virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv); - virtual void setDrawBoxes(bool draw); + virtual ~MTdecoratedNode() override; + /** \copydoc MTnode::draw() */ + virtual double draw(QPainter& painter, double x, double y, MTenvironment currentEv, const MTnodeSize* prevNodeSize=nullptr) override; + /** \copydoc MTnode::toHtml() */ + virtual bool toHtml(QString& html, JKQTMathText::MTenvironment currentEv, JKQTMathText::MTenvironment defaultEv) override; + /** \copydoc MTnode::setDrawBoxes() */ + virtual void setDrawBoxes(bool draw) override; virtual QString getTypeName() const ; - /*! \brief returns the property child ( \copybrief child ). - \details Description of the parameter child is:
\copydoc child
. - \see child for more information */ - inline MTnode* getChild() const { + /*! \brief returns the child node */ + inline MTnode* getChild() const { return this->child; } /*! \brief returns the property decoration ( \copybrief decoration ). @@ -1118,7 +1211,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { } protected: /** \copydoc MTnode::getSizeInternal() */ - virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos) override; + virtual void getSizeInternal(QPainter& painter, MTenvironment currentEv, double& width, double& baselineHeight, double& overallHeight, double& strikeoutPos, const MTnodeSize* prevNodeSize=nullptr) override; MTnode* child; MTdecoration decoration; }; @@ -1386,7 +1479,7 @@ class JKQTP_LIB_EXPORT JKQTMathText : public QObject { }; static QList tbrs; static QHash tbrh; - static QRectF getTBR(const QFont &fm, const QString& text, QPaintDevice *pd); + static QRectF getTightBoundingRect(const QFont &fm, const QString& text, QPaintDevice *pd); };