UISelectionPanel.st
changeset 329 7661f4d15ead
parent 324 2898d6c12330
child 334 3f632e9711e8
equal deleted inserted replaced
328:0e8a4296dec1 329:7661f4d15ead
  1588 
  1588 
  1589 !UISelectionPanel methodsFor:'user defined'!
  1589 !UISelectionPanel methodsFor:'user defined'!
  1590 
  1590 
  1591 userDefined
  1591 userDefined
  1592     |cls lbl sel builder|
  1592     |cls lbl sel builder|
  1593     (cls := userClass) notNil ifTrue:[
  1593 
  1594         cls isBehavior ifFalse:[
  1594     cls := self resolveName:userClass.
  1595             cls := Smalltalk at:cls asSymbol
  1595 
  1596         ].
  1596     (cls notNil and:[(cls respondsTo:userLabels)]) ifTrue:[
  1597         (cls notNil and:[(cls respondsTo:userLabels)]) ifTrue:[
  1597         lbl := cls perform:userLabels.
  1598             lbl := cls perform:userLabels.
  1598         sel := Array new:(lbl size) withAll:#userDefinedSpec.
  1599             sel := Array new:(lbl size) withAll:#userDefinedSpec.
  1599         self galleryList value:lbl.
  1600             self galleryList value:lbl.
  1600         self minorKeys   value:sel.
  1601             self minorKeys   value:sel.
  1601     ] ifFalse:[
  1602           ^ self
  1602         builder := UIBuilder new.
  1603         ]
  1603         builder application:self.
  1604     ].
  1604         (self builder componentAt:#gallery) builder:builder. 
  1605     builder := UIBuilder new.
  1605         self galleryList value:#( '???' ).
  1606     builder application:self.
  1606         self minorKeys   value:#( standardUserPanel ).
  1607     (self builder componentAt:#gallery) builder:builder. 
  1607     ]
  1608     self galleryList value:#( '???' ).
       
  1609     self minorKeys   value:#( standardUserPanel ).
       
  1610 !
  1608 !
  1611 
  1609 
  1612 userDefinedHelpText
  1610 userDefinedHelpText
  1613 
  1611 
  1614 ^ '
  1612 ^ '
  1619 !
  1617 !
  1620 
  1618 
  1621 userDefinedSpec
  1619 userDefinedSpec
  1622     |cls spc idx|
  1620     |cls spc idx|
  1623 
  1621 
  1624     (cls := userClass) notNil ifTrue:[
  1622     cls := self resolveName:userClass.
  1625         cls isBehavior ifFalse:[
  1623 
  1626             cls := Smalltalk at:cls asSymbol
  1624     (cls notNil and:[(cls respondsTo:userSpecs)]) ifTrue:[
  1627         ].
  1625         spc := cls perform:userSpecs.
  1628         (cls notNil and:[(cls respondsTo:userSpecs)]) ifTrue:[
  1626         idx := self galleryModel value.
  1629             spc := cls perform:userSpecs.
  1627 
  1630             idx := self galleryModel value.
  1628         idx <= spc size ifTrue:[
  1631 
  1629             spc := spc at:idx.
  1632             idx <= spc size ifTrue:[
  1630             (cls respondsTo:spc) ifTrue:[
  1633                 spc := spc at:idx.
  1631                 ^ cls perform:spc
  1634                 (cls respondsTo:spc) ifTrue:[
       
  1635                     ^ cls perform:spc
       
  1636                 ]
       
  1637             ]
  1632             ]
  1638         ]
  1633         ]
  1639     ].
  1634     ].
  1640   ^ nil
  1635   ^ nil
  1641 ! !
  1636 ! !