MCVersionList.st
author Claus Gittinger <cg@exept.de>
Sat, 20 Aug 2011 14:21:14 +0200
changeset 306 a65de72c538d
child 397 dc0e74d097dc
permissions -rw-r--r--
initial checkin
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:''
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     7
	category:'Monticello-St/X UI'
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
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
    | generator list |
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
    generator := self inGeneratorHolder value ? #().
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
    list := SortedCollection sortBlock:
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
        [:v1 :v2| | vn1 vn2 |
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    48
        vn1 := v1 versionNumber.
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
        vn2 := v2 versionNumber.
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
        (vn1 notNil and:[vn2 notNil]) 
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
            ifTrue:[vn1 > vn2]
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
            ifFalse:[v1 name > v2 name]].
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
    generator do:[:verentry|list add: verentry].
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    listHolder value: list.
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
    listValid := true.
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    "Modified: / 13-10-2010 / 15:32:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    58
! !
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
!MCVersionList class methodsFor:'documentation'!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
version
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionList.st,v 1.1 2011-08-20 12:21:14 cg Exp $'
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
version_CVS
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
    ^ '$Header: /cvs/stx/stx/goodies/monticello/MCVersionList.st,v 1.1 2011-08-20 12:21:14 cg Exp $'
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
!
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    70
version_SVN
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
    ^ '§Id: MCVersionList.st 19 2010-10-14 10:51:48Z vranyj1 §'
a65de72c538d initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
! !