Edgar J. De Cleene uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-dtl.476.mcz
==================== Summary ====================
Name: Collections-dtl.476
Author: dtl
Time: 4 June 2012, 10:00:45.896 pm
UUID: 65ba9d43-c6ae-46c2-920e-8d75e2f807df
Ancestors: Collections-bf.475
Adopt ByteArray>>asSocketAddress from Etoys, required for IPV6 socket updates to follow.
=============== Diff against Collections-bf.475 ===============
Item was removed:
- (PackageInfo named: 'Collections') preamble: ''!
Item was added:
+ ----- Method: ByteArray>>asSocketAddress (in category 'converting') -----
+ asSocketAddress
+ ^SocketAddress fromOldByteAddress: self!
Edgar J. De Cleene uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-dtl.476.mcz
==================== Summary ====================
Name: Collections-dtl.476
Author: dtl
Time: 4 June 2012, 10:00:45.896 pm
UUID: 65ba9d43-c6ae-46c2-920e-8d75e2f807df
Ancestors: Collections-bf.475
Adopt ByteArray>>asSocketAddress from Etoys, required for IPV6 socket updates to follow.
=============== Diff against Collections-bf.475 ===============
Item was removed:
- (PackageInfo named: 'Collections') preamble: ''!
Item was added:
+ ----- Method: ByteArray>>asSocketAddress (in category 'converting') -----
+ asSocketAddress
+ ^SocketAddress fromOldByteAddress: self!
Chris Muller uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-cmm.619.mcz
==================== Summary ====================
Name: Morphic-cmm.619
Author: cmm
Time: 23 May 2012, 6:56:59.194 pm
UUID: 9f1584fd-01ce-4dd0-bced-0a92e5ae049b
Ancestors: Morphic-bf.618
- Make mouseMove event handling more-consistent with handling for other events.
- Allow Morphic applications to handle mouseMove: events even if dragging or no button down without having to override a Morphic system-level method (#handleMouseMove:).
- Preserves backward compatibility for now -- legacy conditions get first chance to handle the event.
- Also, moved three Etoys-specific methods to Etoys.
=============== Diff against Morphic-bf.618 ===============
Item was changed:
----- Method: Morph>>handleMouseMove: (in category 'events-processing') -----
handleMouseMove: anEvent
"System level event handling."
anEvent wasHandled ifTrue:[^self]. "not interested"
+ (self handlesMouseMove: anEvent) ifFalse: [ ^ self ].
- "Rules say that by default a morph gets #mouseMove iff
- * the hand is not dragging anything,
- + and some button is down,
- + and the receiver is the current mouse focus."
- (anEvent hand hasSubmorphs) ifTrue:[^self].
- (anEvent anyButtonPressed and:[anEvent hand mouseFocus == self]) ifFalse:[^self].
anEvent wasHandled: true.
self mouseMove: anEvent.
+ (anEvent anyButtonPressed and: [self handlesMouseStillDown: anEvent]) ifTrue:[
- (self handlesMouseStillDown: anEvent) ifTrue:[
"Step at the new location"
self startStepping: #handleMouseStillDown:
at: Time millisecondClockValue
arguments: {anEvent copy resetHandlerFields}
stepTime: self mouseStillDownStepRate ].
!
Item was added:
+ ----- Method: Morph>>handlesMouseMove: (in category 'event handling') -----
+ handlesMouseMove: anEvent
+ "Do I want to receive mouseMove: when the hand passes over the receiver? The default response is false, except if you have added sensitivity to mouseMove: using the on:send:to: mechanism."
+ "The following preserves legacy behavior, but we should consider requiring apps to answer whether they #handlesMouseMove: and deprecating this first sentence."
+ (anEvent hand hasSubmorphs not and:
+ [ anEvent anyButtonPressed and: [ anEvent hand mouseFocus == self ] ]) ifTrue: [ ^ true ].
+ self eventHandler ifNotNil: [ ^ self eventHandler handlesMouseOver: anEvent ].
+ ^ false!
Item was removed:
- ----- Method: Morph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- ^ true!
Item was removed:
- ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- "A viewer on a world is a dangerous thing to get casually!!"
-
- ^ self isWorldMorph not!
Item was removed:
- ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category 'events') -----
- isCandidateForAutomaticViewing
- ^ false!
Chris Muller uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-cmm.619.mcz
==================== Summary ====================
Name: Morphic-cmm.619
Author: cmm
Time: 23 May 2012, 6:56:59.194 pm
UUID: 9f1584fd-01ce-4dd0-bced-0a92e5ae049b
Ancestors: Morphic-bf.618
- Make mouseMove event handling more-consistent with handling for other events.
- Allow Morphic applications to handle mouseMove: events even if dragging or no button down without having to override a Morphic system-level method (#handleMouseMove:).
- Preserves backward compatibility for now -- legacy conditions get first chance to handle the event.
- Also, moved three Etoys-specific methods to Etoys.
=============== Diff against Morphic-bf.618 ===============
Item was changed:
----- Method: Morph>>handleMouseMove: (in category 'events-processing') -----
handleMouseMove: anEvent
"System level event handling."
anEvent wasHandled ifTrue:[^self]. "not interested"
+ (self handlesMouseMove: anEvent) ifFalse: [ ^ self ].
- "Rules say that by default a morph gets #mouseMove iff
- * the hand is not dragging anything,
- + and some button is down,
- + and the receiver is the current mouse focus."
- (anEvent hand hasSubmorphs) ifTrue:[^self].
- (anEvent anyButtonPressed and:[anEvent hand mouseFocus == self]) ifFalse:[^self].
anEvent wasHandled: true.
self mouseMove: anEvent.
+ (anEvent anyButtonPressed and: [self handlesMouseStillDown: anEvent]) ifTrue:[
- (self handlesMouseStillDown: anEvent) ifTrue:[
"Step at the new location"
self startStepping: #handleMouseStillDown:
at: Time millisecondClockValue
arguments: {anEvent copy resetHandlerFields}
stepTime: self mouseStillDownStepRate ].
!
Item was added:
+ ----- Method: Morph>>handlesMouseMove: (in category 'event handling') -----
+ handlesMouseMove: anEvent
+ "Do I want to receive mouseMove: when the hand passes over the receiver? The default response is false, except if you have added sensitivity to mouseMove: using the on:send:to: mechanism."
+ "The following preserves legacy behavior, but we should consider requiring apps to answer whether they #handlesMouseMove: and deprecating this first sentence."
+ (anEvent hand hasSubmorphs not and:
+ [ anEvent anyButtonPressed and: [ anEvent hand mouseFocus == self ] ]) ifTrue: [ ^ true ].
+ self eventHandler ifNotNil: [ ^ self eventHandler handlesMouseOver: anEvent ].
+ ^ false!
Item was removed:
- ----- Method: Morph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- ^ true!
Item was removed:
- ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- "A viewer on a world is a dangerous thing to get casually!!"
-
- ^ self isWorldMorph not!
Item was removed:
- ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category 'events') -----
- isCandidateForAutomaticViewing
- ^ false!
Chris Muller uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-cmm.619.mcz
==================== Summary ====================
Name: Morphic-cmm.619
Author: cmm
Time: 23 May 2012, 6:56:59.194 pm
UUID: 9f1584fd-01ce-4dd0-bced-0a92e5ae049b
Ancestors: Morphic-bf.618
- Make mouseMove event handling more-consistent with handling for other events.
- Allow Morphic applications to handle mouseMove: events even if dragging or no button down without having to override a Morphic system-level method (#handleMouseMove:).
- Preserves backward compatibility for now -- legacy conditions get first chance to handle the event.
- Also, moved three Etoys-specific methods to Etoys.
=============== Diff against Morphic-bf.618 ===============
Item was changed:
----- Method: Morph>>handleMouseMove: (in category 'events-processing') -----
handleMouseMove: anEvent
"System level event handling."
anEvent wasHandled ifTrue:[^self]. "not interested"
+ (self handlesMouseMove: anEvent) ifFalse: [ ^ self ].
- "Rules say that by default a morph gets #mouseMove iff
- * the hand is not dragging anything,
- + and some button is down,
- + and the receiver is the current mouse focus."
- (anEvent hand hasSubmorphs) ifTrue:[^self].
- (anEvent anyButtonPressed and:[anEvent hand mouseFocus == self]) ifFalse:[^self].
anEvent wasHandled: true.
self mouseMove: anEvent.
+ (anEvent anyButtonPressed and: [self handlesMouseStillDown: anEvent]) ifTrue:[
- (self handlesMouseStillDown: anEvent) ifTrue:[
"Step at the new location"
self startStepping: #handleMouseStillDown:
at: Time millisecondClockValue
arguments: {anEvent copy resetHandlerFields}
stepTime: self mouseStillDownStepRate ].
!
Item was added:
+ ----- Method: Morph>>handlesMouseMove: (in category 'event handling') -----
+ handlesMouseMove: anEvent
+ "Do I want to receive mouseMove: when the hand passes over the receiver? The default response is false, except if you have added sensitivity to mouseMove: using the on:send:to: mechanism."
+ "The following preserves legacy behavior, but we should consider requiring apps to answer whether they #handlesMouseMove: and deprecating this first sentence."
+ (anEvent hand hasSubmorphs not and:
+ [ anEvent anyButtonPressed and: [ anEvent hand mouseFocus == self ] ]) ifTrue: [ ^ true ].
+ self eventHandler ifNotNil: [ ^ self eventHandler handlesMouseOver: anEvent ].
+ ^ false!
Item was removed:
- ----- Method: Morph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- ^ true!
Item was removed:
- ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- "A viewer on a world is a dangerous thing to get casually!!"
-
- ^ self isWorldMorph not!
Item was removed:
- ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category 'events') -----
- isCandidateForAutomaticViewing
- ^ false!
Chris Muller uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-cmm.88.mcz
==================== Summary ====================
Name: EToys-cmm.88
Author: cmm
Time: 23 May 2012, 6:40:31.544 pm
UUID: dfeec093-000c-4e1e-99b4-fa6e65b6fb28
Ancestors: EToys-dtl.87
- Move three Etoys-only methods from Morphic.
=============== Diff against EToys-dtl.87 ===============
Item was added:
+ ----- Method: Morph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ true!
Item was added:
+ ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ "A viewer on a world is a dangerous thing to get casually!!"
+
+ ^ self isWorldMorph not!
Item was added:
+ ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ false!
Chris Muller uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-cmm.88.mcz
==================== Summary ====================
Name: EToys-cmm.88
Author: cmm
Time: 23 May 2012, 6:40:31.544 pm
UUID: dfeec093-000c-4e1e-99b4-fa6e65b6fb28
Ancestors: EToys-dtl.87
- Move three Etoys-only methods from Morphic.
=============== Diff against EToys-dtl.87 ===============
Item was added:
+ ----- Method: Morph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ true!
Item was added:
+ ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ "A viewer on a world is a dangerous thing to get casually!!"
+
+ ^ self isWorldMorph not!
Item was added:
+ ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ false!
Chris Muller uploaded a new version of EToys to project The Trunk:
http://source.squeak.org/trunk/EToys-cmm.88.mcz
==================== Summary ====================
Name: EToys-cmm.88
Author: cmm
Time: 23 May 2012, 6:40:31.544 pm
UUID: dfeec093-000c-4e1e-99b4-fa6e65b6fb28
Ancestors: EToys-dtl.87
- Move three Etoys-only methods from Morphic.
=============== Diff against EToys-dtl.87 ===============
Item was added:
+ ----- Method: Morph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ true!
Item was added:
+ ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ "A viewer on a world is a dangerous thing to get casually!!"
+
+ ^ self isWorldMorph not!
Item was added:
+ ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category '*Etoys-support') -----
+ isCandidateForAutomaticViewing
+ ^ false!
Chris Muller uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-cmm.620.mcz
==================== Summary ====================
Name: Morphic-cmm.620
Author: cmm
Time: 4 June 2012, 3:55:02.935 pm
UUID: 0ddf089c-043a-47fe-b5ee-6e3759094f35
Ancestors: Morphic-cmm.619
- Simply extract the criteria for whether a morph should handle MouseMoveEvents into Morph>>#handleMouseMove: so subclasses can override.
- Moved a few Etoys methods to the Etoys package.
- Make findAFileList: find one without unaccepted edits, so it does not force the user to save just to have a navigable FileList.
- Mark some unused methods as such.
=============== Diff against Morphic-bf.618 ===============
Item was changed:
----- Method: Morph>>handleMouseMove: (in category 'events-processing') -----
+ handleMouseMove: anEvent
- handleMouseMove: anEvent
"System level event handling."
+ anEvent wasHandled ifTrue: [ ^ self ].
+ "not interested"
+ (self handlesMouseMove: anEvent) ifFalse: [ ^ self ].
- anEvent wasHandled ifTrue:[^self]. "not interested"
- "Rules say that by default a morph gets #mouseMove iff
- * the hand is not dragging anything,
- + and some button is down,
- + and the receiver is the current mouse focus."
- (anEvent hand hasSubmorphs) ifTrue:[^self].
- (anEvent anyButtonPressed and:[anEvent hand mouseFocus == self]) ifFalse:[^self].
anEvent wasHandled: true.
self mouseMove: anEvent.
+ (self handlesMouseStillDown: anEvent) ifTrue:
+ [ "Step at the new location"
+ self
+ startStepping: #handleMouseStillDown:
- (self handlesMouseStillDown: anEvent) ifTrue:[
- "Step at the new location"
- self startStepping: #handleMouseStillDown:
at: Time millisecondClockValue
arguments: {anEvent copy resetHandlerFields}
+ stepTime: self mouseStillDownStepRate ]!
- stepTime: self mouseStillDownStepRate ].
- !
Item was added:
+ ----- Method: Morph>>handlesMouseMove: (in category 'event handling') -----
+ handlesMouseMove: anEvent
+ "Do I want to receive mouseMove: when the hand passes over the receiver? Rules say that by default a morph gets #mouseMove iff
+ * the hand is not dragging anything,
+ + and some button is down,
+ + and the receiver is the current mouse focus."
+ anEvent hand hasSubmorphs ifTrue: [ ^ false ].
+ (anEvent anyButtonPressed and: [ anEvent hand mouseFocus == self ]) ifFalse: [ ^ false ].
+ ^ true!
Item was removed:
- ----- Method: Morph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- ^ true!
Item was changed:
----- Method: PasteUpMorph>>findAFileList: (in category 'world menu') -----
findAFileList: evt
+ "Bring a file list to the foreground, reusing an existing one if possible."
- "Locate a file list, open it, and bring it to the front.
- Create one if necessary, respecting the Preference."
-
self
+ findAWindowSatisfying: [ : aWindow | (aWindow model class = FileList) and: [ aWindow model hasUnacceptedEdits not ] ]
+ orMakeOneUsing: [ FileList prototypicalToolWindow openInWorld ]!
- findAWindowSatisfying: [:aWindow | aWindow model isKindOf: FileList]
- orMakeOneUsing: [FileList2 prototypicalToolWindow openInWorld]
- !
Item was removed:
- ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- "A viewer on a world is a dangerous thing to get casually!!"
-
- ^ self isWorldMorph not!
Item was removed:
- ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category 'events') -----
- isCandidateForAutomaticViewing
- ^ false!
Item was changed:
----- Method: TransferMorph>>dropNotifyRecipient (in category 'accessing') -----
dropNotifyRecipient
+ self isThisEverCalled.
^dropNotifyRecipient!
Item was changed:
----- Method: TransferMorph>>dropNotifyRecipient: (in category 'accessing') -----
dropNotifyRecipient: anObject
+ self isThisEverCalled.
dropNotifyRecipient := anObject!
Item was changed:
----- Method: TransferMorph>>result: (in category 'dropping/grabbing') -----
result: result
+ self isThisEverCalled.
^ self result: result from: nil!
Item was changed:
----- Method: TransferMorph>>result:from: (in category 'dropping/grabbing') -----
result: aResult from: aResultGenerator
+ "Send aResult of the drop operation computed by aResultGenerator to a resultRecipient, if it exists."
+ self isThisEverCalled.
- "Send aResult of the drop operation computed by aResultGenerator to a
- resultRecipient, if it exists."
resultRecipient ifNotNil: [resultRecipient dropResult: aResult from: aResultGenerator]!
Chris Muller uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-cmm.620.mcz
==================== Summary ====================
Name: Morphic-cmm.620
Author: cmm
Time: 4 June 2012, 3:55:02.935 pm
UUID: 0ddf089c-043a-47fe-b5ee-6e3759094f35
Ancestors: Morphic-cmm.619
- Simply extract the criteria for whether a morph should handle MouseMoveEvents into Morph>>#handleMouseMove: so subclasses can override.
- Moved a few Etoys methods to the Etoys package.
- Make findAFileList: find one without unaccepted edits, so it does not force the user to save just to have a navigable FileList.
- Mark some unused methods as such.
=============== Diff against Morphic-bf.618 ===============
Item was changed:
----- Method: Morph>>handleMouseMove: (in category 'events-processing') -----
+ handleMouseMove: anEvent
- handleMouseMove: anEvent
"System level event handling."
+ anEvent wasHandled ifTrue: [ ^ self ].
+ "not interested"
+ (self handlesMouseMove: anEvent) ifFalse: [ ^ self ].
- anEvent wasHandled ifTrue:[^self]. "not interested"
- "Rules say that by default a morph gets #mouseMove iff
- * the hand is not dragging anything,
- + and some button is down,
- + and the receiver is the current mouse focus."
- (anEvent hand hasSubmorphs) ifTrue:[^self].
- (anEvent anyButtonPressed and:[anEvent hand mouseFocus == self]) ifFalse:[^self].
anEvent wasHandled: true.
self mouseMove: anEvent.
+ (self handlesMouseStillDown: anEvent) ifTrue:
+ [ "Step at the new location"
+ self
+ startStepping: #handleMouseStillDown:
- (self handlesMouseStillDown: anEvent) ifTrue:[
- "Step at the new location"
- self startStepping: #handleMouseStillDown:
at: Time millisecondClockValue
arguments: {anEvent copy resetHandlerFields}
+ stepTime: self mouseStillDownStepRate ]!
- stepTime: self mouseStillDownStepRate ].
- !
Item was added:
+ ----- Method: Morph>>handlesMouseMove: (in category 'event handling') -----
+ handlesMouseMove: anEvent
+ "Do I want to receive mouseMove: when the hand passes over the receiver? Rules say that by default a morph gets #mouseMove iff
+ * the hand is not dragging anything,
+ + and some button is down,
+ + and the receiver is the current mouse focus."
+ anEvent hand hasSubmorphs ifTrue: [ ^ false ].
+ (anEvent anyButtonPressed and: [ anEvent hand mouseFocus == self ]) ifFalse: [ ^ false ].
+ ^ true!
Item was removed:
- ----- Method: Morph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- ^ true!
Item was changed:
----- Method: PasteUpMorph>>findAFileList: (in category 'world menu') -----
findAFileList: evt
+ "Bring a file list to the foreground, reusing an existing one if possible."
- "Locate a file list, open it, and bring it to the front.
- Create one if necessary, respecting the Preference."
-
self
+ findAWindowSatisfying: [ : aWindow | (aWindow model class = FileList) and: [ aWindow model hasUnacceptedEdits not ] ]
+ orMakeOneUsing: [ FileList prototypicalToolWindow openInWorld ]!
- findAWindowSatisfying: [:aWindow | aWindow model isKindOf: FileList]
- orMakeOneUsing: [FileList2 prototypicalToolWindow openInWorld]
- !
Item was removed:
- ----- Method: PasteUpMorph>>isCandidateForAutomaticViewing (in category 'e-toy support') -----
- isCandidateForAutomaticViewing
- "A viewer on a world is a dangerous thing to get casually!!"
-
- ^ self isWorldMorph not!
Item was removed:
- ----- Method: SystemWindow>>isCandidateForAutomaticViewing (in category 'events') -----
- isCandidateForAutomaticViewing
- ^ false!
Item was changed:
----- Method: TransferMorph>>dropNotifyRecipient (in category 'accessing') -----
dropNotifyRecipient
+ self isThisEverCalled.
^dropNotifyRecipient!
Item was changed:
----- Method: TransferMorph>>dropNotifyRecipient: (in category 'accessing') -----
dropNotifyRecipient: anObject
+ self isThisEverCalled.
dropNotifyRecipient := anObject!
Item was changed:
----- Method: TransferMorph>>result: (in category 'dropping/grabbing') -----
result: result
+ self isThisEverCalled.
^ self result: result from: nil!
Item was changed:
----- Method: TransferMorph>>result:from: (in category 'dropping/grabbing') -----
result: aResult from: aResultGenerator
+ "Send aResult of the drop operation computed by aResultGenerator to a resultRecipient, if it exists."
+ self isThisEverCalled.
- "Send aResult of the drop operation computed by aResultGenerator to a
- resultRecipient, if it exists."
resultRecipient ifNotNil: [resultRecipient dropResult: aResult from: aResultGenerator]!