WorkspaceApplication.st
branchjv
changeset 13468 444ac2aa4fd6
parent 13334 75448607046e
child 13491 b3afe831ff0a
equal deleted inserted replaced
13467:737b357b74b8 13468:444ac2aa4fd6
  3713 languageListMenuSlice
  3713 languageListMenuSlice
  3714     |m allLanguages |
  3714     |m allLanguages |
  3715 
  3715 
  3716     allLanguages := OrderedCollection new.
  3716     allLanguages := OrderedCollection new.
  3717     ProgrammingLanguage allDo:[:eachLanguage |
  3717     ProgrammingLanguage allDo:[:eachLanguage |
  3718 	eachLanguage isSmalltalk ifFalse:[
  3718         eachLanguage isSmalltalk ifFalse:[
  3719 	    allLanguages add:eachLanguage
  3719             allLanguages add:eachLanguage
  3720 	]
  3720         ]
  3721     ].
  3721     ].
  3722     allLanguages sort:[:a :b | a name < b name].
  3722     allLanguages sort:[:a :b | a name < b name].
  3723 
  3723 
  3724     m := Menu new.
  3724     m := Menu new.
  3725     m addItem:((MenuItem
  3725     m addItem:((MenuItem
  3726 		label:'Smalltalk'
  3726                 label:'Smalltalk'
  3727 		choice:#syntaxHolder
  3727                 choice:#syntaxHolder
  3728 		choiceValue:SmalltalkLanguage instance)
  3728                 choiceValue:SmalltalkLanguage instance)
  3729 		enabled: self canChangeLanguageHolder).
  3729                 enabled: self canChangeLanguageHolder).
  3730 
  3730 
  3731 "/    allLanguages notEmpty ifTrue:[
  3731 "/    allLanguages notEmpty ifTrue:[
  3732 "/        m addItem:(MenuItem separator).
  3732 "/        m addItem:(MenuItem separator).
  3733 
  3733 
  3734 	allLanguages do:[:eachLanguage |
  3734         allLanguages do:[:eachLanguage |
  3735 	    "JV@2012-02-18: Add language only iff it supports
  3735             "JV@2012-02-18: Add language only iff it supports
  3736 	     evaluation (most of then do, but some may not -
  3736              evaluation (most of then do, but some may not -
  3737 	     such as Java)"
  3737              such as Java)"
  3738 	    (eachLanguage evaluatorClass notNil
  3738             (eachLanguage isJava not 
  3739 		and:[eachLanguage evaluatorClass canUnderstand: #evaluate:in:receiver:notifying:logged:ifFail:])
  3739                 "/ Java is funny - we don't have an evaluator for Java
  3740 		ifTrue:[
  3740                 "/ but we have to define evaluatorClass to return GroovyEvaluator
  3741 		m addItem:((MenuItem
  3741                 "/ to be able to inspect code in debugger/inspector. Hence this hack.
  3742 			    label:(eachLanguage name)
  3742                 "/ We may need something like evaluatorClassForInspector/Debugger.
  3743 			    choice:#syntaxHolder
  3743                 and:[eachLanguage evaluatorClass notNil
  3744 			    choiceValue:eachLanguage)
  3744                 and:[eachLanguage evaluatorClass canUnderstand: #evaluate:in:receiver:notifying:logged:ifFail:]])
  3745 			    enabled: self canChangeLanguageHolder).
  3745                 ifTrue:[
  3746 	    ].
  3746                 m addItem:((MenuItem
  3747 	].
  3747                             label:(eachLanguage name)
       
  3748                             choice:#syntaxHolder
       
  3749                             choiceValue:eachLanguage)
       
  3750                             enabled: self canChangeLanguageHolder).
       
  3751             ].
       
  3752         ].
  3748 "/    ].
  3753 "/    ].
  3749     ^ m
  3754     ^ m
  3750 
  3755 
  3751     "Modified: / 04-02-2012 / 11:52:07 / cg"
  3756     "Modified: / 04-02-2012 / 11:52:07 / cg"
  3752     "Modified: / 10-05-2012 / 23:44:24 / Jan Vrany <jan.vrany@fit.cvut.cz>"
  3757     "Modified: / 29-08-2013 / 12:18:28 / Jan Vrany <jan.vrany@fit.cvut.cz>"
  3753 !
  3758 !
  3754 
  3759 
  3755 makeRecentDoItsMenuFor:aSelector
  3760 makeRecentDoItsMenuFor:aSelector
  3756     |doIts m cmdLabelLen|
  3761     |doIts m cmdLabelLen|
  3757 
  3762