[squeak-dev] Re: The Inbox: Monticello-edc.456.mcz

Bert Freudenberg bert at freudenbergs.de
Thu Apr 14 14:18:34 UTC 2011


On 14.04.2011, at 15:29, Hannes Hirzel wrote:

> OK I see.

No you don't ;-)

> SimpleMorphic needs it's own subclass of UIManager (which is in
> Toolbuilder category).

Perhaps. But this has nothing to do with the issue at hand.

> Then we can add to UIManager
> 
>> request:
>> initialAnswer:
>>                       centerAt:
>>                       inWorld:
>>                       onCancelReturn:
>>                       acceptOnCR:
>>                       answerExtent:
> 

This method must *not* be added to ToolBuilder. It takes a World as one of its parameters. That is just plain wrong.

- Bert -

> but then with self subclassreponsibility
> as the other methods like
> 
> request: queryString initialAnswer: defaultAnswer centerAt: aPoint
> 	"Create an instance of me whose question is queryString with the given
> 	initial answer. Invoke it centered at the given point, and answer the
> 	string the user accepts. Answer the empty string if the user cancels."
> 
> 	^self subclassResponsibility
> 
> HJH
> 
> On 4/14/11, Andreas Raab <andreas.raab at gmx.de> wrote:
>> On 4/14/2011 11:57, Bert Freudenberg wrote:
>>> On 13.04.2011, at 21:23, Hannes Hirzel wrote:
>>> 
>>>> OK, together with
>>>> 
>>>> ToolBuilder-Kernel-edc.48.mcz
>>>> ToolBuilder-Morphic-edc.77.mcz
>>>> 
>>>> it makes sense.
>>>> 
>>>> All the three changes should be committed, please....
>>>> 
>>>> --Hannes
>>> 
>>> I don't think so. No public ToolBuilder interface should depend on
>>> Morphic. So I'd rather not add a method that needs a "world" argument.
>> 
>> +1. Making the ToolBuilder interface depend on a particular UI framework
>> would defeat its entire purpose.
>> 
>> Cheers,
>>   - Andreas
>> 
>>>> On 4/13/11, Hannes Hirzel<hannes.hirzel at gmail.com>  wrote:
>>>>> I think the second and the third change is fine. But I do not see the
>>>>> method
>>>>> 
>>>>> request:
>>>>> initialAnswer:
>>>>>                       centerAt:
>>>>>                       inWorld:
>>>>>                       onCancelReturn:
>>>>>                       acceptOnCR:
>>>>>                       answerExtent:
>>>>> 
>>>>> in MorphicUIManager
>>>>> 
>>>>> --Hannes
>>>>> 
>>>>> On Tue, 12 Apr 2011 11:42:06.272 0000, commits at source.squeak.org
>>>>> <commits at source.squeak.org>  wrote:
>>>>>> Edgar J. De Cleene uploaded a new version of Monticello to project The
>>>>>> Inbox:
>>>>>> http://source.squeak.org/inbox/Monticello-edc.456.mcz
>>>>>> 
>>>>>> ==================== Summary ====================
>>>>>> 
>>>>>> Name: Monticello-edc.456
>>>>>> Author: edc
>>>>>> Time: 12 April 2011, 8:43:35.257 am
>>>>>> UUID: a9b0cc20-0fed-4a2d-92a6-ed1df442421b
>>>>>> Ancestors: Monticello-nice.455
>>>>>> 
>>>>>> Some cleanup for avoid UI dependencies with LegacyMorphic
>>>>>> 
>>>>>> =============== Diff against Monticello-nice.455 ===============
>>>>>> 
>>>>>> Item was changed:
>>>>>>  ----- Method: MCRepository class>>fillInTheBlankConfigure: (in
>>>>>> category
>>>>>> 'configuring') -----
>>>>>>  fillInTheBlankConfigure: aTemplateString
>>>>>>  	| chunk repo |
>>>>>>  	
>>>>>>  	aTemplateString ifNil: [ ^ false ].
>>>>>> + 	chunk := UIManager default
>>>>>> - 	chunk := FillInTheBlankMorph
>>>>>>  			request: self fillInTheBlankRequest
>>>>>>  			initialAnswer: aTemplateString
>>>>>>  			centerAt: Sensor cursorPoint
>>>>>>  			inWorld: World
>>>>>>  			onCancelReturn: nil
>>>>>>  			acceptOnCR: false
>>>>>>  			answerExtent: 400 at 120.
>>>>>>  			
>>>>>>  	chunk
>>>>>>  		ifNotNil: [
>>>>>>  			repo := self readFrom: chunk readStream.
>>>>>>  			repo creationTemplate: chunk.
>>>>>>  	].
>>>>>> 
>>>>>>  	^ repo!
>>>>>> 
>>>>>> Item was changed:
>>>>>>  ----- Method: MCSmtpRepository class>>morphicConfigure (in category
>>>>>> 'as
>>>>>> yet unclassified') -----
>>>>>>  morphicConfigure
>>>>>>  	| address |
>>>>>> + 	address := UIManager default  request: 'Email address:'.
>>>>>> - 	address := FillInTheBlankMorph request: 'Email address:'.
>>>>>>  	^ address isEmpty ifFalse: [self new emailAddress: address]!
>>>>>> 
>>>>>> Item was changed:
>>>>>>  ----- Method: MCWorkingCopyBrowser>>addWorkingCopy (in category
>>>>>> 'actions')
>>>>>> -----
>>>>>>  addWorkingCopy
>>>>>>  	|name|
>>>>>> + 	name := UIManager default  request: 'Name of package:'.
>>>>>> - 	name := FillInTheBlankMorph request: 'Name of package:'.
>>>>>>  	name isEmptyOrNil ifFalse:
>>>>>>  		[PackageInfo registerPackageName: name.
>>>>>>  		workingCopy := MCWorkingCopy forPackage: (MCPackage new name:
>>>>>> name).
>>>>>>  		workingCopyWrapper := nil.
>>>>>>  		self repositorySelection: 0].
>>>>>>  	self workingCopyListChanged; changed: #workingCopySelection;
>>>>>> changed:
>>>>>> #repositoryList.
>>>>>>  	self changedButtons.!
>>>>>> 
>>>>>> 
>>>>>> 
>>>>> 
>>>> 
>>> 
>>> 
>>> 
>>> 
>> 
>> 
>> 
> 




More information about the Squeak-dev mailing list