Tools__HierarchicalPackageFilterList.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Thu, 05 Sep 2013 12:46:11 +0200
changeset 13498 b8d845e42988
parent 12715 755f78ea626b
child 13530 2269bce1636d
child 14028 82c471faccde
permissions -rw-r--r--
Added `environment` instance variable to Tools__NewSystemBrowser and components it uses. The environment is by default initialized to Smalltalk. This allow for displaying limited subset of classes in the browser. The classes displayed does not even have to be classes and does not have to be installed in Smalltalk dictionary.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     1
"
10062
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     2
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     3
              All Rights Reserved
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
     4
10062
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     5
Permission is hereby granted, free of charge, to any person
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     6
obtaining a copy of this software and associated documentation
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     7
files (the 'Software'), to deal in the Software without
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     8
restriction, including without limitation the rights to use,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
     9
copy, modify, merge, publish, distribute, sublicense, and/or sell
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    10
copies of the Software, and to permit persons to whom the
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    11
Software is furnished to do so, subject to the following
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    12
conditions:
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    13
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    14
The above copyright notice and this permission notice shall be
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    15
included in all copies or substantial portions of the Software.
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    16
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    17
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    18
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    19
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    20
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    21
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    22
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    23
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    24
OTHER DEALINGS IN THE SOFTWARE.
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    25
"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    26
"{ Package: 'stx:libtool' }"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    27
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
"{ NameSpace: Tools }"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
HierarchicalProjectList subclass:#HierarchicalPackageFilterList
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
	instanceVariableNames:''
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
	classVariableNames:''
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
	poolDictionaries:''
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
	category:'Interface-Browsers-New-Profiler'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    35
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    36
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    37
HierarchicalItemWithLabel subclass:#PackageItem
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    38
	instanceVariableNames:'packageID selected'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    39
	classVariableNames:''
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    40
	poolDictionaries:''
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    41
	privateIn:HierarchicalPackageFilterList
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    42
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    43
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    44
!HierarchicalPackageFilterList class methodsFor:'documentation'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    45
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    46
copyright
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    47
"
10062
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    48
 COPYRIGHT (c) 2010 by Jan Vrany, SWING Research Group. CTU in Prague
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    49
              All Rights Reserved
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    50
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    51
Permission is hereby granted, free of charge, to any person
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    52
obtaining a copy of this software and associated documentation
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    53
files (the 'Software'), to deal in the Software without
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    54
restriction, including without limitation the rights to use,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    55
copy, modify, merge, publish, distribute, sublicense, and/or sell
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    56
copies of the Software, and to permit persons to whom the
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    57
Software is furnished to do so, subject to the following
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    58
conditions:
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
10062
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    60
The above copyright notice and this permission notice shall be
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    61
included in all copies or substantial portions of the Software.
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    62
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    63
THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    64
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    65
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    66
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    67
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    68
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    69
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
8130e24ed31e copyright
Claus Gittinger <cg@exept.de>
parents: 9990
diff changeset
    70
