Persisting 'applications'

Bob.Cowdery at CGI-Europe.com Bob.Cowdery at CGI-Europe.com
Sun Feb 19 17:48:26 UTC 2006


Hi All

 

I think this must be a fairly standard issue to tackle so hopefully someone
will know the best approach.

 

A bit of background first:

 

 I have an 'application' (a software radio) that consists of a number of
morphs, well at least components that wrap a morph. To create a running
application the appropriate components are instantiated within say one of
more alignment morphs. The components are wired up using connectors. On
connection a simple protocol executes across the connection so each end can
discover the capabilities of the other end. All the interaction by the user
is conducted against the appropriate component, some might be frequency
displays where the digits can be scrolled, others just button bars or
sliders etc. Administration is done by starting a seaside session on the
admin component. At present this shows a small admin morph in the world and
this must be connected manually to the component to administer, the protocol
exchange then occurs (but for admin functions this time) and the admin page
for that component is dynamically generated.

 

So far so good. There can be a lot of different configurations for doing
different types of work. So the idea is simple, the user builds a number of
radios with different components. Without any programming they use the
direct manipulation interface to change colour, layout policy, move
components around and add any of their own (like a clock for instance). In
other words they build their radio(s) to their exact requirements. To remove
the clutter of connectors they are simply made transparent. I would also
like to ship with a number of pre-built examples.

 

Finally, to the question.

 

What is the best way to save and restore these applications with all their
associated state.

 

1. I don't want to generate them with code (unless code can be generated
automatically and anyway that does deal with state) as that would seem to
defeat the object. 

2. I don't want to rely on the image being the container as that's
inappropriate in many cases. 

3. I think one answer possibly lies in the various menu options that save a
morph (the top level container of the app presumably) or save a project. I
have been unable to get any of these to work. Project seems the most hopeful
but objects to the fact some components use Opera and if the other end of
the link is not there an exception is thrown. Also I think a project is the
world and I just want a part of the world. 

4. Do I have to use something like Magma to store the entire object tree. 

5. Or ... is there a way to tap into the image serialisation to just store a
specific tree. 

6. I even tried a card stack. I could seem to get the components to stick to
a card but every time I switched cards the connectors got disconnected. Not
quite sure where I was going with that one. 

 

Thanks to anyone who has the energy to read this long post and even more to
anyone who knows a way that works for them.

 

Bob


*** Confidentiality Notice *** Proprietary/Confidential
Information belonging to CGI Group Inc. and its affiliates
may be contained in this message. If you are not a recipient
indicated or intended in this message (or responsible for
delivery of this message to such person), or you think for
any reason that this message may have been addressed to you
in error, you may not use or copy or deliver this message
to anyone else.  In such case, you should destroy this
message and are asked to notify the sender by reply email.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20060219/15f2be5a/attachment.htm


More information about the Squeak-dev mailing list