MenuPanel.st
branchjv
changeset 5025 22261417679a
parent 5024 228412f59c2c
child 5097 5fbbb3dbef78
equal deleted inserted replaced
5024:228412f59c2c 5025:22261417679a
  6889     and:[ app notNil
  6889     and:[ app notNil
  6890     and:[ (app askFor:#isUIPainter) or:[app isKindOf: (Smalltalk at:#UISelectionPanel)]]])
  6890     and:[ (app askFor:#isUIPainter) or:[app isKindOf: (Smalltalk at:#UISelectionPanel)]]])
  6891     ifTrue:[
  6891     ifTrue:[
  6892         ^ self "/ suppressed
  6892         ^ self "/ suppressed
  6893     ].
  6893     ].
  6894     aMessage infoPrint.
  6894     Logger info: aMessage
  6895 "/    app notNil ifTrue:[
  6895 
  6896 "/        ' Application: ' infoPrint. app infoPrint
  6896     "Modified: / 15-04-2016 / 18:29:43 / Jan Vrany <jan.vrany@fit.cvut.cz>"
  6897 "/    ].
       
  6898     '' infoPrintCR.
       
  6899 
       
  6900     "Modified: / 15-04-2016 / 18:24:07 / Jan Vrany <jan.vrany@fit.cvut.cz>"
       
  6901 !
  6897 !
  6902 
  6898 
  6903 indication
  6899 indication
  6904     "get on/off indication"
  6900     "get on/off indication"
  6905 
  6901 
  7469     MessageNotUnderstood handle:[:ex|
  7465     MessageNotUnderstood handle:[:ex|
  7470         ex selector ~~ aKey ifTrue:[
  7466         ex selector ~~ aKey ifTrue:[
  7471             ex reject
  7467             ex reject
  7472         ].
  7468         ].
  7473         self ifNotInUIBuilderInfoPrintCR:
  7469         self ifNotInUIBuilderInfoPrintCR:
  7474             ('MenuPanel::Item [error]: application (%1) does not provide aspect: %2 (in %3)'
  7470             ('application (%1) does not provide aspect: %2 (in %3)'
  7475              bindWith:appl classNameWithArticle
  7471              bindWith:appl classNameWithArticle
  7476              with:aKey
  7472              with:aKey
  7477              with:(label isString ifTrue:[label] ifFalse:[self nameKey ? self itemValue ? '???'])).
  7473              with:(label isString ifTrue:[label] ifFalse:[self nameKey ? self itemValue ? '???'])).
  7478     ] do:[
  7474     ] do:[
  7479         aKey argumentCount == 1 ifTrue:[
  7475         aKey argumentCount == 1 ifTrue:[
  7487         ]
  7483         ]
  7488     ].
  7484     ].
  7489     ^ value
  7485     ^ value
  7490 
  7486 
  7491     "Modified: / 02-08-2013 / 16:44:28 / cg"
  7487     "Modified: / 02-08-2013 / 16:44:28 / cg"
       
  7488     "Modified: / 15-04-2016 / 18:29:04 / Jan Vrany <jan.vrany@fit.cvut.cz>"
  7492 ! !
  7489 ! !
  7493 
  7490 
  7494 !MenuPanel::Item methodsFor:'change & update'!
  7491 !MenuPanel::Item methodsFor:'change & update'!
  7495 
  7492 
  7496 fontChanged
  7493 fontChanged
  8506     |numArgs recv|
  8503     |numArgs recv|
  8507 
  8504 
  8508     indication isNil ifTrue:[^ self].                                   "no indication specified"
  8505     indication isNil ifTrue:[^ self].                                   "no indication specified"
  8509 
  8506 
  8510     indication isSymbol ifFalse:[
  8507     indication isSymbol ifFalse:[
  8511 	indication perform:#value: with:aValue ifNotUnderstood:nil.     "block or model"
  8508         indication perform:#value: with:aValue ifNotUnderstood:nil.     "block or model"
  8512 	^ self
  8509         ^ self
  8513     ].
  8510     ].
  8514 
  8511 
  8515     (numArgs := indication numArgs) == 0 ifTrue:[                       "no arguments to selector; cannot set"
  8512     (numArgs := indication numArgs) == 0 ifTrue:[                       "no arguments to selector; cannot set"
  8516 	^ self
  8513         ^ self
  8517     ].
  8514     ].
  8518 
  8515 
  8519     recv := menuPanel receiver.
  8516     recv := menuPanel receiver.
  8520     recv isValueModel ifTrue:[^ self].
  8517     recv isValueModel ifTrue:[^ self].
  8521 
  8518 
  8522     recv isNil ifTrue:[
  8519     recv isNil ifTrue:[
  8523 	recv := menuPanel application.
  8520         recv := menuPanel application.
  8524 	recv isNil ifTrue:[^ self].
  8521         recv isNil ifTrue:[^ self].
  8525     ].
  8522     ].
  8526 
  8523 
  8527     MessageNotUnderstood handle:[:ex|
  8524     MessageNotUnderstood handle:[:ex|
  8528 	(ex selector ~~ indication) ifTrue:[
  8525         (ex selector ~~ indication) ifTrue:[
  8529 	    ex reject
  8526             ex reject
  8530 	].
  8527         ].
  8531 	self ifNotInUIBuilderInfoPrintCR:
  8528         self ifNotInUIBuilderInfoPrintCR:
  8532 	    ('MenuPanel::Item [info]: application (%1) does not respond to: %2'
  8529             ('application (%1) does not respond to: %2'
  8533 	     bindWith:recv classNameWithArticle
  8530              bindWith:recv classNameWithArticle
  8534 	     with:indication).
  8531              with:indication).
  8535     ] do:[
  8532     ] do:[
  8536 	numArgs == 1 ifTrue:[
  8533         numArgs == 1 ifTrue:[
  8537 	    recv perform:indication with:aValue
  8534             recv perform:indication with:aValue
  8538 	] ifFalse:[
  8535         ] ifFalse:[
  8539 	    recv perform:indication with:(menuItem argument ? self) with:aValue
  8536             recv perform:indication with:(menuItem argument ? self) with:aValue
  8540 	]
  8537         ]
  8541     ].
  8538     ].
  8542 
  8539 
  8543     "Modified (format): / 02-08-2013 / 16:42:20 / cg"
  8540     "Modified (format): / 02-08-2013 / 16:42:20 / cg"
       
  8541     "Modified: / 15-04-2016 / 18:28:56 / Jan Vrany <jan.vrany@fit.cvut.cz>"
  8544 !
  8542 !
  8545 
  8543 
  8546 isEntered
  8544 isEntered
  8547     "returns true if the mouse pointer is over the item"
  8545     "returns true if the mouse pointer is over the item"
  8548 
  8546