Karl Ramberg uploaded a new version of Morphic to project The Trunk:
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. ! |
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, [hidden email] <[hidden email]> wrote: > Karl Ramberg uploaded a new version of Morphic to project The Trunk: > 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. > > ! > > > |
Hi, I'm sorry I forgot to mention the context here Best. Karl On Mon, May 21, 2018 at 6:18 AM, H. Hirzel <[hidden email]> wrote: Thank you, Karl, for this important update on the road to make |
Hi Karl, a call to #releaseParagraph instead of #releaseParagraphReally might be more robust here. Or did you run into other issues there? Best, Marcel
|
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 <[hidden email]> wrote:
|
Ah, okay. Might be related to TextMorphPlus and GeeMail, which seemed to be the reason for this #releaseParagraphReally indirection. Hmmm.... Best, Marcel
|
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@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 <[hidden email]> 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 <[hidden email]>: > 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 <[hidden email] > [mailto:[hidden email]]> 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 <[hidden email] > [mailto:[hidden email]]>: > Hi, > I'm sorry I forgot to mention the context here > > Best. > Karl > > > On Mon, May 21, 2018 at 6:18 AM, H. Hirzel <[hidden email] > [mailto:[hidden email]]> 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, [hidden email] > [mailto:[hidden email]] > <[hidden email] [mailto:[hidden email]]> 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. >> >> ! >> >> >> > > > TestResult_Project_TableLayout_listCentering_2_loaded_from_Squeak3.2_2018-05-23.png (97K) Download Attachment TableLayoutCentering2a.001.pr (11K) Download Attachment TableLayoutCentering2a.gif (2K) Download Attachment |
Free forum by Nabble | Edit this page |