From e4b47a28b723da0e809654942c5a776858e9ccc0 Mon Sep 17 00:00:00 2001 From: pablo rodriguez <58742538+1-pablo-rodriguez@users.noreply.github.com> Date: Thu, 9 May 2024 19:11:08 +0200 Subject: [PATCH] MAJ V4.5.0 --- analyseWriter.exe | Bin 5032830 -> 5033602 bytes bin/.gitignore | 1 + icons/evalnombreparagraphe.png | Bin 0 -> 1097 bytes icons/evalnombreparagraphe.svg | 125 ++++++++++++++++++ icons/evalnombreparagraphemini.png | Bin 0 -> 624 bytes src/action/actEvalNombreParagraphe.java | 36 +++++ src/action/actEvalNumeroPageOui.java | 2 +- src/action/actEvalPasParagrapheVideOui.java | 2 +- src/calcul/calculNombrePointEvaluation.java | 11 +- src/evaluer/evaluationAttribut.java | 52 ++++++++ ...SimplePointInputNombreSansCaseACocher.java | 90 +++++++++++++ ...gSimplePointpourNumeroPageEtStructure.java | 2 +- src/fenetres/afficheText.java | 4 + src/fenetres/create.java | 100 +++++++++----- src/list/listeAttributsAnalyseWriter.java | 1 + ...teDesNodesContenantPargraphesOuTitres.java | 45 +++++++ src/list/listeDesNodesContenantSaut.java | 14 +- src/resources/evalnombreparagraphe.png | Bin 0 -> 1097 bytes src/resources/evalnombreparagraphemini.png | Bin 0 -> 624 bytes 19 files changed, 449 insertions(+), 36 deletions(-) create mode 100644 icons/evalnombreparagraphe.png create mode 100644 icons/evalnombreparagraphe.svg create mode 100644 icons/evalnombreparagraphemini.png create mode 100644 src/action/actEvalNombreParagraphe.java create mode 100644 src/fenetres/CustomInputDialogSimplePointInputNombreSansCaseACocher.java create mode 100644 src/list/listeDesNodesContenantPargraphesOuTitres.java create mode 100644 src/resources/evalnombreparagraphe.png create mode 100644 src/resources/evalnombreparagraphemini.png diff --git a/analyseWriter.exe b/analyseWriter.exe index d9090641121c0302463da5b3298e73fad3da70a0..0de2ad8412506be050c6009123d9bb1e7767b8c4 100644 GIT binary patch delta 54271 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

