The Trunk: ST80-dtl.118.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: ST80-dtl.118.mcz

commits-2
David T. Lewis uploaded a new version of ST80 to project The Trunk:
http://source.squeak.org/trunk/ST80-dtl.118.mcz

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

Name: ST80-dtl.118
Author: dtl
Time: 12 September 2010, 3:38:33.111 pm
UUID: 5b5a7a3e-c1ff-4b21-b04b-8cef0c4a590c
Ancestors: ST80-eem.117

MVC fixes by Florin Mateoc to address debugger opening, including low space interrupt and user interrupt in MVC.

=============== Diff against ST80-eem.117 ===============

Item was changed:
  ----- Method: ControlManager>>interruptName: (in category 'scheduling') -----
  interruptName: labelString
  "Create a Notifier on the active scheduling process with the given label. Make the Notifier the active controller."
 
+ ^ self interruptName: labelString preemptedProcess: activeControllerProcess
- ^ self interruptName: labelString preemptedProcess: nil
  !

Item was changed:
  ----- Method: ControlManager>>interruptName:preemptedProcess: (in category 'scheduling') -----
  interruptName: labelString preemptedProcess: theInterruptedProcess
+ "Create a Notifier on the interrupted process with the given label. Make the Notifier the active controller."
- "Create a Notifier on the active scheduling process with the given label. Make the Notifier the active controller."
- | newActiveController preemptedProcess |
 
+ theInterruptedProcess suspend.
- preemptedProcess := theInterruptedProcess ifNil: [Processor preemptedProcess].
- preemptedProcess suspend.
 
+ (activeController ~~ nil and: [activeController ~~ screenController]) ifTrue: [
+ theInterruptedProcess == activeControllerProcess
+ ifTrue: [
+ "Carefully de-emphasis the current window."
+ activeController view topView deEmphasizeForDebugger]
+ ifFalse: [
+ activeController controlTerminate]].
- "There is something wrong here. We suspend *two* processes, the interrupted
- process and the activeControllerProcess (unless they are the same). How can
- that possibly be right? However, it is what the code did before I added the comment
- (it was merely hidden underneith another pile of code). Someone with more
- understanding about MVC fix this please."
 
+ "This will just scheduleNoTerminate the newly built controller"
+ Debugger
- preemptedProcess == activeControllerProcess
- ifFalse:[activeControllerProcess suspend].
-
- activeController ~~ nil ifTrue: [
- "Carefully de-emphasis the current window."
- activeController view topView deEmphasizeForDebugger].
-
- newActiveController :=
- (Debugger
  openInterrupt: labelString
+ onProcess: theInterruptedProcess.
+
+ self searchForActiveController!
- onProcess: preemptedProcess) controller.
- newActiveController centerCursorInView.
- self activeController: newActiveController.
- !

Item was added:
+ ----- Method: MVCProject>>interruptName: (in category 'utilities') -----
+ interruptName: labelString
+ "Create a Notifier on the active scheduling process with the given label."
+
+ ^ ScheduledControllers interruptName: labelString
+ !

Item was changed:
  ----- Method: MVCProject>>interruptName:preemptedProcess: (in category 'utilities') -----
  interruptName: labelString preemptedProcess: theInterruptedProcess
  "Create a Notifier on the active scheduling process with the given label."
 
+ ^ ScheduledControllers interruptName: labelString preemptedProcess: theInterruptedProcess
- ^ ScheduledControllers interruptName: labelString
  !