<div dir="ltr"><div>A little ugly with the code duplication but it works ;-)</div><div><br></div><div>Workspace&gt;&gt;acceptDroppingMorph: dropee event: evt inMorph: targetMorph </div><div><span class="" style="white-space:pre">        </span>&quot;Return the dropee to its old position, and add a reference to it at the</div><div><span class="" style="white-space:pre">        </span>cursor point.&quot;</div><div><span class="" style="white-space:pre">        </span>| bindingName externalName |</div><div><span class="" style="white-space:pre">        </span>(dropee isKindOf: TransferMorph)</div><div><span class="" style="white-space:pre">                </span>ifTrue: [externalName := dropee passenger className.</div><div><span class="" style="white-space:pre">                        </span>externalName := externalName isOctetString</div><div><span class="" style="white-space:pre">                                                </span>ifTrue: [externalName]</div><div><span class="" style="white-space:pre">                                                </span>ifFalse: [&#39;a&#39; , externalName].</div><div><span class="" style="white-space:pre">                        </span>bindingName := externalName translateToLowercase , dropee passenger identityHash printString.</div><div><span class="" style="white-space:pre">                        </span>targetMorph correctSelectionWithString: bindingName , &#39; &#39;.</div><div><span class="" style="white-space:pre">                        </span>(self bindingOf: bindingName)</div><div><span class="" style="white-space:pre">                                </span>value: dropee passenger]</div><div><span class="" style="white-space:pre">                </span>ifFalse: [externalName := dropee externalName.</div><div><span class="" style="white-space:pre">                        </span>externalName := externalName isOctetString</div><div><span class="" style="white-space:pre">                                                </span>ifTrue: [externalName]</div><div><span class="" style="white-space:pre">                                                </span>ifFalse: [&#39;a&#39; , externalName].</div><div><span class="" style="white-space:pre">                        </span>bindingName := externalName translateToLowercase , dropee identityHash printString.</div><div><span class="" style="white-space:pre">                        </span>targetMorph correctSelectionWithString: bindingName , &#39; &#39;.</div><div><span class="" style="white-space:pre">                        </span>(self bindingOf: bindingName)</div><div><span class="" style="white-space:pre">                                </span>value: dropee].</div><div><span class="" style="white-space:pre">        </span>dropee rejectDropMorphEvent: evt.</div><div><span class="" style="white-space:pre">        </span>^ true&quot;success&quot;</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 17, 2016 at 6:06 PM, karl ramberg <span dir="ltr">&lt;<a href="mailto:karlramberg@gmail.com" target="_blank">karlramberg@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Workspaces are great for scripting and exploring ideas etc. And working with already existing objects. It&#39;s not so good for developing but very good for other important computing and learning needs.<div><br></div><div>Best,</div><div>Karl</div><div> </div></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Mar 17, 2016 at 5:55 PM, Chris Muller <span dir="ltr">&lt;<a href="mailto:ma.chris.m@gmail.com" target="_blank">ma.chris.m@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">All Jakob had to do was &quot;do it&quot; on:<br>
<br>
  myXml := &#39;&lt;SomeElement&gt;.... all kinds of XML ... &lt;/SomeElement&gt;&#39;<br>
<br>
He now has access to myXml.  Then replace all the text in the<br>
workspace with that from the other workspace.  Done.<br>
<br>
I guess I see Workspaces for learning and discovery for newbies.<br>
Short, simple, explorations of syntax and class library.<br>
<br>
Attempting to do work as complex as parsing a large XML is going to<br>
present further challenges above and beyond accessing an object.  If<br>
someone feels the need to &quot;link workspaces&quot; they really should stop<br>
and consider just making a class.  In fact, I think linked workspaces<br>
would lead a newbie down the wrong path..<br>
<div><div><br>
On Thu, Mar 17, 2016 at 11:28 AM, karl ramberg &lt;<a href="mailto:karlramberg@gmail.com" target="_blank">karlramberg@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; On Thu, Mar 17, 2016 at 4:39 PM, Chris Muller &lt;<a href="mailto:asqueaker@gmail.com" target="_blank">asqueaker@gmail.com</a>&gt; wrote:<br>
&gt;&gt;<br>
&gt;&gt; On Thu, Mar 17, 2016 at 4:58 AM, Bert Freudenberg &lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;<br>
&gt;&gt; wrote:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On 17.03.2016, at 01:43, Eliot Miranda &lt;<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>&gt; wrote:<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt;<br>
&gt;&gt; &gt; On Wed, Mar 16, 2016 at 11:58 AM, Bert Freudenberg<br>
&gt;&gt; &gt; &lt;<a href="mailto:bert@freudenbergs.de" target="_blank">bert@freudenbergs.de</a>&gt;<br>
&gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; &gt; On 16.03.2016, at 18:48, marcel.taeumel &lt;<a href="mailto:Marcel.Taeumel@hpi.de" target="_blank">Marcel.Taeumel@hpi.de</a>&gt;<br>
&gt;&gt; &gt;&gt; &gt; wrote:<br>
&gt;&gt; &gt;&gt; &gt;<br>
&gt;&gt; &gt;&gt; &gt; Mabye we need a simple way to link bindings across tools. Then, for<br>
&gt;&gt; &gt;&gt; &gt; example,<br>
&gt;&gt; &gt;&gt; &gt; we could simple connect a Workspace window to the text box in the<br>
&gt;&gt; &gt;&gt; &gt; Inspector<br>
&gt;&gt; &gt;&gt; &gt; (resp. Object Explorer) and all would share the same bindings. Then,<br>
&gt;&gt; &gt;&gt; &gt; you<br>
&gt;&gt; &gt;&gt; &gt; could simply select stuff in the Object Explorer, evaluate &quot;x :=<br>
&gt;&gt; &gt;&gt; &gt; self&quot;<br>
&gt;&gt; &gt;&gt; &gt; and<br>
&gt;&gt; &gt;&gt; &gt; you would have access to x in that other Workspace (resp. Inspector&#39;s<br>
&gt;&gt; &gt;&gt; &gt; text<br>
&gt;&gt; &gt;&gt; &gt; box).<br>
&gt;&gt; &gt;&gt;<br>
&gt;&gt; &gt;&gt; Not a bad idea … what could be a UI for connecting workspaces?<br>
&gt;&gt;<br>
&gt;&gt; Why not just invoke the halos on the inspectors built-in workspace and<br>
&gt;&gt; clone it with the upper-green button and use that?<br>
&gt;&gt;<br>
&gt; This would break workflow I think because like Jacob wrote, you open a file<br>
&gt; in a Workspace and you need a reference to that from another already open<br>
&gt; Workspace.<br>
&gt;<br>
&gt; How about another copy command, like &#39;copy as reference&#39; and then you could<br>
&gt; paste it in another Workspace ?<br>
&gt;<br>
&gt;<br>
&gt; Best,<br>
&gt; Karl<br>
</div></div></blockquote></div><br></div>
</div></div></blockquote></div><br></div>