<div dir="ltr">I'm not sure anybody uses Etoys anymore, but PasteUpMorph is very useful in direct manipulation because of it's various layout and event handling options.  It also act as a container of other morphs, with automatic layout, enumeration etc.<div>I'm sure most of this could be refactored into Morph class or another class. </div><div><br></div><div>Best,</div><div>Karl</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Oct 3, 2017 at 3:03 PM, Marcel Taeumel <span dir="ltr"><<a href="mailto:marcel.taeumel@hpi.de" target="_blank">marcel.taeumel@hpi.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div id="m_-2961773591207515932__MailbirdStyleContent" style="font-size:12pt;font-family:calibri;color:#000000">
                                        +1 :)<div><br></div><div>And then later: Rename PasteUpMorph to WorldMorph, and keep an empty PasteUpMorph subclass around for compatibility reasons. So many ideas have been ported down to Morph class over the past years. New applications have no reason to ever use other instances of PasteUpMorph.</div><div><br></div><div>Best,</div><div>Marcel</div><div class="m_-2961773591207515932mb_sig"></div><blockquote class="m_-2961773591207515932history_container" type="cite" style="border-left-style:solid;border-width:1px;margin-top:20px;margin-left:0px;padding-left:10px">
                        <p style="color:#aaaaaa;margin-top:10px">Am 03.10.2017 14:57:55 schrieb H. Hirzel <<a href="mailto:hannes.hirzel@gmail.com" target="_blank">hannes.hirzel@gmail.com</a>>:</p><div><div class="h5">On 10/3/17, H. Hirzel <u></u> wrote:
<br>> Dave
<br>>
<br>> your change set contains the class EtoysProject with
<br>>
<br>> EtoysProject selectors
<br>>
<br>> #(#finalEnterActions: #restoreGlobalPreferences #saveGlobalPreferences
<br>> #initializeProjectPreferences #configureOnFirstEntry
<br>> #finalExitActions:)
<br>>
<br>> For complete configuration of a EtoysProject it might be necessary to do
<br>>
<br>>      PasteUpMorph subclass: EtoysPasteUpMorph
<br>>
<br>> as well.  <a href="http://wiki.squeak.org/squeak/6461" target="_blank">http://wiki.squeak.org/squeak/<wbr>6461</a>
<br>>
<br>> Then Etoys related methods may be pushed down to EtoysPasteUpMorph.
<br>
<br>See screen shot attached.
<br>
<br>> And probably an Etoys specific subclass of WorldMenu would be fine as well
<br>> <a href="http://wiki.squeak.org/squeak/6461" target="_blank">http://wiki.squeak.org/squeak/<wbr>6461</a>
<br>>
<br>>
<br>> there is a test project [2] and some more information about adaptions
<br>> needed because of the UI changes in the thread 'Etoys in 2017?' - UI
<br>> preferences [3]. And it would be good to have Etoys methods /
<br>> configuration separate  [4].
<br>>
<br>> I suggest that you start go ahead and start implementing this while
<br>> using a test Etoys project dropped onto the desktop.
<br>>
<br>> --Hannes
<br>>
<br>>
<br>> [2] > You simply drop it in. E.g. download this project
<br>>> <a href="http://etoys.laptop.org/src/Content/ExampleEtoys/CarAndPen.014.pr" target="_blank">http://etoys.laptop.org/src/<wbr>Content/ExampleEtoys/<wbr>CarAndPen.014.pr</a>
<br>>
<br>> [3] Hannes Hirzel, 'Etoys in 2017?' mail, Wed, Feb 22, 2017 at 11:01 AM
<br>>
<br>> [4] David T. Lewis, Sep 4, 2016 at 3:34 PM
<br>> "I think it would be great if both Etoys and Scratch were easily
<br>> loadable and unloadable in trunk."
<br>>
<br></div></div><span class="">> On 10/2/17, David T. Lewis <u></u> wrote:
<br>>> An EtoysProject is a project that is configured for running Etoys. On
<br>>> first entry to a new EtoysProject, the playground and project preferences
<br>>> are initialized to provide an environment similar to that of a
<br>>> traditional
<br>>> standalone Etoys image.
<br>>>
<br>>> Certain preferences that are required for Etoys are initialized on
<br>>> project
<br>>> entry, overriding their global preference values while this EtoysProject
<br>>> is active. On leaving the project, these preferences are restored to
<br>>> their
<br>>> previous values.
<br>>>
<br>>>      "ProjectViewMorph openOn: EtoysProject new"
<br>>>
<br>>> Change set attached for a minimal implementation.
<br>>>
<br>>> Anyone with Etoys knowledge care to help? I do not know enough about
<br>>> Etoys
<br>>> to fill in the rest of the initialization that will be required, but it
<br>>> should not be hard to do.
<br>>>
<br>>> Dave
<br>>>
<br>>>
<br>>
<br><br><u></u><u></u>
                        </span></blockquote>
                                        </div></div><br><br>
<br></blockquote></div><br></div>