OTHER DEALINGS IN THE SOFTWARE.
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    71
"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    73
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    74
!HierarchicalPackageFilterList class methodsFor:'interface specs'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    75
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    76
windowSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    77
    "This resource specification was automatically generated
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    78
     by the UIPainter of ST/X."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
    "Do not manually edit this!! If it is corrupted,
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    81
     the UIPainter may not be able to read the specification."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    82
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    84
     UIPainter new openOnClass:Tools::HierarchicalPackageFilterList andSelector:#windowSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    85
     Tools::HierarchicalPackageFilterList new openInterface:#windowSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    86
     Tools::HierarchicalPackageFilterList open
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    87
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    88
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    89
    <resource: #canvas>
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
    ^ 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
     #(FullSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
        name: windowSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
        window: 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    95
       (WindowSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    96
          label: 'ProjectList'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    97
          name: 'ProjectList'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    98
          min: (Point 0 0)
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    99
          max: (Point 1024 721)
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   100
          bounds: (Rectangle 0 0 346 324)
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   101
        )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   102
        component: 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   103
       (SpecCollection
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   104
          collection: (
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   105
           (HierarchicalListViewSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   106
              name: 'HierarchicalListView1'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   107
              layout: (LayoutFrame 0 0 0 0 0 1 -30 1)
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   108
              tabable: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   109
              model: hierarchicalProjectSelection
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   110
              menu: menuHolder
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   111
              hasHorizontalScrollBar: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   112
              hasVerticalScrollBar: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   113
              miniScrollerHorizontal: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   114
              listModel: hierarchicalProjectList
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   115
              highlightMode: line
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   116
              doubleClickSelector: doubleClicked:
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   117
              showLines: false
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   118
              indicatorSelector: indicatorPressed:
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   119
              properties: 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   120
             (PropertyListDictionary
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   121
                dragArgument: nil
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   122
                dropArgument: nil
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   123
                canDropSelector: canDrop:
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   124
                dropSelector: doDrop:
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   125
              )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   126
            )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   127
           (LabelSpec
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   128
              label: 'Hint: double-click on item to (de)select'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   129
              name: 'Hint'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   130
              layout: (LayoutFrame 0 0 -30 1 0 1 0 1)
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   131
              translateLabel: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   132
              adjust: left
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   133
            )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   134
           )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   135
         
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   136
        )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   137
      )
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   138
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   139
    "Modified: / 10-10-2007 / 12:25:16 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   140
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   141
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   142
!HierarchicalPackageFilterList class methodsFor:'plugIn spec'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   143
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   144
aspectSelectors
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   145
    "This resource specification was automatically generated
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   146
     by the UIPainter of ST/X."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   147
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   148
    "Do not manually edit this. If it is corrupted,
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   149
     the UIPainter may not be able to read the specification."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   150
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   151
    "Return a description of exported aspects;
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   152
     these can be connected to aspects of an embedding application
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   153
     (if this app is embedded in a subCanvas)."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   154
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   155
    ^ #(
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   156
        #packageFilter
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   157
      ).
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   158
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   159
    "Modified: / 10-10-2007 / 12:24:58 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   160
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   161
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   162
!HierarchicalPackageFilterList methodsFor:'aspects'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
generateHierarchicalProjectTree
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
    |anchor|
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    self projectList value isNil ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
        self updateList.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
        self projectList value isNil ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
            ^ nil.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
        ]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
    anchor := Tools::HierarchicalPackageFilterList::PackageItem new.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
    anchor package:''.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
    anchor label:nil.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
    packageToItemDictionary := IdentityDictionary new.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   179
    packageToItemDictionary at:'' asSymbol put:anchor.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   180
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   181
    self projectList value do:[:eachPackageString |
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   182
        |package|
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   183
        eachPackageString = '* all *' ifFalse:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   184
            package := eachPackageString asSymbol.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   185
            (packageToItemDictionary includesKey:package) ifFalse:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   186
                self addPackage:package 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   187
            ]            
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   188
        ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   189
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   190
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12715
diff changeset
   191
"/    environment allClassesDo:[:eachClass |
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   192
"/        |package|
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   193
"/
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   194
"/        package := eachClass package asSymbol.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   195
"/        (packageToItemDictionary includesKey:package) ifFalse:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   196
"/            self addPackage:package 
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   197
"/        ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   198
"/    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   199
    anchor recursiveSortChildren:[:i1 :i2 | i1 label asLowercase < i2 label asLowercase].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   200
    anchor expand.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   201
    anchor selected: true.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   202
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   203
    ^ anchor
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   204
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   205
    "Created: / 10-10-2007 / 10:16:57 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   206
    "Modified: / 10-10-2007 / 12:40:52 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   207
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   208
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   209
hierarchicalProjectList
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   210
    |anchor |
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   211
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   212
    hierarchicalProjectList isNil ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   213
        hierarchicalProjectList := HierarchicalList new.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   214
        hierarchicalProjectList showRoot:false.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   215
        hierarchicalProjectList application: self.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   216
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   217
        ("self slaveMode value ~~" true) ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   218
            anchor := self generateHierarchicalProjectTree.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   219
            hierarchicalProjectList root:anchor.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   220
            anchor parent: hierarchicalProjectList.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   221
            listValid := true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   222
        ] ifFalse:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   223
            listValid := false
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   224
        ]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   225
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   226
    ^ hierarchicalProjectList
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   227
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   228
    "Created: / 10-10-2007 / 10:36:38 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   229
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   230
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   231
!HierarchicalPackageFilterList methodsFor:'change & update'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   232
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   233
updatePackageFilter
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   234
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   235
    | selectedPackages |
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   236
    selectedPackages := self hierarchicalProjectList root selectedPackageIDs.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   237
    self packageFilter value: selectedPackages
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   238
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   239
    "Created: / 10-10-2007 / 12:41:46 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   240
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   241
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   242
updateSelectionFromTree
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   243
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   244
    "nothing to do"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   245
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   246
    "Created: / 10-10-2007 / 12:13:10 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   247
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   248
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   249
!HierarchicalPackageFilterList methodsFor:'private'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   250
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   251
addPackage:package
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   252
    |i p pp l parentPackage parentItem idx|
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   253
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   254
    i:= packageToItemDictionary at:package asSymbol ifAbsent:nil.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   255
    i isNil ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   256
        i := Tools::HierarchicalPackageFilterList::PackageItem new.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   257
        i package:package.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   258
        packageToItemDictionary at:package asSymbol put:i.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   259
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   260
        package size > 0 ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   261
            "/ find the parent ...
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   262
            p := package asCollectionOfSubstringsSeparatedByAny:':/.'.
