links to this page:    
View this PageEdit this Page (locked)Uploads to this PageHistory of this PageTop of the SwikiRecent ChangesSearch the SwikiHelp Guide
Morphic Joules
Last updated at 12:16 pm UTC on 8 December 2004
Morphic Joules is an outliner, plus a lot more.

To see it in action, file in the mjAlpha changeset from http://swiki.squeakfoundation.org/squeakfoundation/uploads/morphicJoules/ and dive in! It has been tested with 3.1 changes thru 4173, but others have had success with changes up to 4022. Docs are at the same location in a project file and there is a screen shot file there as well.

Please email me if you are interested in using or working on Morphic Joules. This alpha release is very usable as the MJDocs project shows, but has a number of important subsystems yet to be integrated(most of which have been implemented at some point in time) and a few irritating bugs to be fixed so if you get excited by Morphic Joules, please email me and let me know. I'm trying to gauge the interest level in order to see what support will be needed. Also, getting more testers and coders will speed the way :-) E-mail me if you want to get new releases.

Dan Shafer 7/30/01 - 9:12 a.m. PDT

Great work, Laurence! I think this stuff will become the core to some very interesting work I've been itching to do, as you know!

It should be noted that it is important to file in the changeset before you attempt to load the docs project or you will likely experience a problem with a font loading routine.

Also, in this release, the docs (which are really quite good and intriguing as far as they've gone) do have a small bug. The link on PASS creates a walkback because nodeName isn't known.

Other than that, this stuff is looking very good. I'm looking forward to continuing releases and to helping you uncover what is excellent here.

Thanks Dan. The problem is due to the fact that I changed the name to have a superscripted *. If you click debug when the walkback appears and change the getObjectNamed: argument to the superscripted *, things will be just fine. This is fixed and will show up in the next release.

Someone asked me (Laurence):

"It would really help if these outlines were also hypertextual – linking from a word or phrase in one section to another section or even to another outline. Might this be possible?"

Here's my response:

Yes. You can select any text and cmd-6(mac)
alt-6(windows). You get a menu which has an option
called "node link". When you choose that option, you'll
get a prompt for a node name. Just enter any valid
node name and a link will be created. When you click
on the link it will open another window with the node
as the root. You can supply a full pathname for the node. If
you use a single node name and there are multiple
occurrences of that name in the Registry, the link will
point to the first one. So if for example you want to
link to Future, you can just type that name because
it's the only one(unless you've created one since
loading the project). However, there are a bunch of
nodes named Overview. You can see their names by
printing the following in a workspace:

(FreeDOM getAllObjectsNamed: 'Overview')
asOrderedCollection collect: [:each | each fullName]

which will produce something like:

an OrderedCollection('Virtual Fiber Objects/Overview'
'A FreeDOM Architectural
Overview/Introduction/Overview' 'VSD Executive
Summary/Infotons/Overview' 'A FreeDOM Architectural
Overview/Unique Instance Properties/Overview' 'The
System(PASS)/Overview' 'Outfits: User-Interface and
Authoring for the Virtual Space
Paradigm/Implementation/Overview' 'Morphic Joules

So you can enter any of these full path names when
prompted and link to that node. Also, note that the
pane menu (top of the scroll bar) has an option for
viewing the parent.

A much better two-way navigation link system exists
if someone is interested in helping to integrate it let me know.