Marcel Taeumel uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-mt.1352.mcz
==================== Summary ====================
Name: System-mt.1352
Author: mt
Time: 17 May 2022, 11:35:48.573268 am
UUID: 1691db25-7e7f-a142-be41-a2d57721c5ca
Ancestors: System-dtl.1351
Adds new preference to scale-up (or down) the default extent of tool windows. Note that all tools are optimized for 1024@768 at 100% system scale factor.
Change this preference to accommodate very large screens.
=============== Diff against System-dtl.1351 ===============
Item was changed:
Object subclass: #RealEstateAgent
instanceVariableNames: ''
+ classVariableNames: 'PlaceWindowsAtPointer ReverseStaggerOffset ScaleFactor StaggerOffset StaggerOrigin StandardSize StandardWindowOrigins WindowScaleFactor'
- classVariableNames: 'PlaceWindowsAtPointer ReverseStaggerOffset ScaleFactor StaggerOffset StaggerOrigin StandardSize StandardWindowOrigins'
poolDictionaries: ''
category: 'System-Support'!
!RealEstateAgent commentStamp: '<historical>' prior: 0!
Responsible for real-estate management on the screen, which is to say, controlling where new windows appear, with what sizes, etc. 5/20/96 sw!
Item was added:
+ ----- Method: RealEstateAgent class>>windowScaleFactor (in category 'preferences') -----
+ windowScaleFactor
+ <preference: 'Scale Factor for Default Extent of Tool Windows'
+ categoryList: #(Morphic Tools Accessibility)
+ description: 'The extent of tool windows is tweaked for a world extent of 1024@768 (or its scaled equivalent). If you have a larger screen available, you might want to increase a tool''s default extent. Note that you can also increase the system''s overall scale factor instead.'
+ type: #String>
+ ^ WindowScaleFactor ifNil: [1.0]!
Item was added:
+ ----- Method: RealEstateAgent class>>windowScaleFactor: (in category 'preferences') -----
+ windowScaleFactor: aFloatOrNil
+
+ WindowScaleFactor := aFloatOrNil.!
David T. Lewis uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-dtl.1351.mcz
==================== Summary ====================
Name: System-dtl.1351
Author: dtl
Time: 14 May 2022, 11:23:07.834222 am
UUID: fb26b2a7-3279-4fb2-ac69-c2a9f1e87f29
Ancestors: System-eem.1350
Move startUp and shutDown methods back to ImageSegment so they will be evaluated as intended
=============== Diff against System-eem.1350 ===============
Item was added:
+ ----- Method: ImageSegment class>>shutDown (in category 'system startup') -----
+ shutDown
+ "Delete segment files that can't be used after this image is saved."
+
+ "This is Optional.
+ (1) How tell if saving image now? Only do if is.
+ (2) NativeImageSegmentRootStub allInstancesDo:
+ If more than one file, delete all but one we are using now.
+ Leave files with not stubs (could be out in a segment)
+ Must forbid two projects from having the same name!!
+ (3) all Projects do:
+ If project is in, delete all files with its name.
+ "
+ !
Item was added:
+ ----- Method: ImageSegment class>>startUp (in category 'system startup') -----
+ startUp
+ | choice |
+ "Minimal thing to assure that a .segs folder is present"
+
+ (Preferences valueOfFlag: #projectsSentToDisk) ifTrue:
+ [(FileDirectory default includesKey: (FileDirectory localNameFor: self folder)) ifFalse:
+ [choice := Project uiManager
+ chooseOptionFrom: #('Create folder' 'Quit without saving')
+ title:
+ 'The folder with segments for this image is missing.\' withCRs,
+ self folder, '\If you have moved or renamed the image file,\' withCRs,
+ 'please Quit and rename the segments folder in the same way'.
+ choice = 1 ifTrue: [FileDirectory default createDirectory: self folder].
+ choice = 2 ifTrue: [Smalltalk snapshot: false andQuit: true]]]
+
+ !
Item was removed:
- ----- Method: NativeImageSegment class>>shutDown (in category 'fileIn/Out') -----
- shutDown
- "Delete segment files that can't be used after this image is saved."
-
- "This is Optional.
- (1) How tell if saving image now? Only do if is.
- (2) NativeImageSegmentRootStub allInstancesDo:
- If more than one file, delete all but one we are using now.
- Leave files with not stubs (could be out in a segment)
- Must forbid two projects from having the same name!!
- (3) all Projects do:
- If project is in, delete all files with its name.
- "
- !
Item was removed:
- ----- Method: NativeImageSegment class>>startUp (in category 'fileIn/Out') -----
- startUp
- | choice |
- "Minimal thing to assure that a .segs folder is present"
-
- (Preferences valueOfFlag: #projectsSentToDisk) ifTrue:
- [(FileDirectory default includesKey: (FileDirectory localNameFor: self folder)) ifFalse:
- [choice := Project uiManager
- chooseOptionFrom: #('Create folder' 'Quit without saving')
- title:
- 'The folder with segments for this image is missing.\' withCRs,
- self folder, '\If you have moved or renamed the image file,\' withCRs,
- 'please Quit and rename the segments folder in the same way'.
- choice = 1 ifTrue: [FileDirectory default createDirectory: self folder].
- choice = 2 ifTrue: [Smalltalk snapshot: false andQuit: true]]]
-
- !
Eliot Miranda uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-eem.1350.mcz
==================== Summary ====================
Name: System-eem.1350
Author: eem
Time: 13 May 2022, 12:00:54.487493 pm
UUID: aac138f4-26f5-4ff8-ac4b-fa0e89bdf2c0
Ancestors: System-xw.1349
Allow CodeHolder annotations to include #package. Needs Tools-eem.1156.
=============== Diff against System-xw.1349 ===============
Item was changed:
----- Method: Preferences class>>annotationInfo (in category 'prefs - annotations') -----
annotationInfo
"Answer a list of pairs characterizing all the available kinds of annotations; in each pair, the first element is a symbol representing the info type, and the second element is a string providing the corresponding balloon help"
^ #(
-
(timeStamp 'The time stamp of the last submission of the method.')
(author 'The author''s full name if known.')
(firstComment 'The first comment in the method, if any.')
(masterComment 'The comment at the beginning of the supermost implementor of the method if any.')
(documentation 'Comment at beginning of the method or, if it has none, comment at the beginning of a superclass''s implementation of the method')
(messageCategory 'Which method category the method lies in')
(sendersCount 'A report of how many senders there of the message.')
(implementorsCount 'A report of how many implementors there are of the message.')
(recentChangeSet 'The most recent change set bearing the method.')
(allChangeSets 'A list of all change sets bearing the method.')
(priorVersionsCount 'A report of how many previous versions there are of the method' )
+ (priorTimeStamp 'The time stamp of the penultimate submission of the method, if any')
+ (package 'The Monticello package containing the method/class'))!
- (priorTimeStamp 'The time stamp of the penultimate submission of the method, if any'))!
tim Rowledge uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-tpr.1155.mcz
==================== Summary ====================
Name: Tools-tpr.1155
Author: tpr
Time: 12 May 2022, 12:49:24.759381 pm
UUID: a73844bb-c34b-4398-863e-dc806a623f72
Ancestors: Tools-ct.1153
This allows the 'find class...' dialog to add the recently browser-viewed classes at the top of the list of all classes.
=============== Diff against Tools-ct.1153 ===============
Item was changed:
----- Method: Browser>>findClass (in category 'system category functions') -----
findClass
"Search for a class by name."
| foundClass |
(self multiWindowState notNil
or: [self okToChange]) ifFalse:
[^self classNotFound].
+ foundClass := Project uiManager chooseClassOrTraitFrom: self environment withRecentList: self recentClassList.
- foundClass := UIManager default chooseClassOrTraitFrom: self environment.
foundClass ifNil: [^self classNotFound].
(self selectedClass notNil
and: [self multiWindowState notNil
"Can only support multi-window if original window has all the right panes."
and: [self multiWindowState prototype isHierarchy not]]) ifTrue:
[(self classList includes: foundClass name)
ifTrue: [self multiWindowState copyWindow]
ifFalse: [self multiWindowState addNewWindow]].
self selectCategoryForClass: foundClass.
self selectClass: foundClass!
Item was changed:
----- Method: Browser>>recent (in category 'class list') -----
recent
+ "Let the user select from a list of recently visited classes"
- "Let the user select from a list of recently visited classes. 11/96 stp.
- 12/96 di: use class name, not classes themselves.
- : dont fall into debugger in empty case"
| className class recentList |
+ recentList := self recentClassList.
- recentList := (RecentClasses reject: [:s | s = self selectedClassName]) select: [:n | Smalltalk hasClassNamed: n].
recentList size = 0 ifTrue: [^ Beeper beep].
className := UIManager default chooseFrom: recentList values: recentList.
className == nil ifTrue: [^ self].
self okToChange ifFalse: [^ self].
class := Smalltalk at: className.
self selectCategoryForClass: class.
self classListIndex: (self classListIndexOf: class name)!
Item was added:
+ ----- Method: Browser>>recentClassList (in category 'class list') -----
+ recentClassList
+
+
+ ^(RecentClasses reject: [:s | s = self selectedClassName]) select: [:n | Smalltalk hasClassNamed: n]!
tim Rowledge uploaded a new version of ToolBuilder-Morphic to project The Trunk:
http://source.squeak.org/trunk/ToolBuilder-Morphic-tpr.314.mcz
==================== Summary ====================
Name: ToolBuilder-Morphic-tpr.314
Author: tpr
Time: 12 May 2022, 12:48:30.296071 pm
UUID: 73487fcb-62cf-4a6a-8254-0473faf55697
Ancestors: ToolBuilder-Morphic-mt.313
Extend the #chooseClassOr... to handle a list of recently browser-viewed classes. This allows the 'find class...' dialog to add those classes at the top of the list of all classes.
=============== Diff against ToolBuilder-Morphic-mt.313 ===============
Item was changed:
----- Method: MorphicUIManager>>chooseClassOrTrait:from: (in category 'ui requests') -----
chooseClassOrTrait: label from: environment
"Let the user choose a Class or Trait. Use ListChooser in Morphic."
+ ^self chooseClassOrTrait: label from: environment withRecentList: nil!
- | names index |
- names := environment classAndTraitNames.
- index := self
- chooseFrom: names
- lines: #()
- title: label.
- index = 0 ifTrue: [ ^nil ].
- ^environment
- at: (names at: index)
- ifAbsent: [ nil ]!
Item was added:
+ ----- Method: MorphicUIManager>>chooseClassOrTrait:from:withRecentList: (in category 'ui requests') -----
+ chooseClassOrTrait: label from: environment withRecentList: recentList
+ "Let the user choose a Class or Trait. Use ListChooser in Morphic."
+
+ | names index |
+ names := environment classAndTraitNames.
+ recentList ifNotNil:
+ [names := names asOrderedCollection addAllFirst: recentList; yourself ].
+ index := self
+ chooseFrom: names
+ lines: #()
+ title: label.
+ index = 0 ifTrue: [ ^nil ].
+ ^environment
+ at: (names at: index)
+ ifAbsent: [ nil ]!
tim Rowledge uploaded a new version of ToolBuilder-Kernel to project The Trunk:
http://source.squeak.org/trunk/ToolBuilder-Kernel-tpr.160.mcz
==================== Summary ====================
Name: ToolBuilder-Kernel-tpr.160
Author: tpr
Time: 12 May 2022, 12:48:05.327118 pm
UUID: 984ee703-1a4c-4685-addb-8ff8ce573a1c
Ancestors: ToolBuilder-Kernel-nice.159
Extend the #chooseClassOr... to handle a list of recently browser-viewed classes. This allows the 'find class...' dialog to add those classes at the top of the list of all classes.
=============== Diff against ToolBuilder-Kernel-nice.159 ===============
Item was added:
+ ----- Method: UIManager>>chooseClassOrTrait:from:withRecentList: (in category 'ui requests - code') -----
+ chooseClassOrTrait: label from: environment withRecentList: ignored
+ "Let the user choose a Class or Trait."
+
+ | pattern |
+ pattern := self request: label.
+ ^ self classOrTraitFrom: environment pattern: pattern label: label
+ !
Item was changed:
----- Method: UIManager>>chooseClassOrTraitFrom: (in category 'ui requests - code') -----
chooseClassOrTraitFrom: anEnvironment
"Let the user choose a Class or Trait from the given environment"
+ ^self chooseClassOrTrait: 'Class name or fragment?' from: anEnvironment withRecentList: nil!
- ^self chooseClassOrTrait: 'Class name or fragment?' from: anEnvironment!
Item was added:
+ ----- Method: UIManager>>chooseClassOrTraitFrom:withRecentList: (in category 'ui requests - code') -----
+ chooseClassOrTraitFrom: anEnvironment withRecentList: recentList
+ "Let the user choose a Class or Trait from the given environment"
+
+ ^self chooseClassOrTrait: 'Class name or fragment?' from: anEnvironment withRecentList: recentList!
Marcel Taeumel uploaded a new version of Graphics to project The Trunk:
http://source.squeak.org/trunk/Graphics-mt.516.mcz
==================== Summary ====================
Name: Graphics-mt.516
Author: mt
Time: 12 May 2022, 3:07:20.219892 pm
UUID: 287f8878-a8da-b44d-bd09-07e4c06f3cec
Ancestors: Graphics-mt.515
Fixes MVC drawing issue on platforms with graphics backends that let primitive 126 fail, which was always be possible but only reality on the latest OSVM on macOS using -metal or -core-graphics backends.
Sigh. Come on. Backwards compatibility. I will port this fix back to Squeak 5.3.
=============== Diff against Graphics-mt.515 ===============
Item was changed:
----- Method: DisplayScreen>>deferUpdatesIn:while: (in category 'other') -----
deferUpdatesIn: aRectangle while: aBlock
| result |
+ ((self deferUpdates: true) ifNil: [true]) ifTrue: [
+ "Outer call did set this already. Ignore here."
+ ^ aBlock value].
- (self deferUpdates: true) ifTrue: [^aBlock value].
result := aBlock value.
self deferUpdates: false.
self forceToScreen: aRectangle.
^result!
David T. Lewis uploaded a new version of MonticelloConfigurations to project The Trunk:
http://source.squeak.org/trunk/MonticelloConfigurations-dtl.178.mcz
==================== Summary ====================
Name: MonticelloConfigurations-dtl.178
Author: dtl
Time: 11 May 2022, 5:01:01.588549 pm
UUID: 9a68881f-d5a1-4202-b8c9-f32485629ed7
Ancestors: MonticelloConfigurations-mt.177
When saving a configuration, use packageAndBranchName in the dialog box for suggested name of next version. Prevents accidental save to the 'update' stream when 'update.FOO' was intended for the FOO branch.
=============== Diff against MonticelloConfigurations-mt.177 ===============
Item was changed:
----- Method: MCConfiguration>>suggestedNameOfNextVersion (in category 'private') -----
suggestedNameOfNextVersion
"Suggest a name for the next version of this configuration. The format is assumed to be name-authorInitials.version. Automatically increments the version, takes author initials from Utilities."
^'{1}-{2}.{3}' format: {
name
ifNil: [ 'newConfiguration' ]
+ ifNotNil: [ name asMCVersionName packageAndBranchName ].
- ifNotNil: [ name asMCVersionName packageName ].
Utilities authorInitials.
name
ifNil: [ 1 ]
ifNotNil: [ name asMCVersionName versionNumber + 1 ] }!