12715
755f78ea626b Changed usage of deprecated #copyWithoutLast: to #copyButLast:
Stefan Vogel <sv@exept.de>
parents: 10062
diff changeset
   263
            pp := p copyButLast:1.
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   264
            l := (pp asStringWith:$/) size.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   265
            parentPackage := package copyTo:l.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   266
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   267
            parentItem := self addPackage:parentPackage asSymbol .
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   268
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   269
            parentPackage size == 0 ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   270
                idx := 1.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   271
            ] ifFalse:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   272
                idx := parentPackage size + 2
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   273
            ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   274
            i label:(package copyFrom:idx).
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   275
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   276
            parentItem add:i sortBlock:[:i1 :i2 | i1 label asLowercase < i2 label asLowercase].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   277
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   278
            "/ TODO: special items for classes, resources etc.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   279
        
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   280
        ]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   281
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   282
    ^ i
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   283
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   284
    "Created: / 10-10-2007 / 10:17:10 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   285
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   286
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   287
!HierarchicalPackageFilterList methodsFor:'user actions'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   288
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   289
doubleClicked:anIndex
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   290
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   291
    | selectedPackageItem |
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   292
    selectedPackageItem := self hierarchicalProjectList at:
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   293
                                self hierarchicalProjectSelection value.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   294
    selectedPackageItem toggleSelection
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   295
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   296
    "Created: / 10-10-2007 / 10:19:17 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   297
    "Modified: / 10-10-2007 / 12:15:53 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   298
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   299
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   300
!HierarchicalPackageFilterList::PackageItem class methodsFor:'documentation'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   301
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   302
version
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12715
diff changeset
   303
    ^'$Header: /cvs/stx/stx/libtool/Tools__HierarchicalPackageFilterList.st,v 1.4 2013-09-05 10:46:11 vrany Exp $'
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   304
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   305
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   306
!HierarchicalPackageFilterList::PackageItem class methodsFor:'image specs'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   307
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   308
checkedIcon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   309
    "This resource specification was automatically generated
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   310
     by the ImageEditor of ST/X."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   311
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   312
    "Do not manually edit this!! If it is corrupted,
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   313
     the ImageEditor may not be able to read the specification."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   314
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   315
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   316
     self checkedIcon inspect
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
     ImageEditor openOnClass:self andSelector:#checkedIcon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
     Icon flushCachedIcons
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
    <resource: #image>
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
    ^Icon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
        constantNamed:#'Tools::HierarchicalPackageFilterList::PackageItem class checkedIcon'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
        ifAbsentPut:[(Depth1Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@C?<O?0??C?<O?0??C?<O?07?C?<O?0??@@@@@@b') ; colorMapFromArray:#[0 0 0 33 161 33]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
?????<@C0@O@D<@30GOH8<7C38OG@<HC0@O@@?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; yourself); yourself]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
    "Created: / 10-10-2007 / 10:52:06 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   333
