[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
|