ClassItem.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 29 Aug 2013 21:55:45 +0100
branchjv
changeset 13469 544e7ced18a0
parent 12650 e0f607754b9a
child 15950 23be8cf85415
permissions -rw-r--r--
Added *Redo* menu item to CodeViwq's context menu (eclipse style)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2626
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     1
"
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     2
 COPYRIGHT (c) 2000 by eXept Software AG
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     3
              All Rights Reserved
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     4
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     5
 This software is furnished under a license and may be used
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     6
 only in accordance with the terms of that license and with the
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     8
 be provided or otherwise made available to, or used by, any
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
     9
 other person.  No title to or ownership of the software is
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    10
 hereby transferred.
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    11
"
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
    12
"{ Package: 'stx:libtool' }"
2626
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    13
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    14
AbstractVersionDiffBrowserItem subclass:#ClassItem
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    15
	instanceVariableNames:'myClass isRegistered revisonColl revisionInfo'
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    16
	classVariableNames:''
736908782aa1 initial checkin
ps
parents:
diff changeset
    17
	poolDictionaries:''
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    18
	category:'Interface-Browsers-Support'
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    19
!
736908782aa1 initial checkin
ps
parents:
diff changeset
    20
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    21
!ClassItem class methodsFor:'documentation'!
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    22
2626
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    23
copyright
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    24
"
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    25
 COPYRIGHT (c) 2000 by eXept Software AG
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    26
              All Rights Reserved
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    27
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    28
 This software is furnished under a license and may be used
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    29
 only in accordance with the terms of that license and with the
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    30
 inclusion of the above copyright notice.   This software may not
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    31
 be provided or otherwise made available to, or used by, any
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    32
 other person.  No title to or ownership of the software is
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    33
 hereby transferred.
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    34
"
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    35
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    36
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    37
!
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    38
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    39
documentation
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    40
"
2625
d70f0361a027 doc; halts removed
Claus Gittinger <cg@exept.de>
parents: 2612
diff changeset
    41
    This is not yet finished (work in progress) - do not use.
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    42
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    43
    [author:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    44
        Pierre Schwarz (ps@exept.de)
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    45
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    46
    [see also:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    47
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    48
    [instance variables:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    49
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    50
    [class variables:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    51
"
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    52
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2542
diff changeset
    53
! !
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    54
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    55
!ClassItem class methodsFor:'protocol'!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    56
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    57
expandableRevisionItemClass
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    58
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    59
    ^ExpandableRevisionItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    60
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    61
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    62
sourceRevisonItemClass
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    63
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    64
    ^SourceRevisionItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    65
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    66
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    67
versionRevisionItemClass
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    68
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    69
    ^VersionRevisionItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    70
! !
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    71
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    72
!ClassItem methodsFor:'accessing'!
736908782aa1 initial checkin
ps
parents:
diff changeset
    73
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    74
loadedRevisionItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    75
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    76
    ^children detect:[:eachRevision | eachRevision isLoadedRevision]
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    77
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    78
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    79
myClass
736908782aa1 initial checkin
ps
parents:
diff changeset
    80
    "return the value of the instance variable 'myClass' (automatically generated)"
736908782aa1 initial checkin
ps
parents:
diff changeset
    81
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
    82
    ^ myClass
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
    83
!
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    84
736908782aa1 initial checkin
ps
parents:
diff changeset
    85
myClass:something
736908782aa1 initial checkin
ps
parents:
diff changeset
    86
    "set the value of the instance variable 'myClass' (automatically generated)"
736908782aa1 initial checkin
ps
parents:
diff changeset
    87
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
    88
    myClass := something.
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
    89
!
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    90
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    91
needsChildren
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    92
    "return the value of the instance variable 'isRegistered' (automatically generated)"
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    93
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    94
    ^ children size == 0
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    95
!
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
    96
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    97
revisonColl
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    98
    "return the value of the instance variable 'revisonColl' (automatically generated)"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
    99
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   100
    ^ revisonColl
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   101
!
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   102
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   103
revisonColl:something
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   104
    "set the value of the instance variable 'revisonColl' (automatically generated)"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   105
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   106
    revisonColl := something.
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   107
! !
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   108
736908782aa1 initial checkin
ps
parents:
diff changeset
   109
!ClassItem methodsFor:'initialization'!
736908782aa1 initial checkin
ps
parents:
diff changeset
   110
736908782aa1 initial checkin
ps
parents:
diff changeset
   111
initialize
2517
69888372f495 *** empty log message ***
ps
parents: 2516
diff changeset
   112
"
69888372f495 *** empty log message ***
ps
parents: 2516
diff changeset
   113
initialize necessary things
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   114
2517
69888372f495 *** empty log message ***
ps
parents: 2516
diff changeset
   115
<return: self>
69888372f495 *** empty log message ***
ps
parents: 2516
diff changeset
   116
"
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   117
    super initialize.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   118
    isRegistered := false
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   119
! !
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   120
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   121
!ClassItem methodsFor:'private'!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   122
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   123
addAllRevisionsBefore:anExpandableRevisonItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   124
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   125
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   126
    |theChildrens theStartIndex theStopIndex theRevisionSize|
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   127
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   128
    (theStartIndex := children size) <= (theRevisionSize := revisonColl size) ifTrue:[
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   129
        theStopIndex := theRevisionSize.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   130
        theChildrens := revisonColl copyFrom:theStartIndex to:theStopIndex.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   131
        "remove expandable item"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   132
        self remove:anExpandableRevisonItem.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   133
        "add items"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   134
        self addAll:theChildrens.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   135
    ]
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   136
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   137
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   138
addNewRevisionsBefore:anExpandableRevisonItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   139
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   140
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   141
    |theChildrens theStartIndex theStopIndex|
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   142
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   143
    (theStartIndex := children size) <= revisonColl size ifTrue:[
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   144
        theStopIndex := (theStartIndex-1) * 2 + (theStartIndex-1).
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   145
        theStopIndex := theStopIndex min:revisonColl size.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   146
        theChildrens := revisonColl copyFrom:theStartIndex to:theStopIndex.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   147
        "add items"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   148
        self addAll:theChildrens before:anExpandableRevisonItem.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   149
        "check if all revisions are shown, if true remove expandable item"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   150
        (theStopIndex = revisonColl size) ifTrue:[self remove:anExpandableRevisonItem].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   151
    ]
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   152
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   153
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   154
setRevisionInfo:aRevisionInfo
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   155
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   156
    aRevisionInfo removeKey:#revisions.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   157
    revisionInfo := aRevisionInfo
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   158
! !
736908782aa1 initial checkin
ps
parents:
diff changeset
   159
736908782aa1 initial checkin
ps
parents:
diff changeset
   160
!ClassItem methodsFor:'protocol'!
736908782aa1 initial checkin
ps
parents:
diff changeset
   161
736908782aa1 initial checkin
ps
parents:
diff changeset
   162
children
736908782aa1 initial checkin
ps
parents:
diff changeset
   163
"returns list of children. The revision for the class myClass
736908782aa1 initial checkin
ps
parents:
diff changeset
   164
are computed via the sourcecode manager. Only when the childrens
736908782aa1 initial checkin
ps
parents:
diff changeset
   165
are needed, they are calculated.
736908782aa1 initial checkin
ps
parents:
diff changeset
   166
736908782aa1 initial checkin
ps
parents:
diff changeset
   167
<return: nil|List>
736908782aa1 initial checkin
ps
parents:
diff changeset
   168
"  
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   169
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   170
    isRegistered ifFalse:[
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   171
        isRegistered := true.
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   172
        self application getRevisionInfoForClassItem:self.
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   173
        self changed:#icon
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   174
    ].
736908782aa1 initial checkin
ps
parents:
diff changeset
   175
    ^children
736908782aa1 initial checkin
ps
parents:
diff changeset
   176
736908782aa1 initial checkin
ps
parents:
diff changeset
   177
!
736908782aa1 initial checkin
ps
parents:
diff changeset
   178
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   179
computeRevisions
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   180
2542
dbebe8c0abf3 *** empty log message ***
ps
parents: 2538
diff changeset
   181
    |theClass theSourceCodeManager theRevisionLog|
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   182
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   183
    theClass := self myClass. 
2542
dbebe8c0abf3 *** empty log message ***
ps
parents: 2538
diff changeset
   184
    (theSourceCodeManager := theClass sourceCodeManager) isNil
dbebe8c0abf3 *** empty log message ***
ps
parents: 2538
diff changeset
   185
        ifFalse:[theRevisionLog := theSourceCodeManager revisionLogOf:theClass].
dbebe8c0abf3 *** empty log message ***
ps
parents: 2538
diff changeset
   186
    self setRevisions:theRevisionLog
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   187
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   188
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   189
hasChildren
736908782aa1 initial checkin
ps
parents:
diff changeset
   190
"a class items has always childs
736908782aa1 initial checkin
ps
parents:
diff changeset
   191
736908782aa1 initial checkin
ps
parents:
diff changeset
   192
<return: Boolean>
736908782aa1 initial checkin
ps
parents:
diff changeset
   193
"
736908782aa1 initial checkin
ps
parents:
diff changeset
   194
736908782aa1 initial checkin
ps
parents:
diff changeset
   195
     ^true
736908782aa1 initial checkin
ps
parents:
diff changeset
   196
!
736908782aa1 initial checkin
ps
parents:
diff changeset
   197
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   198
icon
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   199
    isRegistered ifFalse:[^#unloadedClassItem].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   200
    (isRegistered and:[children size ~~ 0]) ifTrue:[
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   201
        ^#loadedClassItem 
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   202
    ].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   203
    ^#loadingClassItem
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   204
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   205
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   206
label
736908782aa1 initial checkin
ps
parents:
diff changeset
   207
736908782aa1 initial checkin
ps
parents:
diff changeset
   208
   ^myClass name
736908782aa1 initial checkin
ps
parents:
diff changeset
   209
736908782aa1 initial checkin
ps
parents:
diff changeset
   210
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   211
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   212
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   213
newestRevision
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   214
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   215
    revisionInfo ifNil:[^''].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   216
    ^revisionInfo at:#newestRevision
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   217
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   218
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   219
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   220
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   221
setChildrensFromRevisionColl
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   222
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   223
    |theChildrens|
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   224
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   225
    revisonColl size > 5
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   226
        ifTrue:[
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   227
            theChildrens := revisonColl copyFrom:1 to:5.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   228
            theChildrens add:self class expandableRevisionItemClass new.
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   229
            ]
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   230
        ifFalse:[theChildrens:=revisonColl].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   231
    self addAll:theChildrens
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   232
!
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   233
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   234
setRevisions:aRevisionInfo
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   235
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   236
    aRevisionInfo isNil
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   237
        ifTrue: [revisonColl := Array with:(self class sourceRevisonItemClass newForRevision:nil)]
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   238
        ifFalse:[revisonColl := (aRevisionInfo at:#revisions) collect:[:eachRevision|
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   239
                    self class versionRevisionItemClass newForRevision:eachRevision].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   240
                self isMyClassChanged
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   241
                    ifTrue:[revisonColl addFirst:(self class sourceRevisonItemClass newForRevision:myClass revisionInfo)].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   242
                self setRevisionInfo:aRevisionInfo].
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   243
     self setChildrensFromRevisionColl.
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   244
! !
736908782aa1 initial checkin
ps
parents:
diff changeset
   245
736908782aa1 initial checkin
ps
parents:
diff changeset
   246
!ClassItem methodsFor:'testing'!
736908782aa1 initial checkin
ps
parents:
diff changeset
   247
736908782aa1 initial checkin
ps
parents:
diff changeset
   248
isClassItem
2538
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   249
"
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   250
Used for testing tree items. Define correct behaviour in subclasses
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   251
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   252
<return: Boolean>
65d455c152f0 defined source container
ps
parents: 2517
diff changeset
   253
"
2516
736908782aa1 initial checkin
ps
parents:
diff changeset
   254
736908782aa1 initial checkin
ps
parents:
diff changeset
   255
    ^true
736908782aa1 initial checkin
ps
parents:
diff changeset
   256
736908782aa1 initial checkin
ps
parents:
diff changeset
   257
736908782aa1 initial checkin
ps
parents:
diff changeset
   258
!
736908782aa1 initial checkin
ps
parents:
diff changeset
   259
736908782aa1 initial checkin
ps
parents:
diff changeset
   260
isMyClassChanged
736908782aa1 initial checkin
ps
parents:
diff changeset
   261
736908782aa1 initial checkin
ps
parents:
diff changeset
   262
    ^Project isClassChanged: myClass  
736908782aa1 initial checkin
ps
parents:
diff changeset
   263
! !
736908782aa1 initial checkin
ps
parents:
diff changeset
   264
736908782aa1 initial checkin
ps
parents:
diff changeset
   265
!ClassItem class methodsFor:'documentation'!
736908782aa1 initial checkin
ps
parents:
diff changeset
   266
736908782aa1 initial checkin
ps
parents:
diff changeset
   267
version
12125
0c49a3b13e43 Merged with /trunk
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12123
diff changeset
   268
    ^ '$Header: /cvs/stx/stx/libtool/ClassItem.st,v 1.8 2000/02/18 14:09:35 cg Exp $'
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   269
!
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   270
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   271
version_HG
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   272
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   273
    ^ '$Changeset: <not expanded> $'
12125
0c49a3b13e43 Merged with /trunk
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12123
diff changeset
   274
! !
12650
e0f607754b9a Merged 18d06283743d and ff31bac2fd1b (branch default - CVS HEAD)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12125
diff changeset
   275