[Etoys] Hyperlinked projects
luke at member.fsf.org
Tue Nov 27 11:36:23 EST 2007
On 27/11/2007, Yoshiki Ohshima <yoshiki at vpri.org> wrote:
> That is not solely obvious, for sure.
> If you look at the Gallery project in the Etoys image, you see
> thumbnails of projects. They hare actually hand-edited (i.e., I
> opened the inspector for them) and #constructorSelector of DiskProxy
> is changed to '#namedExample:'.
One of the hacks I did was to add a new #constructorSelector called
#fromUnderImage: that would recursively search for a rightly-named
project file under (Smalltalk imagePath) -- then I was going to
automatically use this constructor for projects saved into a directory
that's under the image. But I rolled this back for being (a) too
"magic" and (b) serializing out DiskProxy objects that're incompatible
with the standard image (i.e. using undefined constructorSelector).
My next idea was just to hack more DWIM into the default #namedUrl:
constructorMethod but for some reason I decided against that too.
I was wondering particularly about the saving part though. I like the
idea of saving intermediate working copies in Squeaklets/ but then I
want a 'publish' button that would upload a project into a common
repository (svn or maybe webdav - I've never used webdav) and in that
case it could be nice to use a standardised filename (i.e. without
serial number). But it's at this point I decided I was probably
reinventing the wheel and decided to ask for more detail about what
other people do.
> The way you created the thumbnails are almost right. You can load
> the root project, and hand-edit the thumbnails' DiskProxy (its
> selectors and arguments) and save the image again.
This is another time when I'd really like some kind of MagicWandMorph.
I picture that clicking on the MagicWandMorph would pop up a dialogue
box with some template text like '[:morph | ]' and let you type in
the contents of a block -- then you'd get a special Hand that applied
the block to each morph you clicked on. Or perhaps the UI could be
different -- e.g. an extra halo item to apply MagicWand>>doIt: to the
Is there something like this? Today I'm clicking a lot to open
inspectors via halos and then copy&paste commands from one to the
next. Hurts my Emacs-user pride when someone is looking over my
> For the back end, SuperSwiki2 should work without changing the image
> side, or simply setting up a WebDAV folder would work. Adding a new
> server to the image is a bit tricky... I'm happy to write a little
> how-to if you need it. (Well, because you can hack, I'm not giving
> away all secrets^^;)
I would really appreciate a hint! And I have only a loose idea of what
More information about the etoys-dev