[squeak-dev] The Trunk: ToolBuilder-Kernel-cmm.52.mcz

Bert Freudenberg bert at freudenbergs.de
Wed Oct 19 13:22:08 UTC 2011


On 19.10.2011, at 12:45, Levente Uzonyi wrote:

> On Wed, 19 Oct 2011, commits at source.squeak.org wrote:
> 
>> Chris Muller uploaded a new version of ToolBuilder-Kernel to project The Trunk:
>> http://source.squeak.org/trunk/ToolBuilder-Kernel-cmm.52.mcz
>> 
>> ==================== Summary ====================
>> 
>> Name: ToolBuilder-Kernel-cmm.52
>> Author: cmm
>> Time: 18 October 2011, 8:12:42.168 pm
>> UUID: 54416a65-63c1-4ba4-959e-7f1f7db3aa62
>> Ancestors: ToolBuilder-Kernel-dtl.51
>> 
>> Fix ability to safely catch Notification so that, if #displayProgressAt:from:to:during:  is sent, will actually execute the during block.
> 
> I don't like this change, because it breaks existing code and supports a
> bad pattern. For example ComplexProgressIndicator and Installer assumes that ProgressInitiationException >> #resume just resumes with nil without any side effects, so these are broken now.
> Catching all Notifications and just resuming them is something that doesn't work, because there may be other handlers which expect to catch them, so you should #pass the notifications that you don't want to swallow. Using Notification instead of specific subclasses is also a bad idea unless you really want to process all notifications. Maybe we should raise an error when someone is trying to signal a Notification, because that class is just a marker and not something that should be used as a Notification (I could say it's abstract, but I don't like this term, because in Smalltalk it doesn't have a well-defined meaning).
> 
> 
> Levente

+1

- Bert -

>> 
>> =============== Diff against ToolBuilder-Kernel-dtl.51 ===============
>> 
>> Item was changed:
>> ----- Method: ProgressInitiationException>>defaultAction (in category 'as yet unclassified') -----
>> defaultAction
>> + 	self resume!
>> -
>> - 	| result |
>> - 	result := UIManager default
>> - 		displayProgress: progressTitle
>> - 		at: aPoint
>> - 		from: minVal
>> - 		to: maxVal
>> - 		during: workBlock.
>> - 	self resume: result!
>> 
>> Item was added:
>> + ----- Method: ProgressInitiationException>>defaultResumeValue (in category 'as yet unclassified') -----
>> + defaultResumeValue
>> + 	^ UIManager default
>> + 		displayProgress: progressTitle
>> + 		at: aPoint
>> + 		from: minVal
>> + 		to: maxVal
>> + 		during: workBlock!
>> 
>> 
>> 
> 




More information about the Squeak-dev mailing list