just for fun... extensibility of Morphic

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

just for fun... extensibility of Morphic

Stéphane Ducasse
awesome if you want to add a new handle .... guess what you have to  
edit this method :)

Morph>>balloonHelpTextForHandle: aHandle
        "Answer a string providing balloon help for the
        given halo handle"
        | itsSelector |
        itsSelector := aHandle eventHandler firstMouseSelector.
        itsSelector == #doRecolor:with: ifTrue: [^ 'Change color'].
        itsSelector == #mouseDownInDimissHandle:with:
                ifTrue: [^ Preferences preserveTrash
                                ifTrue: ['Move to trash']
                                ifFalse: ['Remove from screen']].
        #(#(#addFullHandles 'More halo handles') #(#addSimpleHandles 'Fewer  
halo handles') #(#chooseEmphasisOrAlignment 'Emphasis & alignment')  
#(#chooseFont 'Change font') #(#chooseNewGraphicFromHalo 'Choose a new  
graphic') #(#chooseStyle 'Change style') #(#dismiss 'Remove')  
#(#doDebug:with: 'Debug') #(#doDirection:with: 'Choose forward  
direction') #(#doDup:with: 'Duplicate')  #(#doMenu:with: 'Menu')  
#(#doGrab:with: 'Pick up')  #(#editDrawing 'Repaint')  
#(#makeNewDrawingWithin 'Paint new object')  
#(#mouseDownInCollapseHandle:with: 'Collapse')  
#(#mouseDownOnHelpHandle: 'Help')  
#(#prepareToTrackCenterOfRotation:with: 'Move object or set center of  
rotation') #(#presentViewMenu 'Present the Viewing menu')  
#(#startDrag:with: 'Move') #(#startGrow:with: 'Change size')  
#(#startRot:with: 'Rotate') #(#startScale:with: 'Change  
scale')#(#trackCenterOfRotation:with: 'Set center of rotation') )
                do: [:pair | itsSelector == pair first
                                ifTrue: [^ pair last]].
        ^ 'unknown halo handle'translated

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: just for fun... extensibility of Morphic

Schwab,Wilhelm K
Stef,

I was having a fairly nice day, until I saw this ;)

Bill




-----Original Message-----
From: [hidden email] [mailto:[hidden email]] On Behalf Of Stéphane Ducasse
Sent: Thursday, March 19, 2009 8:50 AM
To: Pharo Development
Subject: [Pharo-project] just for fun... extensibility of Morphic

awesome if you want to add a new handle .... guess what you have to edit this method :)

Morph>>balloonHelpTextForHandle: aHandle
        "Answer a string providing balloon help for the
        given halo handle"
        | itsSelector |
        itsSelector := aHandle eventHandler firstMouseSelector.
        itsSelector == #doRecolor:with: ifTrue: [^ 'Change color'].
        itsSelector == #mouseDownInDimissHandle:with:
                ifTrue: [^ Preferences preserveTrash
                                ifTrue: ['Move to trash']
                                ifFalse: ['Remove from screen']].
        #(#(#addFullHandles 'More halo handles') #(#addSimpleHandles 'Fewer halo handles') #(#chooseEmphasisOrAlignment 'Emphasis & alignment') #(#chooseFont 'Change font') #(#chooseNewGraphicFromHalo 'Choose a new
graphic') #(#chooseStyle 'Change style') #(#dismiss 'Remove')
#(#doDebug:with: 'Debug') #(#doDirection:with: 'Choose forward
direction') #(#doDup:with: 'Duplicate')  #(#doMenu:with: 'Menu')  
#(#doGrab:with: 'Pick up')  #(#editDrawing 'Repaint')  
#(#makeNewDrawingWithin 'Paint new object')
#(#mouseDownInCollapseHandle:with: 'Collapse')  
#(#mouseDownOnHelpHandle: 'Help')  
#(#prepareToTrackCenterOfRotation:with: 'Move object or set center of
rotation') #(#presentViewMenu 'Present the Viewing menu')
#(#startDrag:with: 'Move') #(#startGrow:with: 'Change size')
#(#startRot:with: 'Rotate') #(#startScale:with: 'Change
scale')#(#trackCenterOfRotation:with: 'Set center of rotation') )
                do: [:pair | itsSelector == pair first
                                ifTrue: [^ pair last]].
        ^ 'unknown halo handle'translated

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: just for fun... extensibility of Morphic

Alexandre Bergel
:-)


On 19 Mar 2009, at 15:19, Schwab,Wilhelm K wrote:

