swarm-support
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: no windows....


From: Alex Lancaster
Subject: Re: no windows....
Date: 05 Apr 1998 23:06:52 -0600

>>>>> "GB" == Ginger Booth <address@hidden> writes:

GB> Marcus,
>> What kind of windows don't get created?  Not even the control
>> panel?

GB> Correct.

>> I'd suggest studying a working Raster-oriented example like
>> heatbugs.

GB> I did.  Again.  And hacked up Gecko to use a GUISwarm on top as
GB> well as a GUISwarm below for display.  Now I have windows,
GB> including not one but two control panels, unsurprisingly.

GB> Why won't it show windows for a GUISwarm that is a subswarm of a
GB> regular Swarm?  How does one get around it?

If you are trying to make a GUISwarm a sub-Swarm of a regular Swarm,
then unfortunately, you are bound to run into trouble with the GUI.
The reason, is, the current implementation of GUISwarm is really still
a hack.  (As Marcus would say,) Sorry.

The reason that your application is probably not working is that the
current implementation is simply not set-up to GUISwarms that are not
top-level Swarms, properly.  The current machinery doesn't merge in
the GUI activities properly, and the controlPanel locks-up when a
Swarm activated in a sub-Swarm.  Things generally just get
confused. :-( I know that this does break the nice hierarchy of how
this is supposed to work in theory - but unfortunately, that's just
the current situation.  You might be able to get this to work - but
only by diving into the implementation of GUISwarm, ControlPanel and
ActionCache.

I have been working on using a GUISwarm to manage multiple GUISwarms
But the way I do this is to actually activate the (sub) GUISwarm in
nil, (after you create it) and then "run" the activity later, when you
actually need it.  In other words, you never merge the sub-GUISwarm's
activities in with the top-level activity.  Have a look at
simpleExperBug example in "tutorial" for how this works in the case
when the subSwarm is non-GUISwarm.

My code just extends the case to having the subSwarm as a GUISwarm - I
can send you my code - which might give you some hint of how to
approach your problem.

The short answer, is that the design really needs work - GUISwarms
are, and have always been, a hack.  Glen Ropella, before he left SFI,
was working on this very issue - but had to move on before he had time
to fully complete it.  

We have never had many users that needed to have GUISwarms that were
subSwarms, or multiple GUISwarms all interacting - and thus, it had
never been a high priority item.  

It seems that the user community are now getting to a stage where they
are really pushing the machinery to its limits - which is good!
However, the down-side, of course, is that they are bound to find
them!  ;-) You really are sailing at the edge of the known
Swarm-world.

I personally, would like to nail-down how GUISwarms and GUIs in
general ought to interact, I have simulations that I have written
where I would like to be able to have multiple controlPanels etc. -
but the Hive can't work in a vacuum - so we always need input from
folks, of how *they* expect or imagine things should work.

Alex

-- 
  Alex Lancaster         |   e-mail: address@hidden
  Swarm Developer        |      web: http://www.santafe.edu/~alex
  Santa Fe Institute     |      tel: +1-(505) 984-8800 (ext 242)
------------------------------------------------------------------

                  ==================================
   Swarm-Support is for discussion of the technical details of the day
   to day usage of Swarm.  For list administration needs (esp.
   [un]subscribing), please send a message to <address@hidden>
   with "help" in the body of the message.
                  ==================================


reply via email to

[Prev in Thread] Current Thread [Next in Thread]