<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <p><font face="Georgia">Well, intentions are hard to figure
        sometimes. Whose intentions? When?</font></p>
    <p><font face="Georgia">Of course, if you follow things back a step,
        you might uncover</font></p>
    <p><font face="Georgia">Preferences personalizedWorldMenu</font></p>
    <p><font face="Georgia">and see if that satisfies requirements.</font><br>
    </p>
    <br>
    <div class="moz-cite-prefix">On 2/24/18 9:05 AM, H. Hirzel wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAGQxfVia-gzE2ZCW6wHQfVURym29NCK6cKOhaDq9Dfism3okgA@mail.gmail.com">
      <pre wrap="">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:     <a class="moz-txt-link-freetext" href="http://wiki.squeak.org/squeak/1047">http://wiki.squeak.org/squeak/1047</a>

</pre>
    </blockquote>
    <br>
  </body>
</html>