MultipleItemSelectionWidget.st
author Claus Gittinger <cg@exept.de>
Fri, 28 Jun 2019 09:21:50 +0200
changeset 6078 08c9e2a47dc5
parent 6014 15c6b391e02d
permissions -rw-r--r--
#OTHER by cg self class name -> self className
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
     1
"{ Encoding: utf8 }"
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
     2
2787
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     3
"
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     4
 COPYRIGHT (c) 2004 by eXept Software AG
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     5
              All Rights Reserved
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     6
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     7
 This software is furnished under a license and may be used
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     8
 only in accordance with the terms of that license and with the
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
     9
 inclusion of the above copyright notice.   This software may not
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    10
 be provided or otherwise made available to, or used by, any
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    11
 other person.  No title to or ownership of the software is
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    12
 hereby transferred.
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    13
"
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    14
"{ Package: 'stx:libwidg2' }"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    15
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
    16
"{ NameSpace: Smalltalk }"
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
    17
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    18
ApplicationModel subclass:#MultipleItemSelectionWidget
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    19
	instanceVariableNames:'possibleItemsLabelHolder possibleItemListSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    20
		listOfPossibleItems selectedItemListSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    21
		removeButtonLabelHolder addButtonLabelHolder
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
    22
		selectedItemsLabelHolder listOfSelectedItems
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
    23
		canAddItemToSelection canRemoveItemFromSelection
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
    24
		canAddAllItemsToSelection canRemoveAllItemsFromSelection
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
    25
		enableChannel accepted addAllButtonLabelHolder
4978
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
    26
		removeAllButtonLabelHolder removeAllButtonVisibleHolder
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
    27
		addAllButtonVisibleHolder'
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    28
	classVariableNames:''
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    29
	poolDictionaries:''
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    30
	category:'Views-Lists'
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    31
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    32
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    33
!MultipleItemSelectionWidget class methodsFor:'documentation'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    34
2787
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    35
copyright
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    36
"
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    37
 COPYRIGHT (c) 2004 by eXept Software AG
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    38
              All Rights Reserved
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    39
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    40
 This software is furnished under a license and may be used
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    41
 only in accordance with the terms of that license and with the
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    42
 inclusion of the above copyright notice.   This software may not
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    43
 be provided or otherwise made available to, or used by, any
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    44
 other person.  No title to or ownership of the software is
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    45
 hereby transferred.
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    46
"
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    47
!
559ae498c994 copyright
Claus Gittinger <cg@exept.de>
parents: 2520
diff changeset
    48
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    49
documentation
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    50
"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    51
    Replacement for a multiSelectionInList widget;
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    52
    allows construction of a list by adding/removing items.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    53
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    54
    For use in a UI-spec, add a subCanvas, and bind the exported aspects to
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    55
    your applications aspects.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    56
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    57
    [author:]
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    58
	 (cg@smc1)
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    59
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    60
    [see also:]
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    61
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    62
    [instance variables:]
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    63
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    64
    [class variables:]
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    65
"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    66
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    67
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    68
examples
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    69
"
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    70
								[exBegin]
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    71
	|box|
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    72
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    73
	box := MultipleItemSelectionWidget new.
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    74
	box listOfPossibleItems value:#('one' 'two' 'three' 'four' 'five').  
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    75
	box listOfSelectedItems value:#().  
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    76
	box open.
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    77
	box listOfSelectedItems inspect
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    78
								[exEnd]
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    79
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    80
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    81
								[exBegin]
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    82
	|box|
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    83
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    84
	box := MultipleItemSelectionWidget new.
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    85
	box listOfPossibleItems value:#('one' 'two' 'three' 'four' 'five') asSortedCollection.  
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    86
	box listOfSelectedItems value:#() asSortedCollection.  
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    87
	box open.
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    88
	box listOfSelectedItems inspect
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
    89
								[exEnd]
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    90
"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    91
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    92
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    93
!MultipleItemSelectionWidget class methodsFor:'interface specs'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
    94
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
    95
dialogSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
    96
    "This resource specification was automatically generated
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
    97
     by the UIPainter of ST/X."
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
    98
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
    99
    "Do not manually edit this!! If it is corrupted,
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   100
     the UIPainter may not be able to read the specification."
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   101
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   102
    "
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   103
     UIPainter new openOnClass:MultipleItemSelectionWidget andSelector:#dialogSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   104
     MultipleItemSelectionWidget new openInterface:#dialogSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   105
    "
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   106
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   107
    <resource: #canvas>
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   108
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   109
    ^ 
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   110
     #(#FullSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   111
        #name: #dialogSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   112
        #window: 
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   113
       #(#WindowSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   114
          #label: 'dialogSpec'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   115
          #name: 'dialogSpec'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   116
          #min: #(#Point 10 10)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   117
          #max: #(#Point 1280 1024)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   118
          #bounds: #(#Rectangle 16 46 316 346)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   119
        )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   120
        #component: 
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   121
       #(#SpecCollection
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   122
          #collection: #(
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   123
           #(#UISubSpecification
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   124
              #name: 'SubSpecification1'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   125
              #layout: #(#LayoutFrame 0 0.0 0 0.0 0 1.0 -30 1.0)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   126
              #minorKey: #windowSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   127
            )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   128
           #(#HorizontalPanelViewSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   129
              #name: 'HorizontalPanel1'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   130
              #layout: #(#LayoutFrame 0 0 -30 1 0 1 0 1)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   131
              #horizontalLayout: #center
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   132
              #verticalLayout: #center
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   133
              #horizontalSpace: 3
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   134
              #verticalSpace: 3
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   135
              #reverseOrderIfOKAtLeft: true
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   136
              #component: 
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   137
             #(#SpecCollection
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   138
                #collection: #(
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   139
                 #(#ActionButtonSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   140
                    #label: 'Cancel'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   141
                    #name: 'CancelButton'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   142
                    #translateLabel: true
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   143
                    #model: #doCancel
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   144
                    #extent: #(#Point 125 22)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   145
                  )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   146
                 #(#ActionButtonSpec
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   147
                    #label: 'OK'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   148
                    #name: 'OkButton'
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   149
                    #translateLabel: true
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   150
                    #model: #doAccept
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   151
                    #extent: #(#Point 125 22)
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   152
                  )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   153
                 )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   154
               
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   155
              )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   156
            )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   157
           )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   158
         
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   159
        )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   160
      )
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   161
!
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   162
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   163
windowSpec
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   164
    "This resource specification was automatically generated
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   165
     by the UIPainter of ST/X."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   166
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   167
    "Do not manually edit this!! If it is corrupted,
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   168
     the UIPainter may not be able to read the specification."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   169
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   170
    "
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   171
     UIPainter new openOnClass:MultipleItemSelectionWidget andSelector:#windowSpec
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   172
     MultipleItemSelectionWidget new openInterface:#windowSpec
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   173
     MultipleItemSelectionWidget open
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   174
    "
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   175
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   176
    <resource: #canvas>
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   177
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   178
    ^ 
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   179
    #(FullSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   180
       name: windowSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   181
       window: 
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   182
      (WindowSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   183
         label: 'NewApplication'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   184
         name: 'NewApplication'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   185
         min: (Point 10 10)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   186
         bounds: (Rectangle 0 0 300 300)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   187
       )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   188
       component: 
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   189
      (SpecCollection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   190
         collection: (
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   191
          (LabelSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   192
             label: 'Selected'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   193
             name: 'SelectedLabel'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   194
             layout: (LayoutFrame 0 0.5 0 0 0 1 25 0)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   195
             translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   196
             labelChannel: selectedItemsLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   197
           )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   198
          (SequenceViewSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   199
             name: 'SelectedList'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   200
             layout: (LayoutFrame 20 0.5 25 0 0 1 0 1)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   201
             enableChannel: enableChannel
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   202
             tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   203
             model: selectedItemListSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   204
             hasHorizontalScrollBar: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   205
             hasVerticalScrollBar: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   206
             miniScrollerHorizontal: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   207
             miniScrollerVertical: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   208
             isMultiSelect: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   209
             doubleClickSelector: removeItemsFromSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   210
             valueChangeSelector: showInfoForItem:
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   211
             useIndex: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   212
             sequenceList: listOfSelectedItems
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   213
           )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   214
          (LabelSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   215
             label: 'Not Selected'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   216
             name: 'NotSelectedLabel'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   217
             layout: (LayoutFrame 0 0 0 0 0 0.5 25 0)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   218
             translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   219
             labelChannel: possibleItemsLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   220
           )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   221
          (SequenceViewSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   222
             name: 'NotSelectedList'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   223
             layout: (LayoutFrame 0 0 25 0 -20 0.5 0 1)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   224
             enableChannel: enableChannel
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   225
             tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   226
             model: possibleItemListSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   227
             hasHorizontalScrollBar: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   228
             hasVerticalScrollBar: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   229
             miniScrollerHorizontal: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   230
             miniScrollerVertical: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   231
             isMultiSelect: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   232
             doubleClickSelector: addItemsToSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   233
             valueChangeSelector: showInfoForItem:
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   234
             useIndex: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   235
             sequenceList: listOfPossibleItems
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   236
           )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   237
          (VerticalPanelViewSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   238
             name: 'VerticalPanel1'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   239
             layout: (LayoutFrame -20 0.5 25 0 20 0.5 5 0.5)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   240
             horizontalLayout: fitSpace
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   241
             verticalLayout: center
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   242
             horizontalSpace: 3
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   243
             verticalSpace: 3
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   244
             component: 
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   245
            (SpecCollection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   246
               collection: (
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   247
                (ActionButtonSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   248
                   label: '>'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   249
                   name: 'AddButton'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   250
                   translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   251
                   labelChannel: addButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   252
                   resizeForLabel: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   253
                   tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   254
                   model: addItemsToSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   255
                   enableChannel: canAddItemToSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   256
                   actionValue: ''
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   257
                   useDefaultExtent: true
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   258
                 )
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   259
                (ActionButtonSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   260
                   label: '<'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   261
                   name: 'RemoveButton'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   262
                   translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   263
                   labelChannel: removeButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   264
                   resizeForLabel: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   265
                   tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   266
                   model: removeItemsFromSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   267
                   enableChannel: canRemoveItemFromSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   268
                   useDefaultExtent: true
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   269
                 )
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   270
                )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   271
              
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   272
             )
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   273
           )
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   274
          (VerticalPanelViewSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   275
             name: 'VerticalPanel2'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   276
             layout: (LayoutFrame -20 0.5 5 0.5 20 0.5 -10 1)
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   277
             horizontalLayout: fitSpace
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   278
             verticalLayout: center
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   279
             horizontalSpace: 3
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   280
             verticalSpace: 3
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   281
             component: 
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   282
            (SpecCollection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   283
               collection: (
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   284
                (ActionButtonSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   285
                   label: 'All'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   286
                   name: 'AddAllButton'
4980
3dbc6ab6394f #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4979
diff changeset
   287
                   visibilityChannel: addAllButtonVisibleHolder
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   288
                   translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   289
                   labelChannel: addAllButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   290
                   resizeForLabel: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   291
                   tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   292
                   model: addAllItemsToSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   293
                   enableChannel: canAddAllItemsToSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   294
                   useDefaultExtent: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   295
                 )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   296
                (ActionButtonSpec
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   297
                   label: 'None'
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   298
                   name: 'RemoveAllButton'
4979
084ca87dc52b #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4978
diff changeset
   299
                   visibilityChannel: removeAllButtonVisibleHolder
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   300
                   translateLabel: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   301
                   labelChannel: removeAllButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   302
                   resizeForLabel: false
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   303
                   tabable: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   304
                   model: removeAllItemsFromSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   305
                   enableChannel: canRemoveAllItemsFromSelection
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   306
                   actionValue: ''
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   307
                   useDefaultExtent: true
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   308
                 )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   309
                )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   310
              
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   311
             )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   312
           )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   313
          )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   314
        
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   315
       )
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   316
     )
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   317
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   318
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   319
!MultipleItemSelectionWidget class methodsFor:'plugIn spec'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   320
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   321
aspectSelectors
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   322
    "This resource specification was automatically generated
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   323
     by the UIPainter of ST/X."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   324
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   325
    "Do not manually edit this. If it is corrupted,
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   326
     the UIPainter may not be able to read the specification."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   327
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   328
    "Return a description of exported aspects;
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   329
     these can be connected to aspects of an embedding application
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   330
     (if this app is embedded in a subCanvas)."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   331
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   332
    ^ #(
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   333
        #addButtonLabelHolder
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   334
        #enableChannel
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   335
        #listOfPossibleItems
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   336
        #listOfSelectedItems
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   337
        #possibleItemsLabelHolder
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   338
        #removeButtonLabelHolder
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   339
        #selectedItemsLabelHolder
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   340
      ).
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   341
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   342
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   343
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   344
!MultipleItemSelectionWidget methodsFor:'actions'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   345
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   346
accept
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   347
    "only invoked if opened as modal box..."
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   348
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   349
    accepted := true.
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   350
    self closeRequest.
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   351
!
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   352
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   353
addAllItemsToSelection
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   354
    "add all items from unselected to the selected list"
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   355
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   356
    |newSel|
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   357
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   358
    newSel := self listOfSelectedItems value asOrderedCollection
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
   359
	      , self listOfPossibleItems value asOrderedCollection.
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   360
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   361
    self listOfSelectedItems value:newSel asSortedCollection.
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   362
    self listOfPossibleItems value:(#() asSortedCollection).
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   363
!
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   364
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   365
addItemsToSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   366
    "add selected items from left list to the right list"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   367
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   368
    |sel t selectedItemList possibleItemList|
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   369
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   370
    sel := self possibleItemListSelection value.
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   371
    sel notEmptyOrNil ifTrue:[
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   372
        selectedItemList := self listOfSelectedItems. 
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   373
        t := selectedItemList value copy.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   374
        t addAll:sel.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   375
        selectedItemList value:t.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   376
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   377
        possibleItemList := self listOfPossibleItems. 
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   378
        t := possibleItemList value copy.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   379
        t removeAll:sel.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   380
        possibleItemList value:t.
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
   381
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   382
        self possibleItemListSelection value:#()
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   383
    ]
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   384
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   385
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   386
cancel
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   387
    "only invoked if opened as modal box..."
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   388
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   389
    accepted := false.
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   390
    self closeRequest.
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   391
!
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   392
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   393
removeAllItemsFromSelection
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   394
    "remove all items from selected to the unselected list"
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   395
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   396
    |newRem|
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   397
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   398
    newRem := self listOfSelectedItems value asOrderedCollection
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
   399
	      , self listOfPossibleItems value asOrderedCollection.
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   400
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   401
    self listOfPossibleItems value:newRem asSortedCollection.
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   402
    self listOfSelectedItems value:(#() asSortedCollection).
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   403
!
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   404
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   405
removeItemsFromSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   406
    "remove selected items from right list to the left list"
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   407
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   408
    |sel t selectedItemList possibleItemList|
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   409
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   410
    sel := self selectedItemListSelection value.
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   411
    sel size ~~ 0 ifTrue:[
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   412
        possibleItemList := self listOfPossibleItems. 
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   413
        t := possibleItemList value copy.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   414
        t addAll:sel.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   415
        possibleItemList value:t.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   416
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   417
        selectedItemList := self listOfSelectedItems. 
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   418
        t := selectedItemList value copy.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   419
        t removeAll:sel.
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   420
        selectedItemList value:t.
1863
b4130d1fea7d *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1840
diff changeset
   421
5121
11597fc6ce50 #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 4980
diff changeset
   422
        self selectedItemListSelection value:#()
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   423
    ]
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   424
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   425
    "Modified: / 01-03-2019 / 16:01:53 / Claus Gittinger"
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   426
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   427
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   428
showInfoForItem:anArgument
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   429
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   430
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   431
!MultipleItemSelectionWidget methodsFor:'aspects'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   432
2520
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   433
accepted
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   434
    ^ accepted == true
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   435
!
83dce5294ade dialog support
Claus Gittinger <cg@exept.de>
parents: 2404
diff changeset
   436
4978
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   437
addAllButtonVisibleHolder
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   438
    <resource: #uiAspect>
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   439
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   440
    addAllButtonVisibleHolder isNil ifTrue:[
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   441
        addAllButtonVisibleHolder := true asValue.
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   442
    ].
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   443
    ^ addAllButtonVisibleHolder.
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   444
!
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   445
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   446
canAddAllItemsToSelection
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   447
    canAddAllItemsToSelection isNil ifTrue:[
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   448
       canAddAllItemsToSelection := BlockValue with:[:m | m size ~~ 0]
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   449
                                    argument:self listOfPossibleItems 
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   450
    ].
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   451
    ^ canAddAllItemsToSelection.
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   452
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   453
    "Modified: / 08-03-2007 / 22:59:51 / cg"
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   454
    "Modified: / 01-03-2019 / 16:02:08 / Claus Gittinger"
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   455
!
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   456
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   457
canAddItemToSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   458
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   459
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   460
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   461
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   462
    canAddItemToSelection isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   463
        canAddItemToSelection := BlockValue 
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   464
                                    with:[:m | m size ~~ 0]
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   465
                                    argument:self possibleItemListSelection 
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   466
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   467
    ^ canAddItemToSelection.
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   468
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   469
    "Modified: / 08-03-2007 / 22:59:54 / cg"
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   470
    "Modified: / 01-03-2019 / 16:02:05 / Claus Gittinger"
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   471
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   472
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   473
canRemoveAllItemsFromSelection
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   474
    canRemoveAllItemsFromSelection isNil ifTrue:[
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   475
       canRemoveAllItemsFromSelection := BlockValue with:[:m | m size ~~ 0]
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   476
                                    argument:self listOfSelectedItems 
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   477
    ].
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   478
    ^ canRemoveAllItemsFromSelection.
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   479
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   480
    "Modified: / 08-03-2007 / 22:59:58 / cg"
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   481
    "Modified: / 01-03-2019 / 16:02:01 / Claus Gittinger"
1838
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   482
!
833893f82202 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1837
diff changeset
   483
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   484
canRemoveItemFromSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   485
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   486
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   487
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   488
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   489
    canRemoveItemFromSelection isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   490
        canRemoveItemFromSelection := BlockValue 
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   491
                                        with:[:m | m size ~~ 0]
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   492
                                        argument:self selectedItemListSelection 
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   493
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   494
    ^ canRemoveItemFromSelection.
3199
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   495
d8a392eaf97c BlockValue usage cleanup
Claus Gittinger <cg@exept.de>
parents: 2787
diff changeset
   496
    "Modified: / 08-03-2007 / 23:00:01 / cg"
6014
15c6b391e02d #REFACTORING by cg
Claus Gittinger <cg@exept.de>
parents: 5121
diff changeset
   497
    "Modified: / 01-03-2019 / 16:01:57 / Claus Gittinger"
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   498
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   499
1840
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   500
enableChannel
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   501
    enableChannel isNil ifTrue:[
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   502
       enableChannel := true asValue 
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   503
    ].
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   504
    ^ enableChannel.
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   505
!
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   506
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   507
enableChannel:aChannel
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   508
    enableChannel := aChannel
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   509
!
87591034ff12 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1838
diff changeset
   510
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   511
listOfPossibleItems
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   512
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   513
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   514
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   515
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   516
    listOfPossibleItems isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   517
        listOfPossibleItems := #() asValue.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   518
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   519
    ^ listOfPossibleItems.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   520
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   521
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   522
listOfPossibleItems:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   523
   listOfPossibleItems := aValueHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   524
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   525
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   526
listOfSelectedItems
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   527
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   528
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   529
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   530
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   531
    listOfSelectedItems isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   532
        listOfSelectedItems := #() asValue.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   533
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   534
    ^ listOfSelectedItems.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   535
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   536
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   537
listOfSelectedItems:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   538
   listOfSelectedItems := aValueHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   539
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   540
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   541
possibleItemListSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   542
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   543
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   544
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   545
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   546
    possibleItemListSelection isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   547
        possibleItemListSelection := #() asValue.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   548
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   549
    ^ possibleItemListSelection.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   550
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   551
4978
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   552
removeAllButtonVisibleHolder
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   553
    <resource: #uiAspect>
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   554
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   555
    removeAllButtonVisibleHolder isNil ifTrue:[
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   556
        removeAllButtonVisibleHolder := true asValue.
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   557
    ].
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   558
    ^ removeAllButtonVisibleHolder.
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   559
!
bf507fc31bf8 #FEATURE
Claus Gittinger <cg@exept.de>
parents: 4975
diff changeset
   560
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   561
selectedItemListSelection
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   562
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   563
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   564
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   565
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   566
    selectedItemListSelection isNil ifTrue:[
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   567
       selectedItemListSelection := #() asValue.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   568
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   569
    ^ selectedItemListSelection.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   570
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   571
2404
2b7591c982ac category change
Claus Gittinger <cg@exept.de>
parents: 1863
diff changeset
   572
!MultipleItemSelectionWidget methodsFor:'aspects-look'!
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   573
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   574
addAllButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   575
    addAllButtonLabelHolder isNil ifTrue:[
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   576
       addAllButtonLabelHolder := 'All' asValue.
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   577
    ].
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   578
    ^ addAllButtonLabelHolder.
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   579
!
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   580
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   581
addButtonLabelHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   582
    addButtonLabelHolder isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   583
       addButtonLabelHolder := '>>>' asValue.
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   584
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   585
    ^ addButtonLabelHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   586
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   587
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   588
addButtonLabelHolder:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   589
    addButtonLabelHolder := aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   590
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   591
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   592
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   593
possibleItemsLabelHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   594
    possibleItemsLabelHolder isNil ifTrue:[
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   595
       possibleItemsLabelHolder :=  ValueHolder new.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   596
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   597
    ^ possibleItemsLabelHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   598
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   599
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   600
possibleItemsLabelHolder:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   601
    possibleItemsLabelHolder := aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   602
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   603
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   604
4975
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   605
removeAllButtonLabelHolder
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   606
    removeAllButtonLabelHolder isNil ifTrue:[
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   607
       removeAllButtonLabelHolder := 'None' asValue.
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   608
    ].
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   609
    ^ removeAllButtonLabelHolder.
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   610
!
5da6a9487dfb #BUGFIX
Claus Gittinger <cg@exept.de>
parents: 4973
diff changeset
   611
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   612
removeButtonLabelHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   613
    removeButtonLabelHolder isNil ifTrue:[
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   614
       removeButtonLabelHolder := '<<<' asValue
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   615
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   616
    ^ removeButtonLabelHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   617
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   618
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   619
removeButtonLabelHolder:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   620
    removeButtonLabelHolder := aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   621
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   622
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   623
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   624
selectedItemsLabelHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   625
    "automatically generated by UIPainter ..."
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   626
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   627
    <resource: #uiAspect>
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   628
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   629
    selectedItemsLabelHolder isNil ifTrue:[
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   630
       selectedItemsLabelHolder :=  ValueHolder new.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   631
    ].
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   632
    ^ selectedItemsLabelHolder.
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   633
!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   634
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   635
selectedItemsLabelHolder:aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   636
    selectedItemsLabelHolder := aValueHolder
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   637
! !
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   638
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   639
!MultipleItemSelectionWidget class methodsFor:'documentation'!
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   640
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   641
version
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   642
    ^ '$Header$'
3898
465909d18a38 no max window size !
Claus Gittinger <cg@exept.de>
parents: 3199
diff changeset
   643
!
465909d18a38 no max window size !
Claus Gittinger <cg@exept.de>
parents: 3199
diff changeset
   644
465909d18a38 no max window size !
Claus Gittinger <cg@exept.de>
parents: 3199
diff changeset
   645
version_CVS
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   646
    ^ '$Header$'
1837
67fd7ad3d699 initial checkin
Claus Gittinger <cg@exept.de>
parents:
diff changeset
   647
! !
4973
f3cdd1d09d54 #DOCUMENTATION
Claus Gittinger <cg@exept.de>
parents: 3898
diff changeset
   648