[squeak-dev] The Trunk: Morphic-kfr.1435.mcz
H. Hirzel
hannes.hirzel at gmail.com
Wed May 23 04:50:34 UTC 2018
Yes, TextMorphPlus and GeeMail and maybe just TextMorph as well have issues.
The following is a test to demonstrate a result which has been
achieved so far ---
No TextMorphPlus and GeeMail,
just RectangleMorphs and SimpleButtonMorphs arranged with a TableLayout.
Steps in Squeak 3.2
-----------------------------
1) Open Squeak 3.2-4956
2) Create a project
3) Open a workspace and paste the code below [1]
4) Save the project locally - a *.pr file is generated.
Steps in Squeak 6.0a
-------------------------------
5) Open Squeak 6.0a trunk #18000
6) WorldMenu -> appearance ... -> set display depth ... .> 16bit
7) Drop pr file from point 4 onto the desktop
Result
---------
8) The project loads successfully (screen shot attached)
Comment 1: There are issues with refreshing the screen (at leas on
Linux / Ubuntu). It was necessary to click the middle button in the
upper right corner of the OS window.
Comment 2: First I had a workspace open in Squeak 3.2 with the script
[1] which creates the slide. The workspace was saved with the project
file. However the workspace made the project NOT to load properly in
Squeak 6.0a --> see upcoming mail.
-------------------------------------------------------------------------------------------------------------------------
[1] Code to be executed in Squeak 3.2 to create a slide with a demo for the
TableLayout
-------------------------------------------------------------------------------------------------------------------------
"Parameters"
|
slideExtent
fontName
titleFontPointSize
slideColor1
createSlideBlk
slide
container
btn1
btn2
btnPanel
|
"------------------------------------------------------------------------"
slideExtent := 640 @ 480.
slideColor1 := Color white.
"fontName := 'BitstreamVeraSans'."
"titleFontPointSize := 24."
xLeft := 20.
xRight := 360.
yContent := 100.
"------------------------------------------------------------------------"
"createSlideBlock
a block is like a function definition assigned to an instance variable.
The block created here takes two parameters
aColor
sTitleString
To activate the block send the message #value:value to it. For example
createSlideBlk value: Color yellow value: 'Presentations made easy'.
This will actually execute the code and thus build a slide morph which
is a RectangleMorph
with a property #isSlide set to true.
The result of the block is the object returned by the last statement.
In this case 'slide'.
"
createSlideBlk := [:aColor :aTitleString |
| titleTextMorph |
slide := RectangleMorph new.
slide extent: slideExtent.
slide color: aColor.
slide position: 0 @ 10.
slide borderWidth: 0.
slide setProperty: #isSlide toValue: true.
titleTextMorph := TextMorph new.
titleTextMorph contentsWrapped: aTitleString.
"NO setting of font size in this test"
"titleTextMorph fontName: fontName pointSize: titleFontPointSize."
titleTextMorph extent: slideExtent x @ 50.
titleTextMorph position: 20 @ 20.
slide addMorph: titleTextMorph.
slide position: 0 at 20.
].
"Receipe for a single page
copy code from step04createSlideBlock
then do
(createSlideBlk value: slideColor1 value: 'TableLayout listCentering 2')"
slide := createSlideBlk value: slideColor1 value: 'TableLayout
listCentering 2'.
container := RectangleMorph new.
container layoutPolicy: TableLayout new.
container listDirection: #bottomToTop.
container hResizing: #rigid.
container height: 300.
container hResizing: #shrinkWrap.
container layoutInset: 10.
container cellInset: 2.
container listCentering: #justified.
container addMorph: (RectangleMorph new color: Color red).
container addMorph: (RectangleMorph new color: Color yellow; width: 80).
container addMorph: (RectangleMorph new color: Color green).
btn1 := SimpleButtonMorph new.
btn1 hResizing: #spaceFill.
btn1 target: container.
btn1 label: 'listCentering: #center'.
btn1 actionSelector: #listCentering:.
btn1
arguments: (Array with: #center).
btn2 := SimpleButtonMorph new.
btn2 hResizing: #spaceFill.
btn2 target: container.
btn2 label: 'listCentering: #justified'.
btn2 actionSelector: #listCentering:.
btn2
arguments: (Array with: #justified).
btnPanel := RectangleMorph new.
btnPanel height: 300.
btnPanel color: slideColor1.
btnPanel layoutPolicy: TableLayout new.
btnPanel listDirection: #topToBottom.
btnPanel width: 220.
btnPanel height: 250.
btnPanel borderWidth: 0.
btnPanel listCentering: #justified.
btnPanel layoutInset: 0.
btnPanel cellInset: 0.
btnPanel addMorphBack: btn1.
btnPanel addMorphBack: btn2.
container position: xLeft @ yContent.
slide addMorph: container.
btnPanel position: xRight @ yContent.
slide addMorph: btnPanel.
slide openInWorld
On 5/22/18, Marcel Taeumel <marcel.taeumel at hpi.de> wrote:
> Ah, okay. Might be related to TextMorphPlus and GeeMail, which seemed to be
> the reason for this #releaseParagraphReally indirection. Hmmm....
>
> Best,
> Marcel
> Am 22.05.2018 09:35:08 schrieb karl ramberg <karlramberg at gmail.com>:
> Hi,
> I did that in the previous version of this method, but found that old
> paragraph was not released.
> And the 10 year old paragraph was not worth saving :-)
>
> Best,
> Karl
>
> On Tue, 22 May 2018 at 08:21, Marcel Taeumel <marcel.taeumel at hpi.de
> [mailto:marcel.taeumel at hpi.de]> wrote:
>
> Hi Karl,
>
> a call to #releaseParagraph instead of #releaseParagraphReally might be more
> robust here. Or did you run into other issues there?
>
> Best,
> Marcel
> Am 21.05.2018 11:48:46 schrieb karl ramberg <karlramberg at gmail.com
> [mailto:karlramberg at gmail.com]>:
> Hi,
> I'm sorry I forgot to mention the context here
>
> Best.
> Karl
>
>
> On Mon, May 21, 2018 at 6:18 AM, H. Hirzel <hannes.hirzel at gmail.com
> [mailto:hannes.hirzel at gmail.com]> wrote:
>
> Thank you, Karl, for this important update on the road to make
> projects from early Squeak versions load successfully!
>
>
> A suggestion for the comment:
>
> If it is
>
> 'Really release the chached state of TextMorph objects'
>
> then the log on the Transcript when doing the in-image update is more
> instructive.
>
>
>
> Currently:
>
> TRANSCRIPT
>
> Flush old cache on loading
>
> ========== ReleaseBuilder-mt.181 ==========
>
> Adds the new prefs #haloForAll and #metaMenuForAll to the release builder.
>
> ========== HelpSystem-Core-mt.103 ==========
>
> Fixes an endless-loop bug to could occur when fetching swiki subtopics.
>
> ========== Update completed: 17970 -> 17995 ==========
>
> ----SNAPSHOT----{18 May 2018 . 11:33:19 pm}
> Squeak6.0alpha-17967-32bit.image priorSource: 23618708
> ----QUIT----{18 May 2018 . 11:40:29 pm}
> Squeak6.0alpha-17967-32bit.image priorSource: 23695810
> ========== Morphic-kfr.1435 ==========
>
> Really release the cached state
>
> ========== WebClient-Core-ul.115 ==========
>
> Decrease the priority of connection handler processes from 60 to 30,
> to avoid potential image lockups.
>
> ========== Update completed: 17995 -> 17997 ==========
>
>
> On Sun, 20 May 2018 10:47:31 0000, commits at source.squeak.org
> [mailto:commits at source.squeak.org]
> <commits at source.squeak.org [mailto:commits at source.squeak.org]> wrote:
>> Karl Ramberg uploaded a new version of Morphic to project The Trunk:
>> http://source.squeak.org/trunk/Morphic-kfr.1435.mcz
>> [http://source.squeak.org/trunk/Morphic-kfr.1435.mcz]
>>
>> ==================== Summary ====================
>>
>> Name: Morphic-kfr.1435
>> Author: kfr
>> Time: 20 May 2018, 12:47:10.545467 pm
>> UUID: 6e156072-40fa-d344-815f-76673cd22724
>> Ancestors: Morphic-mt.1434
>>
>> Really release the cached state
>>
>> =============== Diff against Morphic-mt.1434 ===============
>>
>> Item was changed:
>> ----- Method: TextMorph>>convertToCurrentVersion:refStream: (in
>> category
>> 'objects from disk') -----
>> convertToCurrentVersion: varDict refStream: smartRefStrm
>>
>> self borderWidth ifNil: [
>> self borderWidth: 0.
>> self removeProperty: #fillStyle].
>> + self releaseParagraphReally.
>> - self releaseEditor.
>> - self releaseParagraph.
>> -
>> ^ super convertToCurrentVersion: varDict refStream: smartRefStrm.
>>
>> !
>>
>>
>>
>
>
>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TestResult_Project_TableLayout_listCentering_2_loaded_from_Squeak3.2_2018-05-23.png
Type: image/png
Size: 72703 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20180523/b9e81cd2/attachment-0001.png>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TableLayoutCentering2a.001.pr
Type: application/x-squeak-project
Size: 8249 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20180523/b9e81cd2/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TableLayoutCentering2a.gif
Type: image/gif
Size: 1850 bytes
Desc: not available
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20180523/b9e81cd2/attachment-0001.gif>
More information about the Squeak-dev
mailing list
|