[Squeakland] Unscalable picture Re: [Etoys] Squeak activity about
Measure
karl
karl.ramberg at comhem.se
Tue Apr 22 07:54:44 PDT 2008
Hilaire Fernandes wrote:
> How do you turn image dropped in the image as ImageMorph?
> =
Inspect the SketchMorph and do it:
ImageMorph new image: originalForm;openInWorld
Or file in this change set that adds a menu item that toggles =
SketchMorphs scalability.
Karl
> Hilaire
>
> 2008/4/22, karl <karl.ramberg at comhem.se>:
> =
>> Hilaire Fernandes wrote:
>>
>> =
>>> A simple pedagogical activity about measure for primary school students.
>>> http://swiki.ofset.org:8000/super/337
>>> You need to install Squeakland:
>>> http://www.squeakland.org/
>>>
>>> Eventually I would like to be able to lock the resize of the sticker.
>>>
>>>
>>> Hilaire
>>>
>>>
>>>
>>> =
>> My French is really horrible but I recognize animal names :-)
>> If you use ImageMorphs they will not resize.
>>
>> Karl
>>
>> =
>
>
> =
-------------- next part --------------
'From etoys3.0 of 24 February 2008 [latest update: #1985] on 22 April 2008 =
at 4:47:36 pm'!
"Change Set: UnscalableSketch
Date: 22 April 2008
Author: Karl Ramberg
Adds a menu item to toggle scalability if a picture"!
Morph subclass: #SketchMorph
instanceVariableNames: 'originalForm rotationStyle scalePoint framesToDwel=
l rotatedForm unscalable '
classVariableNames: ''
poolDictionaries: ''
category: 'Morphic-Basic'!
!SketchMorph methodsFor: 'geometry' stamp: '<no author> 4/22/2008 16:21'!
extent: newExtent
"Change my scale to fit myself into the given extent.
Avoid extents where X or Y is zero."
unscalable ifNotNil:[ unscalable ifTrue:[^self]].
(newExtent y =3D 0 or: [ newExtent x =3D 0 ]) ifTrue: [ ^self ].
self extent =3D newExtent ifTrue:[^self].
scalePoint _ newExtent asFloatPoint / (originalForm extent max: 1 at 1).
self layoutChanged.
! !
!SketchMorph methodsFor: 'menu' stamp: 'kfr 4/22/2008 16:36'!
toggleUnscalable
^self unscalable: (self unscalable not)! !
!SketchMorph methodsFor: 'menu' stamp: 'kfr 4/22/2008 16:30'!
unscalable
unscalable ifNil:[unscalable _ false].
^unscalable! !
!SketchMorph methodsFor: 'menu' stamp: 'kfr 4/22/2008 16:42'!
unscalableString
^ (self unscalable
ifTrue: ['<yes>']
ifFalse: ['<no>'])
, 'unscalable image' translated! !
!SketchMorph methodsFor: 'menu' stamp: 'kfr 4/22/2008 16:29'!
unscalable: aBoolean
unscalable _ aBoolean! !
!SketchMorph methodsFor: 'menus' stamp: 'kfr 4/22/2008 16:43'!
addToggleItemsToHaloMenu: aCustomMenu =
"Add toggle-items to the halo menu"
super addToggleItemsToHaloMenu: aCustomMenu.
aCustomMenu addUpdating: #unscalableString target: self action: #toggleUns=
calable.
(Smalltalk includesKey: #B3DRenderEngine) ifTrue: [
aCustomMenu addUpdating: #useInterpolationString target: self action: #to=
ggleInterpolation.
].
! !
SketchMorph removeSelector: #unscaleable!
Morph subclass: #SketchMorph
instanceVariableNames: 'originalForm rotationStyle scalePoint framesToDwel=
l rotatedForm unscalable'
classVariableNames: ''
poolDictionaries: ''
category: 'Morphic-Basic'!
More information about the Squeakland
mailing list