[Pkg] Sake : Sake-Core-kph.105.mcz

squeak-dev-noreply at lists.squeakfoundation.org squeak-dev-noreply at lists.squeakfoundation.org
Thu Mar 5 15:31:46 UTC 2009


A new version of Sake-Core was added to project Sake :
http://www.squeaksource.com/Sake/Sake-Core-kph.105.mcz

==================== Summary ====================

Name: Sake-Core-kph.105
Author: kph
Time: 5 March 2009, 3:31:38 pm
UUID: b7dcccfc-099a-11de-9863-000a95edb42a
Ancestors: Sake-Core-kph.104

Changed the way stepping works, now the debugger is closer to the action

=============== Diff against Sake-Core-kph.104 ===============

Item was added:
+ ----- Method: SakeTask>>doNeededStep: (in category 'as yet unclassified') -----
+ doNeededStep: runPriorTasks
+  
+ 	self step: 'Is Needed for task: ', self context printString .
+ 	
+  	^ ifBlock valueWithPossibleArgument: runPriorTasks!

Item was changed:
  ----- Method: SakeTask>>isNeeded: (in category 'as yet unclassified') -----
  isNeeded: runPriorTasks
  
  	ifBlock ifNil: [ ^true ].
  	
+ 	ifBlock isBlock ifTrue: [ ^ self doNeededStep: runPriorTasks ].
- 	ifBlock isBlock ifTrue: [ ^ ifBlock valueWithPossibleArgument: runPriorTasks ].
  	
  	"actionBlock can be a list of tasks, if they all complete, then yes its needed"
  
  	[ self doTasks: ifBlock ] on: SakeStop do: [ :ex | ^ false ].
  
  	^ true	
  !

Item was changed:
  ----- Method: SakeTask>>runStepping (in category 'running') -----
  runStepping
  
  	runLevel ifNil: [ runLevel := #runStepping ].
  
+ 	^ [ self run ] on: SakeStep do: [ :ex | ex resume: true ]!
- 	^  self withAnswersDo: [ self runInteractively ]!

Item was added:
+ ----- Method: SakeStep>>defaultAction (in category 'as yet unclassified') -----
+ defaultAction
+ 	 
+ 	self resume: false.
+ !

Item was changed:
  ----- Method: SakeTask>>doAction: (in category 'as yet unclassified') -----
  doAction: priorTasks
  
   
  	Count := 0. "reset loop trap"
  		
- 	self doActionStep.
- 	
  	result := nil.
  	
  	self action isBlock ifTrue: [ 
  		
+ 		result := self author: author during: [ self doActionStep: priorTasks  ].
- 		result := self author: author during: [ self action valueWithPossibleArgument: priorTasks ].
  		
  	].
  	
  	(self action isKindOf: Collection) ifTrue: [ self doTasks: self action ].
  
  	self doActionEnd.
  	
  !

Item was changed:
  ----- Method: SakeTask>>run (in category 'running') -----
  run
  
  	runLevel ifNil: [ runLevel := #run ].
  	
+ 	^  self withAnswersDo: [ self runInteractively ]!
- 	^ [ self runStepping ] on: SakeStep do: [ :ex | ex resume: true ]!

Item was added:
+ ----- Method: SakeTask>>doActionStep: (in category 'as yet unclassified') -----
+ doActionStep: priorTasks
+   
+ 	self step: 'Action for task: ', self name printString .
+ 
+ 	^ self action valueWithPossibleArgument: priorTasks	!

Item was changed:
+ Notification subclass: #SakeStep
- Warning subclass: #SakeStep
  	instanceVariableNames: ''
  	classVariableNames: ''
  	poolDictionaries: ''
  	category: 'Sake-Core'!

Item was changed:
  ----- Method: SakeTask>>step: (in category 'signals') -----
  step: aString 
  	"Create and schedule a Notifier with the argument as the message in 
  	order to request confirmation before a process can proceed."
  
+ 	SakeStep signal ifFalse: [ ^ self ].
+ 	
+ 	"I wish I could set the size of the debugger window"
+ 	
+ 	ToolSet
+ 		debugContext: thisContext sender 
+ 		label: 'Warning'
+ 		contents: aString, '\\Select Proceed to continue, or close this window to cancel the task.' withCRs !
- 	SakeStep signal: aString
- !



More information about the Packages mailing list