[squeak-dev] The Trunk: Monticello-bf.535.mcz
Levente Uzonyi
leves at elte.hu
Mon Apr 15 06:37:16 UTC 2013
On Sun, 14 Apr 2013, Chris Muller wrote:
> Let me try again. This is the bug where sometimes clicking "Ok" on
> the MCSaveVersionDialog -- nothing happens and the package doesn't get
> saved..?
That happens when you modify the package after opening the dialog.
Levente
>
> I haven't researched this, is there some reason this dialog must have
> a separate process instead of just a simple callback when OK or Cancel
> is pressed?
>
> On Sun, Apr 14, 2013 at 11:09 AM, Chris Muller <asqueaker at gmail.com> wrote:
>> Arrrgghh!!! I just don't understand why you seem to LOVE modal
>> warnings and messages don't you? The problem here is the modality of
>> the dialog in the first place, the solution should be to get rid of
>> that not to layer on more modality.
>>
>> The user should be directing the computer, not vice-versa.
>>
>> On Thu, Apr 11, 2013 at 7:42 PM, <commits at source.squeak.org> wrote:
>>> Bert Freudenberg uploaded a new version of Monticello to project The Trunk:
>>> http://source.squeak.org/trunk/Monticello-bf.535.mcz
>>>
>>> ==================== Summary ====================
>>>
>>> Name: Monticello-bf.535
>>> Author: bf
>>> Time: 11 April 2013, 5:42:14.486 pm
>>> UUID: 29816693-6d94-4dd7-ab81-c8ede42620ef
>>> Ancestors: Monticello-bf.534
>>>
>>> Warn user about an interrupted modal dialog.
>>>
>>> =============== Diff against Monticello-bf.534 ===============
>>>
>>> Item was changed:
>>> Model subclass: #MCTool
>>> + instanceVariableNames: 'morph label modalProcess modalValue'
>>> - instanceVariableNames: 'morph label modal modalValue'
>>> classVariableNames: ''
>>> poolDictionaries: ''
>>> category: 'Monticello-UI'!
>>>
>>> Item was changed:
>>> ----- Method: MCTool>>answer: (in category 'morphic ui') -----
>>> answer: anObject
>>> + (modalProcess notNil and: [modalProcess ~~ Processor activeProcess])
>>> + ifTrue: [^self inform: 'This modal dialog was interrupted, please close it'].
>>> modalValue := anObject.
>>> self close.!
>>>
>>> Item was changed:
>>> ----- Method: MCTool>>show (in category 'morphic ui') -----
>>> show
>>> + modalProcess := nil.
>>> - modal := false.
>>> Smalltalk at: #ToolBuilder ifPresent: [:tb | tb open: self. ^ self].
>>> ^self window openInWorldExtent: self defaultExtent; yourself!
>>>
>>> Item was changed:
>>> ----- Method: MCTool>>showLabelled: (in category 'morphic ui') -----
>>> showLabelled: labelString
>>> + modalProcess := nil.
>>> - modal := false.
>>> self label: labelString.
>>> ^(self window)
>>> openInWorldExtent: self defaultExtent;
>>> yourself!
>>>
>>> Item was changed:
>>> ----- Method: MCTool>>showModally (in category 'morphic ui') -----
>>> showModally
>>> + modalProcess := Processor activeProcess.
>>> - modal := true.
>>> self window openInWorldExtent: (400 at 400).
>>> [self window world notNil] whileTrue: [
>>> self window outermostWorldMorph doOneCycle.
>>> ].
>>> morph := nil.
>>> ^ modalValue!
>>>
>>>
>
>
More information about the Squeak-dev
mailing list
|