'From Squeak6.0alpha of 23 August 2021 [latest update: #20604] on 25 August 2021 at 10:57:35 am'! !Class methodsFor: '*monticello' stamp: 'cmm 11/27/2016 16:17'! mcPatchOperations "Answer a collection of MCPatchOperations that can be displayed in a MCPatchBrowser which will reflect the history of this methods definition in relation to each other (not simply compared to the image version)." ^ (self mcRevisions reversed inject: OrderedCollection new into: [ : coll : each | coll ifEmpty: [ coll add: (MCAddition of: each) ; yourself ] ifNotEmpty: [ coll add: (MCModification of: (coll last isAddition ifTrue: [ coll last definition ] ifFalse: [ coll last modification ]) to: each) ; yourself ] ]) reversed! ! !ClassReference methodsFor: '*monticello' stamp: 'mt 8/25/2021 10:52'! mcModel ^ self actualClass theNonMetaClass mcModel! ! !ClassReference methodsFor: '*monticello' stamp: 'mt 8/25/2021 10:52'! mcPatchOperations ^ self actualClass theNonMetaClass mcPatchOperations! ! !CodeHolder methodsFor: '*monticello-revisions' stamp: 'mt 8/25/2021 10:54'! classListMenuMonticello: aMenu | selectedClassReference | selectedClassReference := self selectedClassOrMetaClass ifNotNil: [:class | ClassReference class: class ]. selectedClassReference ifNil: [^ aMenu]. aMenu add: 'browse revisions' translated target: MCRepository selector: #browseClassRevisionsOf: argument: selectedClassReference. ^ aMenu! ! !CodeHolder methodsFor: '*monticello-revisions' stamp: 'mt 8/25/2021 10:55'! messageListMenuMonticello: aMenu | selectedMethodReference | selectedMethodReference := self selectedClassOrMetaClass ifNotNil: [:class | self selectedMessageName ifNotNil: [:selector | MethodReference class: class selector: selector]]. selectedMethodReference ifNil: [^ aMenu]. aMenu add: 'browse revisions' translated target: MCRepository selector: #browseMethodRevisionsOf: argument: selectedMethodReference. ^ aMenu! ! !MCRepository class methodsFor: 'ui-support' stamp: 'mt 8/25/2021 10:52'! browseClassRevisionsOf: classReference classReference ifNil: [ Project uiManager inform: 'No class selected' ]. classReference mcModel ifNil: [ Project uiManager inform: 'Only Magma-backed HTTP repositories (or MCMagmaRepositorys) support browsing Monticello revisions.' ] ifNotNil: [ (MCOperationsList operations: (Cursor wait showWhile: [ classReference mcPatchOperations ])) browse ] ! ! !MCRepository class methodsFor: 'ui-support' stamp: 'mt 8/25/2021 10:44'! browseMethodRevisionsOf: methodReference methodReference ifNil: [ ^ Project uiManager inform: 'No method selected' ]. methodReference mcModel ifNil: [ Project uiManager inform: 'Only Magma-backed HTTP repositories (or MCMagmaRepositorys) support browsing Monticello revisions.' ] ifNotNil: [ (MCOperationsList operations: (Cursor wait showWhile: [ methodReference mcPatchOperations ])) browse ].! ! !MCHttpRepository class methodsFor: 'class initialization' stamp: 'mt 8/25/2021 10:56'! initialize self unload.! ! MCHttpRepository initialize! MCRepository class removeSelector: #browseClassRevisionsService! MCRepository class removeSelector: #browseMethodRevisionsService! BrowserRequestor removeSelector: #browseMcClassRevisions! BrowserRequestor removeSelector: #browseMcMethodRevisions! BrowserRequestor removeSelector: #selectedMethodReference! MCHttpRepository initialize.!