[squeak-dev] The Trunk: Morphic-nice.707.mcz
Nicolas Cellier
nicolas.cellier.aka.nice at gmail.com
Mon Dec 16 15:06:35 UTC 2013
Oops, i also accidentally removed a #toRemove method.
Well it is still there but not sent in Etoys 5.0 (but still, someone can
doIt, who knows...).
2013/12/16 <commits at source.squeak.org>
> Nicolas Cellier uploaded a new version of Morphic to project The Trunk:
> http://source.squeak.org/trunk/Morphic-nice.707.mcz
>
> ==================== Summary ====================
>
> Name: Morphic-nice.707
> Author: nice
> Time: 16 December 2013, 4:00:55.177 pm
> UUID: 6b1cec19-f7ef-4bc2-a761-8f82e7a4c796
> Ancestors: Morphic-nice.706
>
> Use non logging Compiler protocol rather than providing a logged: false
> argument.
>
> =============== Diff against Morphic-nice.706 ===============
>
> Item was changed:
> ----- Method: Morph>>programmedMouseUp:for: (in category 'debug and
> other') -----
> programmedMouseUp: anEvent for: aMorph
> | aCodeString |
> self deleteAnyMouseActionIndicators.
> aCodeString := self valueOfProperty: #mouseUpCodeToRun ifAbsent:
> [^self].
> (self fullBounds containsPoint: anEvent cursorPoint) ifFalse:
> [^self].
>
> [(aCodeString isMessageSend)
> ifTrue: [aCodeString value]
> ifFalse:
> [Compiler
> evaluate: aCodeString
> for: self
> + notifying: nil]]
> - notifying: nil
> - logged: false]]
> on: ProgressTargetRequestNotification
> do: [:ex | ex resume: self] "in case a
> save/load progress display needs a home"!
>
> Item was removed:
> - ----- Method: MorphicProject>>navigatorFlapVisible (in category 'flaps
> support') -----
> - navigatorFlapVisible
> - "Answer whether a Navigator flap is visible"
> -
> - self flag: #toRemove. "unreferenced in image, check eToys"
> - ^ (Flaps sharedFlapsAllowed and:
> - [self flapsSuppressed not]) and:
> - [self isFlapIDEnabled: 'Navigator' translated]!
>
> Item was changed:
> ----- Method: SimpleButtonMorph>>setArguments (in category 'menu') -----
> setArguments
>
> | s newArgs newArgsArray |
> s := WriteStream on: ''.
> arguments do: [:arg | arg printOn: s. s nextPutAll: '. '].
> newArgs := UIManager default
> request:
> 'Please type the arguments to be sent to the target
> when this button is pressed separated by periods' translated
> initialAnswer: s contents.
> newArgs isEmpty ifFalse: [
> + newArgsArray := Compiler evaluate: '{', newArgs, '}' for:
> self.
> - newArgsArray := Compiler evaluate: '{', newArgs, '}' for:
> self logged: false.
> self arguments: newArgsArray].
> !
>
> Item was changed:
> ----- Method: SmalltalkEditor>>doItButtonFromSelection (in category
> 'do-its') -----
> doItButtonFromSelection
>
> | button string cm |
> self lineSelectAndEmptyCheck: [^ nil].
> button := SimpleButtonMorph new.
> string := self selection.
> (model respondsTo: #doItReceiver)
> ifTrue: [
> button setProperty: #rcvr toValue: model
> doItReceiver.
> button setProperty: #ctxt toValue: model
> doItContext].
>
> cm := (button valueOfProperty: #rcvr) class compilerClass new
> compiledMethodFor: string readStream
> in: (button valueOfProperty: #ctxt)
> to: (button valueOfProperty: #rcvr)
> notifying: nil
> + ifFail: [^ nil].
> - ifFail: [^ nil]
> - logged: false.
> button setProperty: #cm toValue: cm.
> button target: [:b |
> [(b valueOfProperty: #cm) valueWithReceiver: (b
> valueOfProperty: #rcvr) arguments:
> ((b valueOfProperty: #ctxt) ifNotNil: [{(b
> valueOfProperty: #ctxt) }] ifNil: [#()])]
> on: OutOfScopeNotification
> do: [ :ex | ex resume: true]];
> actionSelector: #value:;
> arguments: {button}.
> button label: string.
> ^ button.
> !
>
> Item was changed:
> ----- Method: SmalltalkEditor>>tallySelection (in category 'do-its')
> -----
> tallySelection
> "Treat the current selection as an expression; evaluate it and
> return the time took for this evaluation"
> | result rcvr ctxt valueAsString v |
> self lineSelectAndEmptyCheck: [^ self].
>
> (model respondsTo: #doItReceiver)
> ifTrue: [ rcvr := model doItReceiver.
> ctxt := model doItContext]
> ifFalse: [rcvr := ctxt := nil].
> result := [ | cm |
> cm := rcvr class evaluatorClass new
> compiledMethodFor: self selectionAsStream
> in: ctxt
> to: rcvr
> notifying: self
> + ifFail: [morph flash. ^ self].
> - ifFail: [morph flash. ^ self]
> - logged: false.
> Time millisecondsToRun:
> [v := cm valueWithReceiver: rcvr arguments: #() ].
> ]
> on: OutOfScopeNotification
> do: [ :ex | ex resume: true].
>
> "We do not want to have large result displayed"
> valueAsString := v printString.
> (valueAsString size > 30) ifTrue: [valueAsString := (valueAsString
> copyFrom: 1 to: 30), '...'].
> PopUpMenu
> inform: 'Time to compile and execute: ', result
> printString, 'ms res: ', valueAsString.
> !
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20131216/1d219a43/attachment.htm
More information about the Squeak-dev
mailing list
|