MCVersionList.st
author Claus Gittinger <cg@exept.de>
Thu, 11 Dec 2014 16:51:20 +0100
changeset 940 64e03d517590
parent 606 adcb977a22f8
child 961 d7d23e7c5c83
permissions -rw-r--r--
class: MCPackageLoader comment/format in: #useChangeSetNamed:during:
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"{ Package: 'stx:goodies/monticello' }"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     2
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     3
MCBrowserList subclass:#MCVersionList
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
	instanceVariableNames:''
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     5
	classVariableNames:''
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     6
	poolDictionaries:''
606
adcb977a22f8 category change
Claus Gittinger <cg@exept.de>
parents: 399
diff changeset
     7
	category:'SCM-Monticello-St/X UI'
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     8
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     9
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    10
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    11
!MCVersionList methodsFor:'generators'!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    12
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    13
makeGenerator
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
    "superclass Tools::BrowserList says that I am responsible to implement this method"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    16
     ^Iterator on:
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    17
        [:whatToDo| | selection |
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
        selection := self selectionHolder value.
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
        selection ifNotNil:[whatToDo value: selection]].
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
    "Modified: / 17-09-2010 / 09:53:33 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    22
! !
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    23
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    24
!MCVersionList methodsFor:'private'!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
makeDependent
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
    "superclass Tools::BrowserList says that I am responsible to implement this method"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
    "^ self shouldImplement"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
    "Modified: / 16-09-2010 / 19:03:00 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
makeIndependent
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
    "superclass Tools::BrowserList says that I am responsible to implement this method"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
    "^ self shouldImplement"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
    "Modified: / 16-09-2010 / 19:03:06 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
updateList
397
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    43
    | generator list |
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
397
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    45
    self withWaitCursorDo:[
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    46
        generator := self inGeneratorHolder value ? #().
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    47
        list := SortedCollection sortBlock:
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    48
            [:v1 :v2| | vn1 vn2 |
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    49
            vn1 := v1 versionNumber.
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    50
            vn2 := v2 versionNumber.
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    51
            (vn1 notNil and:[vn2 notNil]) 
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    52
                ifTrue:[vn1 > vn2]
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    53
                ifFalse:[v1 name > v2 name]].
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    54
        generator do:[:verentry|list add: verentry].
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    55
        listHolder value: list.
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    56
        listValid := true.
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    57
    ].
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
    "Modified: / 13-10-2010 / 15:32:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
397
dc0e74d097dc changed: #updateList
Claus Gittinger <cg@exept.de>
parents: 306
diff changeset
    60
    "Modified: / 20-08-2011 / 16:24:11 / cg"
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
! !
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
!MCVersionList class methodsFor:'documentation'!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
version
606
adcb977a22f8 category change
Claus Gittinger <cg@exept.de>
parents: 399
diff changeset
    66
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionList.st,v 1.4 2012-09-11 21:15:40 cg Exp $'
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
version_CVS
606
adcb977a22f8 category change
Claus Gittinger <cg@exept.de>
parents: 399
diff changeset
    70
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionList.st,v 1.4 2012-09-11 21:15:40 cg Exp $'
306
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
version_SVN
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
    ^ '§Id: MCVersionList.st 19 2010-10-14 10:51:48Z vranyj1 §'
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
! !