ClassItemRoot.st
author Claus Gittinger <cg@exept.de>
Mon, 20 Jan 2020 21:02:47 +0100
changeset 19422 c6ca1c3e0fd7
parent 2626 4ee750caddab
child 12123 4bde08cebd48
permissions -rw-r--r--
#REFACTORING by exept class: MultiViewToolApplication added: #askForFile:default:forSave:thenDo: changed: #askForFile:default:thenDo: #askForFile:thenDo: #menuSaveAllAs #menuSaveAs
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
"
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    12
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    13
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    14
2540
e183741e7290 initial checkin
ps
parents:
diff changeset
    15
AbstractVersionDiffBrowserItem subclass:#ClassItemRoot
e183741e7290 initial checkin
ps
parents:
diff changeset
    16
	instanceVariableNames:''
e183741e7290 initial checkin
ps
parents:
diff changeset
    17
	classVariableNames:''
e183741e7290 initial checkin
ps
parents:
diff changeset
    18
	poolDictionaries:''
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    19
	category:'Interface-Browsers-Support'
2540
e183741e7290 initial checkin
ps
parents:
diff changeset
    20
!
e183741e7290 initial checkin
ps
parents:
diff changeset
    21
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    22
!ClassItemRoot class methodsFor:'documentation'!
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    23
2626
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    24
copyright
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    25
"
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    26
 COPYRIGHT (c) 2000 by eXept Software AG
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    27
              All Rights Reserved
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    28
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    29
 This software is furnished under a license and may be used
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    30
 only in accordance with the terms of that license and with the
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    31
 inclusion of the above copyright notice.   This software may not
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    32
 be provided or otherwise made available to, or used by, any
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    33
 other person.  No title to or ownership of the software is
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    34
 hereby transferred.
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
!
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
    39
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    40
documentation
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    41
"
2625
d70f0361a027 doc; halts removed
Claus Gittinger <cg@exept.de>
parents: 2612
diff changeset
    42
    This is not yet finished (work in progress) - do not use.
2547
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    43
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    44
    [author:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    45
        Pierre Schwarz (ps@exept.de)
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    46
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    47
    [see also:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    48
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    49
    [instance variables:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    50
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    51
    [class variables:]
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    52
"
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    53
49e7cb306cd5 category change
Claus Gittinger <cg@exept.de>
parents: 2544
diff changeset
    54
! !
2540
e183741e7290 initial checkin
ps
parents:
diff changeset
    55
2612
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    56
!ClassItemRoot class methodsFor:'accessing'!
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    57
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    58
classItemClass
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    59
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    60
    ^ClassItem
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    61
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    62
! !
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    63
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    64
!ClassItemRoot methodsFor:'accessing'!
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    65
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    66
classItemClass
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    67
    "return the value of the instance variable 'classItemClass' (automatically generated)"
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    68
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    69
    ^ self class classItemClass
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    70
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    71
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    72
! !
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    73
2544
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    74
!ClassItemRoot methodsFor:'initialization'!
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    75
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    76
initialize
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    77
    super initialize.
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    78
    isExpanded := true.
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    79
! !
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
    80
2612
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    81
!ClassItemRoot methodsFor:'protocol'!
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    82
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    83
children
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    84
"
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    85
default childrens of the receiver are none. 
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    86
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    87
<return: Array>
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    88
"
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    89
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    90
    children ifNil:[
2625
d70f0361a027 doc; halts removed
Claus Gittinger <cg@exept.de>
parents: 2612
diff changeset
    91
        children := self computeChildrensFor:parent dataColl.
2612
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    92
        children do:[:eachChild | eachChild parent:self]
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    93
    ].
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    94
    ^ children
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    95
2625
d70f0361a027 doc; halts removed
Claus Gittinger <cg@exept.de>
parents: 2612
diff changeset
    96
    "Modified: / 18.2.2000 / 15:02:12 / cg"
2612
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    97
!
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    98
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
    99
computeChildrensFor:aClassColl
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   100
"
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   101
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   102
<return: OrderedCollection|nil>
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   103
"
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   104
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   105
    |theClassItemColl|
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   106
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   107
    aClassColl ifNil:[^#()].
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   108
    theClassItemColl := aClassColl collect:[:eachClass |
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   109
        |theClassItem theClass|
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   110
        theClassItem := self classItemClass new.
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   111
        theClass := Smalltalk resolveName:eachClass inClass:Smalltalk.
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   112
        theClassItem myClass:theClass.
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   113
        theClassItem].
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   114
    ^theClassItemColl
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   115
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   116
!
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   117
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   118
doubleClickOn:anItem
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   119
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   120
    |listView|
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   121
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   122
    (anItem isExpandableRevisionItem and:[parent application listView sensor shiftDown])
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   123
        ifTrue: [anItem recursiveToggleExpand]
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   124
        ifFalse:[anItem toggleExpand]  
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   125
! !
ce84f1d3dae9 *** empty log message ***
ps
parents: 2547
diff changeset
   126
2544
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   127
!ClassItemRoot methodsFor:'queries'!
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   128
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   129
canCollapse
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   130
    ^ false
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   131
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   132
! !
04ebb73c452f *** empty log message ***
ps
parents: 2540
diff changeset
   133
2540
e183741e7290 initial checkin
ps
parents:
diff changeset
   134
!ClassItemRoot class methodsFor:'documentation'!
e183741e7290 initial checkin
ps
parents:
diff changeset
   135
e183741e7290 initial checkin
ps
parents:
diff changeset
   136
version
2626
Claus Gittinger <cg@exept.de>
parents: 2625
diff changeset
   137
    ^ '$Header: /cvs/stx/stx/libtool/ClassItemRoot.st,v 1.6 2000-02-18 14:09:21 cg Exp $'
2540
e183741e7290 initial checkin
ps
parents:
diff changeset
   138
! !