[squeak-dev] The Trunk: Morphic-dtl.522.mcz

commits at source.squeak.org commits at source.squeak.org
Tue Mar 1 01:32:44 UTC 2011


David T. Lewis uploaded a new version of Morphic to project The Trunk:
http://source.squeak.org/trunk/Morphic-dtl.522.mcz

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

Name: Morphic-dtl.522
Author: dtl
Time: 28 February 2011, 8:31:43.924 pm
UUID: b029c657-a64b-4ee8-8f7b-c93a2e4847a8
Ancestors: Morphic-mtf.521

Add Debugger class>>morphicOpenOn:context:label:contents:fullView: as dispatch target for opening a debugger in Morphic.

=============== Diff against Morphic-mtf.521 ===============

Item was added:
+ ----- Method: Debugger class>>morphicOpenOn:context:label:contents:fullView: (in category '*Morphic-opening') -----
+ morphicOpenOn: process context: context label: title contents: contentsStringOrNil fullView: bool
+ 	"Open a notifier in response to an error, halt, or notify. A notifier view just shows a short view of the sender stack and provides a menu that lets the user open a full debugger."
+ 
+ 	| errorWasInUIProcess debugger |
+ 	errorWasInUIProcess := Project spawnNewProcessIfThisIsUI: process.
+ 	WorldState addDeferredUIMessage: [ 
+ 		"schedule debugger in deferred UI message to address redraw
+ 		problems after opening a debugger e.g. from the testrunner."
+ 		[
+ 			debugger := self new process: process controller: nil context: context.
+ 			bool
+ 				ifTrue: [debugger openFullNoSuspendLabel: title]
+ 				ifFalse: [debugger openNotifierContents: contentsStringOrNil label: title].
+ 			debugger errorWasInUIProcess: errorWasInUIProcess.
+ 			Preferences logDebuggerStackToFile ifTrue: [
+ 				Smalltalk logSqueakError: title inContext: context].
+ 		] on: Error do: [:ex |
+ 				self primitiveError: 
+ 					'Original error: ', 
+ 					title asString, '.
+ 	Debugger error: ', 
+ 				([ex description] on: Error do: ['a ', ex class printString]), ':'
+ 			]
+ 	].
+ 	process suspend.
+ !




More information about the Squeak-dev mailing list