[Pkg] The Trunk: System-tpr.999.mcz

commits at source.squeak.org commits at source.squeak.org
Fri Feb 2 00:13:34 UTC 2018

tim Rowledge uploaded a new version of System to project The Trunk:

==================== Summary ====================

Name: System-tpr.999
Author: tpr
Time: 1 February 2018, 4:13:05.258994 pm
UUID: 70bdd4f7-96fe-4233-bff2-48012f607163
Ancestors: System-dtl.998

Finally, remove the Project>>dispatchTo:addPrefixAndSend:withArguments: method.

See prior commits 

=============== Diff against System-dtl.998 ===============

Item was changed:
  ----- Method: Preferences class>>restoreDefaultFonts (in category 'prefs - fonts') -----
  	"Since this is called from menus, we can take the opportunity to prompt for missing font styles."
  	Preferences restoreDefaultFonts
  	UserInterfaceTheme allThemes
  		detect: [:ea | UserInterfaceTheme current name ~= ea name
  			and: [UserInterfaceTheme current name includesSubstring: ea name]]
  		ifFound: [:ea | 
+ 			(Project uiManager
- 			(Project current uiManager
  				confirm: ('Do you want to apply\"{1}"?' translated withCRs format: {ea name})
  				title: 'Apply UI Theme' translated) ifTrue: [ea apply]]
  		ifNone: [self inform: 'Sorry, could not revert font choices.\Please apply a UI theme with smaller fonts.' translated withCRs].!

Item was removed:
- ----- Method: Project class>>isDispatchSelector: (in category 'dispatching') -----
- isDispatchSelector: aSelector
- 	"In support of package modularity, some method selectors are generated based
- 	on project type and dispatched to the appropriate implementation for that project.
- 	For methods with these selectors, let dispatchTo:addPrefixAndSend:withArguments:
- 	be found as a sender."
- 	| dispatchPrefixes prefix otherSelector |	
- 	dispatchPrefixes := Project allSubclasses collect:
- 		[:cls | cls basicNew selectorPrefixForDispatch].
- 	"If it doesn't start with a recognized prefix, it's not dispatchable"
- 	prefix := dispatchPrefixes detect: [:each | aSelector beginsWith: each]
- 		ifNone: [^false].
- 	"If a similar symbol exists for all other prefixes, it's likely dispatchable"
- 	^(dispatchPrefixes copyWithout: prefix)
- 		allSatisfy: [:otherPrefix |
- 			otherSelector := otherPrefix, (aSelector allButFirst: prefix size).
- 			Symbol hasInterned: otherSelector ifTrue: [:s]]
- !

Item was removed:
- ----- Method: Project>>dispatchTo:addPrefixAndSend:withArguments: (in category 'dispatching') -----
- dispatchTo: requestor addPrefixAndSend: baseSelector withArguments: arguments
- 	"Sender wants to perform a method with dependencies on the type of project.
- 	Dispatch to an appropriate method for the current project.
- 	This method is a workaround for lack of proper ToolBuilder support in the sender,
- 	and should be eliminated when possible (dtl Feb 2010)"
- 	<hasLiteralTest: #isDispatchSelector:>
- 	| selector |
- 	selector := (self selectorPrefixForDispatch, baseSelector) asSymbol.
- 	^ requestor perform: selector withArguments: arguments!

Item was changed:
  ----- Method: Project>>okToChange (in category 'release') -----
  	"Answer whether the window in which the project is housed can be dismissed -- which is destructive. We never clobber a project without confirmation"
  	| answer |
  	(self confirm: ('Do you really want to delete the project\{1}\and all its content?' withCRs translated format:{self name}))
  		ifFalse: [^ false].
  	self subProjects ifNotEmpty: [:sp |
+ 		answer := Project uiManager
- 		answer := Project current uiManager
  			chooseFrom: #(
  				"1" 'Lift all sub-projects'
  				"2" 'Discard all sub-projects (NO UNDO!!)'
  				"3 or 0" 'Cancel')
  			lines: #(2)
  			title: ('The project {1}\contains {2} sub-project(s).' withCRs translated format:{self name. sp size}).
  		(answer = 0 or: [answer = 3]) ifTrue: [^ false].
  		answer = 1 ifTrue: [self liftSubProjects. ^ true].
  		answer = 2 ifTrue: [^ sp allSatisfy: [:ea | ea okToChange]]].
  	^ true!

More information about the Packages mailing list