[squeak-dev] About customizing Squeak -> custom world menu?

H. Hirzel hannes.hirzel at gmail.com
Sat Feb 24 14:05:11 UTC 2018


Yes, implementation is easy but my question is how it should be done
in a way that conforms to the intention of the framework code.  A
"recommended good solution".

What about using a project preference?

It needs the method PasteUpMorph buildWorldMenu: evt from May 2000

    buildWorldMenu: evt
	^(TheWorldMenu new
		world: self
		project: (self project ifNil: [Project current])       "mvc??"
		hand: evt hand) buildWorldMenu.


to be replaced with


        buildWorldMenu: evt
        |project worldMenuClassSymbol|

        project := self project ifNil: [Project current]  "mvc??".

        worldMenuClassSymbol := project
projectPreferenceFlagDictionary at:
#worldMenuClassSymbol ifAbsent: [#TheWorldMenu].

    ^((Smalltalk at:  worldMenuClassSymbol) new
		world: self
		project: project
		hand: evt hand) buildWorldMenu.


Detailed description:     http://wiki.squeak.org/squeak/1047


More information about the Squeak-dev mailing list