'From etoys4.0 of 9 October 2008 [latest update: #2260] on 6 September 2009 at 10:00:26 pm'! "Change Set: grabPatchFeedback-sw Date: 6 September 2009 Author: Scott Wallace Show crosshair feedback during patch-grabbing. Restore display after patch-grabbing, to correct for gribblies sometimes left behind."! !SimpleSelectionMorph methodsFor: 'extending' stamp: 'sw 9/6/2009 21:59'! extendByHand: aHand "Assumes selection has just been created and added to some pasteUp or world" | startPoint handle m inner | startPoint := Sensor cursorPoint. handle := NewHandleMorph new followHand: aHand forEachPointDo: [:newPoint | | localPt | Cursor crossHair show. localPt := (self transformFrom: self world) globalPointToLocal: newPoint. self bounds: (startPoint rect: localPt)] lastPointDo: [:newPoint | inner := self bounds insetBy: 2@2. inner area >= 16 ifTrue: [m := SketchMorph new form: (Form fromDisplay: inner). aHand attachMorph: m. ActiveWorld fullRepaintNeeded] "selection tracking can leave unwanted artifacts" ifFalse: [Beeper beep]. "throw minnows back" self delete]. handle visible: false. aHand attachMorph: handle. handle startStepping! !