Chris Muller uploaded a new version of ST80Tools to project Squeak 4.5:
http://source.squeak.org/squeak45/ST80Tools-fbs.1.mcz ==================== Summary ==================== Name: ST80Tools-fbs.1 Author: fbs Time: 2 July 2013, 8:41:50.912 pm UUID: 108ec7bc-d1f5-dd4b-9511-e7a653a71e9f Ancestors: Move Tools' MVC extensions to a separate package, ST80Tools. This makes Tools independent of MVC, at the cost of requiring an extra package to reload/unload MVC. ==================== Snapshot ==================== ----- Method: ParagraphEditor>>browseChangeSetsWithSelector (in category '*ST80Tools') ----- browseChangeSetsWithSelector "Determine which, if any, change sets have at least one change for the selected selector, independent of class" | aSelector | self lineSelectAndEmptyCheck: [^ self]. (aSelector := self selectedSelector) == nil ifTrue: [^ view flash]. self terminateAndInitializeAround: [ChangeSorter browseChangeSetsWithSelector: aSelector]! ----- Method: ParagraphEditor>>browseItHere (in category '*ST80Tools') ----- browseItHere "Retarget the receiver's window to look at the selected class, if appropriate. 3/1/96 sw" | aSymbol b | (((b := model) isKindOf: Browser) and: [b couldBrowseAnyClass]) ifFalse: [^ view flash]. model okToChange ifFalse: [^ view flash]. self selectionInterval isEmpty ifTrue: [self selectWord]. (aSymbol := self selectedSymbol) ifNil: [^ view flash]. self terminateAndInitializeAround: [| foundClass | foundClass := (Smalltalk at: aSymbol ifAbsent: [nil]). foundClass ifNil: [^ view flash]. (foundClass isKindOf: Class) ifTrue: [model selectSystemCategory: foundClass category. model classListIndex: (model classList indexOf: foundClass name)]]! ----- Method: ParagraphEditor>>debug:receiver:in: (in category '*ST80Tools') ----- debug: aCompiledMethod receiver: anObject in: evalContext | guineaPig debugger context | guineaPig := [ aCompiledMethod valueWithReceiver: anObject arguments: (evalContext ifNil: [ #() ] ifNotNil: [ { evalContext } ]) ] newProcess. context := guineaPig suspendedContext. debugger := Debugger new process: guineaPig controller: ((Smalltalk isMorphic not and: [ScheduledControllers inActiveControllerProcess]) ifTrue: [ScheduledControllers activeController] ifFalse: [nil]) context: context. debugger openFullNoSuspendLabel: 'Debug it'. [debugger interruptedContext method == aCompiledMethod] whileFalse: [debugger send]! ----- Method: ParagraphEditor>>debugIt (in category '*ST80Tools') ----- debugIt | method receiver context | (model respondsTo: #doItReceiver) ifTrue: [receiver := model doItReceiver. context := model doItContext] ifFalse: [receiver := context := nil]. self lineSelectAndEmptyCheck: [^self]. method := self compileSelectionFor: receiver in: context. method notNil ifTrue: [self debug: method receiver: receiver in: context].! ----- Method: StringHolderView>>canHaveUnacceptedEdits (in category '*ST80Tools-multi-window support') ----- canHaveUnacceptedEdits "Answer if the receiver is an object that can hold unaccepted edits (such as a text editor widget)" ^true! ----- Method: StringHolderView>>unacceptedEditState (in category '*ST80Tools-multi-window support') ----- unacceptedEditState ^hasUnacceptedEdits ifTrue: [displayContents text]! ----- Method: StringHolderView>>unacceptedEditState: (in category '*ST80Tools-multi-window support') ----- unacceptedEditState: stateOrNil (hasUnacceptedEdits := stateOrNil notNil) ifTrue: [self editString: stateOrNil]! ----- Method: ScreenController>>browseRecentLog (in category '*ST80Tools') ----- browseRecentLog "Open a changelist browser on changes submitted since the last snapshot. 1/17/96 sw" ChangeList browseRecentLog! ----- Method: ScreenController>>chooseDirtyBrowser (in category '*ST80Tools') ----- chooseDirtyBrowser "Put up a list of browsers with unsubmitted edits and activate the one selected by the user, if any." "ScheduledControllers screenController chooseDirtyBrowser" ScheduledControllers findWindowSatisfying: [:c | (c model isKindOf: Browser) and: [c model canDiscardEdits not]]. ! ----- Method: ScreenController>>openChangeManager (in category '*ST80Tools') ----- openChangeManager "Open a dual change sorter. For looking at two change sets at once." DualChangeSorter new open! ----- Method: ScreenController>>openFile (in category '*ST80Tools') ----- openFile FileList openFileDirectly! ----- Method: ScreenController>>openFileList (in category '*ST80Tools') ----- openFileList "Create and schedule a FileList view for specifying files to access." FileList open! ----- Method: ScreenController>>openPackageBrowser (in category '*ST80Tools') ----- openPackageBrowser "Create and schedule a Browser view for browsing code." PackagePaneBrowser openBrowser! ----- Method: ScreenController>>openSelectorBrowser (in category '*ST80Tools') ----- openSelectorBrowser "Create and schedule a selector fragment window." SelectorBrowser new open! ----- Method: ScreenController>>openSimpleChangeSorter (in category '*ST80Tools') ----- openSimpleChangeSorter ChangeSorter new open! |
Free forum by Nabble | Edit this page |