> Stef,
>
> I was having a fairly nice day, until I saw this ;)
>
> Bill
>
>
>
>
> -----Original Message-----
> From: [hidden email] [mailto:[hidden email]
> ] On Behalf Of Stéphane Ducasse
> Sent: Thursday, March 19, 2009 8:50 AM
> To: Pharo Development
> Subject: [Pharo-project] just for fun... extensibility of Morphic
>
> awesome if you want to add a new handle .... guess what you have to  
> edit this method :)
>
> Morph>>balloonHelpTextForHandle: aHandle
> "Answer a string providing balloon help for the
> given halo handle"
> | itsSelector |
> itsSelector := aHandle eventHandler firstMouseSelector.
> itsSelector == #doRecolor:with: ifTrue: [^ 'Change color'].
> itsSelector == #mouseDownInDimissHandle:with:
> ifTrue: [^ Preferences preserveTrash
> ifTrue: ['Move to trash']
> ifFalse: ['Remove from screen']].
> #(#(#addFullHandles 'More halo handles') #(#addSimpleHandles 'Fewer  
> halo handles') #(#chooseEmphasisOrAlignment 'Emphasis & alignment')  
> #(#chooseFont 'Change font') #(#chooseNewGraphicFromHalo 'Choose a new
> graphic') #(#chooseStyle 'Change style') #(#dismiss 'Remove')
> #(#doDebug:with: 'Debug') #(#doDirection:with: 'Choose forward
> direction') #(#doDup:with: 'Duplicate')  #(#doMenu:with: 'Menu')
> #(#doGrab:with: 'Pick up')  #(#editDrawing 'Repaint')
> #(#makeNewDrawingWithin 'Paint new object')
> #(#mouseDownInCollapseHandle:with: 'Collapse')
> #(#mouseDownOnHelpHandle: 'Help')
> #(#prepareToTrackCenterOfRotation:with: 'Move object or set center of
> rotation') #(#presentViewMenu 'Present the Viewing menu')
> #(#startDrag:with: 'Move') #(#startGrow:with: 'Change size')
> #(#startRot:with: 'Rotate') #(#startScale:with: 'Change
> scale')#(#trackCenterOfRotation:with: 'Set center of rotation') )
> do: [:pair | itsSelector == pair first
> ifTrue: [^ pair last]].
> ^ 'unknown halo handle'translated
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel  http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.






_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: just for fun... extensibility of Morphic

Igor Stasenko
code sucks ifTrue: ['Move to trash'].
:)

2009/3/19 Alexandre Bergel <[hidden email]>:

> :-)
>
>
> On 19 Mar 2009, at 15:19, Schwab,Wilhelm K wrote:
>
>> Stef,
>>
>> I was having a fairly nice day, until I saw this ;)
>>
>> Bill
>>
>>
>>
>>
>> -----Original Message-----
>> From: [hidden email] [mailto:[hidden email]
>> ] On Behalf Of Stéphane Ducasse
>> Sent: Thursday, March 19, 2009 8:50 AM
>> To: Pharo Development
>> Subject: [Pharo-project] just for fun... extensibility of Morphic
>>
>> awesome if you want to add a new handle .... guess what you have to
>> edit this method :)
>>
>> Morph>>balloonHelpTextForHandle: aHandle
>>       "Answer a string providing balloon help for the
>>       given halo handle"
>>       | itsSelector |
>>       itsSelector := aHandle eventHandler firstMouseSelector.
>>       itsSelector == #doRecolor:with: ifTrue: [^ 'Change color'].
>>       itsSelector == #mouseDownInDimissHandle:with:
>>               ifTrue: [^ Preferences preserveTrash
>>                               ifTrue: ['Move to trash']
>>                               ifFalse: ['Remove from screen']].
>>       #(#(#addFullHandles 'More halo handles') #(#addSimpleHandles 'Fewer
>> halo handles') #(#chooseEmphasisOrAlignment 'Emphasis & alignment')
>> #(#chooseFont 'Change font') #(#chooseNewGraphicFromHalo 'Choose a new
>> graphic') #(#chooseStyle 'Change style') #(#dismiss 'Remove')
>> #(#doDebug:with: 'Debug') #(#doDirection:with: 'Choose forward
>> direction') #(#doDup:with: 'Duplicate')  #(#doMenu:with: 'Menu')
>> #(#doGrab:with: 'Pick up')  #(#editDrawing 'Repaint')
>> #(#makeNewDrawingWithin 'Paint new object')
>> #(#mouseDownInCollapseHandle:with: 'Collapse')
>> #(#mouseDownOnHelpHandle: 'Help')
>> #(#prepareToTrackCenterOfRotation:with: 'Move object or set center of
>> rotation') #(#presentViewMenu 'Present the Viewing menu')
>> #(#startDrag:with: 'Move') #(#startGrow:with: 'Change size')
>> #(#startRot:with: 'Rotate') #(#startScale:with: 'Change
>> scale')#(#trackCenterOfRotation:with: 'Set center of rotation') )
>>               do: [:pair | itsSelector == pair first
>>                               ifTrue: [^ pair last]].
>>       ^ 'unknown halo handle'translated
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>>
>
> --
> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
> Alexandre Bergel  http://www.bergel.eu
> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>



--
Best regards,
Igor Stasenko AKA sig.

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project