In changeList

browseCurrentVersionsOfSelections
        "Opens a message-list browser on the current in-memory versions of all 
methods that are currently seleted"
        | aList |

        aList := OrderedCollection new.
        Cursor read showWhile: [
                1 to: changeList size do: [:i |
                        (listSelections at: i) ifTrue: [
                                | aClass aChange |
                                aChange := changeList at: i.
                                (aChange type = #method
                                        and: [(aClass := aChange methodClass) 
notNil
                                        and: [aClass includesSelector: aChange 
methodSelector]])


contentsDiffedFromCurrent
        "Answer the contents diffed forward from current (in-memory) method 
version"

        | aChange aClass |
        listIndex = 0
                ifTrue: [^ ''].
        aChange := changeList at: listIndex.
         (aChange type == #method
                and: [(aClass := aChange methodClass) notNil
                 and: [aClass includesSelector: aChange methodSelector]]) 
ifTrue:

destroyCurrentCodeOfSelections
        "Actually remove from the system any in-memory methods with class and 
selector identical to items current selected.  This may seem rather arcane but 
believe me it has its great uses, when trying to split out code.  To use 
effectively, first file out a change set that you wish to split off.  Then open 
a ChangeList browser on that fileout.  Now look through the methods, and select 
any of them which you want to remove completely from the system, then issue 
this command.  For those methods where you have made changes to pre-existing 
versions, of course, you won't want to remove them from the system, so use this 
mechanism with care!"

        |  aClass aChange aList |
        aList := OrderedCollection new.
        1 to: changeList size do:
                [:index |
                        (listSelections at: index) ifTrue:
                                [aChange := changeList at: index.
                                (aChange type = #method
                                        and: [(aClass := aChange methodClass) 
notNil
                                        and: [aClass includesSelector: aChange 
methodSelector]])
                                                ifTrue:

and a couple more....
I like old design. It is sweet and you feel cool when you fix it.

Stef


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to