Launcher.st
changeset 2532 28861484ed47
parent 2437 9a86628282c6
child 3647 dae513f07a2e
equal deleted inserted replaced
2531:9b7170da2f9f 2532:28861484ed47
  1507     "/   #( selector  (className iconQuerySelector) )
  1507     "/   #( selector  (className iconQuerySelector) )
  1508     "/ or"
  1508     "/ or"
  1509     "/   #( nil )
  1509     "/   #( nil )
  1510     "/
  1510     "/
  1511     self buttonPanelSpec do:[:entry |
  1511     self buttonPanelSpec do:[:entry |
  1512 	|sel b sep img iconSpec v|
  1512         |sel b sep img iconSpec v|
  1513 
  1513 
  1514 	sel := entry at:1.
  1514         sel := entry at:1.
  1515 	sel isNil ifTrue:[
  1515         sel isNil ifTrue:[
  1516 	    sep := View in:buttonPanel.
  1516             sep := View in:buttonPanel.
  1517 	    sep extent:32@1; borderWidth:0.
  1517             sep extent:32@1; borderWidth:0.
  1518 	] ifFalse:[
  1518         ] ifFalse:[
  1519 	    iconSpec := entry at:2.
  1519             iconSpec := entry at:2.
  1520 	    iconSpec isArray ifTrue:[
  1520             iconSpec isArray ifTrue:[
  1521 		img := (Smalltalk classNamed:(iconSpec at:1)) perform:(iconSpec at:2).
  1521                 img := (Smalltalk classNamed:(iconSpec at:1)) perform:(iconSpec at:2).
  1522 	    ] ifFalse:[
  1522             ] ifFalse:[
  1523 		img := Image fromFile:iconSpec.
  1523                 img := Smalltalk imageFromFileNamed:iconSpec forClass:self class.
  1524 	    ].
  1524                 img isNil ifTrue:[
  1525 	    (img notNil and:[buttonSize notNil]) ifTrue:[
  1525                     img := Smalltalk imageFromFileNamed:iconSpec forClass:Launcher.
  1526 		img extent ~= buttonSize ifTrue:[
  1526                 ]
  1527 		    img := img magnifiedTo:buttonSize       
  1527             ].
  1528 		]
  1528             (img notNil and:[buttonSize notNil]) ifTrue:[
  1529 	    ].
  1529                 img extent ~= buttonSize ifTrue:[
  1530 
  1530                     img := img magnifiedTo:buttonSize       
  1531 	    b := Button new.
  1531                 ]
  1532 	    b form:img.
  1532             ].
  1533 	    b model:self; changeMessage:sel.
  1533 
  1534 
  1534             b := Button new.
  1535 	    b styleSheet name = 'win95' ifTrue:[
  1535             b form:img.
  1536 
  1536             b model:self; changeMessage:sel.
  1537 		false ifTrue:[
  1537 
  1538 		    "/ make buttons flat, popping up when entered ...
  1538             b styleSheet name = 'win95' ifTrue:[
  1539 
  1539 
  1540 		    b enterLevel: 1.
  1540                 false ifTrue:[
  1541 		    b leaveLevel: 0.
  1541                     "/ make buttons flat, popping up when entered ...
  1542 		    buttonPanel addSubView:b.
  1542 
  1543 
  1543                     b enterLevel: 1.
  1544 		] ifFalse:[
  1544                     b leaveLevel: 0.
  1545 		    "/ make buttons flat, but given them a 3D frame ...
  1545                     buttonPanel addSubView:b.
  1546 
  1546 
  1547 		    v := View in:buttonPanel.
  1547                 ] ifFalse:[
  1548 		    v addSubView:b.
  1548                     "/ make buttons flat, but given them a 3D frame ...
  1549 		    v level:-1.
  1549 
  1550 		    b passiveLevel:1; activeLevel:-1.
  1550                     v := View in:buttonPanel.
  1551 		    v extent:(b preferredExtent 
  1551                     v addSubView:b.
  1552 			      + b borderWidth + b borderWidth 
  1552                     v level:-1.
  1553 			      + b margin + b margin 
  1553                     b passiveLevel:1; activeLevel:-1.
  1554 			      + v margin + v margin).
  1554                     v extent:(b preferredExtent 
  1555 		    v preferredExtent:v extent.
  1555                               + b borderWidth + b borderWidth 
  1556 		    b origin:(v margin asPoint).
  1556                               + b margin + b margin 
  1557 		].
  1557                               + v margin + v margin).
  1558 		b enteredBackgroundColor:(Color grey:80).
  1558                     v preferredExtent:v extent.
  1559 	    ] ifFalse:[
  1559                     b origin:(v margin asPoint).
  1560 		buttonPanel addSubView:b.
  1560                 ].
  1561 	    ].
  1561                 b enteredBackgroundColor:(Color grey:80).
  1562 	]
  1562             ] ifFalse:[
       
  1563                 buttonPanel addSubView:b.
       
  1564             ].
       
  1565         ]
  1563     ].
  1566     ].
  1564 
  1567 
  1565     mh := myMenu height.
  1568     mh := myMenu height.
  1566     buttonPanel origin:0.0 @ (mh + spc)
  1569     buttonPanel origin:0.0 @ (mh + spc)
  1567 		corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
  1570                 corner:(1.0 @ (mh + spc + buttonPanel preferredExtent y)).
  1568 
  1571 
  1569     buttonPanel leftInset:spc; rightInset:spc.
  1572     buttonPanel leftInset:spc; rightInset:spc.
  1570 
  1573 
  1571     "Modified: 26.4.1997 / 21:02:39 / cg"
  1574     "Modified: 26.4.1997 / 21:02:39 / cg"
  1572 !
  1575 !
  1713 ! !
  1716 ! !
  1714 
  1717 
  1715 !Launcher class methodsFor:'documentation'!
  1718 !Launcher class methodsFor:'documentation'!
  1716 
  1719 
  1717 version
  1720 version
  1718     ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.403 1999-10-28 15:52:32 cg Exp $'
  1721     ^ '$Header: /cvs/stx/stx/libtool/Launcher.st,v 1.404 2000-01-11 17:06:39 cg Exp $'
  1719 ! !
  1722 ! !