Nicolas Cellier uploaded a new version of Graphics to project The Trunk:
http://source.squeak.org/trunk/Graphics-nice.196.mcz
==================== Summary ====================
Name: Graphics-nice.196
Author: nice
Time: 15 January 2013, 2:15:42.347 am
UUID: bb016276-f7e3-44ac-af5a-f6dba9b98940
Ancestors: Graphics-bf.195
Some degenerated rectangles (lines) can intersects: even though they have a null area.
=============== Diff against Graphics-bf.195 ===============
Item was changed:
----- Method: Rectangle>>intersects: (in category 'testing') -----
intersects: aRectangle
"Answer whether aRectangle intersects the receiver anywhere."
"Optimized; old code answered:
(origin max: aRectangle origin) < (corner min: aRectangle corner)"
| rOrigin rCorner |
rOrigin := aRectangle origin.
rCorner := aRectangle corner.
rCorner x <= origin x ifTrue: [^ false].
rCorner y <= origin y ifTrue: [^ false].
rOrigin x >= corner x ifTrue: [^ false].
rOrigin y >= corner y ifTrue: [^ false].
"None of the two rectangle shall be empty"
+ corner x < origin x ifTrue: [^ false].
+ corner y < origin y ifTrue: [^ false].
+ rCorner x < rOrigin x ifTrue: [^ false].
+ rCorner y < rOrigin y ifTrue: [^ false].
- corner x <= origin x ifTrue: [^ false].
- corner y <= origin y ifTrue: [^ false].
- rCorner x <= rOrigin x ifTrue: [^ false].
- rCorner y <= rOrigin y ifTrue: [^ false].
^ true
!
Bert Freudenberg uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-bf.439.mcz
==================== Summary ====================
Name: Tools-bf.439
Author: bf
Time: 11 January 2013, 3:16:13.128 pm
UUID: de303aa0-6b59-4df7-9d3a-23a15353065e
Ancestors: Tools-bf.438
When debugging a process from ProcessBrowser, do not try to resume it (see http://lists.squeakfoundation.org/pipermail/squeak-dev/2012-December/166749…)
=============== Diff against Tools-bf.438 ===============
Item was changed:
----- Method: ProcessBrowser class>>debugProcess: (in category 'process control') -----
debugProcess: aProcess
- self resumeProcess: aProcess.
aProcess debugWithTitle: 'Interrupted from the Process Browser'.
!
Bert Freudenberg uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-bf.439.mcz
==================== Summary ====================
Name: Tools-bf.439
Author: bf
Time: 11 January 2013, 3:16:13.128 pm
UUID: de303aa0-6b59-4df7-9d3a-23a15353065e
Ancestors: Tools-bf.438
When debugging a process from ProcessBrowser, do not try to resume it (see http://lists.squeakfoundation.org/pipermail/squeak-dev/2012-December/166749…)
=============== Diff against Tools-bf.438 ===============
Item was changed:
----- Method: ProcessBrowser class>>debugProcess: (in category 'process control') -----
debugProcess: aProcess
- self resumeProcess: aProcess.
aProcess debugWithTitle: 'Interrupted from the Process Browser'.
!
Bert Freudenberg uploaded a new version of Tools to project The Trunk:
http://source.squeak.org/trunk/Tools-bf.439.mcz
==================== Summary ====================
Name: Tools-bf.439
Author: bf
Time: 11 January 2013, 3:16:13.128 pm
UUID: de303aa0-6b59-4df7-9d3a-23a15353065e
Ancestors: Tools-bf.438
When debugging a process from ProcessBrowser, do not try to resume it (see http://lists.squeakfoundation.org/pipermail/squeak-dev/2012-December/166749…)
=============== Diff against Tools-bf.438 ===============
Item was changed:
----- Method: ProcessBrowser class>>debugProcess: (in category 'process control') -----
debugProcess: aProcess
- self resumeProcess: aProcess.
aProcess debugWithTitle: 'Interrupted from the Process Browser'.
!
Bert Freudenberg uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-bf.730.mcz
==================== Summary ====================
Name: Kernel-bf.730
Author: bf
Time: 11 January 2013, 12:10:54.539 pm
UUID: 287d829c-b04d-4165-abc5-e045d037bd6d
Ancestors: Kernel-nice.729
Cache source files during class mutation for noticeable speedup with larger hierarchies.
=============== Diff against Kernel-nice.729 ===============
Item was changed:
----- Method: ClassBuilder>>recompile:from:to:mutate: (in category 'class definition') -----
recompile: force from: oldClass to: newClass mutate: forceMutation
"Do the necessary recompilation after changine oldClass to newClass.
If required (e.g., when oldClass ~~ newClass) mutate oldClass to newClass
and all its subclasses. If forceMutation is true force a mutation even
if oldClass and newClass are the same."
oldClass == nil ifTrue:[^ newClass].
(newClass == oldClass and:[force not and:[forceMutation not]]) ifTrue:[
^newClass].
currentClassIndex := 0.
maxClassIndex := oldClass withAllSubclasses size.
(oldClass == newClass and:[forceMutation not]) ifTrue:[
"Recompile from newClass without mutating"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ newClass withAllSubclassesDo:[:cl|
+ self showProgressFor: cl.
+ cl compileAll]]].
- newClass withAllSubclassesDo:[:cl|
- self showProgressFor: cl.
- cl compileAll]].
^newClass].
"Recompile and mutate oldClass to newClass"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ self mutate: oldClass to: newClass].
- self mutate: oldClass to: newClass.
].
^oldClass "now mutated to newClass"!
Bert Freudenberg uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-bf.730.mcz
==================== Summary ====================
Name: Kernel-bf.730
Author: bf
Time: 11 January 2013, 12:10:54.539 pm
UUID: 287d829c-b04d-4165-abc5-e045d037bd6d
Ancestors: Kernel-nice.729
Cache source files during class mutation for noticeable speedup with larger hierarchies.
=============== Diff against Kernel-nice.729 ===============
Item was changed:
----- Method: ClassBuilder>>recompile:from:to:mutate: (in category 'class definition') -----
recompile: force from: oldClass to: newClass mutate: forceMutation
"Do the necessary recompilation after changine oldClass to newClass.
If required (e.g., when oldClass ~~ newClass) mutate oldClass to newClass
and all its subclasses. If forceMutation is true force a mutation even
if oldClass and newClass are the same."
oldClass == nil ifTrue:[^ newClass].
(newClass == oldClass and:[force not and:[forceMutation not]]) ifTrue:[
^newClass].
currentClassIndex := 0.
maxClassIndex := oldClass withAllSubclasses size.
(oldClass == newClass and:[forceMutation not]) ifTrue:[
"Recompile from newClass without mutating"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ newClass withAllSubclassesDo:[:cl|
+ self showProgressFor: cl.
+ cl compileAll]]].
- newClass withAllSubclassesDo:[:cl|
- self showProgressFor: cl.
- cl compileAll]].
^newClass].
"Recompile and mutate oldClass to newClass"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ self mutate: oldClass to: newClass].
- self mutate: oldClass to: newClass.
].
^oldClass "now mutated to newClass"!
Bert Freudenberg uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-bf.730.mcz
==================== Summary ====================
Name: Kernel-bf.730
Author: bf
Time: 11 January 2013, 12:10:54.539 pm
UUID: 287d829c-b04d-4165-abc5-e045d037bd6d
Ancestors: Kernel-nice.729
Cache source files during class mutation for noticeable speedup with larger hierarchies.
=============== Diff against Kernel-nice.729 ===============
Item was changed:
----- Method: ClassBuilder>>recompile:from:to:mutate: (in category 'class definition') -----
recompile: force from: oldClass to: newClass mutate: forceMutation
"Do the necessary recompilation after changine oldClass to newClass.
If required (e.g., when oldClass ~~ newClass) mutate oldClass to newClass
and all its subclasses. If forceMutation is true force a mutation even
if oldClass and newClass are the same."
oldClass == nil ifTrue:[^ newClass].
(newClass == oldClass and:[force not and:[forceMutation not]]) ifTrue:[
^newClass].
currentClassIndex := 0.
maxClassIndex := oldClass withAllSubclasses size.
(oldClass == newClass and:[forceMutation not]) ifTrue:[
"Recompile from newClass without mutating"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ newClass withAllSubclassesDo:[:cl|
+ self showProgressFor: cl.
+ cl compileAll]]].
- newClass withAllSubclassesDo:[:cl|
- self showProgressFor: cl.
- cl compileAll]].
^newClass].
"Recompile and mutate oldClass to newClass"
self informUserDuring:[
newClass isSystemDefined ifFalse:[progress := nil].
+ CurrentReadOnlySourceFiles cacheDuring: [
+ self mutate: oldClass to: newClass].
- self mutate: oldClass to: newClass.
].
^oldClass "now mutated to newClass"!