Important PAI Patch

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
9 messages Options
Reply | Threaded
Open this post in threaded view
|

Important PAI Patch

Blair McGlashan
Below is an important Patch to the PAI (well actually it is a modification
which fixes a bug in the TreeView). This particular bug is behind a lot of
the 'Not found' errors that one sees in the PAI in beta 4 after applying
some modification that affects the structure of the tree.

Please install the patch and report back whether this improves matters or
not. I am sure you will find it will improve things, but it doesn't
necessarily address all the issues with the PAI. In fact I'd be interested
to hear of specific PAI problems (especially if you have this patch
installed), preferably specific reproduceable issues. Please don't bother
reporting problems that are corrected by this patch. Vague errors are of
interest as they may indicate a pattern, but we may not be able to
investigate them in time before the release. For the same reason (lack of
time) it would help us if the cases did not rely on having particular add-on
packages installed, or if they do please either attach those packages to the
post or provide a link from which they can be downloaded (or e-mail directly
to me if you prefer).

Regards

Blair


begin 666 TreeView & PAI Patch.st
M(51R9656:65W(&UE=&AO9'-&;W(A#0H-"F]N5')E94-H86YG960Z(&%N3V)J
M96-T#0H)(E1H92!T<F5E('-T<G5C='5R92!B96QO=R!T:&4@87)G=6UE;G0@
M:&%S(&)E96X@8VAA;F=E9"X@268@;FEL('1H:7,@#0H):6YD:6-A=&5S('1H
M870@=&AE(&5N=&ER92!T<F5E(&9R;VT@=&AE(')O;W0@9&]W;B!M87D@:&%V
M92!C:&%N9V5D+@T*"5)E9G)E<V@@=&AE(')E8V5I=F5R(&%P<')O<')I871E
M;'DN(@T*#0H)86Y/8FIE8W0@:7-.:6P@:694<G5E.B!;7G-E;&8@;VY,:7-T
M0VAA;F=E9%TN#0H)<V5L9@T*"0EC;VQL87!S93H@86Y/8FIE8W0[#0H)"6]N
M271E;55P9&%T960Z(&%N3V)J96-T(2 A#0HA5')E959I97<@8V%T96=O<FEE
M<T9O<CH@(V]N5')E94-H86YG960Z(65V96YT(&AA;F1L:6YG(7!U8FQI8R$@
M(0T*#0HA4'5B;&ES:&5D07-P96-T26YS<&5C=&]R(&UE=&AO9'-&;W(A#0H-
M"G)E9G)E<VA!8V-E<W-O<CH@86Y!<W!E8W1!8V-E<W-O<@T*"2)0<FEV871E
M("T@5&AE('9A;'5E(&]F(&%S<&5C=$%C8V5S<V]R(&AA<R!B965N(&-H86YG
M960@<V\@<F5F<F5S:"!T:&4@<F5C96EV97(G<R!D:7-P;&%Y('1O(')E9FQE
M8W0@=&AI<R(-"@T*"7P@87-P96-T5')E92!N97=!<W!E8W1!8V-E<W-O<B!S
M96QE8W1I;VY0871H('P-"@EA<W!E8W14<F5E(#H]('-E;&8@87-P96-T5')E
M92X-"@DH87-P96-T5')E92!I;F-L=61E<SH@86Y!<W!E8W1!8V-E<W-O<BD@
M:69&86QS93H@6UYS96QF72X-"@ES96QE8W1I;VY0871H(#H]('-E;&8@<V5L
M96-T:6]N4&%T:"X-"@EA<W!E8W14<F5E4')E<V5N=&5R(&YO179E;G1S1&\Z
M( T*"0D)6WP@<&%R96YT07-P96-T('P-"@D)"7!A<F5N=$%S<&5C=" Z/2!A
M<W!E8W14<F5E('!A<F5N=$]F.B!A;D%S<&5C=$%C8V5S<V]R+@T*"0D)87-P
M96-T5')E95!R97-E;G1E<B!V:65W(&1I<V%B;&52961R87<N#0H)"0D-"@D)
M"5LC=&]D;RX)(DD@=&AI;FL@=V4@;F5E9"!T;R!C;VQL87!S92!T:&4@<&%R
M96YT(&EN(&-A<V4@<VEB;&EN9W,@8VAA;F=E('-H87!E("AE+F<N(%1O;VQB
M87)3>7-T96U"=71T;VXI+ T*"0D)"0D)8G5T(&EF('=E(&1O('1H870@=&AE
M;B!A<W!E8W10<F5S96YT97(G<R!G970@<F5C<F5A=&5D(&%N9"!S96QE8W1I
M;VX@:7,@;&]S="P@82!P<F]B;&5M+"!E+F<N+"!W:&5N( T*"0D)"0D)<F5A
M<G)A;F=I;F<@=&AE(&5L96UE;G1S(&]F(&$@<V5Q=65N8V5A8FQE(&-O;&QE
M8W1I;VXN#0H-"@D)"0D)"6%S<&5C=%1R964@8V]L;&%P<V4Z('!A<F5N=$%S
M<&5C="X-"@D)"0D)"6%S<&5C=%1R9650<F5S96YT97(@97AP86YD.B!P87)E
M;G1!<W!E8W0B#0H)"0DH87-P96-T5')E92!C:&EL9')E;D]F.B!P87)E;G1!
M<W!E8W0I(&1O.B!;.F5A8V@@?"!A<W!E8W14<F5E(&-O;&QA<'-E.B!E86-H
M72X-"@D)"6%S<&5C=%1R9650<F5S96YT97(@97AP86YD.B!A;D%S<&5C=$%C
M8V5S<V]R+@T*"0D)(W1O9&\)(DD@9&]N)W0@=&AI;FL@=&AI<R!R969R97-H
M(&ES(&YE8V5S<V%R>2!A<R!T:&4@=')E92!R97!A:6YT<R!O;B!E;F%B;&52
M961R87<@86YY=V%Y(@T*"0D)(@D)"7!A<F5N=$%S<&5C="!I<TYI;"!I9D9A
M;'-E.B!;87-P96-T5')E92!R969R97-H.B!P87)E;G1!<W!E8W1=(ET@#0H)
M"0D)"65N<W5R93H@6V%S<&5C=%1R9650<F5S96YT97(@=FEE=R!E;F%B;&52
M961R87==72X-"@ES96QF('-E;&5C=&EO;E!A=&@Z('-E;&5C=&EO;E!A=&@A
M("$-"B%0=6)L:7-H961!<W!E8W1);G-P96-T;W(@8V%T96=O<FEE<T9O<CH@
M(W)E9G)E<VA!8V-E<W-O<CHA979E;G0@:&%N9&QI;F<A<')I=F%T92$@(0T*
"#0H`
`
end


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Steve Alan Waring
Hi Blair,

The example that Ian posted earlier:

    OrderedCollection with: 1@2 with: 3@4 "Inspect It and set an element to
nil"

With the patch installed, this correctly refreshes in a PAI but not in a
InstVarInspector.

Thanks,
Steve


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Blair McGlashan
"Steve Waring" <[hidden email]> wrote in message
news:[hidden email]...
> Hi Blair,
>
> The example that Ian posted earlier:
>
>     OrderedCollection with: 1@2 with: 3@4 "Inspect It and set an element
to
> nil"
>
> With the patch installed, this correctly refreshes in a PAI but not in a
> InstVarInspector.

Thanks Steve, #865.

In general the inst. var inspector is not intended to refresh to reflect
structural changes, except in a local way which would apply in this case, so
it should be updating.

Regards

Blair


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Blair McGlashan
In reply to this post by Blair McGlashan
"Blair McGlashan" <[hidden email]> wrote in message
news:[hidden email]...
> Attached is a replacement patch that supercedes the previous one. In
> particular this fixes the problem of external changes reported to the PAI
> (such as when editing menus in the view composer with the WYSIWYG editor)
> not being updated correctly in the aspect tree.

Note that this breaks the Sequenceable Collection Presenters move first/last
functionality, as my SUnit tests quickly revealed!

Please use the attached instead.

Regards

Blair


begin 666 PAI Patch 2.1.st
M(51R9656:65W(&UE=&AO9'-&;W(A#0H-"F]N5')E94-H86YG960Z(&%N3V)J
M96-T#0H)(E1H92!T<F5E('-T<G5C='5R92!B96QO=R!T:&4@87)G=6UE;G0@
M:&%S(&)E96X@8VAA;F=E9"X@268@;FEL('1H:7,@#0H):6YD:6-A=&5S('1H
M870@=&AE(&5N=&ER92!T<F5E(&9R;VT@=&AE(')O;W0@9&]W;B!M87D@:&%V
M92!C:&%N9V5D+@T*"5)E9G)E<V@@=&AE(')E8V5I=F5R(&%P<')O<')I871E
M;'DN(@T*#0H)86Y/8FIE8W0@:7-.:6P@:694<G5E.B!;7G-E;&8@;VY,:7-T
M0VAA;F=E9%TN#0H)<V5L9@T*"0EC;VQL87!S93H@86Y/8FIE8W0[#0H)"6]N
M271E;55P9&%T960Z(&%N3V)J96-T(2 A#0HA5')E959I97<@8V%T96=O<FEE
M<T9O<CH@(V]N5')E94-H86YG960Z(65V96YT(&AA;F1L:6YG(7!U8FQI8R$@
M(0T*#0HA4'5B;&ES:&5D07-P96-T26YS<&5C=&]R(&UE=&AO9'-&;W(A#0H-
M"G)E9G)E<VA!8V-E<W-O<CH@86Y!<W!E8W1!8V-E<W-O<@T*"2)0<FEV871E
M("T@5&AE('9A;'5E(&]F(&%S<&5C=$%C8V5S<V]R(&AA<R!B965N(&-H86YG
M960@<V\@<F5F<F5S:"!T:&4@<F5C96EV97(G<R!D:7-P;&%Y('1O(')E9FQE
M8W0@=&AI<R(-"@T*"7P@87-P96-T5')E92!N97=!<W!E8W1!8V-E<W-O<B!S
M96QE8W1I;VY0871H('P-"@EA<W!E8W14<F5E(#H]('-E;&8@87-P96-T5')E
M92X-"@DH87-P96-T5')E92!I;F-L=61E<SH@86Y!<W!E8W1!8V-E<W-O<BD@
M:69&86QS93H@6UYS96QF72X-"@ES96QE8W1I;VY0871H(#H]('-E;&8@<V5L
M96-T:6]N4&%T:"X-"@EA<W!E8W14<F5E4')E<V5N=&5R(&YO179E;G1S1&\Z
M( T*"0D)6WP@<&%R96YT07-P96-T('P-"@D)"7!A<F5N=$%S<&5C=" Z/2!A
M<W!E8W14<F5E('!A<F5N=$]F.B!A;D%S<&5C=$%C8V5S<V]R+@T*"0D)87-P
M96-T5')E95!R97-E;G1E<B!V:65W(&1I<V%B;&52961R87<N#0H)"0D-"@D)
M"5MP87)E;G1!<W!E8W0@:7-.:6P@#0H)"0D):694<G5E.B!;87-P96-T5')E
M92!C;VQL87!S93H@86Y!<W!E8W1!8V-E<W-O<ET-"@D)"0EI9D9A;'-E.B -
M"@D)"0D)6R-T;V1O+@T*"0D)"0DB22!T:&EN:R!W92!M87D@;F5E9"!T;R!C
M;VQL87!S92!T:&4@<&%R96YT(&EN(&-A<V4@<VEB;&EN9W,@8VAA;F=E('-H
M87!E("AE+F<N(%1O;VQB87)3>7-T96U"=71T;VXI+ T*"0D)"0D)8G5T(&EF
M('=E(&1O('1H870@=&AE;B!A<W!E8W10<F5S96YT97(G<R!G970@<F5C<F5A
M=&5D(&%N9"!S96QE8W1I;VX@:7,@;&]S="P@82!P<F]B;&5M+"!E+F<N+"!W
M:&5N( T*"0D)"0D)<F5A<G)A;F=I;F<@=&AE(&5L96UE;G1S(&]F(&$@<V5Q
M=65N8V5A8FQE(&-O;&QE8W1I;VXN(@T*"0D)"0EF86QS92 -"@D)"0D)"6EF
M5')U93H@#0H)"0D)"0D)6V%S<&5C=%1R964@8V]L;&%P<V4Z('!A<F5N=$%S
M<&5C="X-"@D)"0D)"0EA<W!E8W14<F5E4')E<V5N=&5R(&5X<&%N9#H@<&%R
M96YT07-P96-T70T*"0D)"0D):69&86QS93H@#0H)"0D)"0D)6RAA<W!E8W14
M<F5E(&-H:6QD<F5N3V8Z('!A<F5N=$%S<&5C="D@9&\Z( T*"0D)"0D)"0D)
M6SIE86-H('P@#0H)"0D)"0D)"0EA<W!E8W14<F5E(&-O;&QA<'-E.B!E86-H
M#0H)"0D)"0D)"0DB4F5F<F5S:"!I<R!N;W0@;F5C97-S87)Y(&YE8V5S<V%R
M>2!A<R!E>'!A;F0O8V]L;&%P<V4@=VEL;"!F;W)C92!I="!A;GEW87DN(@T*
M"0D)"0D)"0D)(G!A<F5N=$%S<&5C="!I<TYI;"!I9D9A;'-E.B!;87-P96-T
M5')E92!R969R97-H.B!P87)E;G1!<W!E8W1=(EU=72X-"@D)"2)!;'=A>7,@
M:V5E<"!T:&4@87-P96-T(&5X<&%N9&5D(@T*"0D)87-P96-T5')E95!R97-E
M;G1E<B!E>'!A;F0Z(&%N07-P96-T06-C97-S;W)=( T*"0D)"0EE;G-U<F4Z
M(%MA<W!E8W14<F5E4')E<V5N=&5R('9I97<@96YA8FQE4F5D<F%W75TN#0H)
M<V5L9B!S96QE8W1I;VY0871H.B!S96QE8W1I;VY0871H(2 A#0HA4'5B;&ES
M:&5D07-P96-T26YS<&5C=&]R(&-A=&5G;W)I97-&;W(Z("-R969R97-H06-C
M97-S;W(Z(65V96YT(&AA;F1L:6YG(7!R:79A=&4A("$-"@T*(5!U8FQI<VAE
M9$%S<&5C=$EN<W!E8W1O<B!M971H;V1S1F]R(0T*#0IA<W!E8W1#:&%N9V5D
M.B!A4WEM8F]L#0H)(DEN9F]R;2!T:&4@<F5C96EV97(@=&AA="!I=',@;6]D
M96P@:&%S(&AA9"!A;B!A<W!E8W0@;W(@87-P96-T<R!W:71H('1H90T*"3Q3
M>6UB;VP^(&YA;64L(&%3>6UB;VPL(&5X=&5R;F%L;'D@=7!D871E9"X@57!D
M871E(&%L;"!D:7-P;&%Y960@87-P96-T<R -"@EW:71H('1H:7,@;F%M92P@
M:68@86YY+B(-"@T*"7P@86-C97-S;W)S('P-"@EA8V-E<W-O<G,@.CT@87-P
M96-T5')E95!R97-E;G1E<B!V:65W(&1I<W!L87EE9$-O;G1E;G1S( T*"0D)
M"7-E;&5C=#H@6SIE86-H('P@96%C:"!A<W!E8W1$97-C<FEP=&]R(&YA;64@
M/3T@85-Y;6)O;%TN#0H)86-C97-S;W)S(&ES16UP='D@#0H)"6EF1F%L<V4Z
M( T*"0D)6V%C8V5S<V]R<R!D;SH@6SIE86-H('P@87-P96-T5')E95!R97-E
M;G1E<B!M;V1E;"!C;VQL87!S93H@96%C:%TN#0H)"0ES96QF(&]N07-P96-T
M4V5L96-T961=(2 A#0HA4'5B;&ES:&5D07-P96-T26YS<&5C=&]R(&-A=&5G
M;W)I97-&;W(Z("-A<W!E8W1#:&%N9V5D.B%P=6)L:6,A=7!D871I;F<A("$-
M"@T*#0HA4'5B;&ES:&5D07-P96-T26YS<&5C=&]R(&UE=&AO9'-&;W(A#0H-
M"F%S<&5C=$-H86YG960Z(&%3>6UB;VP@;V8Z(&%N3V)J96-T#0H)(DEN9F]R
M;2!T:&4@<F5C96EV97(@=&AA="!I=',@;6]D96P@:&%S(&AA9"!T:&4@87-P
M96-T(&YA;65D(&)Y('1H92 \4WEM8F]L+ T*"6%3>6UB;VPL(&%N9" \3V)J
M96-T/B!S=6)J96-T+"!A;D]B:F5C="P@97AT97)N86QL>2!U<&1A=&5D+@T*
M"49O<F-E('1H92!T<F5E('1O('5P9&%T92!I9B!I="!I<R!D:7-P;&%Y:6YG
M('1H:7,@87-P96-T+B(-"@T*"7P@87-P96-T('P-"@EA<W!E8W0@.CT@87-P
M96-T5')E95!R97-E;G1E<B!V:65W(&1I<W!L87EE9$-O;G1E;G1S( T*"0D)
M"61E=&5C=#H@6SIE86-H('P@96%C:"!A<W!E8W1$97-C<FEP=&]R(&YA;64@
M/3T@85-Y;6)O;"!A;F0Z(%ME86-H('-U8FIE8W0@/3T@86Y/8FIE8W1=70T*
M"0D)"6EF3F]N93H@6UTN#0H)87-P96-T(&ES3FEL( T*"0EI9D9A;'-E.B -
M"@D)"5MA<W!E8W14<F5E4')E<V5N=&5R(&UO9&5L(&-O;&QA<'-E.B!A<W!E
M8W0N#0H)"0ES96QF(&]N07-P96-T4V5L96-T961=(2 A#0HA4'5B;&ES:&5D
M07-P96-T26YS<&5C=&]R(&-A=&5G;W)I97-&;W(Z("-A<W!E8W1#:&%N9V5D
M.F]F.B%P=6)L:6,A=7!D871I;F<A("$-"@T**%)E<V]U<F-E261E;G1I9FEE
M<B!C;&%S<SH@0V]L;&5C=&EO;E!R97-E;G1E<B!N86UE.B G1&5F875L="!V
M:65W)RD@87-S:6=N.B H3V)J96-T(&9R;VU":6YA<GE3=&]R94)Y=&5S.@T*
M*$)Y=&5!<G)A>2!F<F]M2&5X4W1R:6YG.B G,C$U,S4T-#(R,#,Q,C T-C R
M,$,P,# Q,# P,# P-38V.38U-S<U,C8U-S,V1C<U-S(V,S8U,# P,# P,# P
M13 Q,C0P,#4S-30T,C4R-C4W,S9&-S4W,C8S-C4U,S4T-#(T,C<Y-S0V-30Q
M-S(W,C8Q-SDT,38S-C,V-3<S-S,V1C<R-3 W,C9&-S@W.3 P,# P,# P-S(P
M,# P,# Y,S X,# P,#(Q-3,U-#0R,C S,3(P-$4P.#!#,# P03 P,# P,#4S
M-30T,C4V-CDV-3<W-3 W,C9&-S@W.3 P,# P,# P.4$P,# P,# P,# P,# P
M,#4R,# P,# P,3 P,# P,# T-#9&-D,W,#8X-CDV13(P-$0U-C4P,C T,C8Q
M-S,V-34R,# P,# P,$0P,# P,# T,S9&-D4W-#8Q-CDV138U-S(U-C8Y-C4W
M-S8R,# P,# P,$8P,# P,# P,# P,# P,# P,# P,# P-C(P,# P,# P,C P
M,# P,#@R,# P,# P,#0P,# P,# P,# P,# T-# Q,# P,C P03 P,3 P,# P
M,# P,# P,#0V,#$P,S P,#$P,# P,# U,C0W-#(P,# P,# P,#@Q.#$X,3 Q
M,# P,# P,# P-S P,# P,# P,# P,# P,# P,# P,# P,# P,# P,$$P,#$P
M,# P,#8P-S!#,# T,C9&-S(V-#8U-S(T0S8Q-SDV1C<U-S0P,# P,# P,# Q
M,# P,# P,#$P,# P,# Y03 Q,# P,# P,# P,# P.4$P,# P,# P,# P,# P
M,$,P,#$P,# P-3(P,# P,# P1# P,# P,#4R-C4V-C8U-S(V-39%-C,V-34V
M-CDV-3<W-C(P,# P,# P13 P,# P,# P,# P,# P03 P,3 P,# V,C P,# P
M,# R,# P,# P.#(P,# P,# P-# P,# P,# P,# P,#0T,#$P,# R,# U,# R
M,# P,# P,# P,# P,#8P,3!",# U,S<Y-S,W-#8U-D0T,S9&-D,V1C<R,# P
M,# P,# Q1C P,# P,# P,# P,# P,#<P,# P,# P,# P,# P,# P,# P,# P
M,# P,# P,# U,# R,# P,# V,#(Q,C P-3(V-3<S-D8W-3<R-C,V-30Y-C0V
M-39%-S0V.38V-CDV-3<R,# P,# P,# Y03 P,# P,# P,# P,# P-3(P,# P
M,# Q-# P,# P,#0T-D8V0S<P-C@V.39%,C T,S9&-D4W-#<R-D8V0S(P-#(V
M,3<R-S,U,C P,# P,# W,# P,# P-30V1C9&-D,V,C8Q-S(U,C P,# P,#!!
M,# P,# P-$,V.3<S-S0R,#<T-D8V1C9#-S,P,# P,# P,# V,#$P1C P-$0V
M-3<S-S,V,38W-C4U,S8U-S$W-38U-D4V,S8U,# P,# P,#!#03 P,# P,# P
M,# P,# P1# P,# P,# V,C P,# P,# R,# P,# P,#8P,S!",# T1#8U-S,W
M,S8Q-C<V-34S-C4V138T,# P,# P,#!"03 P,# P,# P,# P,# P-3(P,# P
M,# Q,# P,# P,#8S-S(V-38Q-S0V-30Q-S0S038U-S@W-#8U-D4W-#-!-C(P
M,# P,# P,C P,# P,# V,#(P-3 P-3 V1C8Y-D4W-# P,# P,# P,#$P,# P
M,# P,3 P,# P,$,R,#,P,# P,# P,# P,# U1# S,# P,#,S,# P,# P-3 P
M,C P,# W,C S,# P,# P,# P,# P0D$P,# P,# P,# P,# P,#4R,# P,# P
M,#4P,# P,# W-#8U-S@W-#-!-C(P,# P,# P,3 P,# P,#4R,# P,# P,#<P
M,# P,# W-#9&-D8V0S8R-C$W,C4P,#(P,# P,#8P,3!&,# U-S0Y-$4T-#1&
M-3<U,#1#-#$T,S0U-$0T-31%-30P,# P,# P,#<R,# P,# P,D,P,# P,# R
M0S P,# P,# P,# P,# P,#$P,# P,#!&1D9&1D9&1D9&1D9&1D9&1D9&1D9&
M1D9&1D9&1D9&1C P,# P,# P,# P,# P,#!!13 Q,# P,#$Y,# P,# P-C(P
M,# P,# P,# P,# P,$,R,#,P,# P,# P,# P,#!#,3 P,# P,$,Q,# P,# P
M,# P,# P,# Q-3 P,# P,# P,# P,# P,# P,# P,# P,# P,# P,#E!,#$P
M,# P,# P,# P,# Y03 P,# P,# P,# P,# P-3(P,# P,# Q-S P,# P,#0T
M-D8V0S<P-C@V.39%,C T,S9&-D0V1#9&-D4R,#0S-D8V13<T-S(V1C9#-S,U
M,C P,# P,# X,# P,# P-$,V.3<S-S0U-C8Y-C4W-S8R,# P,# P,44P,# P
M,# P,# P,# P,$$P,#$P,# P-C(P,# P,# P,C P,# P,#@R,# P,# P,#0P
M,# P,# T1#4P,#$T-# Q,#0P,# P.3 P-# P,# T-C S,#DP,# R,# P,# P
M-$,V.3<S-S0T1#9&-C0V-39#,# P,# P,#!#03 P,# P,# P,# P,# P1# P
M,# P,# V,C P,# P,# P,# P,# P,# P,# P,# P-C P,30P,#0Y-C0V-39%
M-S0V.3<T-SDU,S8U-C$W,C8S-C@U,#9&-D,V.38S-SDP,# P,# P,# P,# P
M,# P,# P,# P,# P-S P,# P,#0V,#4P-# P,#(P,# P,# T1#8U-D4W-3 P
M,# P,# P,# P,# P,# Q,# P,# P,#8R,# P,# P,#0P,# P,# T-C R,$8P
M,# Q,# P,# P-#,V1C9$-D0V,39%-C0T1#8U-D4W-30Y-S0V-39$,# P,# P
M,# P,3 P,# P,#0V,#0Q,C P,#(P,# P,# T,S9&-D0V1#8Q-D4V-#0T-C4W
M,S8S-S(V.3<P-S0V.39&-D4P,# P,# P,$)!,# P,# P,# P,# P,# U,C P
M,# P,# Y,# P,# P-D0V1C<V-C4T-C8Y-S(W,S<T-3(P,# P,# P13 P,# P
M,#1$-D8W-C8U,C W-#9&,C R-C0V-CDW,C<S-S0P,3 P,# P,# P,# P,# P
M.3(P-3 P,# P,# P,# P,# Q,# P,# P0C(P-3 P,# P,# P,# P,$)!,# P
M,# P,# P,# P,# U,C P,# P,# V,# P,# P-D0V1C<V-C4U-3<P-3(P,# P
M,# Q,3 P,# P,#1$-D8W-C8U,C W-#9&,C R-C4P-S(V-3<V-CDV1C<U-S,P
M,3 P,# P,# P,# P,# P.3(P-3 P,# P,# P,# P,# Q,# P,# P0C(P-3 P
M,# P,# P,# P,$)!,# P,# P,# P,# P,# U,C P,# P,# X,# P,# P-D0V
M1C<V-C4T-#9&-S<V134R,# P,# P,$0P,# P,# T1#9&-S8V-3(P-S0V1C(P
M,C8T138U-S@W-# Q,# P,# P,# P,# P,# Y,C U,# P,# P,# P,# P,#$P
M,# P,#!",C U,# P,# P,# P,# P0D$P,# P,# P,# P,# P,#4R,# P,# P
M,#@P,# P,# V1#9&-S8V-31#-C$W,S<T-3(P,# P,# P1# P,# P,#1$-D8W
M-C8U,C W-#9&,C R-C1#-C$W,S<T,#$P,# P,# P,# P,# P,#4R,# P,# P
M,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# Y,# T,# P,# P,# P
M,# P.#(P,# P,# P.# P,# P,#$Y,#-&1D9&,# P,# P,# Y03 P,# P,# P
M,# P,# P0S P,3 P,# U,C P,# P,#$Q,# P,# P-#(V,3<S-CDV,S1#-CDW
M,S<T-#$V,C<S-S0W,C8Q-C,W-#E!,# P,# P,# P,# P,#!",# T,# P,#4R
M,# P,# P,3(P,# P,# T.38S-D8V138Y-C,T0S8Y-S,W-#0Q-C(W,S<T-S(V
M,38S-S0P13 R,3$P,#4S-30T,C4S-CDV138W-D,V-3<T-D8V134P-S(V1C<X
M-SDP,# P,# P,#E!,# P,# P,# P,# P,#!#,# Q,# P,#4R,# P,# P,3 P
M,# P,# T.38S-D8V130Y-D0V,38W-C4T1#8Q-D4V,38W-C4W,D)!,# P,# P
M,# P,# P,# U,C P,# P,# W,# P,# P-C,W-3<R-S(V-39%-S0P,# P,# P
M,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,# P,#!#03 P
M,# P,# P,# P,# P1# P,# P,# V,C P,# P,# Q,# P,# P-#8P0S!%,# P
M-3 P,# P,#1#-CDW,S<T-38V.38U-S<T,S9&-D,W-39$-D4P,# P,# P,#4R
M,# P,# P,# P,# P,# U-3 S,# P,$)!,# P,# P,# P,# P,# U,C P,# P
M,# T,# P,# P-D,V-38V-S0Q,# W,# P,#E!,# P,# P,# P,# P,# U,C P
M,# P,# W,# P,# P-#0V1C9#-S V.#8Y-D4U,C P,# P,#$P,# P,# P-3,V
M1C<R-S0V-38T-#,V1C9#-D,V-38S-S0V.39&-D4P,# P,# P,# P,# P,# P
M.3 P-# P,# P,# P,# P,# S,# P,# P,# P,# P,# P,# P,# P,$)!,# P
M,# P,# P,# P,# U,C P,# P,# V,# P,# P-S(V-3<P-D8W,C<T-C(P,# P
M,# P,# P,# P,# P,# P,# P-C$P.# P,# P,# P,# P,# P,# P,# P,S(P
M,S P,# P,# P,# P,$-!,# P,# P,# P,# P,#!$,# P,# P,#8R,# P,# P
M,#(P,# P,# W,C S,# P,# P,# P,# P.3 P,S P,# V,C P,# P,# R,# P
M,# P0S(P,S P,# P,# P,# P,# Q,# P,# P,S,P,# P,#!#,C S,# P,# P
M,# P,# P-40P,S P,# T1C R,# P,#DP,#0P,# P-S(P,S P,# P,# P,# P
M,$)!,# P,# P,# P,# P,# U,C P,# P,#!#,# P,# P-C,V1C9%-S0V-3<X
M-S0T1#8U-D4W-3-!-C(P,# P,# P,3 P,# P,#<P,#4P,# P.3 P-# P,# T
M,C T,# P,# P,# P,# P-S(P,# P,# R0S P,# P,#)#,# P,# P,# P,# P
M,# P,3 P,# P,$9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&1D9&,# P
M,# P,# Q.3 P,# P,$%%,#$P,# P-# P,3 P,#!#03 P,# P,# P,# P,# P
M1# P,# P,# S,# U,# P,#@P,#0P,# P,# P,# P,# Q-S P,# P,$5!,# P
M,# P,# P,# P,# P,# Q,# P,#8R,# P,# P,#(P,# P,# Y,# T,# P,#4R
M,# P,# P,#0P,# P,# V0S8Y-S,W-# P,# P,# P,S(P,S P,# P,# P,# P
M,$-!,# P,# P,# P,# P,#!$,# P,# P,#8R,# P,# P,#$P,# P,# W,C S
M,# P,# P,# P,# P.3 P,S P,# V,C P,# P,# R,# P,# P0S(P,S P,# P
M,# P,# P,#!",# P,# P,$(P,# P,#!#,C S,# P,# P,# P,# P-40P,S P
M,# X,3 R,# P,$$P,#$P,# P-#(P-# P,# P,# P,# P,#<R,# P,# P,D,P
M,# P,# R0S P,# P,# P,# P,# P,# P,# P,#!&1D9&1D9&1D9&1D9&1D9&
M1D9&1D9&1D9&1D9&1D9&1C U,# P,# P,#4P,# P,#!",S Q,# P,#0U,#$P
M,# P0T$P,# P,# P,# P,# P,$0P,# P,# P-C(P,# P,# P,C P,# P,#4P
M,#(P,# P.3 P-# P,# X,# T,# P,# P,# P,# P,3,P,# P,# T-C U,#0P
M,# S,# P,# P-#DV,S9&-D4P,# P,# P,# P,# P,# P,3 P,# P,# P13 R
M,3$P,#4S-30T,C4S-CDV138W-D,V-3<T-D8V134P-S(V1C<X-SDP,# P,# P
M,#E!,# P,# P,# P,# P,# U,C P,# P,# W,# P,# P-#0V1C9#-S V.#8Y
M-D4U,C P,# P,#$X,# P,# P-#DV1#8Q-C<V-34R-C4V0S8Q-S0V.3<V-C4T
M-C8Y-D,V-31#-D8V,S8Q-S0V1C<R0D$P,# P,# P,# P,# P,#4R,# P,# P
M,#<P,# P,# V,S<U-S(W,C8U-D4W-#4R,# P,# P,3$P,# P,# T,S9&-D4W
M-#8Q-CDV138U-S(U-C8Y-C4W-S)%-CDV,S9&,$4P,C%&,# U,S4T-#(T-3<X
M-S0V-3<R-D4V,39#-3(V-3<S-D8W-3<R-C,V-31#-CDV,C<R-C$W,C<Y-3 W
M,C9&-S@W.3 P,# P,# P-3(P,# P,# Q,# P,# P,#8T-D8V0S<P-C@V.39%
M-C0W,C,P,S S-3)%-C0V0S9#,# P,# P,# G*2DA#0H-"B%6:65W0V]M<&]S
M97(@;65T:&]D<T9O<B$-"@T*961I=$UE;G5"87(-"@DB26YV;VME('1H92!-
M96YU0V]M<&]S97(@;VX@=&AE(&UE;G4@8F%R(&]F('1H92!C;VUP;W-I;F=6
M:65W+B(-"@T*"7P@;65N=59A;'5E(&5D:71O<B!E9&ET960@? T*"65D:71E
M9" Z/2!S96QF(&-O;7!O<VEN9U9I97<N#0H);65N=59A;'5E(#H](&5D:71E
M9"!A<W!E8W1686QU93H@(VUE;G5"87(N#0H);65N=59A;'5E( T*"0EW:&5N
M.B C=F%L=65#:&%N9V5D#0H)"7-E;F0Z("-S971-;V1I9FEE9 T*"0ET;SH@
M<V5L9BX-"@EE9&ET;W(@.CT@365N=4-O;7!O<V5R(&-R96%T94]N.B!M96YU
M5F%L=64N#0H)961I=&]R('-H;W=-;V1A;"X-"@EE9&ET;W(@:7-#;VYF:7)M
M960@:694<G5E.B!;:6YS<&5C=&]R(&%S<&5C=$-H86YG960Z("-M96YU0F%R
M(&]F.B!E9&ET961=(2 A#0HA5FEE=T-O;7!O<V5R(&-A=&5G;W)I97-&;W(Z
M("-E9&ET365N=4)A<B%C;VUM86YD<R%P=6)L:6,A("$-"@T*(59I97=#;VUP
M;W-E<B!M971H;V1S1F]R(0T*#0IE9&ET0V]N=&5X=$UE;G4-"@DB26YV;VME
M('1H92!-96YU0V]M<&]S97(@;VX@=&AE(&-O;G1E>'0@;65N=2!O9B!T:&4@
M<')I;6%R>5-E;&5C=&EO;BXB#0H-"@E\(&UE;G5686QU92!E9&ET;W(@961I
M=&5D('P-"@EE9&ET960@.CT@<V5L9B!P<FEM87)Y4V5L96-T:6]N+@T*"6UE
M;G5686QU92 Z/2!E9&ET960@87-P96-T5F%L=64Z("-C;VYT97AT365N=2X-
M"@EM96YU5F%L=64@#0H)"7=H96XZ("-V86QU94-H86YG960-"@D)<V5N9#H@
M(W-E=$UO9&EF:65D#0H)"71O.B!S96QF+@T*"65D:71O<B Z/2!-96YU0V]M
M<&]S97(@8W)E871E3VXZ(&UE;G5686QU92X-"@EE9&ET;W(@<VAO=TUO9&%L
M+@T*"65D:71O<B!I<T-O;F9I<FUE9"!I9E1R=64Z(%MI;G-P96-T;W(@87-P
M96-T0VAA;F=E9#H@(V-O;G1E>'1-96YU(&]F.B!E9&ET961=(2 A#0HA5FEE
M=T-O;7!O<V5R(&-A=&5G;W)I97-&;W(Z("-E9&ET0V]N=&5X=$UE;G4A8V]M
3;6%N9',A<'5B;&EC(2 A#0H-"@``
`
end


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Blair McGlashan
In reply to this post by Blair McGlashan
"Blair McGlashan" <[hidden email]> wrote in message
news:[hidden email]...
> Attached is a replacement patch that supercedes the previous one. In
> particular this fixes the problem of external changes reported to the PAI
> (such as when editing menus in the view composer with the WYSIWYG editor)
> not being updated correctly in the aspect tree.

Replacements for the bogus #moveFirst/moveLast methods in the patch.

Regards

Blair
-------------------------------
!SequenceableCollectionPresenter methodsFor!

moveFirst
 "Moves the current selection to be the first item in the receiver's list"

 | list index |
 index := listPresenter selectionByIndex.
 list := self listModel.
 list noEventsDo:
   [| item |
   item := list at: index.
   list replaceFrom: 2 to: index with: list startingAt: 1.
   list at: 1 put: item].
 list notifyListChanged.
 listPresenter selectionByIndex: 1! !
!SequenceableCollectionPresenter categoriesFor:
#moveFirst!commands!operations!public! !

!SequenceableCollectionPresenter methodsFor!

moveLast
 "Moves the current selection to be the last  item in the receiver's list"

 | list index last |
 index := listPresenter selectionByIndex.
 list := self listModel.
 last := list size.
 list noEventsDo:
   [| item |
   item := list at: index.
   list
    replaceFrom: index
    to: last - 1
    with: list
    startingAt: index + 1.
   list at: last put: item].
 list notifyListChanged.
 listPresenter selectionByIndex: last! !
!SequenceableCollectionPresenter categoriesFor:
#moveLast!commands!operations!public! !


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Bill Schwab-2
Blair,

Question/Suggestion: would it be appropriate and not difficult for you to
distribute patches as a running .st file with everything to be applied?
That would make it more idiot proof.

Have a good one,

Bill

--
Wilhelm K. Schwab, Ph.D.
[hidden email]


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Chris Uppal-3
In reply to this post by Blair McGlashan
Blair,

I'm a bit confused with the patches, so I may have got this wrong.  I've
applied the patch in your initial message in this thread, then the one in
your message dated 2002/04/17 14:31, and then the one in the message I'm
actually replying to.

You asked for feedback.  I'm not sure that this is expected to be fixed yet,
but just in case:  I'm still unable to copy-and-paste menus in the VC's
embedded PAI.  To reproduce:

    Open SmalltalkWorkspace.'Default view'.
    Save it under a new name.
    Go to the contextMenu aspect.
    Add a new menu item.
    Select the existing 'Edit' menu and 'Copy' it.
    Select the new menu item and paste the menu over it.

That should appear to have worked, but now refresh the VC in whatever manner
is available to you (save and re-open or whatever).  The new menu has been
added, but is still an empty menu, the paste operation had no lasting
effect.

    -- chris


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Blair McGlashan
"Chris Uppal" <[hidden email]> wrote in message
news:[hidden email]...
> Blair,
>
> I'm a bit confused with the patches, so I may have got this wrong.  I've
> applied the patch in your initial message in this thread, then the one in
> your message dated 2002/04/17 14:31, and then the one in the message I'm
> actually replying to.

Chronological order should do it.

>
> You asked for feedback.  I'm not sure that this is expected to be fixed
yet,
> but just in case:  I'm still unable to copy-and-paste menus in the VC's
> embedded PAI.  To reproduce:

No, that is still outstanding - its the same problem as changes to the menu
items made through the PAI not actually updating back to the view. It has to
do with the propagation of modifications to immutable aspects up the tree. I
think I know how to fix it, but I'm still writing the SUnit tests to prove
it.

We are hoping to ship a release candidate tomorrow, which will include the
fix.

>
>     Open SmalltalkWorkspace.'Default view'.
>     Save it under a new name.
>     Go to the contextMenu aspect.
>     Add a new menu item.
>     Select the existing 'Edit' menu and 'Copy' it.
>     Select the new menu item and paste the menu over it.
>
> That should appear to have worked, but now refresh the VC in whatever
manner
> is available to you (save and re-open or whatever).  The new menu has been
> added, but is still an empty menu, the paste operation had no lasting
> effect.

The easiest way to refresh it, BTW, is the Refresh command on the PAI
context menu, now bound to F5 for the release (which has unfortunately meant
juggling around the accelerators a bit in the VC).

Regards

Blair


Reply | Threaded
Open this post in threaded view
|

Re: Important PAI Patch

Chris Uppal-3
Blair,

> We are hoping to ship a release candidate tomorrow, which will include the
> fix.

You probably know allready, but just in case this is something that has
slipped through the net, the RC doesn't yet fix this one.

> Blair

    -- chris