<div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000">
                                        Next step will be to produce release candidates (RC1, RC2, ...). Since we seem to have our final release VM, let's go for RC1 end of next week.<div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div>
                                        <blockquote class="history_container" type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
                        <p style="color: #AAAAAA; margin-top: 10px;">Am 15.02.2020 15:12:00 schrieb Thiede, Christoph <christoph.thiede@student.hpi.uni-potsdam.de>:</p><div style="font-family:Arial,Helvetica,sans-serif">

<div id="divtagdefaultwrapper" style="font-size: 12pt;color: #000000;font-family: Calibri,Helvetica,sans-serif" dir="ltr">
<p>The current update notice states:</p>
<p><br>
</p>
<p>> <span style="font-size: 12pt">FEATURE FREEZE. A new release is being prepared. </span><span style="font-size: 12pt">There will be only bugfixes, but no new features.</span></p>
<div id="Signature">
<div id="divtagdefaultwrapper" dir="ltr" style="font-size: 12pt;color: rgb(0, 0, 0);font-family: Calibri, Helvetica, sans-serif, EmojiFont, "Apple Color Emoji", "Segoe UI Emoji", NotoColorEmoji, "Segoe UI Symbol", "Android Emoji", EmojiSymbols">
<div name="divtagdefaultwrapper" style="font-family: Calibri,Arial,Helvetica,sans-serif;font-size: ;margin: 0">
<div>
<div class="_rp_T4" id="Item.MessagePartBody">
<div class="_rp_U4 ms-font-weight-regular ms-font-color-neutralDark rpHighlightAllClass rpHighlightBodyClass" id="Item.MessageUniqueBody" style="font-family:wf_segoe-ui_normal,"Segoe UI","Segoe WP",Tahoma,Arial,sans-serif,serif,EmojiFont">
<div dir="ltr">
<div id="divtagdefaultwrapper"><span style="font-family: Calibri,Helvetica,sans-serif,EmojiFont,Apple Color Emoji,Segoe UI Emoji,NotoColorEmoji,Segoe UI Symbol,Android Emoji,EmojiSymbols">
<div id="Signature">
<div style="margin:0px"><span style=""></span></div>
</div>
</span></div>
</div>
</div>
</div>
<div class="_rp_T4" id="Item.MessagePartBody"><br>
</div>
<div class="_rp_T4" id="Item.MessagePartBody">So fixes should be okay? Won't you switch the ReleaseBuilder to another state when we come into a critical phase of the release?</div>
<div class="_rp_T4" id="Item.MessagePartBody"><br>
</div>
<div class="_rp_T4" id="Item.MessagePartBody">Best,</div>
<div class="_rp_T4" id="Item.MessagePartBody">Christoph</div>
</div>
<div><span style="font-size: 10pt;color: #808080"></span></div>
</div>
</div>
</div>
</div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><span style="font-family: Calibri, sans-serif;color: #000000"><b>Von:</b> Squeak-dev <squeak-dev-bounces@lists.squeakfoundation.org> im Auftrag von Eliot Miranda <eliot.miranda@gmail.com><br>
<b>Gesendet:</b> Freitag, 14. Februar 2020 19:45:31<br>
<b>An:</b> The general-purpose Squeak developers list<br>
<b>Betreff:</b> [squeak-dev] 5.3 [was Re: The Trunk: MorphicExtras-mt.269.mcz]</span>
<div> </div>
</div>
<div>
<div dir="ltr">
<div dir="ltr">Hi All,<br>
</div>
<div dir="ltr"><br>
</div>
<div>    I see people committing to trunk again but we haven't got 5.3 out the door yet.  I'm busy until next week but perhaps I could help on Tuesday to try and get 5.3 finished and then we can properly get back to trunk.</div>
<div><br>
</div>
<br>
<div class="gmail_quote">
<div dir="ltr" class="gmail_attr">On Fri, Feb 14, 2020 at 6:11 AM Marcel Taeumel <<a href="mailto:marcel.taeumel@hpi.de">marcel.taeumel@hpi.de</a>> wrote:<br>
</div>
<blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex;border-left-width: 1px;border-left-style: solid;border-left-color: rgb(204,204,204);padding-left: 1ex;min-width: 500px">
<div id="gmail-m_-2802566629400813718__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: rgb(0,0,0)">
<br>
<div></div>
<blockquote type="cite" style="border-left-style: solid;border-width: 1px;margin-top: 20px;margin-left: 0px;padding-left: 10px;min-width: 500px">
<p style="color:rgb(170,170,170);margin-top:10px">Am 14.02.2020 15:09:00 schrieb <a href="mailto:commits@source.squeak.org" target="_blank">
commits@source.squeak.org</a> <<a href="mailto:commits@source.squeak.org" target="_blank">commits@source.squeak.org</a>>:</p>
<div style="font-family:Arial,Helvetica,sans-serif">Marcel Taeumel uploaded a new version of MorphicExtras to project The Trunk:
<br>
<a href="http://source.squeak.org/trunk/MorphicExtras-mt.269.mcz" target="_blank">http://source.squeak.org/trunk/MorphicExtras-mt.269.mcz</a>
<br>
<br>
==================== Summary ==================== <br>
<br>
Name: MorphicExtras-mt.269 <br>
Author: mt <br>
Time: 14 February 2020, 3:07:58.332667 pm <br>
UUID: 825d4289-5a5b-3e4e-8828-f518d1a1a8c3 <br>
Ancestors: MorphicExtras-mt.268 <br>
<br>
Some fixes in scrap book and book morph in support of Etoys. <br>
<br>
=============== Diff against MorphicExtras-mt.268 =============== <br>
<br>
Item was changed: <br>
----- Method: BookMorph>>insertPageLabel:morphs: (in category 'insert and delete') -----
<br>
insertPageLabel: labelString morphs: morphList <br>
<br>
| m c labelAllowance | <br>
self insertPage. <br>
labelString ifNotNil: <br>
+ [m := labelString asMorph. <br>
- [m := (TextMorph new extent: currentPage width@20; contents: labelString). <br>
m lock. <br>
m position: currentPage position + (((currentPage width - m width) // 2) @ 5). <br>
currentPage addMorph: m. <br>
labelAllowance := 40] <br>
ifNil: <br>
[labelAllowance := 0]. <br>
<br>
"use a column to align the given morphs, then add them to the page" <br>
c := AlignmentMorph newColumn wrapCentering: #center; cellPositioning: #topCenter.
<br>
c addAllMorphs: morphList. <br>
c position: currentPage position + (0 @ labelAllowance). <br>
currentPage addAllMorphs: morphList. <br>
^ currentPage <br>
! <br>
<br>
Item was changed: <br>
----- Method: BooklikeMorph>>fullControlSpecs (in category 'page controls') -----
<br>
fullControlSpecs <br>
<br>
^ { <br>
#spacer. <br>
#variableSpacer. <br>
{'-'. #deletePage. 'Delete this page' translated}. <br>
#spacer. <br>
{'«'. #firstPage. 'First page' translated}. <br>
#spacer. <br>
{'<'. #previouspage.="" 'previous="" page'="" translated}.=""><br>
#spacer. <br>
{'·'. #invokeBookMenu. 'Click here to get a menu of options for this book.' translated}.
<br>
#spacer. <br>
{'>'. #nextPage. 'Next page' translated}. <br>
#spacer. <br>
{ '»'. #lastPage. 'Final page' translated}. <br>
#spacer. <br>
{'+'. #insertPage. 'Add a new page after this one' translated}. <br>
#variableSpacer. <br>
+ {'o'. #fewerPageControls. 'Fewer controls' translated} <br>
- {'³'. #fewerPageControls. 'Fewer controls' translated} <br>
} <br>
! <br>
<br>
Item was changed: <br>
----- Method: BooklikeMorph>>makePageControlsFrom: (in category 'page controls') -----
<br>
makePageControlsFrom: controlSpecs <br>
"From the controlSpecs, create a set of page control and return them -- this method does *not* add the controls to the receiver."
<br>
<br>
| c col row | <br>
+ c := (color saturation > 0.4) ifTrue: [color slightlyLighter] ifFalse: [color slightlyDarker].
<br>
- c := (color saturation > 0.1) ifTrue: [color slightlyLighter] ifFalse: [color slightlyDarker].
<br>
col := AlignmentMorph newColumn. <br>
col color: c; borderWidth: 0; layoutInset: 0. <br>
col hResizing: #spaceFill; vResizing: #shrinkWrap; extent: 5@5. <br>
<br>
row := AlignmentMorph newRow. <br>
row color: c; borderWidth: 0; layoutInset: 0. <br>
row hResizing: #spaceFill; vResizing: #shrinkWrap; extent: 5@5. <br>
controlSpecs do: [:spec | | lastGuy b | <br>
spec == #showDescription ifTrue: [row addMorphBack: self makeDescriptionViewer]. <br>
spec == #pageNumber ifTrue: [row addMorphBack: self makePageNumberItem]. <br>
spec == #spacer ifTrue: [row addTransparentSpacerOfSize: (10 @ 0)]. <br>
spec == #variableSpacer ifTrue: [ <br>
row addMorphBack: AlignmentMorph newVariableTransparentSpacer]. <br>
spec class == Array ifTrue: [ <br>
spec first isSymbol <br>
ifTrue: [b := ThreePhaseButtonMorph labelSymbol: spec first] <br>
ifFalse: [b := SimpleButtonMorph new borderWidth: 2; <br>
+ borderColor: Color black; color: Color white. <br>
- borderColor: Color black; color: Color veryLightGray. <br>
b label: spec first font: Preferences standardMenuFont]. <br>
b target: self; actionSelector: spec second; setBalloonText: spec third. <br>
(spec atPin: 4) = #border <br>
ifTrue: [b actWhen: #buttonDown] <br>
ifFalse: [b borderWidth: 0]. "default is none" <br>
row addMorphBack: b. <br>
(((lastGuy := spec last asLowercase) includesSubstring: 'menu') or: <br>
[lastGuy includesSubstring: 'designations']) <br>
ifTrue: [b actWhen: #buttonDown]]]. "pop up menu on mouseDown" <br>
col addMorphBack: row. <br>
^ col! <br>
<br>
Item was changed: <br>
----- Method: BooklikeMorph>>shortControlSpecs (in category 'page controls') -----
<br>
shortControlSpecs <br>
"Answer specs defining the widgets in the short form of the control panel." <br>
<br>
^ { <br>
+ {#MenuIcon. #invokeShortBookMenu. 'Click here to get a menu of options for this book.' translated}.
<br>
- #spacer. <br>
#variableSpacer. <br>
+ {#PrevPage. #previousPage. 'Previous page' translated}. <br>
- {'<'. #previouspage.="" 'previous="" page'="" translated}.=""><br>
#spacer. <br>
+ #pageNumber. <br>
- {#MenuIcon. #invokeShortBookMenu. 'Click here to get a menu of options for this book.' translated}.
<br>
#spacer. <br>
+ {#NextPage. #nextPage. 'Next page' translated}. <br>
- {'>'. #nextPage. 'Next page' translated}. <br>
#spacer. <br>
#variableSpacer. <br>
+ {'...'. #showMoreControls. 'More controls' translated} <br>
- {#RightCaret. #showMoreControls. 'More controls' translated} <br>
} <br>
! <br>
<br>
Item was changed: <br>
----- Method: ScrapBook>>addToTrash: (in category 'scraps') ----- <br>
addToTrash: aMorph <br>
"Paste the object onto a page of the system Trash book, unless the preference is set to empty the trash immediately."
<br>
<br>
| aPage | <br>
TrashCanMorph preserveTrash ifFalse: [^ self]. <br>
<br>
aMorph position: book pages first position + (0@40). <br>
book pages do: [:pp | <br>
(pp submorphs size = 1 and: [pp hasProperty: #trash]) ifTrue: "perhaps remove that property here"
<br>
["page is blank" <br>
^ pp addMorph: aMorph]]. <br>
+ aPage := book insertPageLabel: ('{1} {2}' format: Time dateAndTimeNow) <br>
- aPage := book insertPageLabel: Time dateAndTimeNow printString <br>
morphs: (Array with: aMorph). <br>
aPage setProperty: #trash toValue: true! <br>
<br>
Item was changed: <br>
----- Method: ScrapBook>>scrapBook (in category 'scraps') ----- <br>
scrapBook <br>
| header aButton label | <br>
^ book ifNil: [ <br>
+ book := BookMorph new pageSize: 300@300; setNameTo: 'scraps' translated. <br>
+ book addCornerGrips. <br>
- book := BookMorph new pageSize: 200@300; setNameTo: 'scraps' translated. <br>
book color: Color yellow muchLighter. <br>
book borderColor: Color darkGray; borderWidth: 2. <br>
book removeEverything; showPageControls; insertPage. <br>
+ <br>
header := AlignmentMorph newRow wrapCentering: #center; cellPositioning: #leftCenter.
<br>
header setProperty: #header toValue: true. <br>
+ header addMorph: (aButton := ThreePhaseButtonMorph labelSymbol: #'Halo-Collapse').
<br>
- header addMorph: (aButton := SimpleButtonMorph new label: 'O' font: Preferences standardButtonFont).
<br>
aButton target: book; <br>
- color: Color tan; <br>
actionSelector: #delete; <br>
setBalloonText: 'Close the trashcan.\(to view again later, click on any trashcan).' withCRs translated.
<br>
- <br>
header addMorphBack: AlignmentMorph newVariableTransparentSpacer beSticky. <br>
header addMorphBack: (label := UpdatingStringMorph new target: self) beSticky. <br>
label getSelector: #trashTitle; useStringFormat; step. <br>
header addMorphBack: AlignmentMorph newVariableTransparentSpacer beSticky. <br>
+ header addMorphBack: (aButton := ThreePhaseButtonMorph labelSymbol: #'Halo-Dismiss').
<br>
+ aButton target: self; <br>
+ actionSelector: #maybeEmptyTrash; <br>
- header addMorphBack: (aButton := SimpleButtonMorph new label: 'E' translated font: Preferences standardButtonFont).
<br>
- aButton target: self; color: Color veryLightGray; actionSelector: #maybeEmptyTrash;
<br>
setBalloonText: 'Click here to empty the trash.' translated. <br>
+ book currentPage <br>
+ layoutPolicy: TableLayout new; <br>
+ addMorph: (TextMorph new <br>
+ contents: 'Objects you drag into the trash will automatically be saved here, one object per page, in case you need them later. To disable this feature set the "preserveTrash" Preference to false.\\You can individually expunge objects by hitting the "-" control
 (behind "..."). You can empty out all the objects in the trash can by hitting the "X" button at top right.' withCRs translated;
<br>
+ hResizing: #spaceFill). <br>
- book currentPage addMorph: (TextMorph new contents: 'Objects you drag into the trash will automatically be saved here, one object per page, in case you need them later. To disable this feature set the "preserveTrash" Preference to false.\\You can individually
 expunge objects by hitting the - control, and you can empty out all the objects in the trash can by hitting the "E" button at top right.' withCRs translated
<br>
- wrappedTo: 190). <br>
<br>
book addMorphFront: header. <br>
book setProperty: #scraps toValue: true].! <br>
<br>
Item was changed: <br>
----- Method: ScrapBook>>trashTitle (in category 'scraps') ----- <br>
trashTitle <br>
+ <br>
+ ^ 'T R A S H' translated! <br>
- | label pgs | <br>
- label := 'T R A S H' translated. <br>
- ^ (pgs := book pages size) < 2=""><br>
- ifTrue: <br>
- [label] <br>
- ifFalse: <br>
- [label, (' ({1} pages)' translated format:{pgs})]! <br>
<br>
Item was changed: <br>
+ ----- Method: TrashCanMorph>>acceptDroppingMorph:event: (in category 'dropping/grabbing') -----
<br>
- ----- Method: TrashCanMorph>>acceptDroppingMorph:event: (in category 'layout') -----
<br>
acceptDroppingMorph: aMorph event: evt <br>
SoundService soundEnabled <br>
ifTrue: [TrashCanMorph preserveTrash <br>
ifTrue: [self class playDeleteSound] <br>
ifFalse: [self playSoundNamed: 'scratch']]. <br>
evt hand visible: true. <br>
self state: #off. <br>
aMorph delete. <br>
aMorph == ScrapBook default scrapBook <br>
ifFalse: [ScrapBook default addToTrash: aMorph removeHalo]! <br>
<br>
<br>
</div>
</blockquote>
</div>
<br>
</blockquote>
</div>
<br clear="all">
<div><br>
</div>
-- <br>
<div dir="ltr" class="gmail_signature">
<div dir="ltr">
<div><span style="font-size: 10pt;border-collapse: separate">
<div>_,,,^..^,,,_<br>
</div>
<div>best, Eliot</div>
</span></div>
</div>
</div>
</div>
</div>
</div></blockquote></div>