On Sun, Oct 8, 2017 at 11:33 PM, Tobias Pape Das.Linux@gmx.de wrote:
On 08.10.2017, at 22:02, H. Hirzel hannes.hirzel@gmail.com wrote:
Found out that probably the following fix has to be made in addition
(see thread MorphicProject subclass: EtoysProject )
Or this:
SmartRefStream>>multiNewParagraphttfclpomsswfpp0
^ NewParagraph
But note that In Etoys MultiNewParagraph looks like this:
ProtoObject #() Object #() NewParagraph #('text' 'textStyle' 'firstCharacterIndex' 'container' 'lines' 'positionWhenComposed' 'offsetToEnd' 'maxRightX' 'selectionStart' 'selectionStop' 'wantsColumnBreaks' 'focused') MultiNewParagraph #('presentationText' 'presentationLines') While in Squeak5/trunk it looks like that:
ProtoObject #() Object #() NewParagraph #('text' 'textStyle' 'firstCharacterIndex' 'container' 'lines' 'positionWhenComposed' 'offsetToEnd' 'maxRightX' 'selectionStart' 'selectionStop' 'wantsColumnBreaks' 'focused' 'caretRect' 'showCaret' 'caretColor' 'selectionColor' 'unfocusedSelectionColor')
So 'presentationText' and 'presentationLines' will shadow 'caretRect' and 'showCaret'...
In theory the loading process will notice that the class structure changed and map inst vars by name, so there should be no shadowing. As Bob wrote, convertToCurrentVersion:refStream: gets a dictionary of variables.
- Bert -