[squeak-dev] The Trunk: ToolBuilder-Kernel-cmm.52.mcz
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:
>> ==================== 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).
- Bert -
>> =============== Diff against ToolBuilder-Kernel-dtl.51 ===============
>> Item was changed:
>> ----- Method: ProgressInitiationException>>defaultAction (in category 'as yet unclassified') -----
>> + 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