From 3f952801afd2b8466d0502c450cf8a493e4ecffc Mon Sep 17 00:00:00 2001 From: halw Date: Mon, 28 Jun 2010 20:53:45 +0000 Subject: [PATCH] Author:halw Date:2010-06-28T20:53:45.000000Z git-svn-id: https://svn.eiffel.com/eiffel-org/trunk@633 abb3cda0-5349-4a8f-a601-0c33ac3a8c38 --- .../_images/contract-editor-edit-icon.png | Bin 0 -> 1548 bytes .../contract-editor-edit-icon.png.data | 3 + .../eiffelstudio/_images/contract-icon.png | Bin 0 -> 1619 bytes .../_images/contract-icon.png.data | 3 + .../_images/es_ref_contract_editor_01.png | Bin 0 -> 11340 bytes .../es_ref_contract_editor_01.png.data | 3 + .../eiffelstudio/_images/move-down-icon.png | Bin 0 -> 1477 bytes .../_images/move-down-icon.png.data | 3 + .../eiffelstudio/_images/move-up-icon.png | Bin 0 -> 1479 bytes .../_images/move-up-icon.png.data | 3 + .../eiffelstudio/_images/refresh-icon.png | Bin 0 -> 878 bytes .../_images/refresh-icon.png.data | 3 + .../show-hide-contract-placeholders.png | Bin 0 -> 1612 bytes .../show-hide-contract-placeholders.png.data | 3 + .../contract-editor-tool.wiki | 61 ++++++++++++++++++ 15 files changed, 82 insertions(+) create mode 100644 documentation/current/eiffelstudio/_images/contract-editor-edit-icon.png create mode 100644 documentation/current/eiffelstudio/_images/contract-editor-edit-icon.png.data create mode 100644 documentation/current/eiffelstudio/_images/contract-icon.png create mode 100644 documentation/current/eiffelstudio/_images/contract-icon.png.data create mode 100644 documentation/current/eiffelstudio/_images/es_ref_contract_editor_01.png create mode 100644 documentation/current/eiffelstudio/_images/es_ref_contract_editor_01.png.data create mode 100644 documentation/current/eiffelstudio/_images/move-down-icon.png create mode 100644 documentation/current/eiffelstudio/_images/move-down-icon.png.data create mode 100644 documentation/current/eiffelstudio/_images/move-up-icon.png create mode 100644 documentation/current/eiffelstudio/_images/move-up-icon.png.data create mode 100644 documentation/current/eiffelstudio/_images/refresh-icon.png create mode 100644 documentation/current/eiffelstudio/_images/refresh-icon.png.data create mode 100644 documentation/current/eiffelstudio/_images/show-hide-contract-placeholders.png create mode 100644 documentation/current/eiffelstudio/_images/show-hide-contract-placeholders.png.data create mode 100644 documentation/current/eiffelstudio/eiffelstudio-reference/contract-editor-tool.wiki diff --git a/documentation/current/eiffelstudio/_images/contract-editor-edit-icon.png b/documentation/current/eiffelstudio/_images/contract-editor-edit-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..4c8bd97815effefc5b87c5059af2893ed98d7a59 GIT binary patch literal 1548 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9Y!3-pyxA2^1U|?nl@Ck8cC{|^d#=x+Xf#E*` zcj`5s#4~)chxyWP3PkP_i9aSDvqL=PqEyyx`Q!ug#qZUk7Hec5*RT3$SbWa7;e%!3 zJj<$U_KlyMn(lhuVekTi)-T>&Py9Q+1OzYyPka;A_cdnb=eP-9v!{J4E@r5zs;Zgy zqhaCCwzjs8j*iY{zq-1*dU|?#dwcu(`X&Lv>R&*&Oq<3qZQbvA^X4sCes;;$KdV-) zS_cH{cW(rN-J3V>-f7FQb0@>zy=V9CJA2^3fg?xG9zA;W+_`gCE}XdI$#CZm!_#N~ zpMk*tXV3pXfARmt%l|Kd=+*yMul~P&{r}CI|8L*^fA{YHyZ8U!1JQ^7AAsoN|BpcQ z>HjAX`2Xqi|Ic6kfBE|Ve<(1(M!~QRfy~4Q6$}iF3?)H+!T+fM7^q;zKp9c6rDhW_ zqB#pZB8wRq_>O=u<5X=vX`mo`iKnkC`zRtk3pDIQ5h)C1rm48FQ_caOwTA`Si^tD3Mk447A;Cm1SwT0 z$;?ekOEGf%yMMv? z#?+e!&A;l|ZoBwHrE%(kpZc5jaXdGc5iP#B;C?c@Vgc8Ssyn%1EczB7qUPJ#yxYEA zL0m@gR*};lSLP?t{l{-AvS~^*&N=a5>&?x<&TmI3w;*)X1 z2b0QA=9Qmpsz2LRe|D+);%;5w(euf(?rT89x0soqV}*oL1qCzOerEIX7RksKDJxe7 ztEJu0^S4n)r_m>%Sy{PRSHIQHv9-0eLrJMSthl?oyT{wVCnB~_RdwRT ziIcL5Cwuu#2ZGhVXC$W2G%%dy<~CPff9~A5^9xHBT39Vi%UxMmv9h>&O=R@i%Et9s zIUD!?*%Y6>rM-X4mS;Qa+IE*!@0mPrZ$-nw=}QhC{eQTz<7jpD(U}X6E?jf;>^V`#>-<~z= z&VmJZ?|!>?{Mx+>kM2MG|KQR8hnF5aeDL$(AHRR~>i?_P|6jlP{|1QO z{(lQZ@BY7g{qr4=eEX?_wfUrh zg6t)pzOL-I*klBR1SZe+UI`X*jVN&}Ey>6)VpzHEj0aGNrvxbEl3JWxlvz-cnV-iX z%&Djh6z2koJLeZv7G}66k`J^3&||WNo82^?vgq%9k6-2IEF|}P4;kL=i%hs zI#Dj{m66b)rmn7li8nfH=dR@yZEfr_u259E_f?heWAJhxuE}!^nuT>1y_zNUMlRUW z&`Br#5Kq~H6DfyJ8mBMQRQK(;7BWTjF?&}<)wwyA#k2Cu<6~k`*b6NZ9im$h#XGy+%{<+CT<*ewGC(R97QL|^A+Tp15NV960RNu^8 z1=Fi@6a+5@aZ3v`*DvTgcFb+UTTZ9SV`b;Ec6IhTnCh-k5Nzbhm6bQ&->_@dr%z=Y zIO;cTo$MXv>nIxF%Wv%Avcyu$e9PXgD;MtCvtquWijunSp~FW{9z1sF$f+|Y7=#>| Z878bvljF2rvmO{m44$rjF6*2UngB;o1}gvn literal 0 HcmV?d00001 diff --git a/documentation/current/eiffelstudio/_images/contract-icon.png.data b/documentation/current/eiffelstudio/_images/contract-icon.png.data new file mode 100644 index 00000000..87ced1b3 --- /dev/null +++ b/documentation/current/eiffelstudio/_images/contract-icon.png.data @@ -0,0 +1,3 @@ +title=contract-icon +author=halw +path=content/contract-icon diff --git a/documentation/current/eiffelstudio/_images/es_ref_contract_editor_01.png b/documentation/current/eiffelstudio/_images/es_ref_contract_editor_01.png new file mode 100644 index 0000000000000000000000000000000000000000..63ee01364246bfa8545b7b6105f17f45f18beedd GIT binary patch literal 11340 zcmb7qby!s2*Y6n`Q4pjXq@+U{1f`J_hDJ(|9J(ZC3?xKQxGCb}jY z+jzm8V9$YehUIXOM)>ddzFv0rz#;ba#(y#GYi+V^naTaWecyjQFZufm} z{XX~tYtmmXdMtk)mnlC#+?iK3`LxPG`$+Dsb*ddUOF7 zOD?AS`2u`Wv}tZQ@*6V)Z-HN5n)ywrNt2TC2L>K>c#ZI4LY7}`z49B1ZMuFP`i2@j zBUnD+U$<4GB?K>e$}!4iYccu5T~9E3KK}f^TuIw8`Av33+W}`<{D)0K{mZCK|I@L8 z_sV}aUoTcy=j$@E!f+MWfwXmaI&&To+&UvZQq8Js=kd`Q5ijHW*mz32~>Ry|wTFp`dVlsvEpr_u7&KWX(e6&SQ)) zN|X~d)Ao7rq+`-}r^@px| zSF-ZOwK3NOf|A*#8l?w28yjKLReSX{NnnFBk|VP9^gUtQ@g+A$B&>1G!4?T!k#Cz= z(Z`lpg}&v6&CDJ48JHJusel>U?peP#j== z`n|R@TBN|N7FZpG%@GCEdVc-!?k&0gY>>RfLUyqkV6#IrJ==0~xsywzyIr&(7D zb&4UkoD|97oA)ta1@#K?>G$OO$&1a3N|J%IXhvzT;Vk*=4F7SI`MiTxjXC=MnE4y{ zH%CSU?ZX=TbV>|wV@6NFX62BLt71x0nYro-A%I|8I6JSqn3a!z1<}xt6fxUR#TRoJ z3|P{gH4Gy+a5eg)gbg4B$hBJ>X<6>DK44<~wxh0S>B2fd;RU?|vXDE@^ceqDwaq09 zR5e=P)O1?1^)%D?>FMGv$)Asq_ACGyHh6XZu5Km+u_Ky@XQT>{nA`?cCTA_CaG=BI zKtK}3Tf{415m1$@iPWrobmR|lR!w@RgiU%-v9w3H{3Dvb?wk7@PP-*&JP;2(xssd% zcHN#pZFvo#J%+Y7ig@jKtG01Rvd$;pUdf;TlDaan?it3}RYjcWYgITiItE4`pS-Wz z>K-dLsxEpx?uYpSvYjJE?0!k|Z1;DoSkrmqS(vrE7P&@~nYnrj-))e&;)I^fcK6bj z%v~dE@DWbm;f_xL06gW-G&KqmvgW>)stIPeKz1L1D+=JTnF)dayj~5vcdNlOa6u$+ zeNlJ>DkIPyyFZR&(gf@L!B;wDu<(m6lm->p8q! z`-i-VEaS!HVa33XY?@5T`TE_ZycllX7kqx}c2y^j)DkG>-TIMHDg`h8aZ#k(WDZYx4&38XdBPK?#TDQGjQyiJ2gRtP;g+Q9lrVc^!0!~fNhYA(s!^vm{$Sbn zFP!oG;=uQg3*%&^DpLoa~P`*go6u*C)@Cy1MYhFg%rMu_FvwBYFDGaNvbeHl_`Zjox`W zP0rZ}pO|7vR=>+Cb1{}YPrMT($^5P;>d_NLWYH}vOaE!A@gSy2?ffU>t zbjwEOYiN&RFB6Wr)Ls6Ly*`Mw%bk@|=+*OPDBY;q3{h(7wrIIQibc8Bvl{rAhz9{7d+CO+m6l}}$ zbK7&?1X`Z3v~JZP?2TJEB*?jQkQnSn+C z>Eatflq7(7CQ5gc01CZ@hx1Yq5fMOw5Hi5#KfOq zgO-w3USGeoXFt{D=Vef0}zVKt@N0Q#*sV1QYcdeml8&Uy;QaGs!`$zpe zRj8pMqpY8ne!}|t`u@HbyJjJJ%_l9QwC(C_C|z>6v4Ac81};F^kVVTkl5{olaBFME z5<%KjyaJkRib&5Tj)R=MEqW2VL;}jF{%D1=hsRz1uC;0LsP3!4UMNQ2? zR_NKTN7Jql^_UfoU3SS+D>X^Kku%a<(p;Hb(kRuu?Qp}-35xFSJFBC421SPV>9y}c z+%Z6rAiFecCUP00s@0FgS5zKy=j>Sestyh0=ViJ4Mff0Mji$#^Uc0YtqdN*|o~Q$>?w3y*|^6Qd)&TMv@zN}@xqPT#+y9zTTt`Q)^D zFf3c@IEh0m;hKU(ezl%|qhedWA^?yrWS@6niHa`aIM96U+5F{sX5F59bcJ-@LIFW` zG#VWEJinISMl2bfSV{XRpP}CsjxBgRg6d|ulj=vopL? z#xApJ(s91iX7%*x_f7@!_n>#YIN1Zuj53GD7%1QxbM>I3&C!x3@Xu>DB<@Q{Q0ULf zx<6|WdQ2^p@uIs%aKJPB4$$6`MQaz${?U8yDa}a{oQwJi`_yPaxE@y`F%7Awz@HY4Gv##nD;4Yw4@fj5Ras$?SQLY{*E~sE@>XO z?|!1mO8stpVuFi;m>r2ku5WD(RWtnBu}bZxjC-W)#rk1;qsRKj<(79w84tD0n={g*6z8vN(&(P zTPDX*JXEs&c)hwmt6hdK1_Y;njLGbLD@sqBPg4l$DWJiMVhyS!N-+1a6S}Tu2m8(X zAGsr&e`V@;&V zTaI`|5+ha>=83KbcF^Xn)S#Z0*tE-^SW*XlnY~fueByC_7PJ%N=WBT}>=L>+XK!`! zZSbAZe9)h@!bkq*I*}az2)0k|VyE!;xl3|qjD{R_qt;U$#!nC<`xuiF-Ldv z`L+%U{q2^MyU=a#^09%g zY@+UElXd((43*3)%mkVY26#@0|~HX3rX#?yWS6xMR`lsK{oEwwjt+EhbvJ znhAt_6Ez~22Z;prN8>gTUNts~33r=GN@<|dYOx#;rgF;_HM=;wmv zdJ8*mQ;X4i^_^=~ zVb+e_$5kj9FdD>?CdY$B!`@ zm)VbzKB{bJs)7_|{axfvGFw;Mw%4X)>{5nh z$oDJG`f5({#_HSmhss-W7xUQm+I`U%3j4(D#ygbGpn`w-LPYSo85bdmq_qZ zRo8U)mG^~dN4MI;PmlVw*tpPNJI@DHKl~BDPzW*S)>pw6ww8wVm6OL_2F>n@h=r4p z7#SIKo!Y$(f5qqfVRzpDQW8)z!pZ?!?)w42cZt zTZNq283#?v%GJkwRa{ROKau4KU69aR&ZvPBJ+MSr3rmGw1Z@2r>Lp|Zomj-TZ{OrH zdYj^r-yA2uPmVdjnik$gf6V<57d1_3%X0PJ{9gRhTbEK|0-Q;!$7S17eJ1lpb1|_p zfop-V8`BkwMURC-a`Ilcs%|N4ezE#F8aioNb~~@gpv>@zti^T^Z=!89ll%*xzpJCc zi~xD2lxN4%dhR&dUoa4Mb~>q_`bdilT7aHiJ1q;?0a$YnS#&Vf;u9gRlfO4`B(0eA z`BX~+a!Xvh?C+|n@}iXX=AJ2fZRhJj#VK!ub=qjef&Ax=u14PB=F&C$(#hb_pn%)!sg5r-#%n>H)~jQ0(NYyrklhM?sIRVZ z>>%d$vfs!-@K4yh@bV2eK1_eYkWts8*5j5PwYmg+XiV3`+JqnAr7K|8=N=kR3&%BT7pX=(5K~D}w#>J(jq1emgK-tRH z*10LaKbW0HTKCWR4s)#KWm>9%U3;%-35b9OuTJ0eZ?9)t&zEXJyGeYCjMWXgWI5ik zx}UM$gEl<9NiLA3TXFL9?VcFs7y{-J3Kgw>J-x&8{yd?(om08)@bcvayWoqqA!C^& z0pO}$LBWbUUL$mE_`LKKhlTUkg8OKuVXCIN1oojmrD+m+t(t$JlK&lx0yZrC)dDa3 zjyvICKPagrLCY6^`pBV~Wyp1`{&-8!oSEOGB>X&`CGZRK$WLV}uP($wK4hgZJ2mvm zmr{TA$L!zmpvrYnz34jUFd=IREkSqexGd>zjzk>10*wh1GOGMktV6s)eldJB8P<@{ zx6K(fGcpQ>^`zl0&d%Qk2J9+Ke0{}t2+G+>zoPTg1sRM*hEkoF(`^s{Ko?nvjvgI; zno{?-VEOr#)ZzE^G~>42(R@is-L}(lmQWj==g+yxrEd6_w^#AfgMW6KZA+E5i(&E8UcJ$?OAG`chB>N=|oJ?5O{Vn$;#en zonmOI?Y%PhVp}@M^W~vsX76jN>1x2MlFE{;ve@dfwhi8=1g+spI2xUOpsBfYIyq7_ zsS&wTRxdnD3czMelGGEJHnhYNyKOb??X53TMtZpmQNu^_t;6$-uCI420|Ns&C_dT; zZcbG!c%(?aIMD-C^aUIKP@sLgb2c2Nukva$^qKKOfxg55Gb5<8Sr2VqfxVV}wHKXT zw2`3QdS=L{KZNtiNkZK0FBXp{8-z?hn$CVbnNCSdf+pfv_JYtBI>u@Z%o<9wMBL6} zdY7l&6E!^3OZ)7 z)7rrOrNmlQCIBdkJpQ~SJs z)qZE&1GXw4kxapN({OlhVg+urbCMW?kpe=|Ge6WG_`M%6qYqh}kx(-G@Fh+?I!|=e zbU3|l+-UH|#|YjxA_w2YXf1;dspyvK*zUCm1?PuFcu`zQ`vo5>w|>5z&$BK}h5+OG z@z#*@Cq-47CD&XcEc>qVV9R=<|w0PVNES7^jSNy}ljL-30}x$4a%SMV2ZCXPrVns z-1D6@1ah}h;{AVsXsOO%x@1{HLtwcJB)9|1q$AK!8NLY5hw(e*F zw;vB3vpF!c@CX;T7WQz!&SHegucszD9|9omEjIjE-gHj0HH%ooNw~Qa0;s}BNz-R9 z8pmty()Ka}iW1Qw0P{rHSo{Dr;;tnwTBNO%4n(lB>|YSPjZ5BBZ@*xYY>cas)s=bz z0V-cs@uYZxxLddN*2Kp}JB}W{06Qtkq`Q7sb|=K(a2TiQbqnXj-28XXog_iVI4Q8H z&jn5I%wi3CXrC(H0!1}ZI$Iuiu)MtNkded|4nFO+%rnBhx3=EY;oySvaOdB7_{>7c z`kjFY0A7<8+V{mn1Q6gyw~XXLY>fycydF5k5>x{c?sIZP;@1fGqoNE~M~H9_L6ImZ zJ3UtD;qg9xG#=jn!RL5l4{+4|ODGg7#|IATK(J1sJ&?+)uN1%Bd7KwjmLyasyLlEf z`W9ay&8pXcdFIF0JD$xrKmg)^_fLir3&QDhofF+{1+DYg(Qv=x!ikB|j-?-s`i(A$ zYhQUaw3WL|@=#{a+0t)O6~_SpJJ||UgMRlT*`WlN^F5=1-|I=^@qec+N(CLzOAA(X zBtOQ{SsWTLf(A*ACw8BDIwUnH$Q!0J&NE~LkJG$DX%uC(&SOTu$3UzmC-&reUe{RL zQ0*}QZoRjkZTxPW@Ea93`WX)2dy*3VL?B0kRI5&N6yMd(fv-TiTV^WRI!(>Epfu~Z zakNM>2KYXVqmC=RJWOf#zQ+-nA2B+~%OLdiej$f=q)O^rxAgH63i2yRPJ&6;IKS?x zbS&*$=~a=!eTk#&?QS2-oN=%H-7G9~ zzwyG+fN&>KbaZ<3c$g0}u3$A{S-G(vk3MW1S_gn`*0L4o_rF^1&1xT}5;%=`GKJRo-~I;34A)Is<-!f`oHyk$#a zG^FlYlb%B?9Ie@54*-^=F+lbKC zYfqw5ki6#fs5(-v6~$g`k% ziy&F)TA+BM&K>d>`Y6adY)b^J!U--kr;#5Ici*xEz3S#RPCfB~#BSUT0P(XUQ2cH_ z(^UzKuzr3+u9b=w05sn^)%UMTz$H*LZ0YCt_$Kn`!Gdce3_Le|o6g3xsclb(AoR5O zMBt4JQcp&I{e}D@557j@^`#r!At7MP|GO&muOZc6le@L*z`XI$1}cJ*7L(hF7=NeW z{lyX6N9TE=l-L8KPu&iHfQ3LFoqRN*UiFF)D#|_$7F)-CqHwI6>To9KJbLv}>~}p) zcUw9$Glzuyqh=-vK#yLtkWA688G*K3ilEa<-V%b8IFyOP`dZ)ixE9O~p%1@Y-e-tO zA2?=_zH7VWtMDepQOn=d>*HpDQ{qpoM?qByCET14*f0EH2Fy$k)hl*T#SSqh#N07E zaFvU#cU7oLD#a7cXzKQgPWA4)&t+eoh;#8#j2&iH=j-X+L*!OA|v{8QUDbLYxr5ueX~YLjP|Wm-S$%A&hAeH!awBtT(zP5@lwfTO1F zQ_FQdhF9YweQ!Ow)IxW>`4ZKb&G;FSp>6K=n3cald&Pr-rnNpL7E!9B*iCgl3u6ttA#LxpiBClS z2EFE~J&-$d*HXTfkH)z@Yz5m+q$gCe_aV6NP&*%GXIqe3)xT!?65Ge@Y>zD&D4|(_ zIo!+3BL!LY$sz#lCU6W2oRvlEJl=B%eB=ZK09m3V(6%B83h~=b7IR!_Kx4duT;EwD z`KKQEOYOgT(*INpPnS#qjX0ChHl%SJ2fOG58o6(D$|QcMus9;64v%Bo^S=F&Lwpb4 z-Of1t8;o9@SofTvVZ zQz#IUi%fhG$B`>}ir2Ju7>;J5WhMiE+7|rj5nHy{cQeF>S~LdLyZvbG*#04{hDcLTJ_P48 z&*u#2YAT$8cLT1?!$@=La|cchQNLPq%P!fhnD@9%UE?L|_Z;rr@im{k;V(^!@LzEr zfZ5Y-zS~{-)p^zh1JHsH4QJ6Irx_Se2j>2EEy@)KeHV`m2S~^obAp&;A0Mt2NLu-_ zxb0853!-lX%xWeUN?f%7q#Ys^?sT*^lnAYwWWVnc_*&dX_@3+odV%u zo4Qmu{<5;ef7hxB9N`ep#!JHu32E&W9~$o&tME0hSjnUeec~P;$w=uB-IU%chu$OY zkwDiP!Z)&~cwWK|+-^W}y%)fz(Dt2+WX;d!5eQ4zP!lg6plPh}9{2Xj&pWzhW>HdB z?*!AGbhe^hYZ@=}X*aU_)Q+u=@3d?j?`b- ze-81(rAjr%=1G3tOQEODd6rC*FVZ9=8$siw&^E^fmvNF2$|m=3H%9JEW+M2W&yh&uDcg3MOB5zYEN8$coxr z>0ABw;I2wdx@}GKrNWEzhf(MP7UQE=KR$ zN{Ea)ZwR_mNTv;4ZSx-p8@VbFvP^LM;imWzt3Qc%(n0wtRcsY_)@2^teD>nauZLjy z-QbA;fVz{bBIlt)sW20q=u{#%*=z2Q*OAc$YF~NV8BLq-ysqAxrd0Vw@>lI-dM`A$ z1VQZq>h+(50IzxSR!%@=B49ED8eUqH0e}+8_O)yKuOR%*&B zeBc+MRM{ia=^DVO#LWJ1e1B=c&FD|BV@T&KmcjMMf%W-9A#Q^)feeW z5OR%J*pHae_iASpG|_nsb*<{kd`8VDf8ur1ip4$Bk}mokl<-j;0HSZbxzYOPtM_W^ zFMRTx?zTHS6YaT;(qs5OGp#TFPE62_Q&xU|Iqk#3)DW`4`HT$=Q>r@?Sn_5*zF3@~ zI>z{0{gaKKt>(qbAEm&$Uxh)t+yPp%;_s-H9}}q(I6fbr(kz}{d{kbc?&{hU7oFg6 zeR@nD^>DivvfF7Wry6(yKU*t2?LFUaa_^3!GSfwPe)AJ;F1M6Sl!d!Bc}{Z`I!T~z zOt~}3LjXPNo&zLd9_>I=bkI{mvmGx^J4dI zS;_VlGvv>k>$pz4Jlx#zYrQuM7^K-AZBB!w&&SDvm#SN%-}@iS%F4R9xU3AOR@o0E zX`xU}XDcKU@vSb}c|wsuwMQvkgtdMsdmr~hGxmeH+{_( z0(kZPZPt`Ky0f=CY_y@~_HOcT<3xr)WP#(W7*b5ho5#-6Ri8#us2iwUgJ#pbs;op9SQ0>qh+ zf|g6$(3NjDo0Z%d_tYMhA^b+m9*@3iSz`q{ssQ|j5u9@P?(hwkIAoA_cSjgW-sox^ z=VK5%L<~}UVt8K<DlF(-SCw%zZ{G(lj<>K8691Yo_ZvcI2=W09GMn*-bs5mIz<;j{XM0YFii z*TDqZ{lK-3a3%IvX3!_e56XnmQHQSA&0uU zs(T|ohYmfWjV`4Fo2{A>(&>apkbu5lFKZX)2yR6fHy+VcHoDk~VC)x+Bx#B@%T2rO zr2#aPb4#i4YclO+A;u9+QhX$v>YC9@3^JvLzLV$D#2-~`-2cn=G;Lq z39kBns?hCbs#)$yNqArK(mGwm{9Sa0V5Io)F|)=KgHl!803PmeF#1mZ42negzIT7x z+)?&TKl@7i=6kSsm@gqF!$#BZQxyJL5ntJ@aD@ny#8BE=NsnR@z2|@cT zMnLS?a61$Tz_nojy==MO;Gl!t=F*>f2j5pERCtP25< z^XC)39_7Vtqwo(M&89?vwa3D>Px{}R=KhD35elat@e#zhW)1OuPhPTbv*PSo@@ZH3 z_PeI_&sx~UG_*^&!W~N!fFe`eJMblGr!A?<)+!^)bM=(aB+!5Pv^5>OwT>g~@CO$W zonT1P?$g0snKGvuoL@T75a_!6tD;{Omx0vcIq zQw95~3m-ndzea2gdILbIy>uc8oZQ6t9UD#?!BGo#%c!-=y*xYS#mWjiNz|-if5H9p z@ouKNdF^z0(V?PQgJbhyuX*iJO;JH}&NPQ|>=$#1p?g=8CTRoTWMP;_N;ZWO4l}2u zd?Cxh_T(BLl=32PjJ?dn9Uw|`=}%C=s!-7bpmf?}>7#vb>-ghyv31M3#%RA`PxEcQ zcx~b#YDvw_$suqAs$bgYFil|{sKww(V&nGr77=nuN-)pCGY3>n->Ra=1C{+<@l2Nb zADEF*d-^wb?|*9AG3p8;6l8#$(!OKW&~Bh7Uj3B82x9_nD9wz|JW>WR#Wgoy8WEwQ+)1J5Bpt-5A^VkEUCV`zn`MOiQGZUc(sC}i95P)(gdWDOVz ze>z!o*_*uG-djx#%n{)U|DgO=D-pUq5K09yyNw)2Q;ZN#ur>g==75@bd-E~zD|z51 zasBm{wExjE{|~D9|M@DcIv+$R2rHPuA@$V9K%Mwn3c3e?lK$TaY!pivXI3n}kzun1 PQUMJW9p%zT*025-?P1WL$e=%&!C)GL@mvP8 zWek?<80-%*xLs%PxXI zAr~b>_o;*(R0%sR7jaZ2^0><7%a^ZQI01CnC>RX^I)^~|!yGg!zqqQtSZ zBqP6wVdc6r9zY?U5}=SvYH@N=WQ0!XYD{Sc8LDcqU2PDum780!<0Ga=jNv7l`woeGi^Umj18nL zB(o$Zm0`uZOX@(83Qrfu5RRF?XW03g4R}~DFr-eMxb2Okm%@dlclEYD93A?RpDs`L zy%x>kH*e|1*;*;N!QqWgw+xQewECa5toOR`A(T^5=Cq57=kLQc?Ba}ZJO4b-G)dTh zkn8)6sr(1@mTkQL@JCzdesQ4>8dkg_8zvoPyucA-v6(Stt;Cy)acNROH!yg*`njxg HN@xNAtt7;E literal 0 HcmV?d00001 diff --git a/documentation/current/eiffelstudio/_images/move-down-icon.png.data b/documentation/current/eiffelstudio/_images/move-down-icon.png.data new file mode 100644 index 00000000..b33052dd --- /dev/null +++ b/documentation/current/eiffelstudio/_images/move-down-icon.png.data @@ -0,0 +1,3 @@ +title=move-down-icon +author=halw +path=content/move-down-icon diff --git a/documentation/current/eiffelstudio/_images/move-up-icon.png b/documentation/current/eiffelstudio/_images/move-up-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..32a410574532a9d0adade1421b85968efc375638 GIT binary patch literal 1479 zcmeAS@N?(olHy`uVBq!ia0vp^JV4CP!3-py+uy5ZU|?nl@Ck8MNMle0qI3quOa`S4 z2Bj6mr7#J8CN`m}?|C0b1NKiXel=AJi z)B(l-XMsm#F#`kN5fEmas?8@26l5>)^mS#w#U{gNrmM3!BLytv8d2g{T9T1p#ISPR z84sWkPYF=SCAB!YD6^m>Ge3_(m{U<1D9!~Ecg`=UEXqvJC}CK`f5r+Z$_ExLN=*bQ zRVc~KO=U3s&d&*y;RMM9=ckpFCl;kL#1{MqDdz?oo>`onlL%B=#IXIqmVTfx2S_+P zu_!MyFP-6l^s{!L7&}CNX;E@2!`J`KuVKoZ^K)}k^GX=Lotd^DD8>d-7Lr+#lghB- z-6eIPNR_9HV+hAg-*dVAO$s8c30G=Pn;7$Qc&i@%@acbjyg1w1&kys?pDQct{K>tM zU5Lp(pembrLCSd+8x2|UaK#0Qw|AvHXgHc4o$Ja|@;!EOkwd~l!^^8(dH$A$cwPN^ za&4?!(5X}Y^V1bw9v0RVp9}7{@#YVdspJ01)N@-RuK(teDxfPEJYD@<);T3K0RYek BzRv&v literal 0 HcmV?d00001 diff --git a/documentation/current/eiffelstudio/_images/move-up-icon.png.data b/documentation/current/eiffelstudio/_images/move-up-icon.png.data new file mode 100644 index 00000000..3052edbf --- /dev/null +++ b/documentation/current/eiffelstudio/_images/move-up-icon.png.data @@ -0,0 +1,3 @@ +title=move-up-icon +author=halw +path=content/move-icon diff --git a/documentation/current/eiffelstudio/_images/refresh-icon.png b/documentation/current/eiffelstudio/_images/refresh-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1fcae4ee65196b037067eada1cdabc34314bb7bf GIT binary patch literal 878 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!31J`IJFc=v6Te*1vC5yLGuXdTA&DLfk$L9 z0|Va?5N4dJ%_j{MWH0gbb!ETBCc`hywZif3b+C|YM2TZ*Nk)DV!^(AMJb*$xB|ssU z)Z*l#%z~24{5%F>PDN#)I2TCVIlrK?C^J2ygkcT;87rVDA6T>~H4&s#p(HammBI8o zKPOOz6C@LypH@=6B>MaiiQU;j71hADH-&&^HED`EI{X4-zB7#m1gNM=b+D#MC*m(&>;nAAO8 z978O6=T1KDFB~XwbiXzKGUF|&S-QE)m5#cb9AfG@f2DOp;_V$F<#`?T44j+H^iozA zK0MUhX{a`1g`-lVL~BFu#?ICfot3U{xQ|HQvMRoP?o4Um{L5_`>7}2a{+U$lS0t#& z@-P01o&-ZeRNQs5DQk{tSsD2z2ynhvJl?dznGOaQ%!;EC-a-m z<`+pz4$FP|x93*HnPp!7NgL)FGfYspu#EMp)X9{rPMxl!lfO+UpPwh}^sQ>;%o&M7 zZmT6)?;J}DdlnJ2wIcqyL(sZYlm4d^Z{I1AW;rYW`IfGU=fyl#w-)GgF-$h@oXtPY zwLX5~nOnPg`_{JB@?Cs=L91=ii=}sFKi{tZ=klbFrFZZL{}wO)d+y8P=@BAF z<<$&r$`}9E_X+Q@Sn)gd%FF=11=|Z{t(KuJ}1-l_fH=!xV3w0h?Q>q+=w#oP@z< zuG*sXl^3<2-#@+jdYQDEnkzPUOpUQ|q#ybJA7Az0@{dDW0>;;mra@hXSLwHj+{a?R>i#85C2FGc3?| zG04*vdv!!}t&b literal 0 HcmV?d00001 diff --git a/documentation/current/eiffelstudio/_images/refresh-icon.png.data b/documentation/current/eiffelstudio/_images/refresh-icon.png.data new file mode 100644 index 00000000..f258be97 --- /dev/null +++ b/documentation/current/eiffelstudio/_images/refresh-icon.png.data @@ -0,0 +1,3 @@ +title=refresh-icon +author=halw +path=content/refresh-icon diff --git a/documentation/current/eiffelstudio/_images/show-hide-contract-placeholders.png b/documentation/current/eiffelstudio/_images/show-hide-contract-placeholders.png new file mode 100644 index 0000000000000000000000000000000000000000..69e4581d1e7f97c1a728d7c0fafb0f41a95f5113 GIT binary patch literal 1612 zcmeH^`%jZs7{^Z$gi^rWWGE~Gx|uky~Z+$Qx6%`eIS{qY38CUx7-A|_y&P*qLrb{k+ zlv<`wKWj)or_cOiKBvNvi&e3hU%AARAoe-Lt}=2f5ce+ds?Gchh+n%T5D0`9QE?3_ zDM3V?`Qrv#StCty#ePu@)yB@Yypc|Wx?GF7MsFiFSFRot=9Wio6=?j8+D$v4U*&ql2no;P__ZeHbjxb6a{v& z+D?wzsZqNf9HiPoY8>R4!vU+S;I!5|sWB%t?sNiBEnxov9N)oe6RchZX9KL&!P*Ku zsfG1QSeF9e|NmeAZ9pJv^+bqA$P_5^YC6j3M?qie0IIE;JqWIkH^GOG3w}%Rb%Ys!tXJ~0*-)J1fo>+ za?G~6VyPU0$3iX3qkA!d_?V-q0d;v^y>0;_uhLsxhbO-_a=9&G%6Kp9>z{i}E%N!Q zDnh1CyR2vRpFQ0x*+1d_5;rVdS;?@rkEVR7o5>B4P<0W_i4DVlj$~$}rDyNFu zHxE(AiE43`$h(~(yX3|w@-I*|MzM9;_0=iH$rsZyBpw=zmYrbYUBBKjoTeB^5B2j; z9h5drX&$I^n7Zj}HKT<-{+AO)jl5ZnuGuubBW$|ugnw8-6nnJ$_NsT&w+xSZS)jxt zR`-i!U%ARny4~IVn=?LpdL>WV-X8zTf4iRb +View --> Tools --> Contract Editor + + +Once visible, the tool can be [[Customizing the tools layout and toolbars#Docking|docked]] to an appropriate location, if desired. + + +=Toolbar= + +The Contract Editor toolbar contains the following items: + +: [[Image:16x16--general-save-icon]] ''Save modifications to the associated class.'' Becomes enabled when changes have been made to a contract. Clicking will cause changes to be saved. + +: [[Image:16x16--general-add-icon]] ''Add a new contract.'' Allows you to add a new contract assertion clause to the currently selected contract element (precondition, postcondition, or invariant). Clicking will provide a choice of creating from a template or creating a custom assertion clause. + +: [[Image:metrics-tool--general-remove-icon]] ''Remove selected contract.'' Will delete the currently selected assertion clause from the contract element being edited. + +: [[Image:contract-editor-edit-icon]] ''Edit selected contract.'' Will place the currently selected assertion clause in edit mode. Clauses can also be edited by double-clicking the clause itself, or right-clicking on a selected clause and choosing "Edit". + +: [[Image:move-up-icon]] and [[Image:move-down-icon]] ''Move selected contract up (or down).'' Use to move the selected assertion clause up or down in relation to the other clauses for this contract element. + +: [[Image:refresh-icon]] ''Refresh the current contracts to include any unsaved, undetected editor changes.'' EiffelStudio updates the Contract Editor tool display whenever class text is saved. However, if you edit a class in the Editing tool and have not saved it, there will be a difference between the Editing tool's display and the Contract Editor tool's display for the edited code. Clicking this icon will update the Contract Editor tool to include unsaved changes from the Editing tool. + +: [[Image:contract-icon]] ''Select the type of contracts to edit.'' Use to select the contract element to edit. The name of the element (precondition, postcondition, or invariant) is listed to the right of the icon. If the Contract Editor tool is targeted to a routine, you can choose between Precondition and Postcondition by clicking this icon. If the tool is targeted to a class, then Invariant is selected and this icon is disabled in the toolbar. + +: [[Image:show-hide-contract-placeholders-icon]] ''Show/hide the hidden contract place holders for inherited contracts.'' In addition to the assertion clauses that are coded immediately on the target routine or class, the Contract Editor tool also shows any assertion clauses inherited from a class's proper ancestor classes. These clauses are labeled with the name of the class from which they are inherited. By default, any classes in the inheritance graph which do not contribute clauses to a contract element are not shown. Toggling this icon down will show placeholders for these classes that are in the graph but do not contribute assertion clauses. Toggling the icon up will re-hide the placeholders. + +: [[Image:feature-callers-icon]] or [[Image:class-descendents-icon]] ''Show the callers of the currently edited feature.'' The icon shown here is dependent upon whether the tool is targeted to a routine or class. If the tool is targeted to a routine, then the icon shown will be the feature callers icon ([[Image:feature-callers-icon]]). If the tool is targeted to a class, then the icon shown will be the class descendants icon ([[Image:class-descendents-icon]]). In either case, clicking the icon does not effect the display in the Contract Editor tool. Rather, the action is shown in either the Feature tool (in the case of routines) or the Class tool (in the case of classes). + + +=Editing contracts= + +You edit contracts one assertion clause at a time. +