[squeak-dev] Squeak 4.5: ST80Tools-fbs.1.mcz
commits at source.squeak.org
commits at source.squeak.org
Fri Jan 24 20:01:39 UTC 2014
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!
More information about the Squeak-dev
mailing list
|