re the confusion of copyFrom: (i.e. that it looks to be part of the copyFrom:to: family) could we please come up with a renaming of copyFrom:, e.g. copyStateFrom: or copyInstVarsFrom: and start using it so that some time we may have (c copyFrom: i) = (c copyFrom: i to: c size) ?<br>
<br><div class="gmail_quote">On Thu, Mar 22, 2012 at 8:16 AM, <span dir="ltr"><<a href="mailto:commits@source.squeak.org">commits@source.squeak.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Bert Freudenberg uploaded a new version of Tools to project The Trunk:<br>
<a href="http://source.squeak.org/trunk/Tools-bf.397.mcz" target="_blank">http://source.squeak.org/trunk/Tools-bf.397.mcz</a><br>
<br>
==================== Summary ====================<br>
<br>
Name: Tools-bf.397<br>
Author: bf<br>
Time: 22 March 2012, 4:15:47.476 pm<br>
UUID: 01d6b8f6-6a5a-40cb-bafd-c266b07ec665<br>
Ancestors: Tools-bf.396<br>
<br>
Preserve dependents when making new inspector. Otherwise, the new inspector becomes unresponsive.<br>
<br>
=============== Diff against Tools-bf.396 ===============<br>
<br>
Item was changed:<br>
----- Method: Inspector>>inspect: (in category 'initialize-release') -----<br>
inspect: anObject<br>
"Initialize the receiver so that it is inspecting anObject. There is no current selection.<br>
<br>
Normally the receiver will be of the correct class (as defined by anObject inspectorClass),<br>
because it will have just been created by sedning inspect to anObject. However, the<br>
debugger uses two embedded inspectors, which are re-targetted on the current receiver<br>
each time the stack frame changes. The left-hand inspector in the debugger has its<br>
class changed by the code here. Care should be taken if this method is overridden to<br>
ensure that the overriding code calls 'super inspect: anObject', or otherwise ensures that<br>
the class of these embedded inspectors are changed back."<br>
<br>
| c |<br>
c := anObject inspectorClass.<br>
self class ~= c ifTrue: [<br>
self class format = c format<br>
ifTrue: [self primitiveChangeClassTo: c basicNew]<br>
+ ifFalse: [self becomeForward: (c basicNew copyFrom: self)]].<br>
- ifFalse: [self becomeForward: c basicNew]].<br>
"Set 'object' before sending the initialize message, because some implementations<br>
of initialize (e.g., in DictionaryInspector) require 'object' to be non-nil."<br>
<br>
object := anObject.<br>
self initialize!<br>
<br>
<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br>best,<div>Eliot</div><br>