hU1dP*~MDv|R$z{@1F| z3!=%L3syvHFp@PMu z22Xl{Ae2EBMo5vLy@_znxBrYr+>iwj&-Sc{5}g;`L&{b8aLqO~3cC)CdL=NQhk z$LtRqBf2fjse!v5hqUO!VUbJ)VcfB>Gon`{o(roIk%pJTOj)N3{PnN^ar}<047(~u zMf9TB>Egf-_#CDy+BxV;SghC?n=GPzg`%%vVacrc?fCFxYN+>i~75-NAAfL72;%ZsgSsETQ99el^-6C)_#1Sccb&DD+ zF#cgTqw2GnUqIcR#daFmMo(hw`L@wGVsJFV5sRZSjwU$ba5Tly3`abU1R>uxaoB4V zA_HB1EX|Sdj!OSw$GhSNc#e1`;U~mNZcpcEX-kP0J*w41H4(P!CQ`BZuCE>SH8w04cPs)p5mGGsyrr>RVoTK&5(m>jaFFa7GJ`}uk znvU!9b?AdJ@|&FJ$lQbvpadDRQm#;{jQ64SX2=?Nouds=Qb$@>sMcybOAe+tH!0Hq zuldLK4Vobm$Yx62P&nV;99KEWITHNi?@WtMMir#Zn zUZm$h7rh~&0<}xjpE)YF@on&>Z~MuVg-RL2TT0jQ2^7)Vw4{s>id*E6T- zUVx*Sams=vRP4cfQVu8zW0trYE}?d{cwZ`HZOn_3kl+RL#xd$qtb{CO_}mRX0^>~U znL_zZ#dg@UufI4@jvF8wUW6j)r8%hitt9lL1={Xzfm$D$0Q%4tAEL06x>30=pg3@G z^*U3EIUhm~nN}-%iq*K$tW|o3nwHLS2Y#`?gt82H8}@Y=yw4G$xOwT!;4U-*1St)H ztQbN`hI}*0=iw5nc_0asHjs4eq}#KjUCtjEXDDvSz=evyO@ z8^B&AQcz7-Na&!H4yA&yNL<%TDAEB^?%9Jnx>-W+A4u)U!U3us zWegSDB~;7?;j5JNI#|+!#!oP+UKM>XC0Gw9pA^m8AkzxFt5a>jI-J?@nZA^^zL2_WLP#b`a}SL0eih!IoEUe1b9`ZC zy3~`-*+YOSGiHvpSj3inzs8ZqiJIaoJ#Z&K+Vo9oOqbZuR#}6!iJO#KT0_ZbSVuCX zmXx~KA+Uv6fx1~o$~qvFX0dU&h_&fjpeRPv+e$O;cQ8M^7A&R9Mo{S(ix++kq*Q4E zPx-T3Ogm?%TpG7ApK#2TP90s z)^|9#7>#bT@mbnlO3jk=YHM7{jdA&OL4#jO+^LHZs+h{c>`;8hX|*Xr!(EIjN&8eO zeKSPE8rp*D(;rtJ%B8L}!WPaX&M$9S>n3H0rgS7PH(tfL4X2K7h||@~7Dq=zM{8)@ zjd{tOaZ>t|3IR^0sIMD~bHgS`>4G3}rN#OP-LvqL56PR!FqSRcD0;P2Mn9Hgc6h*W zmuVs%M5RpDip5eoVTpNWE{iQSOQD(xymbugogpPsN*^z+r3oT^n6Y%%U@|mAON<$H ztxT#3DeNOUqy|LGn7XUBOR2dWRo}3}JW*iI<64N86T!!TE&!p9%vbL36>$fe;{xat zf&jPTAfmYgv9vWiwVz`<6}KO7}jH1+1_q?wAdGeBFB#xs7*aK zqU)l;yt}?T1+aPeeO(BBp`y%sa3G0;zNZG>1y(LFLIdOTKCV-xaUM_;7c-n z4-NNX1`lb*U>DkFrEjWPsJQyW85a5Tjz-Uu^mKZq4D2;*Amw%qx1*a;h~e@6yaU(1 z74`B*>RIK0?tkWMxJKtxmH%Ry3l zrGR%+ASCz&fa^>EI^tX)j6TB{q(uMIDO4UOnxG9M^W*Vd=%&4y0o(u((!`1pyG4OMJ2G@x)b>_4m(#G0t|Y3n|4ZDL%# z8fdxRwc?eMhB5k7c?x-vt&vxX&tpNJ4UKD!ysCIDb%IfS@aZ=(&+Qtdp9zO_?>3NL z+FXmbYXh#Q$y%z2QMzsQN%;=)p0$CtM>}XK|F+0`(OI8T+VXJ{o9ZgDjZZ8uVvs&rwnv_QhNyuxUHS?=>qLTK zVtX*O9InNiB=dH3hC$cHXrUkNQFG7nTB=b8P&(7K)Ko@opRJ`XGOEseEhX;=DjZ+s zd+2UtPyN`$;-Z4!k%yp+t3fSl(U~{#z-MO^uFY*7f{<)@4{$s$)C-WwT ztV+!-ygib6TgmF1`ZO{b&VDBvKAkS5FVTD~Hv_&D1F&`wTIObLK+B8`d^Itlc_Z*m zbf^A}_{QACT2v;cUi68jH)~T^ECTR-CCZJeXFxxc2#qrnQDi~@SvEq@JeG)w=X7Tv z)=?S+xBgM!?_*?3=atCw>H?7ynj27~E{KAWJci-mj)>i@45*wp za%VRQ2XSph!iS7H@pZZO+MI_;Mh4W4A)O5hS{Y%1-5&CebVA|oB8waS>BK9!{syG% zj3{s}6g7R$FrZ6w4Lr%D0o?f3U@g_N0eXMTFfDaxtN{cxz$i)_sf8@Uz_4hHmg>u> z#^bcqK}NZb*HX6Opd2S@scthMN_6ds;i$eXZb~i==i5liri%=InjxW#K;F|?+A>)Y zOu|BuszqIwLc)azC^Mh5kV`{8ND^GArG_%<#8NGFmQk&j8x%zHttDqmw5VArgycj* z$hlQo$b2K928l4)(@4~wv{sAfZw6jB3ar;lwb1A&DAazVmb%2Kp=DaCb~LC@TSdx) z#_g2oQ*(U?P2eH)=M@98RO5VgDi3R~xuK=*^C(mQu1K|(Jb$Q#r>Oxqc%r2qGOFQg zE!9Z7ibB-GXDgBE|7go1UyXsO`lpyt$Qsj^s<$#2g4 zarnlgWeaHb0QuZZWVhg3bDIn`;CVIJ=ClCYJyQ*GzXjNWtr+1!>wPc?i3TRAc1bESJF4gF}Y2x-=%qx~Uu@(+FMD7ewZ13H?pTS9f;~psEsyuzzK+Kct^w7b%Bu$E$a^WEz_aqo(9Hq6(&@t8}@emp@XFBL!2m77%Av|3OF~Ufb&r$ zolN0daZztHB?5Z#p`7sUZ*fC9Az*GS?1=(;tiZ`CmZ#=+f252QoRY7?gvqt~%0OGH zKibHgjQ|Vcn9bV%*1+<`MzDfE;7^P@v4$+VvKS(3&X(cvyI?3HdO_=^=+?oT&ZhFw636;RwA|F#o*agumy~_5mUj!I*p^ z(4IFoR%E{)*_T;%Vt1bKze~kG*E+S=1W&^O)b~}TPxYZxE zrF;L2H;}ZeqoEd7q3SVrA#(5lFqz8ZZ0-q20{_O zvk6@aGDYwkh}wR3#~DzlsV7}vlxcsFawEqp1ZM!%4>4uxUY-9~LyL$Kk#j^$6` z$YLl;JQ%_Ua&;^i!Ao>(OiB3z+HSf7=BY!W$66N=a-kDLd4*(SEs?6F@gVPEV6gWw zrDcCi?WpT8^vWK8Q;O0vb0YtHP9)`vBu8UCM?cZ8nRP zJGqR5eeQ3i}xo>~)$MHAgj$@B#D?LGne=EL0?4=z31 z&>Dv5n={0Qik_i6Gk$=vn!y1WC==23r(9TSPoK_%XYxekbgQKi5zU#K(TRy@@;WSb znNT2da+?H|lCXx=B36_+3GIu+8di&#QOq9*yFCfQYDfHq4QRHPyA>7ufu{sdM&7g7 z|Kz1l#vr(dlSd}x#AHZ(o}?khd7C42ux|IBf>I-s>GBjT>^e_@W~$B_qJ$CW`ZA)a z#3b8{=C(1nCjUIB+H?YS%;RHqn^9#RidA&MuJSHqNaRz^Xi0Z-XR2Xrji*!HsR)QK zXPQxZZ*y;2G8H^SNTfXIMVVs;fN}SD1T!_l#rPy=>Lwvj+8MIZu0WmUqX)_ zWO~Tx>`b(_$sY}zEmPZ(?<|z+j>Y9{m_GNCxdHvIFgK?&i=cZp%Ug$Oo#kzr#fNcU ztr;OF-PzFVmm4GExflK{b)sA_KQymLzn0`UEPZ>{XdkyTAkH$*6Fv6O8=A(wzX&T~H3~CUU6NmCqV0(rJ zu5F6DiS*_I>4952S*ZqdQO&PW8sb-13ri|AhoM(8p42ISVO*x03w3K|Xb{CbtZAGJ z{t_}uy8_2vI1e4(bcs2g9cEh*I zA!3~SC|X#ErBC~83oOSi?KG=|{e`@RrR)F1`wcTh1~<(ZYPkfuND3))39NR06-({t z!V=h8e?9o7TRO3|fkLujn@D+T2Ijb>C>0=3(NatRmk+Yk{Pw7QyQt!vKq6kfqzri`p zQA<~irZ&sb+bLBRq_}G7Nx3F?RHR}r1Pojb0i{1hysn0|oU!)SwWP}B5YrV;zT=M_ z#S}xhu{jMb#@hF=oOTrR(Ogd#`do}Tr>6&nl_1O{<4RWv!c5g4OBp@zMR#p4L1SO~ z(bWK?h563bb<4u1FYTRu?i~g-K?8PnKduvI;$NJ=KyrMOq=& zt%9qB44_x5;E#3EEopNc(3Yzq>q4eT$;luPLuu`5$l5-bPOgT^!6V3I4d0AQ&0(nn zrLTd^6%#EfYXIs#xCXuaX1++lyg^XebuCJ}E}^Kk@Qs*KmfF$MwP^5>GD=y820vYk zwjS8d2xoe)LSSgL4rK=JWk_?b^Fi9m(wnD9w-o1erRS-n6r6KHz&XAYoPTaGq&fHK zE>)NEow#MsSz3=wL!tew_25|kMpM<1^$5y8sx*Yj2AmY)gilnW(*|f{`-Nt2fHk`5 zTG5;h7@cNekRaO#35WG5VeH#sdvX*HK{jCi3#`d(LtORRkDlCIn$87=h zCQF2Hi#qF$0zh2$NZPdpp($t#{o2BItg|U*D}-iDXQ?BZ_JmLb9uwNV73^2@>DE@9 zP8ctF>er0@vrP-tyW2jd|katB0AIAKM_8&JoWc=Y&0 z2F<>xh4$=#`#D_`DHk%{3Fq~DAW{zGeGk2nx)U|(Kc@3LF#wkBL`|me8IdU2`^k!; z&sobUa2LAB>kD<+g>l~bs}+@8LuGq*p+U~SMaqS`tD%jxfT}}utSMN)$=(@VYie=Z z+K%!Cl*gSc`+;(HdIh^NHW%SM-{q0D16#}banDR?>TZM!Pis208%(IQO@oaqWcHb*AOl2{be+#HtwQ)vlk8I zV>R%5AAfUA^ordF*dm^K?t|#ymb88!nw;3inl9G0@nEYf6Y|=R=Il$crkF4rJL<9@ zw(FQ`O%ED^Dh9=Q^rv(C`AF_sIvF3p>~K1Znje5>0b^Mzr}YP*(dF^<-~dA4(YfSy z5NXT()Z-xESlaHWwN8P79_HMGyh?ie(!Z1*ja_Gh2jkeP+2;`ND!q9_o0)Qm50buo ztfk5h@%8nOytLM7(UwY1!(26oaO!CLo}9{2&&MCsrJN6uHq)`up)w0&xn?OKl%r8~ zZEa}F8ynon#5OZ(0CC-FliOiFR60=&_84qp(4@oQ+;z}~A_{DsHHFUu;`-F1w}*MP zbV?groq|XcyMlg@(c=hmBKK165yZd=XXyA5bffK0GCYc9AvQug9OV_-_9bRE# zPc2!QOJ-_Zk37mdN@E%#Bgq+;q9w;rsX@G)X1dwAP<{h=RT6{3`^qW5shtgNKaLSW z46+)ih0Y!0LnX!;B8B;`0-_bi!B8+ngzTyBaSVb%!{s!mqn%yB30{wOABXc+W&cG& zB}NlO!i}mbQ9ktq$~TxMLQbr_4ebQPDQ8i}NzB4$GY~zvlRyd!HAwVHxa#qJjA+3X z9;Wh>2%hau(s!iNlxt{Tb{d?t#VM58bdxep!E;wWU@7huIE4jL{&Pk+k^5;rNM`q1 zu9GrwU}H+T4nN8~jY5+@QvPZ5YrkJ~`7|HS;ZaZ1GZ+rOM%3aA-^4`U%#Ic5#a^F6 zS$7eo_MCw`Y_p{6XZT1H9VcX`rwkl5B(*(N)nH}{JqycE@UqjPq5%lp=s~=e1sJ#3 zpJtwg)-&oOuW|r%dUTd|HGdid37La4GBbvBPfs18aXHU(D6p_I0tFu~jTwpp83R#Z z(K*=f*+`6&QTDc!+tMEQXbgm1A29sg1TAiJ9yaScljfX9k?xF`NQ_957%tPYVEYIY z%mtKkS|LKXJ3Uk0xTue9I14ovAqsm9)bNMk#Wmq^qiSFUAm0vVW5jWRe!RV zQ@x{*QU3~B@FU!wa;zM1lN;Of6T4vi6^NbQh?ZT!>b^$;U1#a`WHP;qiPWbnOP$$N zXQN@CbrtM~dQ$0CK7!L3M9;4B4W+|JK#LBUI1>{^CS2nkO^%MX*Xflpa9~R2kW})x zhiEV6%|IUaGn>|4gOj|@WjyJ9()tb?Ov)g&t!9iGUgsTUGp31oL#etDXDnjbSm2z~ zZ0dHM50(8{$nrBs(bl`rZ7a)4ETr?uGMc=MWeppcI*jIC#PIdJfy{SnDEbC;Hpkme zZt&p-IorWB1P@lV#W~-#8wh)|j-eHYvT%|q)@FYbrM8`>;G0;ZT)jwTH{rFpH!*bH z-DgA-slvoThdK_%__VnNyZ^yNbc>Ia4R&$R>76<_os>$o3l$(sGR4DzjK4bs(aT%B zpS1Z9CmpiDYMVlCqu%XfKz3P*6N6D8IcY8}zKt$6&!byNr7a4PeQ5~qPGNVz{bDUh z=b^X`Fcu`Ya|12CgJIfgC*4OXIegTK8WlTZ(_knO z^00q;<~T5J=T)k_3#T4-hn()AXP@5(&;4N-zC-V!wi%CU!9ASy-ug%v??FesuVi)~ z^n>q|fK(bNb=ILR!(kE8glq5fj{3Fqopn-&YP#tz06kw*0HjPncbh)|y-UvM@wd=Z zjUS+r3`gqq028{8r!#H*;q0WDnJ%)dJRjVBh?(zl00lk7`n6Utl~kbnTUfY=LDqs+ zJOrE2;4iG*4SLVubrBjk#@fYz{3Md<`Ig$ z@2f#-9wGQ#PuCFXO>rSD=`qxC8md8NKSnUGKSD$NyRBLE7$T;QVsJAqa~w+@$g~}{ z6vh3ZDNo=YS>w?IPHc9f zoZDhbeF}?SSV|k8BFrCKPVZQ1xrPFt!Pgg;LT=eec%j&{OP|464sF7tl2}|t>~^N| zIW7*gaVx~RKZm$ydnx8QOfc~XjYcYMeFeqmjDlKMShoKS8utP-&FfLHjQtBBTkdL* z<}YBGlMfjYFAaQ*QZX&fY-rACFur4q$6k=xORSCCzoF$X(M#BB_2))^WJH`~yRHir zzl7lCw_#JUbyly?V8RtQ5l?u9x!cxUOZ~GQYeJhC*9R*tKI;{1`sNh^cczmT3V4mM zc-oEnzDAh-Sew?ebbk;XeuJoh4O<205w0QP-hjwy$_Qu5I|jW=-azk8Ef~_AvuZ<@ zZ{aZs9W?A!S!Pmt@d|8tZ^3r5$6r{x&36N^WOS+v)iiXqC-ZmEDn8wX&d0erQ|?n3 zy!Siwd-4z$9ZJha5LpLOQaZwg6fIosr~>?)cP^Q{$N7%SWEV;v>MEym*{E;KdoV`L z&_dhZV~Nslu9o`#9v5nFEz(kPRj}H*r6T1@%c`IPU#!imsKR2W*V=z6DFxukL9XKl z+FFeeCt6@G{&A(-7}Aovvx}t;d->DY8|BNxRIS1Ae-F)_ExcNap4SeV`6!}x15zVAiBV2VTGWVb0 z+3pMPXnZ2pRUB-?QZQ?=@RkphE9YtB7d}GTuM&niy}Sl<$0ubaELanG?cQ`FBXF-bxkUF*Anm zCzl^c%Z^f~ADB`uoT4Q^Ai3)mx{Xxw=C&(kZFQ5A;wLordP<#sB4A{`qLQD`{MS2I z8h--q5!Xw4zaSVJ_};(xCK9h2SKQf*g4jN{pn1rW^fqwQK&OAf?dn;Ilq=g!*DgzZ ze`5paq=Se%QIFqPQeE^BDMz-$ZbJuuL(GA?S}~u0vn6*UErkvDAW4%rH_GvH_h4J> z{*oVRk@BKfe=q|VwsF&;9+Po(ShP-y8cc^%IsiK~8CDUonZUTb?zFCkkCvMCLSFI| z-f^Lx+STOHKsT|UM+{CITHv9UFN{+=a?M9AOi_n(!zL_Trf$e>poMqU!Q9=YWT~qT zHfXQ{B}S%cCOJ`jsxHa|tfuk0>M-u@Cfcuy!ZreZ11-J12i3jH`)3+$$Eh7@BfFd& z`vonZ2a;QGkT!GbC@%0YjhEm=M%*cvOVo&@XEjK3iCW2>zR8G0>9Ko|D7wQF#$)!F zq*8T=^!IBw9h{&zP&=vGRT}gjOl8yH)A=B|TVH95RNX+T(skFN=pk@i8CoyJQy)01 znr&%KhnAwZ5*Rkj3|Ps0Z20%^!Jfc8J!n|Rnl|e}!#=L`PEQ>xspIEP6}3HVD0jv` z!>hBt8rR`NMBJ7vOg;4Jn*qwN1kQDCL5K9!&A9DtsD%Oi*u_8{$dzU?qNy}+I4Vq; ziM#JaYnB_R9i@+QHJCN!x5k;?X9KmrG;Z-f*gw1dh^jI)uAqnp$<%SuwWVNqUx67R z@fp;5EJMxDHdBpE-AJ$L8F!sNbZ;uwT73*rX2wODVyF(6PPvORk+c6Vw{IgpR`{6(ozREZrzTm4GCezbXns;mD#my=&h;RPZGY%gR+j+!WAYnwMvqHL`w}fQwK}lycQ`t zT74Sky=I0AB;TmYOx>6}Y)sV_*j!66SBG#4Hw{sgY+*!2<}k#px*FtxIR?^~7!5Jo z-qVa-l`x@L3-rj8rW)AQ)zgS_El_G;GDB?XdRzF>WyVv`l_Bw5*;<*{u_(?~j$%&tv{JhoU)uZ^rj#pK{0y{01FE*uR4aJ)ioJA- zrR#>`(F!#-`)}e}UZ6GVJTZ|WO}VQZSZdEMfdonaZ1uzxJs+c5VguQRf~QWuRD_U} zzGQYDYnE7`CMysAMN`TBCwgrPV9D^~p7e96mv$|D0T8D=P48^fjkx%8q_kBhaL2E* z)R`99s{J|RJB)B**H3Kdi!IpuJ|MXq><^z%N4YwV8~=ie<*>lfcXXen$G?)J9U|A` zU(^Aq^tGOs4sBY1aJb!0?P{d7@X|?3?~^fjkmf|K3LqCjHF2`ukCKDXspe2J)Q$2R^MRd@~z_@yuRN??9 z+&Y5pJE)^1qeppBO-pYVig3hGdYXe0`wMWsIn@zrL{6b~j;Ma^TraAZhT7H`sV&Lc zN$nspUhYNt!vW!vj&{tocTzjb+OF`@8JLmMn_^+lD`YmmVYSC1>O(jLCvI@GNYPW{jg)wc|! z8aFj|iNXPw6rzXQx~p9cXGeMKq-U^G;$(JRWj-+JEj3sIm;AHpzwM6hs@)mb*d_nW zlX4Fj>RGBc4T!AmMqd&z?0Pb2=`e5dNUCkEiRdc;ajRz1K@Ygg)wxvTp>Dw4U5-cj zFu`ow3W;V*QOm+ws5EIW$WBXfW3<@HhqX`?+tEL3sT=Ai9%o8wCaJcbYFB;L1rZRZ zr-cBd?l)2T&}>Uv&Gd8&7`OWYo?1jKz55<{DFwJLC*E4q(+dJ#d=v$U{aFZrEBHlw zz0_g)#d@__Ric4xyutavPy{v?q3Nvwa9b^Ch_^aQ`ngtZh%G|wzX4b}yf#RY%epo? z&ozJ*!zP*TG8AkBNZMTmj_Q-_+Sy*XWf8-cMQJd5QtU$qzX8TIZ$c(MXmw|!lwwCwV=rJdj$P2$uz#|Ip;l>`^@a@Y@40ky>~7SEg|2AzHnC^ObZS|jU3rk-viK1D?@}BctCGHr+$1L zc#W2MsA0ORH|d%O=7_={_-aq#!iQ@Kz&rd2K1i z8}`y7l9qbIRhrbPC7h#A(S#4ZQQ9xNkeNbx4p_Iq>+lJFgzCIm8uNl9b zN};}Lpt=9#mddz{l#%2&26ef_7b14#(r#ar_1YZz6IYYhOOZpu)(RJ*w;#0hT2ASH z7%ELx({@}<7Hj~|o~;-vCjJ<+7x%PO#^jO`io>_ilwf3+ zeUwfFqlNaLrMJOqhgz1GS}B=HX&DoeRO+=2<6u|_O8)iNG$TX}HU8&$E6Tg#W=BhR zVZ`2H($#5k{)cpd264lD=8Qdm3ayC;*T z^Yvv8m9@k0Z!?vz_H?bcyZ#WzCk*Vfr&Da0+QImB9@L0;Z$P`l&>POqp<7{asvpm% zrr~N2lYnCA{NBp8sXTDm6pk*j>ZrsTRoV7^9j-c<6`f|aCs5S?(1m>?P@v6cNsWM& zD7=Iui*evdn<8K-JKthP$_s`&@(_T@yT3s93&1&>IP`203IFGl7eZRnz?5-Rz(=Pk zKy`s;v>+0udX=v`7A&O|Ztsgo4CKZ^?wo(pu!JmWLVTm3L$^>;qtrGQ=b|JvK@PFP zC`cRMkxoZp_?+%cucOdE*7Tva?P0O!CP4c81n479Rl!?>Hn&$B>h6!GQ|;9tvmws*YXOnLSi28CWjls3n%Gu13ot=_CS}Ie{Txav?P6supR*N;2RAHTh zI-(ap-H2?{_f>d0S-^B1iYdP%+=Y1u>5Gm~vH5YT)d^PNVHtJfYtSWH&`Aw3FTM(i z*^^V{Hl7$?|KWA#!*A$)Cv*qj+Z5Ru*WiaVv$Gm(?D52%O3!)JqwAf~?rwk4+s^3p z#(z^p7mP9EXV9d_eyr)l7~9rGb+Gby;jUySP0CJ8O-e|YWqJr)ci|nq>jK-19kq~X zHO%~HOAjSGB^&NE?{O@T2Frr_R1yuA(T?D@ySzkUvDwOR8+@wbwq%1pF zQGof3#Uub*#6Ga7o^y;jj0KjkB1XS&X&!@qbaEW$mcwP0#f$=~bIzn8F=|lF1(PeN zRhH|A!C`V}3S^ZWs%XByIaOL7S*s}V>}3?AqGx@)0z46iVNZpw#j5IH>AVsWGn0}! zq-JEvO8W`0uGt1M>W&^YVk3p(YVp%n$rej93oDL1mUjo^z3o&22D3e-%#cERd6!Fw zuh9eK=7*?B54DZS@GHo=#}TNP(*tAf(`#JvG8nR*xYd38HGRPGr*yI{|IpToRMRZj9^o)CtvkmQCx2ntX@A)jH2Uc`sKLQ`3$A~y`kxV(e$*p8fly~){}bm z^s<#(BK`Zo)44oJK#hs|sP1OY^F5Ub87cB?=uRIr>~95-*z*L2x@})b%w0hNebr88 z{nvOZ6O&<2xSy}+i;|cYQE6Ya#Mv#L$`sfwarR^!2TEEoHI7pQ%zir{DRpvC@o8~T z_p8GYZUcvncHma$dxkE?VQAd`8ZbOMdvfllw$NqWrcV9TCS=!zf)%$d(pW23QaN1eFaN6c%8;?05n~~9f zFcR*9K>zWE=)E?I;-Pth%(5zV@W29E0$UmxYkwM~Dh+DqkmAKLGf&S^^K3*{vUrbb+-wU1Q=%!4&5QRok$t>DGEJ zDuM-rgA4jo9X-yWg0VRO{-X&H)5KOP^s^Dd1B&-oZn0K_?IisB5F8#m4@Q9=B|^#{ z_Fl5O5JlKlzDcuyan}X{50Y<=hCx5${SNvJe|?Dn%S-qTqN}Jq;|OOxZknjNll4$! z_NcL;C|*>bnGQA8Ga=Y;J^5bmz9Haz+{~a>b39N8&gm`moQO4Cm#$i3lO`FpPJSbB zcBzR!Y)`LPuOS}#1gIcaiiT9kj08h7*6Ga)>&8%>1X z#y=tqpJ;J}DQ-@ExjI(|(zpb*EB(MdDIr+U?a6w$>P-QFbS9xvZu&4R+i$Xv6=9Wf z^#P2XhvA)b@d`QzFt)7h<~PG>W)ifv7zI(r5mcUp4)E3yL2&Q)s$oNeMq$W&$+VIv zNwXM@CwjzN^5Yry>}W_*mrjjBlWalH)g8fMPm zs7!JyMfIc&U^Mb0o3R*Uhl0IrWbl;^ocvs(Yz6){R^`}P)IASLPYbXic_Y{XgY8lQ zJ{KVN^1~5t8u1A%h2;L-gS+>4R+JyY6~#>>dFw)!EP{Uh&guJZ=lh0)P|jB5ohBtm ztOTVU4xiFgN6(%yMmjq@#AI%6uCUf7=5K?0*HVhmPjE&X#S7}35{?rm4<$a zIM5=p?9&W@x?5C~t~UKZ?A0#kPv5SmDCh86nU6;0NRdK>mc5@236q`(3FMNYHnCuh z^5@t2`~VeYsP%N=cw90=7H38 zRTyZ-IJ7wGd@WOce`QFD*ZIdup|6<|^UgpqTbYSy?UCbE5g>cucu*b9X#7O9Du<^Q z)WY!?8<2XMsaI-hs7*yf?tT1K$#&F6IeyxPjILeDP9rl>b_kl92|-<~4HPrF^0PM{ zb=J4*Ehc|srzM+{LzZlx+v`9+;2_By&boTN%*+DA<4Oj5x|pSkm~MBNveVg+R0O1Z zbOs=fvQX&yAGG(TjTgU9GeQ@|M}pin?cGtP;DFd1@r~|eLkvDh#$ssEOUx_xbM*cE z&9R>8$>`^g!xTmP!cT5f$^ZV9cLTxCl9uH_Qe>p0oXdfm0q`+{=Q>F++S#X}fxX)V z&bWu9Ah325(Im+mZXA4WrYNo8GI(kf&*~>xzn!2qW65tg{h6T*I#8E3K6NS;pJ?>7 zW(-O`8KK#=rQbDz`GYzA&WT7Ln?w&LNI|-Dv$s!fG zMEW=xD0`W5WsIaCj(1be#A-6Y3#k%B5N|vB-ZjRuF^{X9lp7&u(L|+~0bvc{49BI%LRm23% zodTu)nIM(Q>)~TVE>rbQp7VTL_*bTivIgcyD`fagdO8I=J1CU*RHVP^=YaLEtv-Ir1dncd%+$%4V2#s3=~&UhOK*#{5c;DHy$cz z&D5_em{pi5n_MKlLVWK`F}Z4ek+fiF=X>vJC`#!EzUHL$f^}sM3R;pYoAD&exVo7; zgB>CEcs(Iw(Xyz+uOK70wxalID%$*01FHyAF6vSApkc+5f&k>Ev~Ic-UpyV+KdGeP zIh9#HX7of)e#_)}yA25&bB*+z0Wh`H0M?=~v3ujq?O@h_e!&)zXewWr{j zDu)%N9*C8$TYTR@X~keMK;tl-5ADsvn(Dz!+4OH1O*7M@0kfo`7&HrLij^KkEOiT7 zJ4@E)4v=(C*eafl>F%dls-tMEgu_2|xb2`Q&)X^r!p>ItyIYT0MHJueCm_|z&xaCf z`PQe!v!%c_vw=oQ)P=5?BVIVi(PEXKFzI=KNYFx^oNUhJzgXiM@ zURR=zROcqueU2toG*T4HZa&oA)wih^TbfFd+Am48)Fg?KNm`LQN9s0k4sI$R;^krHYD5VO3hZm}i zMEciZ-A;~z39^L=(po^9^OAMd24A}m2D9$xn`;(@D9W|@isDj5HAT63nUgtD`XaTi z$l;*Xq2f(od5fRc#P7m#cab#lcNU?#c9{86oj1OCi1)s44QjYpbr215z7@|}IN!~twPL+#|=O4Y@f7DJ6zMc3A-Yn=ln<36zUzfU)?no-s==^*erE92xWUp&{G=JWp< zEGvyd_w*^ojLygynUa+C|0cE7B&|7{5LDxQ3IeaUikitBb(i0qg-9 z@zb|gu-7KbJioe?Y3h7gv+W-+2H~&<+BA81gAR4Ja-N?{CA+uNs_dbttga2JYjhd$ z7nyyspE>nii7yQq)Ot20c*aGnIlW-Bw4T6%bCqezKT)NNZWkXs;t5**D7vH8fRx@4 z?A!(phV`IW?!LaSr=0df(6p8M`Z)RMrmriMZG-Y@CHXxt@LSXABYw4r!yt3(J>b=I zDc-(DS;+S^GV&%#X-A+8#1fS$;!6^fK@shAb;BnKTTtOY(jp&#H*+YYp~towOUSPy;cL9UxUFQ+PYdAkmC#%BM{&kHHsY8=m+;%x6pn6zzY2r z3yDseUiHj^S^J182#r(wM`I)vqyI%~xJFpYTxzYACed>(a&f_<=bZISzCpEbqa<#Bo`# z_rm+8JuE%Xnxbc5i=NqP`pZ2;v|kYvZVIK+~&fWgbb22gyULwcLAFKA~V$NF24RcT!Q%4hn>L}H7^9^uLJ|died{@d(oO_+flZP zA=@8ytnJYEa4^AD07-bzyim>xZ`G5die-Y^OnTa=l4M5{m&zPMcY<`yO;3t5 z3b5v|^ukmWFzJS;o^)ZSey!&^I%RKnwEq?iL+ucJ<)i1tmtVw2LDVitC~U1qC-0I) zUBl?tfdciTL4Go~mp~oow)Iy=gBTcb8s1fOS?DTr301kR$WB9?;WzMD|6KWmzAd7 z)sAGeNA{aWd(dyxPSkFX+8~tIz;E+&KAjD2!Vgtb<85@i@z3o0?x}-?DJ`dw6ca%@Q1u;`(9{M zr%*_s+k54L>m7rxTP65uZh-9vKKs1g>91nhFv46oR#i<&!Il@ap*j1ci?wziWEt&~ zAU+6GFM&JIw}YP*-@;kNwbRu*XXb?})sCkFlDv5gaFbW|qaE>ceU0{ZK-qppRcPyf z(OrLfaWJ4!_3hqq`=Lj}A8F}+*~Ulse!_3`&3OAcv9CCNrOGAC$&{2>u#`e`f^U6*oW@%758s(HO`C+pu3)}5!Lm)YAH5A zrrum}W+Dp9KWzsu8YFldQtnYze12%@QAkP{LA#Esa)$a;KOg1PxfWPM6%;Cu=cx1*ARFIS13qC5t79%HZ(oj9e6Z;SoO zpz#R?9cjVxzy=gnCS}BwfpX&;Nr~T6g;LCv+rLQ4f67!>?rIjNQFo7ZfmC_|$649m zSK&`)lF~>|n)_T&`k-#LF`8=n1mdYJY&5++t#?>cU$_itj;Spmw)!|I$tJ&YIfRCk zL%BvD@jbrqP_EV%edlP|#G|ud>&!b=-(D=bB3bX1>pjj#CyIySIca56uA(%qV#08! zgOGeI)$5ELZBb`Xu3fqyRx?19<_A+#FKa9|{=vY~E~)=xD%f1G@m`#9x0*rJ z zw>0WUCOcQpMx1nS6toXd+^2ur&?o^@#A2+3wOd1XL<)Imcd23fsm)O0ZYZ&K?|%Jn zoTs0ET1vY2n5^n^+@(pa;>N+I&4yFpt*PZ^k2oE^XYskTK-WJ<`JOzJpwl^7dw%Bt zK6pv7=cE&t%J+Z0rG>Z`4etJHqU$H{44=eRpM#s!q|eXk9mI{_cl~u1a=(M0b{hPj z6V*5`r$MjtkbMd#b?4QVZFxj)u9vgS5=Q7h_+h8K%HOw*LKN@B)P$_8aS7SU+A`BF z$T4;jpCu%Oa9p3}!uoeOe>!l9Gvzsn3!{>62pVIZ0` z$qK=fjHT!epIlJu@YviA*w}h*2u&T*)~UKhdJ3X$+Cs9vD1C>Ji>g!2H~IPu(#fT6 zj67UC)^qLBVyJc&ouYn~LZkXF(~65~bI$5GQtK{XrCS&EKB;dZMVn4Q7iw>$z@Mt} zH}D3zTmm;zh4Xb?G!4EaO;s-6J1BG)HC0{T(@g6f!nBscU$6K6%KGk*+Y>)+wUva0 zD;<-v#%5=X^G-=msn#BmU#Lz^1H;2bO?r<>$m|(Y1HBl#)TXYcXD%5j#cthj_kZEN BNB;l- delta 53371 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 P00000NkvXXu0mjffM5)1 literal 0 HcmV?d00001 diff --git a/icons/evalnombreparagraphe.svg b/icons/evalnombreparagraphe.svg new file mode 100644 index 0000000..88bc363 --- /dev/null +++ b/icons/evalnombreparagraphe.svg @@ -0,0 +1,125 @@ + + + + + + + + + + + + + + + + + + + + + + ? + + diff --git a/icons/evalnombreparagraphemini.png b/icons/evalnombreparagraphemini.png new file mode 100644 index 0000000000000000000000000000000000000000..ebb186da79937842129d8d4823e5353ef789f40c GIT binary patch literal 624 zcmV-$0+0QPP)yE3*njk*(;!x>T<^75CyvCP7~IpX4(llgJOuk$e~f_?p1q;>R>3 zgfKY>X9-~r<92@j(F9%+=L;budyvg#JX7hh5<`Bfm9-7^i010bw3rmw7)8yyEp0t4 zXNRmZ4C0ApZm9N3n^6tv6+#HsbMPdeX7gi=&}2<0@-nqWkZCkk83-eU-aK&}+hR{@ zfy`nWj!-@EMc=VYc~7I3=lg6Joxm5N)_bJe`I#zq_ThoQYwQxAyJVX_hW7el1D)~7 z<#HHHB~bj1YZrKUncCIVkFY9)@Md!qojS($$zGw)N|dG&kn}8sppNrb`4%_#gvwv# z?xt^Y64*rRb%x?qXBb@JTyG&8ZHB;py5kkc`B1|l!u>)75{F&1ypGC=`~~A3w7m}D zW;)|zO-|%hkNDj}FZ5H^&z(ZaX9$#1^qZ&MF>DFBc@rq6<|56F`MeWN+(J*G0?GSe z-ebW9rdc%3&}n)q7=>X<$EI$mK2s}fApiV=t{BCPgDP6+-

Si le node de l'étudiant contient le même nombre
" + + "de paragraphe \"text:p\" et de titre \"text:h\",
" + + " alors l'étudiant obtiendra les points ci-dessous.


" + + "

Cliquez sur le bouton supprimer pour retirer la méthode
" + + "d'évaluation evalnombreparagraphe.


" + + "

Le nombre de paragraphe doit être indiqué ci-dessous.

", + new ImageIcon(create.class.getResource("/resources/evalnombreparagraphe.png"))); + fenetres.create.getTextNodeSelect().refreshAffichage(nod); + + } + +} diff --git a/src/action/actEvalNumeroPageOui.java b/src/action/actEvalNumeroPageOui.java index 8804db1..eb6d5b8 100644 --- a/src/action/actEvalNumeroPageOui.java +++ b/src/action/actEvalNumeroPageOui.java @@ -26,7 +26,7 @@ public class actEvalNumeroPageOui extends AbstractAction{ node nod = (node) fenetres.create.getSelectNode().getUserObject(); CustomInputDialogSimplePointpourNumeroPageEtStructure.showCustominputDialog(nod,"evalNumeroPage", "

Si le node \"page\" dans le fichier de l'étudiant est situé
" - + "au même numéro de la pagination que ce node de page,
" + + "sur le même numéro de la pagination que ce node,
" + "alors l'étudiant obtiendra les points ci-dessous.


" +"

Cochez sur la case sur \"Sur toutes les pages\" pour insérer
" +"ou supprimer la méthode sur toutes les pages.


" diff --git a/src/action/actEvalPasParagrapheVideOui.java b/src/action/actEvalPasParagrapheVideOui.java index 6da01f4..d4d94ad 100644 --- a/src/action/actEvalPasParagrapheVideOui.java +++ b/src/action/actEvalPasParagrapheVideOui.java @@ -26,7 +26,7 @@ public class actEvalPasParagrapheVideOui extends AbstractAction{ node nod = (node) fenetres.create.getSelectNode().getUserObject(); CustomInputDialogSimplePointpourNumeroPageEtStructure.showCustominputDialog(nod,"evalPasParagrapheVide", "

Si ce node, dans le fichier de l'étudiant, ne contient pas
" - + "de paragraphe vide (text:p sans contenu), alors l'étudiant
" + + "de paragraphe vide (Empty or blank), alors l'étudiant
" + "obtiendra les points ci-dessous.


" +"

Cochez sur la case sur \"Sur toutes les pages\" pour insérer
" +"ou supprimer la méthode sur toutes les pages.


" diff --git a/src/calcul/calculNombrePointEvaluation.java b/src/calcul/calculNombrePointEvaluation.java index 471c6ee..bfe61db 100644 --- a/src/calcul/calculNombrePointEvaluation.java +++ b/src/calcul/calculNombrePointEvaluation.java @@ -198,8 +198,17 @@ public class calculNombrePointEvaluation { } } + if(nod.getAttributs().get("evalnombreparagraphe")!=null) { + try { + String valeur = nod.getAttributs().get("evalnombreparagraphe"); + valeur = valeur.replace("evalnombreparagraphe_", ""); + valeur = valeur.replaceAll(":[0-9]{1,}", ""); + point = point + Integer.valueOf(valeur); + } catch (Exception e) { + JOptionPane.showInternalMessageDialog(null, "Erreur dans la valeur de l'attribut evalNombreDePageMini"); + } + } - // if(nod.getAttributs().get("evalNameSequence")!=null) { try { point = point + Integer.valueOf(nod.getAttributs().get("evalNameSequence")); diff --git a/src/evaluer/evaluationAttribut.java b/src/evaluer/evaluationAttribut.java index eeb0bed..973734c 100644 --- a/src/evaluer/evaluationAttribut.java +++ b/src/evaluer/evaluationAttribut.java @@ -10,6 +10,7 @@ import MEPTL.rechercherUnNodeStudent; import cXML.node; import list.listMethodeEvaluationAnalyseWriter; import list.listeDesNodesAncrable; +import list.listeDesNodesContenantPargraphesOuTitres; import list.listeDesNodesEvalPlacement; import list.listeDesNodesFormatageDirect; import list.listeDesNodesPourEvaluerPage; @@ -402,6 +403,11 @@ public class evaluationAttribut { retour = evalPasParagrapheVide(sujet,nodeStudent,retour,nameElt); } + //evaluation du nombre de paragraphe + if(k.equals("evalnombreparagraphe") && listeDesNodesContenantPargraphesOuTitres.isNodesContenantPargraphesOuTitres(sujet)) { + retour = evalnombreparagraphe(sujet,nodeStudent,retour,nameElt); + } + //evaluation du nombre de page maximal if(k.equals("evalNombreDePageMaxi") && sujet.getNomElt().equals("structurepage")) { retour = evalNombreDePageMaxi(sujet,nodeStudent,retour,nameElt); @@ -1181,6 +1187,27 @@ public class evaluationAttribut { } + private static node evalnombreparagraphe(node sujet,node nodeStudent, node retour, String nameElt) { + if(sujet.getAttributs().get("evalnombreparagraphe")==null) return retour; + // schémat de l'attribut du node : evalnombreparagraphe=evalnombreparagraphe_nombre:point + String[] valueAttribut = sujet.getAttributs().get("evalnombreparagraphe").split(":"); + valueAttribut[0] = valueAttribut[0].replace("evalnombreparagraphe_", ""); + + + if(nodeStudent!=null) { + int nbrparagrapheStudent = nodeStudent.retourneEnfantsByName("text:p", new ArrayList()).size(); + nbrparagrapheStudent = nbrparagrapheStudent + nodeStudent.retourneEnfantsByName("text:h", new ArrayList()).size(); + retour = evaluationNombreParagraphe(retour, String.valueOf(nbrparagrapheStudent) , valueAttribut[0], valueAttribut[1], "Nombre de paragraphe"); + }else { + retour = evaluationNombreParagraphe(retour, "null" , valueAttribut[0], valueAttribut[1], "Nombre de paragraphe"); + + } + + return retour; + } + + + //*********************************************************************************** //*********************************************************************************** //** Les procédures suivantes sont les évaluations par comparaison avec le sujet ** @@ -1661,6 +1688,31 @@ public class evaluationAttribut { return retour; } + /** + * + * @param retour + * @param reponseStudent + * @param reponseSujet + * @param point + * @param nameElt + * @return + */ + private static node evaluationNombreParagraphe(node retour, String reponseStudent, String reponseSujet, String point, String nameElt) { + node item = null; + if(reponseStudent!=null) { + //compare la même valeur "contenuParagraph" pour obtenir les points mais si un voisinage du contenu. + item = retourneNoteAvecResultatsAnalyse("Nbr paragraphe","", reponseStudent , reponseSujet + "‽" +point, nameElt ); + }else { + evaluation.IncrementPointTotal(Integer.valueOf(point)); + item = new node("Nbr paragraphe", "Erreur : -"+ point, "" , "null", reponseSujet , 2, evaluation.getPointEnJeu(),nameElt); + } + retour.getNodes().add(item); + return retour; + } + + + + /** * Evaluation du dernier enfant.
diff --git a/src/fenetres/CustomInputDialogSimplePointInputNombreSansCaseACocher.java b/src/fenetres/CustomInputDialogSimplePointInputNombreSansCaseACocher.java new file mode 100644 index 0000000..4ad2dc4 --- /dev/null +++ b/src/fenetres/CustomInputDialogSimplePointInputNombreSansCaseACocher.java @@ -0,0 +1,90 @@ +package fenetres; + +import java.awt.Color; +import java.awt.Font; + +import javax.swing.ImageIcon; +import javax.swing.JLabel; +import javax.swing.JOptionPane; +import javax.swing.JTextField; +import javax.swing.SwingConstants; + +import cXML.node; + + +public class CustomInputDialogSimplePointInputNombreSansCaseACocher { + public static void showCustominputDialog(node nod, String nameMethod, String explication, ImageIcon icon) { + Integer initialPoint = 0; + int nombre = 0; + String[] nameMethodNombrelePoint ; + // schémat de l'attribut du node : nameMethod=nameMethod_nombre:point + if (nod.getAttributs().get(nameMethod) != null) { + nameMethodNombrelePoint = nod.getAttributs().get(nameMethod).split(":"); + if(nameMethodNombrelePoint[1]!=null) initialPoint = Integer.parseInt(nameMethodNombrelePoint[1]); + if(nameMethodNombrelePoint[0]!=null) { + nameMethodNombrelePoint[0] = nameMethodNombrelePoint[0].replace(nameMethod+"_", ""); + nombre = Integer.parseInt(nameMethodNombrelePoint[0]); + } + } + + JLabel lblTitre = new JLabel("

"+nameMethod+"

"); + lblTitre.setForeground(new Color(50,50,200)); + + JLabel lblExpliaction = new JLabel(explication); + lblExpliaction.setFont(new Font("Tahoma", Font.BOLD, 12)); + lblExpliaction.setForeground(Color.blue); + + JTextField textFieldpoint = new JTextField(String.valueOf(initialPoint), 4); + textFieldpoint.setFont(new Font("Tahoma", Font.BOLD, 14)); + textFieldpoint.setHorizontalAlignment(SwingConstants.LEFT); + + + JTextField textFieldNombre = new JTextField(String.valueOf(nombre), 4); + textFieldNombre.setFont(new Font("Tahoma", Font.BOLD, 14)); + textFieldNombre.setHorizontalAlignment(SwingConstants.LEFT); + + Object[] message = { + lblTitre, + lblExpliaction, + textFieldNombre, + "Quel est le nombre de points ?", + textFieldpoint + }; + + String[] options = {"Ajouter", "Supprimer"}; + + int optionSelected = JOptionPane.showOptionDialog( + null, + message, + "Ajouter ou supprimer la méthode " + nameMethod, + JOptionPane.DEFAULT_OPTION, + JOptionPane.INFORMATION_MESSAGE, + icon, + options, + options[0]); + + if (optionSelected == 0) { // Bouton "Ajouter" sélectionné + try { + Integer inputValuePoint = Integer.parseInt(textFieldpoint.getText()); + Integer inputValueNombre= Integer.parseInt(textFieldNombre.getText()); + if(inputValuePoint<0) inputValuePoint=0; + if(inputValueNombre<0) inputValueNombre=0; + if(inputValueNombre>0) { + // schémat de l'attribut du node : nameMethod=nameMethod_nombre:point + nod.getAttributs().put(nameMethod, nameMethod+"_"+ String.valueOf(inputValueNombre) + ":" + String.valueOf(inputValuePoint)); + } + else { + nod.getAttributs().remove(nameMethod); + } + } catch (NumberFormatException e) { + JOptionPane.showMessageDialog(null, "Veuillez saisir un entier valide.", "Erreur", JOptionPane.ERROR_MESSAGE); + } + } else if (optionSelected == 1) { // Bouton "Supprimer" sélectionné + nod.getAttributs().remove(nameMethod); + } else { + + } + + } + +} diff --git a/src/fenetres/CustomInputDialogSimplePointpourNumeroPageEtStructure.java b/src/fenetres/CustomInputDialogSimplePointpourNumeroPageEtStructure.java index de029dd..dc2a703 100644 --- a/src/fenetres/CustomInputDialogSimplePointpourNumeroPageEtStructure.java +++ b/src/fenetres/CustomInputDialogSimplePointpourNumeroPageEtStructure.java @@ -41,7 +41,7 @@ public class CustomInputDialogSimplePointpourNumeroPageEtStructure { lblTitre, lblExpliaction, caseToutesLesPages, - "Quel est le nombre de points?", textField + "Quel est le nombre de points ?", textField }; String[] options = {"Ajouter", "Supprimer"}; diff --git a/src/fenetres/afficheText.java b/src/fenetres/afficheText.java index db497b9..a69dc3d 100644 --- a/src/fenetres/afficheText.java +++ b/src/fenetres/afficheText.java @@ -108,6 +108,7 @@ public class afficheText extends JEditorPane { String imageEvalLegacyStyleParentPresent= ""; String imageEvalTabAlignGauche= ""; String imageEvalTabStyleLeader= ""; + String imageEvalnombreparagraphe= ""; StringBuilder sb = new StringBuilder(); @@ -303,6 +304,9 @@ public class afficheText extends JEditorPane { if(Lesattributsdunode.get(i).equals("evalTABStyleLeaderDefault") && !nod.getAttributs().get(Lesattributsdunode.get(i)).equals("0")) { sb.append("
  • "+imageEvalTabStyleLeader+ " " + Lesattributsdunode.get(i) + " = \"" + nod.getAttributs().get(Lesattributsdunode.get(i))+"\"
  • "); } + if(Lesattributsdunode.get(i).equals("evalnombreparagraphe")) { + sb.append("
  • "+imageEvalnombreparagraphe+ " " + Lesattributsdunode.get(i) + " = \"" + nod.getAttributs().get(Lesattributsdunode.get(i))+"\"
  • "); + } } } sb.append(""); diff --git a/src/fenetres/create.java b/src/fenetres/create.java index 76b17c4..768a489 100644 --- a/src/fenetres/create.java +++ b/src/fenetres/create.java @@ -59,6 +59,7 @@ import action.actEvalLastChildTrue; import action.actEvalNameNodeOui; import action.actEvalNamePageOui; import action.actEvalNameSequenceOui; +import action.actEvalNombreParagraphe; import action.actEvalNumeroAbsoluePageOui; import action.actEvalNumeroPageOui; import action.actEvalPasParagrapheVideOui; @@ -99,6 +100,7 @@ import cXML.node; import list.listeDesNodesAllContent; import list.listeDesNodesAnalyseStyle; import list.listeDesNodesAncrable; +import list.listeDesNodesContenantPargraphesOuTitres; import list.listeDesNodesContenantSaut; import list.listeDesNodesEvalPlacement; import list.listeDesNodesFormatageDirect; @@ -133,32 +135,33 @@ public final class create extends JFrame { private static JLabel lblInfo = new JLabel("Fichier d'analyse"); private final JLabel lblNewLabel_1 = new JLabel("Les méthodes d'évaluation"); - private final JButton btnAttribut= new JButton(new actAttribut()); - private final JButton btnAllContent = new JButton(new actAllContent()); - private final JButton btnevalNameLegacyStyleTrue = new JButton(new actEvaluerNomDuStyleHeriteTrue()); - private final JButton btnanalyseStyletrue = new JButton(new actEvaluerStyleTrue()); - private final JButton btnevalSautPageColonnetrue = new JButton(new actEvalSautPageColonneOui()); - private final JButton btnevalNameNodetrue = new JButton(new actEvalNameNodeOui()); - private final JButton btnevalFormatageDirecttrue = new JButton(new actEvalFormatageDirect()); - private final JButton btnevalPlacementtrue = new JButton(new actEvalPlacementParagrapheOui()); - private final JButton btnevalFirstChildtrue = new JButton(new actEvalFirstChildTrue()); - private final JButton btnevalLastChildtrue = new JButton(new actEvalLastChildTrue()); - private final JButton btnevalAncrageNumeroAbsoluePagetrue = new JButton(new actEvalAncrageNumeroAbsoluePageOui()); - private final JButton btnevalPasParagrapheVidetrue = new JButton(new actEvalPasParagrapheVideOui()); - private final JButton btnevalNamePagetrue = new JButton(new actEvalNamePageOui()); - private final JButton btnevalNumeroPagetrue = new JButton(new actEvalNumeroPageOui()); - private final JButton btnevalNumeroAbsoluePagetrue = new JButton(new actEvalNumeroAbsoluePageOui()); - private final JButton btnevalEnteteActivetrue = new JButton(new actEvalEnteteActive()); - private final JButton btnevalEntetePasActivetrue = new JButton(new actEvalEntetePasActive()); - private final JButton btnEvalPiedPageActivetrue = new JButton(new actEvalPiedPageActive()); - private final JButton btnEvalPiedPagePasActivetrue = new JButton(new actEvalPiedPagePasActive()); - private final JButton btnevalTABAlignementAGauchetrue = new JButton(new actEvalTabAlignementGaucheOui()); - private final JButton btnevalTABStyleLeaderDefaulttrue = new JButton(new actEvalTabDefautStyleLeaderOui()); - private final JButton btnEvaluerATraversAnalyseStyletrue = new JButton(new actEvaluerATraversAnalyseStyleTrue()); - private final JButton btnevalNameInitialCreator = new JButton(new actEvalInitialCreator()); - private final JButton btnevalNameCreator = new JButton(new actevalNameCreator()); - private final JButton btnevalNameSequence = new JButton(new actEvalNameSequenceOui()); - private final JButton btnevalTextUserDefined = new JButton(new actEvalTextUserDefinedOui()); + private final static JButton btnAttribut= new JButton(new actAttribut()); + private final static JButton btnAllContent = new JButton(new actAllContent()); + private final static JButton btnevalNameLegacyStyleTrue = new JButton(new actEvaluerNomDuStyleHeriteTrue()); + private final static JButton btnanalyseStyletrue = new JButton(new actEvaluerStyleTrue()); + private final static JButton btnevalSautPageColonnetrue = new JButton(new actEvalSautPageColonneOui()); + private final static JButton btnevalNameNodetrue = new JButton(new actEvalNameNodeOui()); + private final static JButton btnevalFormatageDirecttrue = new JButton(new actEvalFormatageDirect()); + private final static JButton btnevalPlacementtrue = new JButton(new actEvalPlacementParagrapheOui()); + private final static JButton btnevalFirstChildtrue = new JButton(new actEvalFirstChildTrue()); + private final static JButton btnevalLastChildtrue = new JButton(new actEvalLastChildTrue()); + private final static JButton btnevalAncrageNumeroAbsoluePagetrue = new JButton(new actEvalAncrageNumeroAbsoluePageOui()); + private final static JButton btnevalPasParagrapheVidetrue = new JButton(new actEvalPasParagrapheVideOui()); + private final static JButton btnevalNamePagetrue = new JButton(new actEvalNamePageOui()); + private final static JButton btnevalNumeroPagetrue = new JButton(new actEvalNumeroPageOui()); + private final static JButton btnevalNumeroAbsoluePagetrue = new JButton(new actEvalNumeroAbsoluePageOui()); + private final static JButton btnevalEnteteActivetrue = new JButton(new actEvalEnteteActive()); + private final static JButton btnevalEntetePasActivetrue = new JButton(new actEvalEntetePasActive()); + private final static JButton btnEvalPiedPageActivetrue = new JButton(new actEvalPiedPageActive()); + private final static JButton btnEvalPiedPagePasActivetrue = new JButton(new actEvalPiedPagePasActive()); + private final static JButton btnevalTABAlignementAGauchetrue = new JButton(new actEvalTabAlignementGaucheOui()); + private final static JButton btnevalTABStyleLeaderDefaulttrue = new JButton(new actEvalTabDefautStyleLeaderOui()); + private final static JButton btnEvaluerATraversAnalyseStyletrue = new JButton(new actEvaluerATraversAnalyseStyleTrue()); + private final static JButton btnevalNameInitialCreator = new JButton(new actEvalInitialCreator()); + private final static JButton btnevalNameCreator = new JButton(new actevalNameCreator()); + private final static JButton btnevalNameSequence = new JButton(new actEvalNameSequenceOui()); + private final static JButton btnevalTextUserDefined = new JButton(new actEvalTextUserDefinedOui()); + private final static JButton btnevalnombreparagraphe= new JButton(new actEvalNombreParagraphe()); /** @@ -214,6 +217,10 @@ public final class create extends JFrame { btnevalNameSequence.setEnabled(false); btnevalTextUserDefined.setIcon(new ImageIcon(create.class.getResource("/resources/evaltextuserdefined.png"))); btnevalTextUserDefined.setEnabled(false); + btnevalnombreparagraphe.setIcon(new ImageIcon(create.class.getResource("/resources/evalnombreparagraphe.png"))); + btnevalnombreparagraphe.setEnabled(false); + + setBackground(new Color(255, 255, 255)); try { @@ -413,6 +420,10 @@ public final class create extends JFrame { btnevalTextUserDefined.setText(""); panelDroiteBoutons.add(btnevalTextUserDefined, "cell 1 5"); + + btnevalnombreparagraphe.setText(""); + panelDroiteBoutons.add(btnevalnombreparagraphe, "cell 2 5"); + JSplitPane splitPane2 = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT, rightScrollPane, ScrollPaneTableBouton ); splitPane2.setBounds(10, 10, 1364, 783); @@ -527,6 +538,7 @@ public final class create extends JFrame { btnevalNameCreator.setEnabled(false); btnevalNameSequence.setEnabled(false); btnevalTextUserDefined.setEnabled(false); + btnevalnombreparagraphe.setEnabled(false); if(listeDesNodesAllContent.isAllContent(nod)) { btnAllContent.setEnabled(true); @@ -597,6 +609,9 @@ public final class create extends JFrame { if(nod.getNomElt().equals("text:user-defined")) { btnevalTextUserDefined.setEnabled(true); } + if(listeDesNodesContenantPargraphesOuTitres.isNodesContenantPargraphesOuTitres(nod)) { + btnevalnombreparagraphe.setEnabled(true); + } } } }); @@ -1008,14 +1023,39 @@ public final class create extends JFrame { tree.setVisible(true); fenetres.create.constructionTree(); fenetres.create.getTextNodeSelect().afficheChargementFichierAnalyse(); -// fenetres.create.getTglbtnTousLesNodes().setSelected(false); fenetres.create.getButtonEvaluate().setEnabled(true); fenetres.create.getTextNodeSelect().afficheChargementFichierAnalyse(); -// table.setModel(new myTableModel(commandes.sujet.retourneFirstEnfantsByName("structurepage"))); -// table.setVisible(true); + + btnevalNameLegacyStyleTrue.setEnabled(false); + btnanalyseStyletrue.setEnabled(false); + btnAllContent.setEnabled(false); + btnevalSautPageColonnetrue.setEnabled(false); + btnevalNameNodetrue.setEnabled(false); + btnevalFormatageDirecttrue.setEnabled(false); + btnevalPlacementtrue.setEnabled(false); + btnevalFirstChildtrue.setEnabled(false); + btnevalLastChildtrue.setEnabled(false); + btnevalAncrageNumeroAbsoluePagetrue.setEnabled(false); + btnevalPasParagrapheVidetrue.setEnabled(false); + btnevalNamePagetrue.setEnabled(false); + btnevalNumeroPagetrue.setEnabled(false); + btnevalNumeroAbsoluePagetrue.setEnabled(false); + btnevalEnteteActivetrue.setEnabled(false); + btnevalEntetePasActivetrue.setEnabled(false); + btnEvalPiedPageActivetrue.setEnabled(false); + btnEvalPiedPagePasActivetrue.setEnabled(false); + btnevalTABAlignementAGauchetrue.setEnabled(false); + btnevalTABStyleLeaderDefaulttrue.setEnabled(false); + btnEvaluerATraversAnalyseStyletrue.setEnabled(false); + btnevalNameInitialCreator.setEnabled(false); + btnevalNameCreator.setEnabled(false); + btnevalNameSequence.setEnabled(false); + btnevalTextUserDefined.setEnabled(false); + btnevalnombreparagraphe.setEnabled(false); + + }else { fenetres.create.getTextNodeSelect().setContentType("text/plain"); -// table.setVisible(false); } } diff --git a/src/list/listeAttributsAnalyseWriter.java b/src/list/listeAttributsAnalyseWriter.java index 6b51ff8..780a9a2 100644 --- a/src/list/listeAttributsAnalyseWriter.java +++ b/src/list/listeAttributsAnalyseWriter.java @@ -64,6 +64,7 @@ public class listeAttributsAnalyseWriter { case "evalLegacyStyleParentPresent": return true; case "evalTABAlignementAGauche": return true; case "evalTABStyleLeaderDefault": return true; + case "evalnombreparagraphe": return true; case "analysis_filename": return true; case "auteur": return true; diff --git a/src/list/listeDesNodesContenantPargraphesOuTitres.java b/src/list/listeDesNodesContenantPargraphesOuTitres.java new file mode 100644 index 0000000..7004bd0 --- /dev/null +++ b/src/list/listeDesNodesContenantPargraphesOuTitres.java @@ -0,0 +1,45 @@ +package list; + +import cXML.node; +/** + * Liste des nodes contenant un node paragraphe ou titre.
    + * + * @author pabr6 + * + */ +public class listeDesNodesContenantPargraphesOuTitres { + + /** + * Liste des nodes contenant un node paragraphe ou titre.
    + * @param nod + * @return + */ + public static boolean isNodesContenantPargraphesOuTitres(node nod) { + + String nameNode = nod.getNomElt(); + + switch (nameNode) { + case "page":{ + return true; + } + case "style:footer":{ + return true; + } + case "style:header":{ + return true; + } + case "table:table-cell":{ + return true; + } + case "draw:text-box":{ + return true; + } + case "text:index-body":{ + return true; + } + default: + return false; + } + } + +} diff --git a/src/list/listeDesNodesContenantSaut.java b/src/list/listeDesNodesContenantSaut.java index c0ba502..c651dfb 100644 --- a/src/list/listeDesNodesContenantSaut.java +++ b/src/list/listeDesNodesContenantSaut.java @@ -1,10 +1,20 @@ package list; import cXML.node; - +/** + * Liste des nodes contenant un saut de page ou de colonne.
    + * + * @author pabr6 + * + */ public class listeDesNodesContenantSaut { - + /** + * Liste des nodes contenant un saut de page ou de colonne.
    + * Les nodes doivent avoir comme parent le node structurepage.
    + * @param nod + * @return + */ public static boolean isNodesContenantSaut(node nod) { String nameNode = nod.getNomElt(); diff --git a/src/resources/evalnombreparagraphe.png b/src/resources/evalnombreparagraphe.png new file mode 100644 index 0000000000000000000000000000000000000000..6adcae9a088ff2630c504ca283d6cabb15e2c043 GIT binary patch literal 1097 zcmV-P1h)H$P)pF8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H11J+4I zK~z|U?b%<5R8<_n@y{9e-?Xc-WoeeRn}tYHX@4m5p@hN*h5iaX6hT1|A|^p41=&MX zk|Z0U5u^|HhXn~MDf&ZJm`ZC8{kJfMsMJgYopIfrJw2>jYC} z@BPj1oz0ttnM8Z0Qip#G{yvQ56zP zfPx)Wl+hBua;1BBs^QW!R)e zdPW8BvksGr%BF;N>xqZB)>C=h^?8i>Q25;Ex zLG`Yc(}BxsV;y5Ws*K{^Ci08v{eu|Gl)s2i85Nr}#Ej>Ynyo3m2l3;Cc5e>$DOCmw z-*X1JFNYyJxO`6>CmZW6uAMZdX32LQgYZE4l{iLI(`T}AZ99_Er96ACnpCErG2G7Vb^ z2l!&(f)GMo3#;#>FR9ZmSv{sySNdR#bBml|(#6CW_h1h;7oQIyjA`M$Xf@$7{9 z$LLwj&Ky?^jN`Q+^+i0LS+f#`wk~v#&vAW>aaUFB5-1nx@e>m2UZbbLiWuW>Rq#qB zHPVsh53!>}-3Rn`^KDhE%8)9Z=k1r3o{#(br|}=EVpWDj=@3F4w&mHDa(yj6`3@m1 z(hXQKw|`kWgrBJYg_VjHQ?(*BJu<{~G?%J-7E4rl4Vu6S@sWI_oRY2;C#7_`^>pY= zsQ9|lCL*PIVc&H->Kp9dAXUM7v?dBAoi0xkmg0QKwT!9PW%U P00000NkvXXu0mjffM5)1 literal 0 HcmV?d00001 diff --git a/src/resources/evalnombreparagraphemini.png b/src/resources/evalnombreparagraphemini.png new file mode 100644 index 0000000000000000000000000000000000000000..ebb186da79937842129d8d4823e5353ef789f40c GIT binary patch literal 624 zcmV-$0+0QPP)yE3*njk*(;!x>T<^75CyvCP7~IpX4(llgJOuk$e~f_?p1q;>R>3 zgfKY>X9-~r<92@j(F9%+=L;budyvg#JX7hh5<`Bfm9-7^i010bw3rmw7)8yyEp0t4 zXNRmZ4C0ApZm9N3n^6tv6+#HsbMPdeX7gi=&}2<0@-nqWkZCkk83-eU-aK&}+hR{@ zfy`nWj!-@EMc=VYc~7I3=lg6Joxm5N)_bJe`I#zq_ThoQYwQxAyJVX_hW7el1D)~7 z<#HHHB~bj1YZrKUncCIVkFY9)@Md!qojS($$zGw)N|dG&kn}8sppNrb`4%_#gvwv# z?xt^Y64*rRb%x?qXBb@JTyG&8ZHB;py5kkc`B1|l!u>)75{F&1ypGC=`~~A3w7m}D zW;)|zO-|%hkNDj}FZ5H^&z(ZaX9$#1^qZ&MF>DFBc@rq6<|56F`MeWN+(J*G0?GSe z-ebW9rdc%3&}n)q7=>X<$EI$mK2s}fApiV=t{BCPgDP6+-