uncheckedIcon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   334
    "This resource specification was automatically generated
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   335
     by the ImageEditor of ST/X."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   336
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   337
    "Do not manually edit this!! If it is corrupted,
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   338
     the ImageEditor may not be able to read the specification."
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   339
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   341
     self checkFrameForm inspect
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
     ImageEditor openOnClass:self andSelector:#checkFrameForm
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
     Icon flushCachedIcons
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
    "
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   346
    <resource: #image>
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   347
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   348
    ^Icon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   349
        constantNamed:#'Tools::HierarchicalPackageFilterList::PackageItem class checkFrameForm'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   350
        ifAbsentPut:[(Depth1Image new) width: 16; height: 16; photometric:(#palette); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'@@@@@C?<O?0??C?<O?0??C?<O?0??C?<O?0??@@@@@@b') ; colorMapFromArray:#[0 0 0 255 255 255]; mask:((Depth1Image new) width: 16; height: 16; photometric:(#blackIs0); bitsPerSample:(#[1]); samplesPerPixel:(1); bits:(ByteArray fromPackedString:'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   351
?????<@C0@O@@<@C0@O@@<@C0@O@@<@C0@O@@?????<@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   352
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   353
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@a') ; yourself); yourself]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   354
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   355
    "Created: / 10-10-2007 / 10:49:12 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   356
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   357
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   358
!HierarchicalPackageFilterList::PackageItem methodsFor:'accessing'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   359
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   360
children
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   361
    children isNil ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   362
        children := #()
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   363
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   364
    ^ children
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
icon
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   368
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
    ^self selected
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
       ifTrue:[self class checkedIcon]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   371
        ifFalse:[self class uncheckedIcon]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   372
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   373
    "Created: / 10-10-2007 / 10:16:04 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   374
    "Modified: / 10-10-2007 / 12:17:50 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   375
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   377
label
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   378
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   379
    ^label
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   380
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   381
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   382
    "Modified: / 20-04-2005 / 19:10:49 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
label:aString
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   386
    label ~= aString ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   387
        label := aString.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   388
        self changed:#label
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   389
    ].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   390
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   391
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   392
package
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   393
    ^ packageID
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   394
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   395
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   396
package:prefixOrPackageID
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   397
    packageID := prefixOrPackageID
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   398
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   399
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   400
packageID
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   401
    ^ packageID
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   402
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   403
    "Created: / 10-10-2007 / 12:09:14 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   404
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
selected
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
    ^ selected ? false
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   408
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
    "Created: / 10-10-2007 / 12:16:21 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   411
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   412
selected:aBoolean
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   413
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   414
   self selected: aBoolean doUpdate: true
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   415
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
    "Created: / 10-10-2007 / 12:16:21 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   417
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   418
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   419
selected:sel doUpdate: doUpdate
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   420
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   421
    selected := sel.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   422
    self children do:[:child|child selected: sel doUpdate:false].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
    doUpdate ifTrue:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   424
        self model ifNotNil:[
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   425
            self model changed.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
            self application updatePackageFilter
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
        ]                            
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
    ]
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
    "Created: / 10-10-2007 / 12:19:51 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   433
selectedPackageIDs
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   434
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   435
    | stream |
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   436
    stream := OrderedCollection new writeStream.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   437
    self selectedPackageIDsOn: stream.
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   438
    ^stream contents
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   439
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   440
    "Created: / 10-10-2007 / 13:29:35 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   441
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   442
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   443
selectedPackageIDsOn: stream
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   444
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   445
    self selected ifTrue:[stream nextPut: self packageID].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   446
    self children do:[:child|child selectedPackageIDsOn: stream].
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   447
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   448
    "Created: / 10-10-2007 / 13:30:18 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   449
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   450
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   451
!HierarchicalPackageFilterList::PackageItem methodsFor:'user actions'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   452
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   453
toggleSelection
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   454
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   455
    self selected: self selected not
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   456
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
    "Created: / 10-10-2007 / 12:16:08 / janfrog"
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
! !
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   460
!HierarchicalPackageFilterList class methodsFor:'documentation'!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
version_CVS
13498
b8d845e42988 Added `environment` instance variable to Tools__NewSystemBrowser and
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 12715
diff changeset
   463
    ^ '$Header: /cvs/stx/stx/libtool/Tools__HierarchicalPackageFilterList.st,v 1.4 2013-09-05 10:46:11 vrany Exp $'
9990
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   464
!
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   465
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
version_SVN
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
    ^ '§Id§'
15cd7042b1a0 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   468
! !
12715
755f78ea626b Changed usage of deprecated #copyWithoutLast: to #copyButLast:
Stefan Vogel <sv@exept.de>
parents: 10062
diff changeset
   469