2009/5/22 Alain Plantec <[email protected]>:
> Igor Stasenko a écrit :
>> annotation pane is very useful thing. This is first thing i turning
>> on, when start using new image.
>>
> Hi Igor,
>
> how do you makes it work on old  browser. It is never updated.
> However, It is well implemented by OB, and  works very well with it.
> So the question is can I remove it from old browser (from the core).
> We can keep OB implementation and introduce an OB specific setting for it.
>
I'm using OB in Pharo, so removing this from old browsers doesn't
hurts much, i guess :)

> Regarding the old browser, It is very badly implemented and introduces
> very dirty dependences.
> See pieces of code below.
> We hare removing etoy or bookmorph for the same reasons.
>
> CodeHolder>>refreshAnnotation
> "If the receiver has an annotation pane that does not
>        bear unaccepted edits, refresh it"
>        (aPane := self dependents
>                                detect: [:m | (m inheritsFromAnyIn: 
> #('PluggableTextView'
> 'PluggableTextMorph' ))
>                                                and: [m getTextSelector == 
> #annotation]]
>                                ifNone: [])
>                ifNotNil: [:aPane | aPane hasUnacceptedEdits
>                                ifFalse: [aPane update: #annotation]]
>
> other "cool" pieces of code:
> PluggableTextMorph>>accept
>  ....
>        ok := self acceptTextInModel.
>        ok == true
>                ifTrue: [self setText: self getText.
>                        self hasUnacceptedEdits: false.
>                        (model dependents
>                                detect: [:dep | (dep isKindOf: 
> PluggableTextMorph)
>                                                and: [dep getTextSelector == 
> #annotation]]
>                                ifNone: [])
>                                ifNotNilDo: [:aPane | model changed: 
> #annotation]].
>  ...
> PluggableTextMorph>>cancel
>        self setText: self getText.
>        self setSelection: self getSelection.
>        getTextSelector == #annotation
>                ifFalse: [(aPane := model dependents
>                                                detect: [:dep | (dep isKindOf: 
> PluggableTextMorph)
>                                                                and: [dep 
> getTextSelector == #annotation]]
>                                                ifNone: [])
>
>
>                                ifNotNil: [:aPane | model changed: 
> #annotation]]
>
> Cheers
> Alain
>> 2009/5/21 Stéphane Ducasse <[email protected]>:
>>
>>> http://code.google.com/p/pharo/issues/detail?id=810
>>> Especially for the annotation panes in the old browser.
>>>
>>> Stef
>>>
>>> _______________________________________________
>>> Pharo-project mailing list
>>> [email protected]
>>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>>
>>>
>>
>>
>>
>>
>
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project



-- 
Best regards,
Igor Stasenko AKA sig.
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to